balibabu
feat: remove loading from model and use DvaModel instead of redundant types such as kAModelType (#47)
362ec6c
raw
history blame
3.86 kB
import kbService from '@/services/kbService';
import { message } from 'antd';
import pick from 'lodash/pick';
import { DvaModel } from 'umi';
export interface KFModelState {
isShowCEFwModal: boolean;
isShowTntModal: boolean;
isShowSegmentSetModal: boolean;
tenantIfo: any;
data: any[];
}
const model: DvaModel<KFModelState> = {
namespace: 'kFModel',
state: {
isShowCEFwModal: false,
isShowTntModal: false,
isShowSegmentSetModal: false,
tenantIfo: {},
data: [],
},
reducers: {
updateState(state, { payload }) {
return {
...state,
...payload,
};
},
},
subscriptions: {
setup({ dispatch, history }) {
history.listen((location) => {});
},
},
effects: {
*createKf({ payload = {} }, { call, put }) {
const { data, response } = yield call(kbService.createKb, payload);
const { retcode, data: res, retmsg } = data;
if (retcode === 0) {
message.success('创建成功!');
}
},
*updateKf({ payload = {} }, { call, put }) {
const { data, response } = yield call(kbService.updateKb, payload);
const { retcode, data: res, retmsg } = data;
if (retcode === 0) {
message.success('修改成功!');
}
},
*getKfDetail({ payload = {}, callback }, { call, put }) {
const { data, response } = yield call(kbService.get_kb_detail, payload);
const { retcode, data: res, retmsg } = data;
if (retcode === 0) {
// localStorage.setItem('userInfo',res.)
callback && callback(res);
}
},
*getKfList({ payload = {} }, { call, put }) {
const { data, response } = yield call(
kbService.get_document_list,
payload,
);
const { retcode, data: res, retmsg } = data;
if (retcode === 0) {
yield put({
type: 'updateState',
payload: {
data: res,
},
});
}
},
*updateDocumentStatus({ payload = {} }, { call, put }) {
const { data, response } = yield call(
kbService.document_change_status,
pick(payload, ['doc_id', 'status']),
);
const { retcode, data: res, retmsg } = data;
if (retcode === 0) {
message.success('修改成功!');
put({
type: 'getKfList',
payload: { kb_id: payload.kb_id },
});
}
},
*document_rm({ payload = {} }, { call, put }) {
const { data, response } = yield call(kbService.document_rm, {
doc_id: payload.doc_id,
});
const { retcode, data: res, retmsg } = data;
if (retcode === 0) {
message.success('删除成功!');
put({
type: 'getKfList',
payload: { kb_id: payload.kb_id },
});
}
},
*document_create({ payload = {} }, { call, put }) {
const { data, response } = yield call(kbService.document_create, payload);
const { retcode, data: res, retmsg } = data;
if (retcode === 0) {
put({
type: 'kFModel/updateState',
payload: {
isShowCEFwModal: false,
},
});
message.success('创建成功!');
}
return retcode;
},
*document_change_parser({ payload = {} }, { call, put }) {
const { data, response } = yield call(
kbService.document_change_parser,
payload,
);
const { retcode, data: res, retmsg } = data;
if (retcode === 0) {
put({
type: 'updateState',
payload: {
isShowSegmentSetModal: false,
},
});
message.success('修改成功!');
}
return retcode;
},
},
};
export default model;