import store from '@/store' import UTIL from '@/utils/util' import { getStaffApi, getUserApi } from '@/api/common' import { postWxCode } from '@/api/mini' //获取商城端用户信息 export async function getShopUser(update) { } /** * 获取后台商户用户信息 * @parmas update为true时会重新触发请求,重置vuex的数据 */ export async function getUser(update) { let userInfo = store.getters.getUser if (!UTIL.isEmpty(userInfo) && !update) { return userInfo } await getUserApi().then((res) => { userInfo = res.data store.dispatch('setUser', userInfo) }).catch(() => { uni.removeStorageSync('token') }) return userInfo } /** * 获取登录员工的基本信息 * @parmas update为true时会重新触发请求,重置vuex的数据 */ export async function getSelfInfo(update) { let userInfo = store.getters.getSelfUser if (!UTIL.isEmpty(userInfo) && !update) { return userInfo } await getStaffApi().then(res => { userInfo = res.data store.dispatch('setSelfInfo', userInfo) }).catch(() => { return false }) return userInfo } /** * 微信小程序登录 * @parmas update为true时会重新触发请求,重置vuex的数据 */ export async function wxLoginFn(update) { let dataInfo = null let loginInfo = store.state.login.loginInfo if (!UTIL.isEmpty(loginInfo) && !update) { return loginInfo } let getObj = await new Promise(resolve => { uni.login({ provider: 'weixin', success: res => { uni.setStorageSync('code', res.code) resolve(res) } }) }) await postWxCode({ code: getObj.code }).then(subRes => { if(subRes.code && subRes.code == 1){ uni.setStorageSync('token', subRes.data.token) uni.setStorageSync('miniOpenId', subRes.data.miniOpenId) if(subRes.data.user && !UTIL.isEmpty(subRes.data.user)){ store.commit('setLoginInfo', subRes.data.user) } //启动更新逻辑 shish 2020.5.18 if (subRes.data.update == 1) { const updateManager = uni.getUpdateManager(); updateManager.onCheckForUpdate(function(res) { // 请求完新版本信息的回调 if (res.hasUpdate) { updateManager.onUpdateReady(function(res2) { uni.showModal({ title: '更新提示', content: '发现新版本,请更新应用', cancelColor:'#DDDDDD', confirmColor:'#FF0000', success(res2) { if (res2.confirm) { // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启 updateManager.applyUpdate(); } } }); }); } }); updateManager.onUpdateFailed(function(res) { // 新的版本下载失败 uni.showModal({ title: '提示', content: '检查到有新版本,但下载失败,请检查网络连接', success(res) { if (res.confirm) { // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启 updateManager.applyUpdate(); } } }); }); } } }) return dataInfo }