- website.js中新增配置项关闭顶部语言切换、主题切换、日志和设置按钮 - top组件根据配置动态隐藏语言切换和设置按钮,仅保留用户头像下拉 - 默认主题改为浅色theme-d2,需手动切换或清空旧主题存储 - 完全重写欢迎页,移除默认营销内容,设计为TMS-ERP业务仪表盘,使用纯SVG/CSS绘图 - 欢迎页包括用户问候、四个核心指标卡、运单趋势、货物类型分布、运输方式占比、预警提醒和快捷入口 - 快捷入口路径模拟真实路由,需与后端菜单一致 - 对车辆里程录入界面搜索栏做细节调整,添加更合理的搜索字段宽度 - user模块中默认用户头像改为jpg格式图片 - vite配置文件新增多项插件和生产环境下的压缩优化配置
94 lines
2.4 KiB
JavaScript
94 lines
2.4 KiB
JavaScript
import { setStore, getStore, removeStore } from 'utils/store';
|
|
import website from '@/config/website';
|
|
|
|
const DEFAULT_PRIMARY_COLOR = '#409eff';
|
|
const LEGACY_PRIMARY_COLORS = ['#2C77F1', '#5C9DF8'];
|
|
const storedColorName = getStore({ name: 'colorName' });
|
|
|
|
const common = {
|
|
state: {
|
|
language: getStore({ name: 'language' }) || 'zh-cn',
|
|
isCollapse: false,
|
|
isFullScren: false,
|
|
isMenu: true,
|
|
isSearch: false,
|
|
isRefresh: true,
|
|
isLock: getStore({ name: 'isLock' }),
|
|
colorName:
|
|
!storedColorName || LEGACY_PRIMARY_COLORS.includes(String(storedColorName).toUpperCase())
|
|
? DEFAULT_PRIMARY_COLOR
|
|
: storedColorName,
|
|
themeName: getStore({ name: 'themeName' }) || 'theme-d2',
|
|
lockPasswd: getStore({ name: 'lockPasswd' }) || '',
|
|
website: website,
|
|
setting: website.setting,
|
|
},
|
|
mutations: {
|
|
SET_LANGUAGE: (state, language) => {
|
|
state.language = language;
|
|
setStore({
|
|
name: 'language',
|
|
content: state.language,
|
|
});
|
|
},
|
|
SET_COLLAPSE: state => {
|
|
state.isCollapse = !state.isCollapse;
|
|
},
|
|
SET_IS_MENU: (state, menu) => {
|
|
state.isMenu = menu;
|
|
},
|
|
SET_IS_REFRESH: (state, refresh) => {
|
|
state.isRefresh = refresh;
|
|
},
|
|
SET_IS_SEARCH: (state, search) => {
|
|
state.isSearch = search;
|
|
},
|
|
SET_FULLSCREN: state => {
|
|
state.isFullScren = !state.isFullScren;
|
|
},
|
|
SET_LOCK: state => {
|
|
state.isLock = true;
|
|
setStore({
|
|
name: 'isLock',
|
|
content: state.isLock,
|
|
type: 'session',
|
|
});
|
|
},
|
|
SET_COLOR_NAME: (state, colorName) => {
|
|
state.colorName = colorName;
|
|
setStore({
|
|
name: 'colorName',
|
|
content: state.colorName,
|
|
});
|
|
},
|
|
SET_THEME_NAME: (state, themeName) => {
|
|
state.themeName = themeName;
|
|
setStore({
|
|
name: 'themeName',
|
|
content: state.themeName,
|
|
});
|
|
},
|
|
SET_LOCK_PASSWD: (state, lockPasswd) => {
|
|
state.lockPasswd = lockPasswd;
|
|
setStore({
|
|
name: 'lockPasswd',
|
|
content: state.lockPasswd,
|
|
type: 'session',
|
|
});
|
|
},
|
|
CLEAR_LOCK: state => {
|
|
state.isLock = false;
|
|
state.lockPasswd = '';
|
|
removeStore({
|
|
name: 'lockPasswd',
|
|
type: 'session',
|
|
});
|
|
removeStore({
|
|
name: 'isLock',
|
|
type: 'session',
|
|
});
|
|
},
|
|
},
|
|
};
|
|
export default common;
|