From 1c64c10f8dd88018c0d30de79237f3128173f118 Mon Sep 17 00:00:00 2001 From: YM <479443481@qq.com> Date: 星期二, 26 三月 2024 17:36:51 +0800 Subject: [PATCH] 调整登录 --- pages/home/home.js | 463 ++++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 420 insertions(+), 43 deletions(-) diff --git a/pages/home/home.js b/pages/home/home.js index d55db36..0a15970 100644 --- a/pages/home/home.js +++ b/pages/home/home.js @@ -1,9 +1,16 @@ import { fetchHome } from '../../services/home/home'; +import moment from 'moment' +import { checkLoginInfo } from '../../assets/js/login'; const app = getApp() Page({ data: { + barHeight: '', + navBarHeight: '', + searchVal: '', + isWhite: false, + backUrl: null, + userInfo: {}, tabList: [], //鐩綍 - pageLoading: false, current: 1,//杞挱鍥惧弬鏁� autoplay: true, //杞挱鍥惧弬鏁� duration: '500',//杞挱鍥惧弬鏁� @@ -11,43 +18,116 @@ navigation: { type: 'dots' },//杞挱鍥惧弬鏁� bannerList: [], //杞挱鍥惧垪琛� specialSubjectList: [],//涓撻璁ㄨ + activeItem: 0,//绮鹃�夎绋嬮粯璁ら�変腑 + courseTypeList: [],//绮鹃�夎绋嬪垎绫� courseList: [], + bookTypeList: [],//鍥句功绫诲瀷 + activeItem1: 0, booksList: [], - textbookList: [] + readBookList: [], //鏁板瓧闃呰 + textbookList: [], //鏁板瓧鏁欐潗 + rankingList: [],//鎺掕姒� + shoppingCartGetId: [], + baseRefresh: { + value: false + } }, - - goodListPagination: { - index: 0, - num: 20, - }, - - privateData: { - tabIndex: 0, - }, - onShow() { - this.getTabBar().init(); this.loadHomePage(); this.getBannerList() + }, - onLoad() { + onLoad(options) { + const systInfo = wx.getSystemInfoSync(); + const menu = wx.getMenuButtonBoundingClientRect(); // 鑳跺泭淇℃伅 + const navBarHeight = (menu.top - systInfo.statusBarHeight) * 2 + menu.height; // 瀵艰埅鏍忛珮搴� + this.setData({ + 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}&` + } + } + this.setData({ + backUrl: backUrl.backUrl + }) + } + + // checkLoginInfo(app, (data) => { + // if (data) { + // this.getCurrentUserInfo(); + // } + // }) + this.init(); }, - onReachBottom() { }, onPullDownRefresh() { + this.setData({ + 'baseRefresh.value': true, + }) this.init(); }, init() { this.getSubjectList(); - this.getCourseList(); + this.getCourseTypeListList(); + this.getBookTypeList(); + this.getReadBookList(); + this.getTextbookListList(); + this.getRankingList(); + + setTimeout(() => { + this.setData({ + 'baseRefresh.value': false, + }) + }, 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' + }) + } + }); }, getBannerList() { const list = [] app.MG.resource.getItem({ - path: 'jsek_banner\\jsek_homeBanner', + path: 'jsek_banner\\jsek_homeBannerApplet', fields: { jsek_link: [] }, paging: { start: 0, size: 9 } }).then(res => { @@ -64,29 +144,12 @@ }) console.log('杞挱鍥�', this.data.bannerList); }, - //鎼滅储 - navToSearchPage() { - wx.navigateTo({ url: '/pages/goods/search/index' }); - }, - //杞挱鍥捐烦杞� - navToActivityDetail({ detail }) { - const data = this.data.bannerList[detail.index] - console.log('璺宠浆', data.link); - // const { index: promotionID = 0 } = detail || {}; - // wx.navigateTo({ - // url: `/pages/promotion-detail/index?promotion_id=${promotionID}`, - // }); - }, - //鑾峰彇鐩綍 + + loadHomePage() { - wx.stopPullDownRefresh(); - this.setData({ - pageLoading: true, - }); fetchHome().then(({ tabList }) => { this.setData({ tabList, - pageLoading: false, }); }); }, @@ -94,9 +157,15 @@ toPages(item) { let info = item.target.dataset.info if (info.url) { - wx.navigateTo({ - url: info.url - }) + if (info.text == "鍥句功鏈嶅姟") { + wx.switchTab({ + url: info.url + }) + } else { + wx.navigateTo({ + url: info.url + }) + } } else { wx.showToast({ title: "寤鸿涓�", @@ -115,26 +184,58 @@ }, paging: { start: 0, - size: 3 + size: 4 }, fields: { liveTime: [], lecturer: [], startTime: [], - jsek_link: [] + jsek_link: [], + position: [] } } app.MG.store.getProductList(obj).then((res) => { + res.datas.forEach((item) => { + item.liveTime = item.liveTime ? moment(item.liveTime).format("MM-DD HH:mm:ss") : ''; + item.startTime = item.startTime ? moment(item.startTime).format("MM-DD HH:mm:ss") : ''; + item.price = item.price ? item.price.toFixed(2) : item.price; + }); this.setData({ specialSubjectList: res.datas }) + }) + }, + + + //绮鹃�夎绋嬪垎绫� + getCourseTypeListList() { + const data = { + path: 'jsek_homepageDigitalCourses', + filterList: [], + queryType: '\\', + searchList: [], + size: '20', + start: '0', + storeRefCode: app.config.digitalCourses, + sort: { type: 'Asc', field: 'LinkOrder' } + } + app.MG.store.getStoreChannelList(data).then((res) => { + if (res.datas && res.datas.length > 0) { + let dataList = []; + dataList.push(...res.datas) + this.setData({ + courseTypeList: dataList, + activeItem: 0 + }) + this.getCourseList(res.datas[0]) + } }) }, //绮鹃�夎绋嬪垪琛� getCourseList(item) { const obj = { storeInfo: "app.config.goodsStore", - path: 'jsek_homepageDigitalTextbooks', + path: item.pathList + '\\' + item.id, coverSize: { width: 260 }, @@ -150,9 +251,285 @@ } } app.MG.store.getProductList(obj).then((res) => { + res.datas.forEach((item) => { + item.price = item.price ? item.price.toFixed(2) : item.price; + }); this.setData({ courseList: res.datas }) }) - } + }, + tabChangeHandle(item) { + let info = this.data.courseTypeList[item.detail.value] + this.getCourseList(info) + }, + //鍥句功鏈嶅姟鍒嗙被 + getBookTypeList() { + const data = { + path: 'jsek_homepageBookService', + filterList: [], + queryType: '\\', + searchList: [], + size: '20', + start: '0', + storeRefCode: app.config.goodsStore, + sort: { type: 'Asc', field: 'LinkOrder' } + } + app.MG.store.getStoreChannelList(data).then((res) => { + if (res.datas && res.datas.length > 0) { + let dataList = []; + dataList.push(...res.datas) + this.setData({ + bookTypeList: dataList, + activeItem1: 0 + }) + this.getBooksList(dataList[0]) + } + }) + }, + //鍥句功鏈嶅姟鍒楄〃 + getBooksList(item) { + const obj = { + storeInfo: app.config.goodsStore, + path: item.pathList + '\\' + item.id, + queryType: '*', + coverSize: { + width: 150 + }, + paging: { + start: 0, + size: 6 + }, + fields: { + author: [] + } + } + app.MG.store.getProductList(obj).then((res) => { + this.setData({ + booksList: res.datas, + }) + }) + }, + //鍥句功鏈嶅姟 + tabBookClick(item) { + let info = this.data.bookTypeList[item.detail.value] + console.log(info, 123) + this.getBooksList(info) + }, + //鏁板瓧闃呰 + getReadBookList() { + const obj = { + storeInfo: app.config.digitalTextbooks, + path: 'jsek_homepageDigitalTextbooks', + coverSize: { + width: 150 + }, + paging: { + start: 0, + size: 3 + }, + fields: { + author: [] + } + } + app.MG.store.getProductList(obj).then((res) => { + this.setData({ + readBookList: res.datas + }) + }) + }, + //鏁板瓧鏁欐潗 + getTextbookListList() { + const obj = { + storeInfo: app.config.digitalTextbooks, + path: 'jsek_homepageDigitalTextbooks', + coverSize: { + width: 150 + }, + paging: { + start: 0, + size: 6 + }, + fields: { + author: [], + } + } + app.MG.store.getProductList(obj).then((res) => { + res.datas.forEach((item) => { + item.price = item.price ? item.price.toFixed(2) : item.price; + }); + this.setData({ + textbookList: res.datas + }) + }) + }, + //鑾峰彇鎺掕姒� + getRankingList() { + const obj = { + storeInfo: app.config.goodsStore, + path: '*', + queryType: '*', + coverSize: { + width: 150 + }, + paging: { + start: 0, + size: 10 + }, + fields: { + author: [], + }, + filterList: [ + { + value: 'Normal', + field: 'state' + } + ], + sort: { + Name: 'Asc', + BaseType: '' + + } + } + app.MG.store.getProductList(obj).then((res) => { + this.setData({ + rankingList: res.datas + }) + }) + }, + // 璺宠浆鍥句功璇︽儏 + goDetail(e) { + 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 + }) + }, + goCourseDetail(e) { + const { book } = e.currentTarget.dataset; + wx.showToast({ + title: "寤鸿涓�", + icon: 'none', + duration: 2000 + }) + }, + goReadBookDetail(e) { + const { book } = e.currentTarget.dataset; + wx.showToast({ + title: "寤鸿涓�", + icon: 'none', + duration: 2000 + }) + }, + goTextBookDetail(e) { + const { book } = e.currentTarget.dataset; + wx.showToast({ + title: "寤鸿涓�", + icon: 'none', + duration: 2000 + }) + }, + + + getShoppingCartList() { + let query = { + start: 0, + size: 999, + filterList: [], + searchList: [] + } + app.MG.store.getShoppingCartProductList(query).then((res) => { + let idList = []; + res.datas.forEach((item) => { + idList.push(item.saleMethod.id) + }) + this.setData({ + shoppingCartGetId: idList + }) + }) + }, + addCart(e) { + const { info } = e.currentTarget.dataset; + console.log(info) + if (wx.getStorageSync(app.config.tokenKey)) { + let query = { + start: 0, + size: 999, + filterList: [], + searchList: [] + } + try { + if ( + this.data.shoppingCartGetId.includes( + info.defaultSaleMethodId + ) + ) { + wx.showToast({ + title: "璇ヤ功宸插湪璐墿杞︼紝璇峰嬁閲嶅娣诲姞绌�", + icon: 'none', + duration: 1000 + }) + } else { + let query = { + requests: [ + { + saleMethodId: info.defaultSaleMethodId, + storeEventId: null, + agentCode: '鐢靛瓙涔�' + } + ] + } + const addRes = app.MG.store.addShoppingCart(query) + if (addRes) { + wx.showToast({ + title: "娣诲姞鎴愬姛", + icon: 'success', + duration: 1000 + }) + } + this.getShoppingCartList() + } + } catch (error) { + console.error('鍑洪敊浜嗭細', error) + } + } + + }, + onMoreGuide(e) { + let type = e.currentTarget.dataset.info + console.log(e, 1) + if (type == "tushufuwu") { + wx.navigateTo({ + url: '/packageBookService/pages/bookServices/list/index' + }) + } else { + wx.showToast({ + title: "寤鸿涓�", + icon: 'none', + duration: 2000 + }) + } + + }, + + + // 鐩戝惉婊氬姩鏉� + onScroll(e) { + this.setData({ + isWhite: e.detail.scrollTop > 10 ? true : false + }) + }, + onRetrievalPage() { + console.log(this.data.searchVal); + wx.navigateTo({ + url: '/pages/retrievalPage/index?searchVal=' + this.data.searchVal + }) + }, }); -- Gitblit v1.9.1