UNPKG

nyx_server

Version:

Node内容发布

125 lines (104 loc) 3.03 kB
import * as types from "../constants/ActionTypes" var pagination = { total: 0, current: 1, pageSize:10 }; var userFormData = { id:{value:"",error:""}, name:{value:"" , error:""}, realName:{value:"" , error:""}, department :{value:"" , error:""}, contact:{value:"" , error:""}, password:{value:"",error:""}, confirmPassword:{value:"",error:""} } var initState = { userTable: { userList: [], pagination : pagination }, groupTable: { groupList: [], pagination : pagination }, permissionTable: { permissionList: [], pagination : pagination }, openAddUserState:false, addUserResult:null, userFormData:userFormData, groupFormData:{}, permissionFormData:{}, currentGroup:{}, currentUser:{}, currentPermission:{} } export default function auth(state=initState , action){ const type = action.type; switch(type){ case types.LOAD_USER_LIST: return userList(state , action); case types.LOAD_GROUP_LIST: return groupList(state , action); case types.GRANT_GROUP_RESOURCE: return groupList(state , action); case types.LOAD_PERMISSION_LIST: return permissionList(state , action); case types.OPEN_ADD_USER: return openAddUser(state , action); case types.SET_USER_FROM_FIELD: return setAddUserFormData(state , action); case types.CLEAN_ADD_USER_STATE: return cleanAddUserState(state , action); case types.ADD_USER: return addUser(state , action); } return state; } function addUser(state , action){ var _state = _.cloneDeep(state); if(!action.error){ var user = action.payload.user; _state.userTable.userList.push(user); _state.openAddUserState = false; _state.addUserResult = null; _state.userFormData = userFormData; return _state; }else{ _state.addUserResult = action.payload.message; } return _state; } function openAddUser(state , action){ var _state = _.cloneDeep(state); _state.openAddUserState = action.payload.opened; return _state; } function setAddUserFormData(state , action){ var _state = _.cloneDeep(state); var fieldName = action.payload.fieldName; var value = action.payload.value; var error = action.payload.error; _state.userFormData[action.payload.fieldName] = {value:value,error:error}; return _state; } function cleanAddUserState(state , action){ var _state = _.cloneDeep(state); _state.openAddUserState = false; _state.addUserResult = null; _state.userFormData = userFormData; return _state; } function userList(state , action){ var _state = _.cloneDeep(state); _state.userTable = action.payload return _state; } function groupList(state , action){ return state; } function permissionList(state , action){ return state; }