index.js 7.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359
  1. // index.js
  2. // 获取应用实例
  3. const app = getApp()
  4. const $api = require('../../utils/api.js').API;
  5. Page({
  6. data: {
  7. loading:0,
  8. notices:[],
  9. tabs:['关注','热门股票','热门选手','胜率榜','冠军心得'],
  10. cur:0,
  11. hot:0,
  12. date:'2022-04-27',
  13. followList:[],
  14. defendList:[],
  15. winList:[],
  16. hotFollowList:[],
  17. hotbuyList:[],
  18. championList:[],
  19. page:1,
  20. total:-1,
  21. page1: 1,
  22. total1: 0,
  23. page2: 1,
  24. total2: 0,
  25. page3: 1,
  26. total3: 0,
  27. error:0
  28. },
  29. onLoad() {
  30. wx.showNavigationBarLoading()
  31. var y = new Date().getFullYear(), m = (new Date().getMonth() + 1), d = new Date().getDate();
  32. m = m > 9 ? m : '0' + m;
  33. d = d > 9 ? d : '0' + d;
  34. // this.setData({
  35. // date: y + '-' + m + '-' + d
  36. // })
  37. $api.getDate().then(res=>{
  38. this.setData({
  39. date:res.data.data
  40. })
  41. })
  42. // this.getFollow()
  43. $api.getNotoice().then(res=>{
  44. this.setData({
  45. notices:res.data.data
  46. })
  47. })
  48. },
  49. fresh: function () {
  50. this.setData({
  51. page:1,
  52. total:-1,
  53. loading:1
  54. })
  55. this.getFollow()
  56. },
  57. //关注分页
  58. next: function () {
  59. if (this.data.followList.length < this.data.total) {
  60. const page = this.data.page + 1
  61. this.setData({
  62. page: page
  63. })
  64. this.getFollow()
  65. }
  66. },
  67. getFollow(){
  68. var followList = this.data.followList
  69. if(this.data.loading){
  70. followList=[]
  71. }
  72. $api.getMyFollow({
  73. page: this.data.page, page_size: 20
  74. }).then(res => {
  75. wx.hideNavigationBarLoading()
  76. res.data.data.list.forEach(item=>{
  77. followList.push(item)
  78. })
  79. this.setData({
  80. followList: followList,
  81. total:res.data.data.total,
  82. error:0,
  83. loading: 0
  84. })
  85. })
  86. .catch(err=>{
  87. this.setData({
  88. error:1
  89. })
  90. // console.log(err)
  91. })
  92. },
  93. //胜率分页
  94. next1: function () {
  95. if (this.data.winList.length < this.data.total1) {
  96. const page = this.data.page1 + 1
  97. this.setData({
  98. page1: page
  99. })
  100. this.getWin()
  101. }
  102. },
  103. getWin() {
  104. var winList = this.data.winList
  105. $api.getRinrate({
  106. page: this.data.page1, page_size: 20
  107. }).then(res => {
  108. res.data.data.list.forEach(item => {
  109. winList.push(item)
  110. })
  111. this.setData({
  112. winList: winList,
  113. total1: res.data.data.total
  114. })
  115. })
  116. },
  117. //防守分页 防守榜去掉
  118. // next2: function () {
  119. // if (this.data.defendList.length < this.data.total2) {
  120. // const page = this.data.page2 + 1
  121. // this.setData({
  122. // page2: page
  123. // })
  124. // this.getDefen()
  125. // }
  126. // },
  127. // getDefen() {
  128. // var defendList = this.data.defendList
  129. // $api.getDefend({
  130. // page: this.data.page2, page_size: 20
  131. // }).then(res => {
  132. // res.data.data.list.forEach(item => {
  133. // defendList.push(item)
  134. // })
  135. // this.setData({
  136. // defendList: defendList,
  137. // total2: res.data.data.total
  138. // })
  139. // })
  140. // },
  141. getData(){
  142. //心得
  143. $api.getChampionlList().then(res => {
  144. this.setData({
  145. championList: res.data.data.list
  146. })
  147. })
  148. },
  149. //热门选手分页
  150. next3: function () {
  151. if (this.data.hotFollowList.length < this.data.total3) {
  152. const page = this.data.page3 + 1
  153. this.setData({
  154. page3: page
  155. })
  156. this.getHotFollowList()
  157. }
  158. },
  159. getHotFollowList() {
  160. var hotFollowList = this.data.hotFollowList
  161. let stock_date = this.data.date
  162. $api.getHotFollow({
  163. page: this.data.page3, page_size: 20, stock_date: stock_date
  164. }).then(res => {
  165. res.data.data.list.forEach(item => {
  166. hotFollowList.push(item)
  167. })
  168. this.setData({
  169. hotFollowList: hotFollowList,
  170. total3: res.data.data.total
  171. })
  172. })
  173. },
  174. getHot(){
  175. //热门
  176. let stock_date = this.data.date
  177. $api.getHotbuyList({ stock_date: stock_date }).then(res => {
  178. this.setData({
  179. hotbuyList: res.data.data.list
  180. })
  181. wx.hideNavigationBarLoading()
  182. })
  183. // $api.getHotsellList({ stock_date: stock_date }).then(res => {
  184. // this.setData({
  185. // hotsellList: res.data.data.list
  186. // })
  187. // })
  188. $api.getChoice().then(res=>{
  189. this.setData({
  190. myList: res.data.data.list
  191. })
  192. })
  193. },
  194. tabChange(e){
  195. this.setData({
  196. cur:e.target.dataset.id
  197. })
  198. switch(e.target.dataset.id){
  199. case 0:
  200. if (this.data.followList.length>0){
  201. return
  202. }
  203. this.getFollow()
  204. break;
  205. case 1:
  206. if (this.data.hotbuyList.length>0) {
  207. return
  208. }
  209. this.getHot()
  210. break;
  211. case 2:
  212. if (this.data.hotFollowList.length > 0) {
  213. return
  214. }
  215. this.getHotFollowList()
  216. break;
  217. case 3:
  218. if (this.data.winList.length > 0) {
  219. return
  220. }
  221. this.getWin()
  222. break;
  223. case 4:
  224. if (this.data.championList.length>0) {
  225. return
  226. }
  227. this.getData()
  228. break;
  229. }
  230. },
  231. tabChange1(e){
  232. this.setData({
  233. hot:e.target.dataset.id
  234. })
  235. },
  236. //预览
  237. preview(e){
  238. console.log(e)
  239. wx.previewImage({
  240. urls: e.target.dataset.urls,
  241. current: e.target.dataset.src
  242. })
  243. },
  244. curChange(e){
  245. if (e.detail.source == "touch"){
  246. this.setData({
  247. cur: e.detail.current
  248. })
  249. switch (e.target.dataset.id) {
  250. case 0:
  251. if (this.data.followList.length > 0) {
  252. return
  253. }
  254. this.getFollow()
  255. break;
  256. case 1:
  257. if (this.data.hotbuyList) {
  258. return
  259. }
  260. this.getHot()
  261. break;
  262. case 2:
  263. if (this.data.hotFollowList.length > 0) {
  264. return
  265. }
  266. this.getHotFollowList()
  267. case 3:
  268. if (this.data.winList.length > 0) {
  269. return
  270. }
  271. this.getWin()
  272. break;
  273. case 4:
  274. if (this.data.championList) {
  275. return
  276. }
  277. this.getData()
  278. break;
  279. }
  280. }
  281. },
  282. //热门股票
  283. bindDateChange(e){
  284. this.setData({
  285. date:e.detail.value
  286. })
  287. wx.showNavigationBarLoading()
  288. this.getHot()
  289. },
  290. onShow: function (e) {
  291. //判断是否报名
  292. $api.getAuthinfo().then(res=>{
  293. if(res.data.data.role==0){
  294. wx.navigateTo({
  295. url: '../apply/apply',
  296. })
  297. }
  298. })
  299. this.setData({
  300. followList:[],
  301. defendList:[],
  302. winList:[],
  303. hotFollowList:[],
  304. hotbuyList:[],
  305. championList:[],
  306. page:1,
  307. total:-1,
  308. page1: 1,
  309. total1: 0,
  310. page2: 1,
  311. total2: 0,
  312. page3: 1,
  313. total3: 0
  314. })
  315. switch(this.data.cur){
  316. case 0:
  317. this.getFollow()
  318. break;
  319. case 1:
  320. this.getHot()
  321. break;
  322. case 2:
  323. this.getHotFollowList()
  324. break;
  325. case 3:
  326. this.getWin()
  327. break;
  328. case 4:
  329. this.getData()
  330. break;
  331. }
  332. // if (app.globalData.follow){
  333. // this.setData({
  334. // page: 1,
  335. // total: -1,
  336. // followList: [],
  337. // })
  338. // app.globalData.follow=0
  339. // this.getFollow()
  340. // }
  341. // if (this.data.error) {
  342. // this.onLoad()
  343. // }
  344. },
  345. })