From 6851680b996e64c1d66c035245b2f0f6eb3425c6 Mon Sep 17 00:00:00 2001
From: YM <479443481@qq.com>
Date: 星期六, 07 九月 2024 15:33:42 +0800
Subject: [PATCH] 1

---
 pages/home/home.js |  416 ++++++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 282 insertions(+), 134 deletions(-)

diff --git a/pages/home/home.js b/pages/home/home.js
index 0a15970..4f8fb6e 100644
--- a/pages/home/home.js
+++ b/pages/home/home.js
@@ -1,44 +1,56 @@
-import { fetchHome } from '../../services/home/home';
+import {
+  fetchHome
+} from '../../services/home/home';
 import moment from 'moment'
-import { checkLoginInfo } from '../../assets/js/login';
+import {
+  loginInfo
+} from '../../assets/js/login';
 const app = getApp()
 Page({
   data: {
     barHeight: '',
     navBarHeight: '',
     searchVal: '',
+    scoll: false,
     isWhite: false,
-    backUrl: null,
     userInfo: {},
     tabList: [], //鐩綍
-    current: 1,//杞挱鍥惧弬鏁�
+    current: 1, //杞挱鍥惧弬鏁�
     autoplay: true, //杞挱鍥惧弬鏁�
-    duration: '500',//杞挱鍥惧弬鏁�
-    interval: 5000,//杞挱鍥惧弬鏁�
-    navigation: { type: 'dots' },//杞挱鍥惧弬鏁�
+    duration: '500', //杞挱鍥惧弬鏁� 
+    interval: 5000, //杞挱鍥惧弬鏁�
+    navigation: {
+      type: 'dots'
+    }, //杞挱鍥惧弬鏁�
     bannerList: [], //杞挱鍥惧垪琛�
-    specialSubjectList: [],//涓撻璁ㄨ
-    activeItem: 0,//绮鹃�夎绋嬮粯璁ら�変腑
-    courseTypeList: [],//绮鹃�夎绋嬪垎绫�
+    specialSubjectList: [], //涓撻璁ㄨ
+    activeItem: 0, //绮鹃�夎绋嬮粯璁ら�変腑
+    courseTypeList: [], //绮鹃�夎绋嬪垎绫�
     courseList: [],
-    bookTypeList: [],//鍥句功绫诲瀷
+    courseTypeActive: [],
+    bookTypeList: [], //鍥句功绫诲瀷
     activeItem1: 0,
+    bookTypeData: {},
     booksList: [],
     readBookList: [], //鏁板瓧闃呰
     textbookList: [], //鏁板瓧鏁欐潗
-    rankingList: [],//鎺掕姒�
+    rankingList: [], //鎺掕姒�
     shoppingCartGetId: [],
     baseRefresh: {
       value: false
-    }
+    },
+    loading: true
   },
   onShow() {
+    this.setData({
+      searchVal: "",
+    });
+    console.log(this.data.searchVal)
     this.loadHomePage();
-    this.getBannerList()
-
   },
 
-  onLoad(options) {
+  onLoad() {
+    this.getBannerList()
     const systInfo = wx.getSystemInfoSync();
     const menu = wx.getMenuButtonBoundingClientRect(); // 鑳跺泭淇℃伅
     const navBarHeight = (menu.top - systInfo.statusBarHeight) * 2 + menu.height; // 瀵艰埅鏍忛珮搴�
@@ -46,33 +58,32 @@
       barHeight: systInfo.statusBarHeight,
       navBarHeight: navBarHeight,
     });
-    if (options.backUrl) {
-      let backUrl = JSON.parse(decodeURIComponent(options.backUrl));
-      if (backUrl.options) {
-        for (let key in backUrl.options) {
-          const value = backUrl.options[key]
-          backUrl.backUrl += `${key}=${value}&`
+
+    // 棣栭〉娴嬭瘯鐧诲綍鍔熻兘锛屽悗缁敞閲�
+    // 妫�鏌ョ櫥褰曠姸鎬�
+    const token = wx.getStorageSync(app.config.tokenKey)
+    if (!token) {
+      loginInfo(app, (data) => {
+        // 濡傛灉涓嶆槸绗竴娆$櫥褰曪紝浼氭墽琛屽洖璋�
+        if (data) {
+          // 鐧诲綍鎴愬姛锛岃嚜鍔ㄨ褰晅oken鍜岀敤鎴蜂俊鎭紝骞惰繑鍥瀟rue
+        } else {
+          // 鍑虹幇閿欒锛岃繑鍥瀎alse
         }
-      }
-      this.setData({
-        backUrl: backUrl.backUrl
       })
+    } else {
+      // 濡傛灉鏄涓�娆$櫥褰曪紝浼氳烦杞嚦缁戝畾鐢ㄦ埛淇℃伅椤甸潰锛屽~鍐欏畬鐢ㄦ埛淇℃伅鍚庤繘琛岀櫥褰曞苟鍌ㄥ瓨token鍜岀敤鎴蜂俊鎭紝缁撴潫鍚庤烦杞洖褰撳墠椤甸潰锛堟惡甯﹂〉闈㈠弬鏁帮級
     }
-
-    // checkLoginInfo(app, (data) => {
-    //   if (data) {
-    //     this.getCurrentUserInfo();
-    //   }
-    // })
-
+    this.registe()
     this.init();
   },
-  onReachBottom() {
-  },
+  onReachBottom() {},
   onPullDownRefresh() {
     this.setData({
       'baseRefresh.value': true,
+      isWhite: false
     })
+    this.getBannerList();
     this.init();
   },
   init() {
@@ -90,64 +101,54 @@
     }, 500);
   },
 
-  getCurrentUserInfo() {
-    app.MG.identity.getCurrentAppUser().then(res => {
-      console.log(res, "userInfo");
-      // 鐢ㄦ埛淇℃伅浼樺厛绾э細鏁欏笀璁よ瘉 > 寰俊 > 瀛︾敓锛堟敞鍐屾椂榛樿锛�
-      if (res) {
-        let defaultUser = {};
-        let WeChatInfo = res.infoList.find((item) => item.type === "WeChat");
-        let phoneNumber = res.secretList.find(i => i.type == 'MobilePhone')
-        if (WeChatInfo) {
-          defaultUser = {
-            nickName: WeChatInfo.name,
-            avatarUrl: WeChatInfo.icon,
-            weChatId: WeChatInfo.id
-          }
-        }
-        if (phoneNumber) {
-          defaultUser.phoneNumber = phoneNumber.credential
-        }
-        this.setData({
-          userInfo: defaultUser,
-        })
-        wx.setStorageSync(app.config.userInfoKey, JSON.stringify(this.data.userInfo));
-      }
-      if (this.data.backUrl) {
-        wx.navigateTo({
-          url: this.data.backUrl,
-        })
-      } else {
-        wx.switchTab({
-          url: '/pages/home/home'
-        })
-      }
-    });
+  registe() {
+    app.MG.app.creatUserBehavior({
+      refCode: "sign"
+    }).then(res => {});
   },
+
   getBannerList() {
     const list = []
     app.MG.resource.getItem({
       path: 'jsek_banner\\jsek_homeBannerApplet',
-      fields: { jsek_link: [] },
-      paging: { start: 0, size: 9 }
+      fields: {
+        jsek_link: []
+      },
+      paging: {
+        start: 0,
+        size: 9
+      }
     }).then(res => {
       for (let i = 0; i < res.datas.length; i++) {
         const item = res.datas[i]
         list.push({
           value: item.icon,
-          link: item.jsek_link
+          link: item.jsek_link,
+
         })
       }
       this.setData({
-        bannerList: list
+        bannerList: list,
+        loading: false
       })
     })
-    console.log('杞挱鍥�', this.data.bannerList);
+  },
+  navToActivityDetail(e) {
+    let {
+      info
+    } = e.currentTarget.dataset
+    console.log(info)
+    if (info.link) {
+      wx.navigateTo({
+        url: info.link,
+      });
+    }
   },
 
-
   loadHomePage() {
-    fetchHome().then(({ tabList }) => {
+    fetchHome().then(({
+      tabList
+    }) => {
       this.setData({
         tabList,
       });
@@ -156,6 +157,7 @@
   //鐐瑰嚮鐩綍
   toPages(item) {
     let info = item.target.dataset.info
+    console.log(info);
     if (info.url) {
       if (info.text == "鍥句功鏈嶅姟") {
         wx.switchTab({
@@ -186,6 +188,10 @@
         start: 0,
         size: 4
       },
+      filterList: [{
+        value: 'Normal',
+        field: 'state'
+      }],
       fields: {
         liveTime: [],
         lecturer: [],
@@ -211,13 +217,19 @@
   getCourseTypeListList() {
     const data = {
       path: 'jsek_homepageDigitalCourses',
-      filterList: [],
       queryType: '\\',
       searchList: [],
       size: '20',
       start: '0',
       storeRefCode: app.config.digitalCourses,
-      sort: { type: 'Asc', field: 'LinkOrder' }
+      sort: {
+        type: 'Asc',
+        field: 'LinkOrder'
+      },
+      filterList: [{
+        value: 'Normal',
+        field: 'state'
+      }]
     }
     app.MG.store.getStoreChannelList(data).then((res) => {
       if (res.datas && res.datas.length > 0) {
@@ -236,13 +248,17 @@
     const obj = {
       storeInfo: "app.config.goodsStore",
       path: item.pathList + '\\' + item.id,
-      coverSize: {
-        width: 260
-      },
+      // coverSize: {
+      //   height: 205
+      // },
       paging: {
         start: 0,
         size: 4
       },
+      filterList: [{
+        value: 'Normal',
+        field: 'state'
+      }],
       fields: {
         courseLeader: [],
         affiliatedUnit: [],
@@ -261,19 +277,29 @@
   },
   tabChangeHandle(item) {
     let info = this.data.courseTypeList[item.detail.value]
+    this.setData({
+      courseList: [],
+      courseTypeActive: item.detail.value
+    })
     this.getCourseList(info)
   },
   //鍥句功鏈嶅姟鍒嗙被
   getBookTypeList() {
     const data = {
       path: 'jsek_homepageBookService',
-      filterList: [],
+      filterList: [{
+        value: 'Normal',
+        field: 'state'
+      }],
       queryType: '\\',
       searchList: [],
       size: '20',
       start: '0',
       storeRefCode: app.config.goodsStore,
-      sort: { type: 'Asc', field: 'LinkOrder' }
+      sort: {
+        type: 'Asc',
+        field: 'LinkOrder'
+      }
     }
     app.MG.store.getStoreChannelList(data).then((res) => {
       if (res.datas && res.datas.length > 0) {
@@ -281,7 +307,8 @@
         dataList.push(...res.datas)
         this.setData({
           bookTypeList: dataList,
-          activeItem1: 0
+          activeItem1: 0,
+          bookTypeData: dataList[0],
         })
         this.getBooksList(dataList[0])
       }
@@ -300,6 +327,10 @@
         start: 0,
         size: 6
       },
+      filterList: [{
+        value: 'Normal',
+        field: 'state'
+      }],
       fields: {
         author: []
       }
@@ -313,14 +344,16 @@
   //鍥句功鏈嶅姟
   tabBookClick(item) {
     let info = this.data.bookTypeList[item.detail.value]
-    console.log(info, 123)
+    this.setData({
+      bookTypeData: info,
+    })
     this.getBooksList(info)
   },
   //鏁板瓧闃呰
   getReadBookList() {
     const obj = {
-      storeInfo: app.config.digitalTextbooks,
-      path: 'jsek_homepageDigitalTextbooks',
+      storeInfo: app.config.digitalRead,
+      path: 'jsek_homepageDigitalReading',
       coverSize: {
         width: 150
       },
@@ -328,6 +361,10 @@
         start: 0,
         size: 3
       },
+      filterList: [{
+        value: 'Normal',
+        field: 'state'
+      }],
       fields: {
         author: []
       }
@@ -350,6 +387,10 @@
         start: 0,
         size: 6
       },
+      filterList: [{
+        value: 'Normal',
+        field: 'state'
+      }],
       fields: {
         author: [],
       }
@@ -379,12 +420,10 @@
       fields: {
         author: [],
       },
-      filterList: [
-        {
-          value: 'Normal',
-          field: 'state'
-        }
-      ],
+      filterList: [{
+        value: 'Normal',
+        field: 'state'
+      }],
       sort: {
         Name: 'Asc',
         BaseType: ''
@@ -399,42 +438,53 @@
   },
   // 璺宠浆鍥句功璇︽儏
   goDetail(e) {
-    const { book } = e.currentTarget.dataset;
+    const {
+      book
+    } = e.currentTarget.dataset;
     wx.navigateTo({
       url: `/packageBookService/pages/bookServices/detail/index?id=${book.id}&name=${book.name}`,
     });
   },
   goSubjectDetail(e) {
-    const { book } = e.currentTarget.dataset;
-    wx.showToast({
-      title: "寤鸿涓�",
-      icon: 'none',
-      duration: 2000
-    })
+    // return wx.showToast({
+    //   title: "寤鸿涓�",
+    //   icon: 'none',
+    //   duration: 1000
+    // })
+    const item = e.currentTarget.dataset.book
+    console.log(item);
+    wx.navigateTo({
+      url: '/pages/specialDiscussion/webView/index?link=' + item.jsek_link
+    });
   },
   goCourseDetail(e) {
-    const { book } = e.currentTarget.dataset;
-    wx.showToast({
-      title: "寤鸿涓�",
-      icon: 'none',
-      duration: 2000
-    })
+    // return wx.showToast({
+    //   title: "寤鸿涓�",
+    //   icon: 'none',
+    //   duration: 1000
+    // })
+    const {
+      book
+    } = e.currentTarget.dataset;
+    wx.navigateTo({
+      url: '/pages/digitalCourses/digitalCoursesDetails/index?id=' + book.id + '&path=' + book.idPath,
+    });
   },
   goReadBookDetail(e) {
-    const { book } = e.currentTarget.dataset;
-    wx.showToast({
-      title: "寤鸿涓�",
-      icon: 'none',
-      duration: 2000
-    })
+    const {
+      book
+    } = e.currentTarget.dataset;
+    wx.navigateTo({
+      url: '/pages/home/digitalRead/index?productId=' + book.id,
+    });
   },
   goTextBookDetail(e) {
-    const { book } = e.currentTarget.dataset;
-    wx.showToast({
-      title: "寤鸿涓�",
-      icon: 'none',
-      duration: 2000
-    })
+    const {
+      book
+    } = e.currentTarget.dataset;
+    wx.navigateTo({
+      url: '/pages/digitalTextbooks/digitalTextbooksDetails/index?id=' + book.id,
+    });
   },
 
 
@@ -456,8 +506,9 @@
     })
   },
   addCart(e) {
-    const { info } = e.currentTarget.dataset;
-    console.log(info)
+    const {
+      info
+    } = e.currentTarget.dataset;
     if (wx.getStorageSync(app.config.tokenKey)) {
       let query = {
         start: 0,
@@ -478,13 +529,11 @@
           })
         } else {
           let query = {
-            requests: [
-              {
-                saleMethodId: info.defaultSaleMethodId,
-                storeEventId: null,
-                agentCode: '鐢靛瓙涔�'
-              }
-            ]
+            requests: [{
+              saleMethodId: info.defaultSaleMethodId,
+              storeEventId: null,
+              agentCode: '鐢靛瓙涔�'
+            }]
           }
           const addRes = app.MG.store.addShoppingCart(query)
           if (addRes) {
@@ -504,32 +553,131 @@
   },
   onMoreGuide(e) {
     let type = e.currentTarget.dataset.info
-    console.log(e, 1)
     if (type == "tushufuwu") {
+      let assortCode = "";
+      if (this.data.bookTypeData.name == '楂樼瓑鏁欒偛') {
+        assortCode = "jsek_higherEducation"
+      }
+      if (this.data.bookTypeData.name == '鑱屼笟鏁欒偛') {
+        assortCode = "jsek_vocationalEducation"
+      }
+      if (this.data.bookTypeData.name == '鏁欏笀鏁欒偛') {
+        assortCode = "jsek_teacherEducation"
+      }
+      if (this.data.bookTypeData.name == '灏戝効鏁欒偛') {
+        assortCode = "jsek_childrenEducation"
+      }
+      if (this.data.bookTypeData.name == '鑰冭瘯鍩硅') {
+        assortCode = "jsek_examTraining"
+      }
+      if (this.data.bookTypeData.name == '涓婚鍑虹増') {
+        assortCode = "jsek_themePublishing"
+      }
+      if (this.data.bookTypeData.name == '瀛︽湳钁椾綔') {
+        assortCode = "jsek_academicWorks"
+      }
+      if (this.data.bookTypeData.name == '澶т紬璇荤墿') {
+        assortCode = "jsek_popularReadingMaterials"
+      }
       wx.navigateTo({
-        url: '/packageBookService/pages/bookServices/list/index'
+        url: '/packageBookService/pages/bookServices/list/index?assorName=' + this.data.bookTypeData.name + '&assortCode=' + assortCode
+      })
+    } else if (type == "shuziyuedu") {
+      wx.navigateTo({
+        url: '/pages/home/digitalRead/index'
+      })
+    } else if (type == "zhuantitaolun") {
+      // return wx.showToast({
+      //   title: "寤鸿涓�",
+      //   icon: 'none',
+      //   duration: 1000
+      // })
+      wx.navigateTo({
+        url: '/pages/specialDiscussion/index'
+      })
+
+    } else if (type == "jingxuankecheng") {
+      // return wx.showToast({
+      //   title: "寤鸿涓�",
+      //   icon: 'none',
+      //   duration: 1000
+      // })
+      wx.navigateTo({
+        url: '/pages/digitalCourses/index?courseTypeActive=' + this.data.courseTypeActive
+      })
+    } else if (type == "shuzijiaocai") {
+      wx.navigateTo({
+        url: '/pages/digitalTextbooks/index'
       })
     } else {
       wx.showToast({
         title: "寤鸿涓�",
         icon: 'none',
-        duration: 2000
+        duration: 1000
       })
     }
 
   },
 
+  // 鎵竴鎵�
+  onIconScanTap() {
+    wx.scanCode({
+      success(res) {
+        console.log(res);
+        if (res.errMsg == "scanCode:ok" && res.path || res.result) {
+          let path = res.path || res.result
+          wx.redirectTo({
+            url: '/' + path,
+          })
+        }
+      }
+    })
+  },
+
+
 
   // 鐩戝惉婊氬姩鏉�
   onScroll(e) {
+    if (this.data.scoll) {
+      if (e.detail.scrollTop < 20) {
+        this.data.scoll = false
+        this.isChange(false);
+      }
+    } else {
+      if (e.detail.scrollTop > 20) {
+        this.data.scoll = true
+        this.isChange(true);
+      }
+    }
+  },
+  isChange(data) {
     this.setData({
-      isWhite: e.detail.scrollTop > 10 ? true : false
+      isWhite: data
     })
   },
+
   onRetrievalPage() {
-    console.log(this.data.searchVal);
-    wx.navigateTo({
-      url: '/pages/retrievalPage/index?searchVal=' + this.data.searchVal
-    })
+
+    // 棣栭〉娴嬭瘯鐧诲綍鍔熻兘锛屽悗缁敞閲�
+    // 妫�鏌ョ櫥褰曠姸鎬�
+    const token = wx.getStorageSync(app.config.tokenKey)
+    if (!token) {
+      loginInfo(app, (data) => {
+        // 濡傛灉涓嶆槸绗竴娆$櫥褰曪紝浼氭墽琛屽洖璋�
+        if (data) {
+          wx.navigateTo({
+            url: '/pages/retrievalPage/index?searchVal=' + this.data.searchVal
+          })
+        } else {
+          // 鍑虹幇閿欒锛岃繑鍥瀎alse
+        }
+      })
+    } else {
+      wx.navigateTo({
+        url: '/pages/retrievalPage/index?searchVal=' + this.data.searchVal
+      })
+    }
+
+
   },
-});
+});
\ No newline at end of file

--
Gitblit v1.9.1