import { config } from '../../config/index'; /** 获取个人中心信息 */ function mockFetchUserCenter() { const { delay } = require('../_utils/delay'); const { genUsercenter } = require('../../model/usercenter'); return delay(200).then(() => genUsercenter()); } /** 获取个人中心信息 */ export function fetchUserCenter() { if (config.useMock) { return mockFetchUserCenter(); } return new Promise((resolve, reject) => { // 获取用户中心完整信息 wx.request({ url: `${config.apiBase}/usercenter`, method: 'GET', header: { 'Authorization': `Bearer ${wx.getStorageSync('token') || ''}` }, success: (res) => { if (res.statusCode === 200 && res.data.code === 200) { const data = res.data.data; // 直接使用后端返回的数据结构 const result = { userInfo: data.userInfo, countsData: data.countsData, orderTagInfos: data.orderTagInfos, customerServiceInfo: data.customerServiceInfo }; resolve(result); } else { // 如果获取失败,返回默认数据 resolve({ userInfo: { avatarUrl: '', nickName: '正在登录...', phoneNumber: '', gender: 0, }, countsData: [], orderTagInfos: [ { orderNum: 0, tabType: 5 }, { orderNum: 0, tabType: 10 }, { orderNum: 0, tabType: 40 }, { orderNum: 0, tabType: 0 }, ], customerServiceInfo: { servicePhone: '4006336868', serviceTimeDuration: '每周三至周五 9:00-12:00 13:00-15:00', } }); } }, fail: (err) => { console.error('获取用户中心信息失败:', err); // 失败时返回默认数据 resolve({ userInfo: { avatarUrl: '', nickName: '正在登录...', phoneNumber: '', gender: 0, }, countsData: [], orderTagInfos: [ { orderNum: 0, tabType: 5 }, { orderNum: 0, tabType: 10 }, { orderNum: 0, tabType: 40 }, { orderNum: 0, tabType: 0 }, ], customerServiceInfo: { servicePhone: '4006336868', serviceTimeDuration: '每周三至周五 9:00-12:00 13:00-15:00', } }); } }); }); }