index.js 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364
  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. })
  91. },
  92. //胜率分页
  93. next1: function () {
  94. if (this.data.winList.length < this.data.total1) {
  95. const page = this.data.page1 + 1
  96. this.setData({
  97. page1: page
  98. })
  99. this.getWin()
  100. }
  101. },
  102. getWin() {
  103. var winList = this.data.winList
  104. $api.getRinrate({
  105. page: this.data.page1, page_size: 20
  106. }).then(res => {
  107. res.data.data.list.forEach(item => {
  108. winList.push(item)
  109. })
  110. this.setData({
  111. winList: winList,
  112. total1: res.data.data.total
  113. })
  114. })
  115. },
  116. //防守分页 防守榜去掉
  117. // next2: function () {
  118. // if (this.data.defendList.length < this.data.total2) {
  119. // const page = this.data.page2 + 1
  120. // this.setData({
  121. // page2: page
  122. // })
  123. // this.getDefen()
  124. // }
  125. // },
  126. // getDefen() {
  127. // var defendList = this.data.defendList
  128. // $api.getDefend({
  129. // page: this.data.page2, page_size: 20
  130. // }).then(res => {
  131. // res.data.data.list.forEach(item => {
  132. // defendList.push(item)
  133. // })
  134. // this.setData({
  135. // defendList: defendList,
  136. // total2: res.data.data.total
  137. // })
  138. // })
  139. // },
  140. getData(){
  141. //心得
  142. $api.getChampionlList().then(res => {
  143. this.setData({
  144. championList: res.data.data.list
  145. })
  146. })
  147. },
  148. //热门选手分页
  149. next3: function () {
  150. if (this.data.hotFollowList.length < this.data.total3) {
  151. const page = this.data.page3 + 1
  152. this.setData({
  153. page3: page
  154. })
  155. this.getHotFollowList()
  156. }
  157. },
  158. getHotFollowList() {
  159. var hotFollowList = this.data.hotFollowList
  160. let stock_date = this.data.date
  161. $api.getHotFollow({
  162. page: this.data.page3, page_size: 20, stock_date: stock_date
  163. }).then(res => {
  164. res.data.data.list.forEach(item => {
  165. hotFollowList.push(item)
  166. })
  167. this.setData({
  168. hotFollowList: hotFollowList,
  169. total3: res.data.data.total
  170. })
  171. })
  172. },
  173. getHot(){
  174. //热门
  175. let stock_date = this.data.date
  176. $api.getHotbuyList({ stock_date: stock_date }).then(res => {
  177. this.setData({
  178. hotbuyList: res.data.data.list
  179. })
  180. wx.hideNavigationBarLoading()
  181. })
  182. // $api.getHotsellList({ stock_date: stock_date }).then(res => {
  183. // this.setData({
  184. // hotsellList: res.data.data.list
  185. // })
  186. // })
  187. $api.getChoice().then(res=>{
  188. this.setData({
  189. myList: res.data.data.list
  190. })
  191. })
  192. },
  193. tabChange(e){
  194. this.setData({
  195. cur:e.target.dataset.id
  196. })
  197. switch(e.target.dataset.id){
  198. case 0:
  199. if (this.data.followList.length>0){
  200. return
  201. }
  202. this.getFollow()
  203. break;
  204. case 1:
  205. if (this.data.hotbuyList.length>0) {
  206. return
  207. }
  208. this.getHot()
  209. break;
  210. case 2:
  211. if (this.data.hotFollowList.length > 0) {
  212. return
  213. }
  214. this.getHotFollowList()
  215. break;
  216. case 3:
  217. if (this.data.winList.length > 0) {
  218. return
  219. }
  220. this.getWin()
  221. break;
  222. case 4:
  223. if (this.data.championList.length>0) {
  224. return
  225. }
  226. this.getData()
  227. break;
  228. }
  229. },
  230. tabChange1(e){
  231. this.setData({
  232. hot:e.target.dataset.id
  233. })
  234. },
  235. //预览
  236. preview(e){
  237. console.log(e)
  238. wx.previewImage({
  239. urls: e.target.dataset.urls,
  240. current: e.target.dataset.src
  241. })
  242. },
  243. curChange(e){
  244. if (e.detail.source == "touch"){
  245. this.setData({
  246. cur: e.detail.current
  247. })
  248. switch (e.target.dataset.id) {
  249. case 0:
  250. if (this.data.followList.length > 0) {
  251. return
  252. }
  253. this.getFollow()
  254. break;
  255. case 1:
  256. if (this.data.hotbuyList) {
  257. return
  258. }
  259. this.getHot()
  260. break;
  261. case 2:
  262. if (this.data.hotFollowList.length > 0) {
  263. return
  264. }
  265. this.getHotFollowList()
  266. case 3:
  267. if (this.data.winList.length > 0) {
  268. return
  269. }
  270. this.getWin()
  271. break;
  272. case 4:
  273. if (this.data.championList) {
  274. return
  275. }
  276. this.getData()
  277. break;
  278. }
  279. }
  280. },
  281. //热门股票
  282. bindDateChange(e){
  283. this.setData({
  284. date:e.detail.value
  285. })
  286. wx.showNavigationBarLoading()
  287. this.getHot()
  288. },
  289. onShow: function (e) {
  290. //判断是否报名
  291. $api.getAuthinfo().then(res=>{
  292. if(res.data.data.phone == null || res.data.data.phone==''){
  293. wx.switchTab({
  294. url: '../user/user',
  295. })
  296. }
  297. if(res.data.data.role==0){
  298. wx.navigateTo({
  299. url: '../apply/apply',
  300. })
  301. }
  302. })
  303. this.setData({
  304. followList:[],
  305. defendList:[],
  306. winList:[],
  307. hotFollowList:[],
  308. hotbuyList:[],
  309. championList:[],
  310. page:1,
  311. total:-1,
  312. page1: 1,
  313. total1: 0,
  314. page2: 1,
  315. total2: 0,
  316. page3: 1,
  317. total3: 0
  318. })
  319. switch(this.data.cur){
  320. case 0:
  321. this.getFollow()
  322. break;
  323. case 1:
  324. this.getHot()
  325. break;
  326. case 2:
  327. this.getHotFollowList()
  328. break;
  329. case 3:
  330. this.getWin()
  331. break;
  332. case 4:
  333. this.getData()
  334. break;
  335. }
  336. // if (app.globalData.follow){
  337. // this.setData({
  338. // page: 1,
  339. // total: -1,
  340. // followList: [],
  341. // })
  342. // app.globalData.follow=0
  343. // this.getFollow()
  344. // }
  345. // if (this.data.error) {
  346. // this.onLoad()
  347. // }
  348. },
  349. })