import { getToken } from '@/utils/auth' import { fetch } from '@/api/index' import i18n from '@/i18n' const state = { projectArr: [], // 项目 departmentArr: [], // 部门 roleArr: [], // 角色 pickerOptions: { shortcuts: [{ text: i18n.t('lately_week'), // 最近一周 onClick(picker) { const end = new Date() const start = new Date() start.setTime(start.getTime() - 3600 * 1000 * 24 * 7) picker.$emit('pick', [start, end]) } }, { text: i18n.t('lately_one_month'), // 最近一个月 onClick(picker) { const end = new Date() const start = new Date() start.setTime(start.getTime() - 3600 * 1000 * 24 * 30) picker.$emit('pick', [start, end]) } }, { text: i18n.t('lately_three_month'), // 最近三个月 onClick(picker) { const end = new Date() const start = new Date() start.setTime(start.getTime() - 3600 * 1000 * 24 * 90) picker.$emit('pick', [start, end]) } }] }, arrLunboStatus: [ { value: 0, name: '下架' }, { value: 1, name: '上架' } ], arrLunboLinkType: [ { value: 0, name: '外链' }, { value: 1, name: '小程序链接' }, { value: 2, name: '仅图片' } ], arrProductSaleType: [ { name: '预售', value: '1' }, { name: '现货', value: '2' } ], arrProductStatus: [ { name: '未上架', value: '0' }, { name: '已上架', value: '1' }, { name: '审核中', value: '2' }, { name: '审核未通过', value: '3' } ], arrHideAndShow: [ { name: '隐藏', value: '1' }, { name: '显示', value: '2' } ], videoPlayDialog: { src: '', show: false }, arrProductIsRecommend: [ { name: '否', value: 0 }, { name: '是', value: 1 } ], arrCategoryList: [], arrBrandList: [], arrMsgStatus: [ { name: '未发布', value: 0 }, { name: '已发布', value: 1 } ], arrVideoType: [], arrProductUnit: [ { name: '件', value: '1' }, { name: '只', value: '2' }, { name: '个', value: '3' } ], arrShopType: [ { name: '大户', value: 0 }, { name: '合作社', value: 1 }, { name: '家庭农场', value: 2 } ], objSystemConfig: {} } const mutations = { SET_PROJECTARR: (state, arr) => { state.projectArr = arr }, SET_DEPARTMENTARR: (state, arr) => { state.departmentArr = arr }, SET_ROLEARR: (state, arr) => { state.roleArr = arr }, SET_VIDEOPLAYDIALOG(state, obj) { state.videoPlayDialog = obj }, SET_ARRCATEGORYLIST(state, val) { state.arrCategoryList = val }, SET_ARRBRANDLIST(state, val) { state.arrBrandList = val }, SET_ARRVIDEOTYPE(state, val) { state.arrVideoType = val }, SET_OBJSYSTEMCONFIG(state, val) { state.objSystemConfig = val } } const actions = { async setProjectArr({ commit }) { if (!getToken()) return const data = await fetch('/api/auth/project/get_list', {}, 'get') if (data.code === 200) { commit('SET_PROJECTARR', data.data) } }, async setDepartmentArr({ commit }) { const data = await fetch('/api/auth/department/get_department_list', {}, 'get') if (data.code === 200) { commit('SET_DEPARTMENTARR', data.data) } }, async setRoleArr({ commit }) { const data = await fetch('/api/auth/role/get_role_list', {}, 'get') if (data.code === 200) { commit('SET_ROLEARR', data.data) } }, // 商品分类 async setCategoryList({ commit }) { const data = await fetch('/api/shop/product/category/list', {}) if (data.code === 200) { const temp = data.data.map(item => { return { ...item, name: item.category_name, value: item.id } }) commit('SET_ARRCATEGORYLIST', temp) } }, // 商品品牌 async setBrandlist({ commit }) { const data = await fetch('/api/shop/product/brand/list', {}) if (data.code === 200) { const temp = data.data.map(item => { return { ...item, name: item.brand_name, value: item.id } }) commit('SET_ARRBRANDLIST', temp) } }, // 视频类型接口 async setVideoType({ commit }) { const data = await fetch('/api/shop/video/type/list', {}) if (data.code === 200) { const temp = data.data.map(item => { return { ...item, name: item.type_name, value: item.id } }) commit('SET_ARRVIDEOTYPE', temp) } }, // 系统配置 async fetchSystemConfig({ commit }) { const data = await fetch('/api/system/config', {}) if (data.code === 200) { commit('SET_OBJSYSTEMCONFIG', data.data) } } } export default { namespaced: true, state, mutations, actions }