import Vue from 'vue' import Vuex from 'vuex' import api from '../common/config/caimeiApi.js' import authorize from '../common/config/authorize.js' import * as caimeiApi from '@/common/config/caimeiApi.js' import ajaxService from '@/services/ajax.service.js' import UserService from '@/services/user.service.js' import SellerService from '@/services/sellse.service.js' const getUserService = new UserService(ajaxService) const getSellerService = new SellerService(ajaxService) Vue.use(Vuex) const store = new Vuex.Store({ state: { isWxAuthorize: false, hasLogin: false, userInfo: {}, identity: 0, noticeNum:0, couponEntry:0, // 活动状态 clubType: 0, // 1: 医美机构 2:生美机构 (医美、生美机构类型) wechatUserInfo: {}, cartNumber: 0, isIphoneX: false, isActivity: true, // 首页活动弹窗 isLoginType: 0, isManage: false,// 是否是管理员或者小组长 shopAdvert:[] ,// 供应商广告图列表 serviceProviderId:0, insideFLag:0 //内外部协销标记 0内部协销,1外部协销 }, mutations: { login(state, provider) { //用户身份 1、协销 2、资质机构 3、供应商 4.个人机构 state.hasLogin = true state.userInfo = provider uni.setStorage({ //缓存用户登陆状态 key: 'userInfo', data: provider }) }, logout(state) { state.hasLogin = false state.userInfo = {} uni.removeStorage({ key: 'userInfo' }) uni.removeStorage({ key: 'token' }) }, wxLogin(state, provider) { state.isWxAuthorize = true state.wechatUserInfo = provider uni.setStorage({ //缓存用户登陆状态 key: 'wechatUserInfo', data: provider }) uni.setStorageSync('_WX_State', 1) }, updateStatus(state, provider) { let TIME = api.formatDate() console.log(`${TIME}`, provider) state.userInfo = provider if (state.userInfo) { state.clubType = provider.firstClubType state.identity = provider.userIdentity // 判断登录用户为协销 设置管理员组长权限 if(provider.userIdentity === 1){ if(provider.manager>0 || provider.leaderId > 0){ state.isManage = true } state.insideFLag = provider.insideFLag state.serviceProviderId = provider.serviceProviderId } // 判断以下公司账户设置部分权限 if (provider.userId == 5261 || provider.userId == 10947 || provider.userId == 11579) { state.identity = 1 } else if (provider.firstClubType == 1) { state.identity = 5 } else { state.identity = 0 } } uni.setStorage({ //缓存用户登陆状态 key: 'userInfo', data: provider }) }, async updateNoticeNum(state) { // 更新通知消息数量 try{ const userInfo = await caimeiApi.getStorage() const commonId = userInfo.clubId ? userInfo.clubId : 0 const res = await getUserService.getAuthClubCount({ commonId: commonId }) state.noticeNum = res.data.count if (state.noticeNum >= 100) { uni.setTabBarBadge({ index: 2, text: '99+' }) } else if (state.noticeNum > 0) { uni.setTabBarBadge({ index: 2, text: String(state.noticeNum) }) } else { uni.removeTabBarBadge({ index: 2, }) } }catch(error){ uni.removeTabBarBadge({ index: 2, }) } }, // async updateSellerNoticeNum(state) { // 更新协销通知消息数量 // const userInfo = await caimeiApi.getStorage() // const commonId = userInfo.serviceProviderId ? userInfo.serviceProviderId : 0 // console.log(userInfo, commonId) // getSellerService.getSellerNoticeSpCount({ commonId: commonId, messageType: 3 }) // .then(response => { // state.noticeNum = response.data.notificationCount // console.log(response) // if (state.noticeNum >= 100) { // uni.setTabBarBadge({ // index: 2, // text: '99+' // }) // } else if (state.noticeNum > 0) { // uni.setTabBarBadge({ // index: 2, // text: String(state.noticeNum) // }) // } else { // uni.removeTabBarBadge({ // index: 2, // }) // } // }) // .catch(error => { // uni.removeTabBarBadge({ // index: 2, // }) // }) // }, async updateRossShow(state){ const USER_EVEN = await caimeiApi.getStorage() if(USER_EVEN.userIdentity === 1) { return } try{ const res = await getUserService.getShopAdvert({ userId: USER_EVEN.userId ? USER_EVEN.userId : 0 }) state.shopAdvert = res.data }catch(error){ console.log(error) } }, updateAllNum(state, num) { if (num >= 100) { uni.setTabBarBadge({ index: 3, text: '99+' }) } else if (num > 0) { uni.setTabBarBadge({ index: 3, text: String(num) }) } else { uni.removeTabBarBadge({ index: 3, }) } }, updateCouponEntry(state, couponEntry){// 记录是否有优惠券 state.couponEntry = couponEntry }, setActivity(state, variable) { // 记录活动弹窗状态 state.isActivity = variable }, setChangeVar(state, variable) { state.isIphoneX = variable }, setIsIphone(state, variable) { // 记录设备信息是否为IphoneX state.isIphone = variable }, setLoginType(state, variable) { // 记录登录跳转类型 state.isLoginType = variable console.log(state.isLoginType) }, setLoginOrderId(state, variable) { // 记录跳转订单ID state.isLoginOrderId = variable console.log(state.isLoginOrderId) } }, actions: { setVariableFun: function(context, vData) { context.commit('setChangeVar', vData) }, setIsIphoneFun: function(context, vData) { context.commit('setIsIphone', vData) }, setActivityFn: function(context, vData) { context.commit('setActivity', vData) }, // setLoginTypeFn:function(context,vData){ // context.commit('setLoginType',vData) // } } }) export default store