提交 ed26110a authored 作者: YunaiV's avatar YunaiV

前端:管理员模块重构初步完成

上级 b29844f0
...@@ -22,26 +22,37 @@ export default { ...@@ -22,26 +22,37 @@ export default {
state: { state: {
// 分页列表相关 // 分页列表相关
list: [], list: [],
searchParams: SEARCH_PARAMS_DEFAULT, listLoading: false,
pagination: PaginationHelper.defaultPaginationConfig, pagination: PaginationHelper.defaultPaginationConfig,
searchParams: SEARCH_PARAMS_DEFAULT,
// 添加 or 修改表单相关 // 添加 or 修改表单相关
modalVisible: false, modalVisible: false,
modalType: undefined, // 'add' or 'update' 表单 modalType: undefined, // 'add' or 'update' 表单
formVals: {}, // 当前表单值 formVals: {}, // 当前表单值
modalLoading: false,
// 分配角色表单相关 // 分配角色表单相关
roleList: [], roleList: [],
roleCheckedKeys: [], roleModalVisible: false,
roleCheckedKeys: [], // 此处的 Key ,就是角色编号
roleAssignLoading: false, roleAssignLoading: false,
}, },
effects: { effects: {
// 查询列表 // 查询列表
* query({ payload }, { call, put }) { * query({ payload }, { call, put }) {
// 显示加载中
yield put({
type: 'changeListLoading',
payload: true,
});
// 请求
const response = yield call(queryAdmin, payload); const response = yield call(queryAdmin, payload);
// 响应
yield put({ yield put({
type: 'querySuccess', type: 'setAll',
payload: { payload: {
list: response.data.list, list: response.data.list,
pagination: PaginationHelper.formatPagination(response.data, payload), pagination: PaginationHelper.formatPagination(response.data, payload),
...@@ -50,10 +61,24 @@ export default { ...@@ -50,10 +61,24 @@ export default {
} }
}, },
}); });
// 隐藏加载中
yield put({
type: 'changeListLoading',
payload: false,
});
}, },
* add({ payload }, { call, put }) { * add({ payload }, { call, put }) {
const { callback, body } = payload; const { callback, body } = payload;
// 显示加载中
yield put({
type: 'changeModalLoading',
payload: true,
});
// 请求
const response = yield call(addAdmin, body); const response = yield call(addAdmin, body);
// 响应
if (response.code === 0) { if (response.code === 0) {
if (callback) { if (callback) {
callback(response); callback(response);
...@@ -66,10 +91,24 @@ export default { ...@@ -66,10 +91,24 @@ export default {
}, },
}); });
} }
// 隐藏加载中
yield put({
type: 'changeModalLoading',
payload: false,
});
}, },
* update({ payload }, { call, put }) { * update({ payload }, { call, put }) {
const { callback, body } = payload; const { callback, body } = payload;
// 显示加载中
yield put({
type: 'changeModalLoading',
payload: true,
});
// 请求
const response = yield call(updateAdmin, body); const response = yield call(updateAdmin, body);
// 响应
if (response.code === 0) { if (response.code === 0) {
if (callback) { if (callback) {
callback(response); callback(response);
...@@ -82,91 +121,132 @@ export default { ...@@ -82,91 +121,132 @@ export default {
}, },
}); });
} }
// 隐藏加载中
yield put({
type: 'changeModalLoading',
payload: false,
});
}, },
*updateStatus({ payload }, { call, put }) {
const { body, queryParams } = payload; * updateStatus({ payload }, { call, put }) {
yield call(updateAdminStatus, body); // 请求
message.info('更新成功!'); const response = yield call(updateAdminStatus, payload);
// 响应
if (response.code === 0) {
message.info('更新状态成功!');
// 刷新列表
yield put({ yield put({
type: 'query', type: 'query',
payload: { payload: {
...queryParams, ...PaginationHelper.defaultPayload
}, },
}); });
}
}, },
*delete({ payload }, { call, put }) {
const { queryParams, body } = payload; * delete({ payload }, { call, put }) {
yield call(deleteAdmin, body); // 请求
const response = yield call(deleteAdmin, payload);
// 响应
if (response.code === 0) {
message.info('删除成功!'); message.info('删除成功!');
// 刷新列表
yield put({ yield put({
type: 'query', type: 'query',
payload: { payload: {
...queryParams, ...PaginationHelper.defaultPayload
}, },
}); });
}
}, },
*queryRoleList({ payload }, { call, put }) { * queryRoleList({ payload }, { call, put }) {
// 显示加载中
yield put({ yield put({
type: 'changeRoleAssignLoading', type: 'changeRoleAssignLoading',
payload: true, payload: true,
}); });
// 请求
const response = yield call(queryAdminRoleList, payload); const response = yield call(queryAdminRoleList, payload);
// 响应
if (response.code === 0) {
const roleList = response.data; const roleList = response.data;
const roleTreeData = buildTreeNode(roleList, 'name', 'id'); const roleTreeData = buildTreeNode(roleList, 'name', 'id');
const roleCheckedKeys = findCheckedKeys(roleList); const roleCheckedKeys = findCheckedKeys(roleList);
yield put({ yield put({
type: 'querySuccess', type: 'setAll',
payload: { payload: {
roleList: roleTreeData, roleList: roleTreeData,
roleCheckedKeys, roleCheckedKeys,
}, },
}); });
}
// 隐藏加载中
yield put({ yield put({
type: 'changeRoleAssignLoading', type: 'changeRoleAssignLoading',
payload: false, payload: false,
}); });
}, },
*roleAssign({ payload }, { call }) {
const params = { * roleAssign({ payload }, { call, put }) {
id: payload.id, const { callback, body } = payload;
roleIds: arrayToStringParams(payload.roleIds), // 显示加载中
}; yield put({
const response = yield call(adminRoleAssign, params); type: 'changeRoleAssignLoading',
payload: true,
});
// 请求
const response = yield call(adminRoleAssign, {
id: body.id,
roleIds: arrayToStringParams(body.roleIds),
});
// 响应
if (response.code === 0) { if (response.code === 0) {
message.info('操作成功!'); if (callback) {
callback(response);
} }
}
// 隐藏加载中
yield put({
type: 'changeRoleAssignLoading',
payload: false,
});
}, },
}, },
reducers: { reducers: {
querySuccess(state, { payload }) {
return {
...state,
...payload,
};
},
changeRoleCheckedKeys(state, { payload }) { changeRoleCheckedKeys(state, { payload }) {
return { return {
...state, ...state,
roleCheckedKeys: payload, roleCheckedKeys: payload,
}; };
}, },
// 修改加载中的状态
changeRoleAssignLoading(state, { payload }) { changeRoleAssignLoading(state, { payload }) {
return { return {
...state, ...state,
roleAssignLoading: payload, roleAssignLoading: payload,
}; };
}, },
setAll(state, { payload }) { changeModalLoading(state, { payload }) {
console.log('setAll'); return {
console.log({
...state, ...state,
...payload, modalLoading: payload,
}); };
},
changeListLoading(state, { payload }) {
return {
...state,
listLoading: payload,
};
},
// 设置所有属性
setAll(state, { payload }) {
return { return {
...state, ...state,
...payload, ...payload,
......
...@@ -6,7 +6,8 @@ export function buildTreeNode(nodes, titleKey, nodeKey) { ...@@ -6,7 +6,8 @@ export function buildTreeNode(nodes, titleKey, nodeKey) {
if (item.children) { if (item.children) {
res.children = buildTreeNode(item.children, titleKey, nodeKey); res.children = buildTreeNode(item.children, titleKey, nodeKey);
} }
res.title = `${item.id}-${item[titleKey]}`; // res.title = `${item.id}-${item[titleKey]}`;
res.title = `${item[titleKey]}`;
res.key = item[nodeKey]; res.key = item[nodeKey];
return res; return res;
}); });
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论