zn-cloud-wcs/admin-web/src/models/resourceList.js
2019-03-05 21:18:54 +08:00

66 lines
1.4 KiB
JavaScript

import { message } from 'antd';
import { addResource, updateResource, deleteResource, resourceTree } from '@/services/resource';
export default {
namespace: 'resourceList',
state: {
list: [],
},
effects: {
*add({ payload }, { call, put }) {
const { callback, body } = payload;
const response = yield call(addResource, body);
if (callback) {
callback(response);
}
yield put({
type: 'tree',
payload: {},
});
},
*update({ payload }, { call, put }) {
const { callback, body } = payload;
const response = yield call(updateResource, body);
if (callback) {
callback(response);
}
yield put({
type: 'tree',
payload: {},
});
},
*delete({ payload }, { call, put }) {
const response = yield call(deleteResource, payload);
message.info('删除成功!');
yield put({
type: 'treeSuccess',
payload: {
list: response.data,
},
});
},
*tree({ payload }, { call, put }) {
const { queryParams } = payload;
const response = yield call(resourceTree, queryParams);
message.info('查询成功!');
yield put({
type: 'treeSuccess',
payload: {
list: response.data,
},
});
},
},
reducers: {
treeSuccess(state, { payload }) {
return {
...state,
...payload,
};
},
},
};