76 lines
3.0 KiB
JavaScript
76 lines
3.0 KiB
JavaScript
|
|
// +----------------------------------------------------------------------
|
|||
|
|
// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
|
|||
|
|
// +----------------------------------------------------------------------
|
|||
|
|
// | Copyright (c) 2016~2026 https://www.crmeb.com All rights reserved.
|
|||
|
|
// +----------------------------------------------------------------------
|
|||
|
|
// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
|
|||
|
|
// +----------------------------------------------------------------------
|
|||
|
|
// | Author: CRMEB Team <admin@crmeb.com>
|
|||
|
|
// +----------------------------------------------------------------------
|
|||
|
|
import {memberLevelListApi, memberUserInfoApi} from "../../pages/member/memberApi";
|
|||
|
|
import Vue from "vue";
|
|||
|
|
import {getMerchantNavigationApi} from "../../api/merchant";
|
|||
|
|
export default {
|
|||
|
|
state(){
|
|||
|
|
return {
|
|||
|
|
merLevelMap: {}, // 店铺会员等级对象,存储各店铺的等级
|
|||
|
|
merMemberInfo: {}, // 商户会员信息
|
|||
|
|
merNavigation: {} // 商户底部菜单
|
|||
|
|
// memberLevelList: []
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
mutations:{
|
|||
|
|
// 商户会员等级列表
|
|||
|
|
SET_MEMBER_LEVEL(state, {merId, data}){
|
|||
|
|
Vue.set(state.merLevelMap, merId, data)
|
|||
|
|
},
|
|||
|
|
MEMBER_INFO(state, data){
|
|||
|
|
state.merMemberInfo = data
|
|||
|
|
// Vue.set(state.merMemberInfo, data)
|
|||
|
|
},
|
|||
|
|
// 商户底部菜单数据
|
|||
|
|
SET_MER_NAVIGATION(state, {merId, data}){
|
|||
|
|
Vue.set(state.merNavigation, merId, data)
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
actions: {
|
|||
|
|
//店铺会员信息
|
|||
|
|
async getMerMemberInfo({ state,commit }, merId = 0){
|
|||
|
|
try {
|
|||
|
|
let { data } = await memberUserInfoApi(merId)
|
|||
|
|
commit('MEMBER_INFO', data);
|
|||
|
|
return data;
|
|||
|
|
}catch (error) {
|
|||
|
|
throw error;
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
async getMemberLevelList({ state, dispatch }, merId = 0) { // 会员等级
|
|||
|
|
console.log('state.merLevelMap[merId]',state.merLevelMap[merId])
|
|||
|
|
if (state.merLevelMap[merId]) return state.merLevelMap[merId];
|
|||
|
|
return dispatch("fetchMemberLevel", merId);
|
|||
|
|
},
|
|||
|
|
async fetchMemberLevel({ commit }, merId = 0) {
|
|||
|
|
try {
|
|||
|
|
const { data } = await memberLevelListApi(merId);
|
|||
|
|
commit("SET_MEMBER_LEVEL", {merId, data});
|
|||
|
|
return data;
|
|||
|
|
}catch (error) {
|
|||
|
|
throw error;
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
// 店铺底部导航
|
|||
|
|
async getMerNavigation({ state, dispatch }, merId = 0) {
|
|||
|
|
if (state.merNavigation[merId]) return state.merNavigation[merId];
|
|||
|
|
return dispatch("fetchMerNavigation", merId);
|
|||
|
|
},
|
|||
|
|
async fetchMerNavigation({ commit }, merId = 0) {
|
|||
|
|
try {
|
|||
|
|
const { data } = await getMerchantNavigationApi(merId);
|
|||
|
|
commit("SET_MER_NAVIGATION", {merId, data});
|
|||
|
|
return data;
|
|||
|
|
}catch (error) {
|
|||
|
|
throw error;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|