| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143 |
- import Vue from 'vue'
- import Vuex from 'vuex'
- import api from "@/api/api"
- import MinCache from'@/common/util/MinCache.js'
- import { ACCESS_TOKEN,USER_NAME,USER_INFO,X_TENANT_ID } from "@/common/util/constants"
- import eventBus from '@/common/util/event-bus.js';
- Vue.use(Vuex)
- export default new Vuex.Store({
- state: {
- token: '',
- userid:'',
- username: '',
- realname: '',
- welcome: '',
- avatar: '',
- shopSelectedIds: []
- },
- mutations: {
- SET_TOKEN: (state, token) => {
- state.token = token
- },
- SET_NAME: (state, { username, realname, welcome }) => {
- state.username = username
- state.realname = realname
- state.welcome = welcome
- },
- SET_AVATAR: (state, avatar) => {
- state.avatar = avatar
- },
-
- },
- actions: {
- // 登录
- mLogin({ commit }, param) {
- return new Promise((resolve, reject) => {
- api.loginNew(param.phone,param.code).then(response => {
- if(response.data.code ==200){
- const result = response.data.result
- const userInfo = result.userInfo
- console.log(result)
- if (userInfo.userState === '1' || userInfo.userState === '2'){
- uni.setStorageSync(ACCESS_TOKEN,result.token);
- uni.setStorageSync(USER_INFO,userInfo);
- commit('SET_TOKEN', result.token)
- commit('SET_AVATAR', userInfo.avatar)
- commit('SET_NAME', { username: userInfo.username,realname: userInfo.realname})
- resolve(response)
- }else{
- uni.navigateTo({
- url: `/pages/login/settled?loginType=`+userInfo.userState+'&merchantId='+userInfo.merchantId+'&passWord='+userInfo.passWord
- +'&name='+userInfo.name +'&ordinaryUserId='+userInfo.ordinaryUserId+'&phone='+userInfo.phone
- });
- }
- }else if(response.data.code == 501) {
- const msgParams ={
- msg: '当前手机号用户不存在,请先下载掌柜生活APP注册。',
- type: "1"
- }
- eventBus.emit('openPage',msgParams);
- }else if (response.data.code == 502){
- const msgParams ={
- msg: '账号异常,请联系客服解除异常。',
- type: "2",
- }
- eventBus.emit('openPage',msgParams);
- }
- }).catch(error => {
- console.log("catch===>response",response)
- reject(error)
- })
- })
- },
- //手机号登录
- PhoneLogin({ commit }, userInfo) {
- return new Promise((resolve, reject) => {
- api.phoneNoLogin(userInfo).then(response => {
- if(response.data.code ==200){
- const result = response.data.result
- const userInfo = result.userInfo
- uni.setStorageSync(ACCESS_TOKEN,result.token);
- uni.setStorageSync(USER_INFO,userInfo);
- commit('SET_TOKEN', result.token)
- commit('SET_NAME', { username: userInfo.username,realname: userInfo.realname})
- commit('SET_AVATAR', userInfo.avatar)
- resolve(response)
- }else{
- reject(response)
- }
- }).catch(error => {
- reject(error)
- })
- })
- },
- // 第三方登录
- ThirdLogin({ commit }, param) {
- return new Promise((resolve, reject) => {
- api.thirdLogin(param.token,param.thirdType,param.tenantId).then(response => {
- if(response.data.code =='200'){
- const result = response.data.result
- const userInfo = result.userInfo
- uni.setStorageSync(ACCESS_TOKEN,result.token);
- uni.setStorageSync(USER_INFO,userInfo);
- uni.setStorageSync(X_TENANT_ID,userInfo.loginTenantId);
- commit('SET_TOKEN', result.token)
- commit('SET_AVATAR', userInfo.avatar)
- commit('SET_NAME', { username: userInfo.username,realname: userInfo.realname })
- commit('SET_ID', userInfo.id)
- commit('SET_INFO', userInfo)
- commit('SET_TENANTID', userInfo.loginTenantId)
- resolve(response)
- }else{
- reject(response)
- }
- }).catch(error => {
- reject(error)
- })
- })
- },
- // 登出
- Logout({ commit, state }) {
- return new Promise((resolve) => {
- let logoutToken = state.token;
- commit('SET_TOKEN', '')
- uni.removeStorageSync(ACCESS_TOKEN)
- api.logout(logoutToken).then(() => {
- resolve()
- }).catch(() => {
- resolve()
- })
- })
- },
- },
- getters:{
- token: state => state.token,
- username: state => {state.userid=uni.getStorageSync(USER_INFO).username; return state.username},
- nickname: state => {state.userid=uni.getStorageSync(USER_INFO).realname; return state.user.realname},
- avatar: state => {state.userid=uni.getStorageSync(USER_INFO).avatar; return state.user.avatar},
- userid:state => {state.userid=uni.getStorageSync(USER_INFO).id; return state.userid},
- }
- })
|