import md5 from 'md5'
|
import moment from 'moment'
|
import * as Type from './action-type'
|
|
let _collapse = localStorage.getItem('collapse') === 'true'
|
let _level = 10
|
let _Mlevel = sessionStorage.getItem('Member_Level')
|
|
if (_Mlevel) {
|
if (_Mlevel === md5('mksoft' + moment().format('YYYYMM') + 10)) {
|
_level = 10
|
} else if (_Mlevel === md5('mksoft' + moment().format('YYYYMM') + 20)) {
|
_level = 20
|
} else if (_Mlevel === md5('mksoft' + moment().format('YYYYMM') + 30)) {
|
_level = 30
|
}
|
}
|
|
let defaultState = {
|
selectedMainMenu: '', // 已选主菜单
|
tabviews: [], // 导航栏
|
collapse: _collapse, // 是否收起侧边栏导航
|
isiframe: false, // 是否为iframe窗口
|
debug: false, // 知否可以复制菜单参数, 是否可进入编辑模式
|
editState: false, // 是否为编辑状态,值为false、true
|
editLevel: null, // 编辑菜单级别,值为level1、level2、level3。。。
|
refreshTab: null, // 刷新tabview页面信息
|
permRoles: [], // 用户角色列表
|
permAction: {}, // 用户按钮权限
|
permMenus: {}, // 用户三级菜单权限
|
permFuncField: [], // 系统模块
|
sysRoles: [], // 系统角色列表
|
dataManager: false, // 数据管理员
|
memberLevel: _level // 会员等级
|
}
|
|
// 用户消息
|
export default (state = defaultState, action = {}) => {
|
switch (action.type) {
|
case Type.Toggle_COLLAPSE:
|
// 切换菜单栏展开合并状态
|
return {
|
...state,
|
collapse: action.collapse
|
}
|
case Type.MODIFY_MAINMENU:
|
// 切换主菜单
|
return {
|
...state,
|
selectedMainMenu: action.selectedMainMenu
|
}
|
case Type.MODIFY_TABVIEW:
|
// tab页改变
|
return {
|
...state,
|
tabviews: action.tabviews
|
}
|
case Type.TOGGLE_ISIFRAME:
|
// 切换是否为iframe状态
|
return {
|
...state,
|
isiframe: action.isiframe
|
}
|
case Type.RESET_STATE:
|
// 重置默认参数(退出时)
|
return {
|
...state,
|
...{
|
selectedMainMenu: '',
|
tabviews: [],
|
collapse: false,
|
isiframe: false
|
}
|
}
|
case Type.RESET_DEBUG:
|
// 切换debug状态
|
return {
|
...state,
|
debug: true
|
}
|
case Type.REFRESH_TABVIEW:
|
// 刷新tab页面
|
return {
|
...state,
|
refreshTab: action.refreshTab
|
}
|
case Type.RESET_EDITSTATE:
|
// 重置编辑状态
|
if (action.editState) {
|
state.tabviews = []
|
} else {
|
state.tabviews = [{
|
MenuID: '1576117946681plembmkk9akkv8sn0vtdfdsfaf',
|
MenuName: '首页',
|
MenuNo: 'MESOrderDetailMwe',
|
selected: true,
|
text: '首页',
|
type: 'Home'
|
}]
|
}
|
return {
|
...state,
|
editState: action.editState,
|
collapse: false
|
}
|
case Type.RESET_EDITLEVEL:
|
// 重置编辑级别
|
return {
|
...state,
|
editLevel: action.editLevel
|
}
|
case Type.INIT_ACTIONPERMISSION:
|
// 初始化按钮权限
|
return {
|
...state,
|
permRoles: action.permRoles,
|
permAction: action.permAction
|
}
|
case Type.INIT_PERMISSION:
|
// 初始化角色列表及创建存储过程可用字段
|
return {
|
...state,
|
sysRoles: action.sysRoles,
|
permFuncField: action.permFuncField
|
}
|
case Type.INIT_MENUPERMISSION:
|
// 初始化三级菜单权限
|
return {
|
...state,
|
permMenus: action.permMenus
|
}
|
case Type.MODIFY_MEMBERLEVEL:
|
// 修改会员等级
|
return {
|
...state,
|
memberLevel: action.memberLevel
|
}
|
case Type.MODIFY_DATAMANAGER:
|
// 修改数据权限
|
return {
|
...state,
|
dataManager: action.dataManager
|
}
|
case Type.LOGOUT:
|
return {
|
selectedMainMenu: '',
|
tabviews: [],
|
collapse: localStorage.getItem('collapse') === 'true',
|
isiframe: false,
|
debug: false,
|
editState: false,
|
editLevel: null,
|
refreshTab: null,
|
permAction: {},
|
permFuncField: [],
|
sysRoles: [],
|
permMenus: {}
|
}
|
default:
|
return state
|
}
|
}
|