import { fetchUserCenter } from '~/services/usercenter/fetchUsercenter'; import { getOpenId } from '~/services/login/getOpenId'; import Toast from 'tdesign-miniprogram/toast/index'; const menuData = [ [ // { // title: '申请开店', // tit: '', // url: '', // status: 0, // type: 'apply-shop', // }, { title: '收货地址', tit: '', url: '', type: 'address', }, { title: '优惠券', tit: '', url: '', type: 'coupon', }, // { // title: '积分', // tit: '', // url: '', // type: 'point', // }, { title: '设置', tit: '', url: '', type: 'set', }, ], [ // { // title: '帮助中心', // tit: '', // url: '', // type: 'help-center', // }, { title: '客服热线', tit: '', url: '', type: 'service', icon: 'service', }, ], ]; const orderTagInfos = [{ title: '待付款', iconName: 'wallet', orderNum: 1, tabType: 5, status: 1, }, { title: '待发货', iconName: 'deliver', orderNum: 0, tabType: 10, status: 1, }, { title: '待收货', iconName: 'package', orderNum: 0, tabType: 40, status: 1, }, { title: '待评价', iconName: 'comment', orderNum: 0, tabType: 60, status: 1, }, { title: '退款/售后', iconName: 'exchang', orderNum: 0, tabType: 0, status: 1, }, ]; const getDefaultData = () => ({ showMakePhone: false, userInfo: { avatarUrl: '', nickName: '正在登录...', phoneNumber: '', }, collectData: { collectCount: 0, historyCount: 0, }, menuData, orderTagInfos, customerServiceInfo: {}, currAuthStep: 1, showKefu: true, versionNo: '', }); Page({ data: getDefaultData(), onLoad() { this.getVersionInfo(); }, onShow() { this.getTabBar().init(); this.init(); }, onPullDownRefresh() { this.init(); }, init() { this.fetUseriInfoHandle(); }, /** 获取客户信息 */ fetUseriInfoHandle() { fetchUserCenter().then( ({ userInfo, collectData, // countsData, // orderTagInfos: orderInfo, // customerServiceInfo, }) => { /** 用户订单数据 */ // eslint-disable-next-line no-unused-expressions // menuData?.[0].forEach((v) => { // countsData.forEach((counts) => { // if (counts.type === v.type) { // // eslint-disable-next-line no-param-reassign // v.tit = counts.num; // } // }); // }); // const info = orderTagInfos.map((v, index) => ({ // ...v, // ...orderInfo[index], // })); this.setData({ userInfo, collectData, // menuData, // orderTagInfos: info, // customerServiceInfo, currAuthStep: 2, }); wx.stopPullDownRefresh(); }, ); }, onClickCell({ currentTarget }) { const { type } = currentTarget.dataset; switch (type) { case 'apply-shop': { wx.navigateTo({ url: '/pages/usercenter/apply-shop/index' }); break; } case 'address': { wx.navigateTo({ url: '/pages/usercenter/address/list/index' }); break; } case 'service': { this.openMakePhone(); break; } case 'help-center': { Toast({ context: this, selector: '#t-toast', message: '你点击了帮助中心', icon: '', duration: 1000, }); break; } case 'point': { Toast({ context: this, selector: '#t-toast', message: '你点击了积分菜单', icon: '', duration: 1000, }); break; } case 'coupon': { wx.navigateTo({ url: '/pages/coupon/coupon-list/index' }); break; } case 'set': { wx.navigateTo({ url: '/pages/usercenter/set/index' }); break; } default: { Toast({ context: this, selector: '#t-toast', message: '未知跳转', icon: '', duration: 1000, }); break; } } }, jumpNav(e) { const status = e.detail.tabType; if (status === 0) { wx.navigateTo({ url: '/pages/order/after-service-list/index' }); } else { wx.navigateTo({ url: `/pages/order/order-list/index?status=${status}` }); } }, jumpAllOrder() { wx.navigateTo({ url: '/pages/order/order-list/index' }); }, jumpCollect() { wx.navigateTo({ url: '/pages/usercenter/goods-collect/index' }); }, jumpHistory() { wx.navigateTo({ url: '/pages/usercenter/goods-history/index' }); }, openMakePhone() { this.setData({ showMakePhone: true }); }, closeMakePhone() { this.setData({ showMakePhone: false }); }, call() { wx.makePhoneCall({ phoneNumber: this.data.customerServiceInfo.servicePhone, }); }, getOpenIdFun() { wx.login({ success(res) { getOpenId({ code: res.code }).then((res) => { wx.setStorageSync('openId', res.data) console.log(res.data, '获取来的OpenId'); }) }, }); }, gotoUserEditPage() { const { currAuthStep } = this.data; if (currAuthStep === 2) { wx.navigateTo({ url: '/pages/usercenter/person-info/index' }); } else { // this.fetUseriInfoHandle(); } }, getVersionInfo() { const versionInfo = wx.getAccountInfoSync(); const { version, envVersion = __wxConfig } = versionInfo.miniProgram; this.setData({ versionNo: envVersion === 'release' ? version : envVersion, }); }, });