| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- import { IKnowledge } from '@/interfaces/database/knowledge';
- import kbService from '@/services/knowledge-service';
- import { DvaModel } from 'umi';
-
- export interface KnowledgeModelState {
- data: IKnowledge[];
- knowledge: IKnowledge;
- }
-
- const model: DvaModel<KnowledgeModelState> = {
- namespace: 'knowledgeModel',
- state: {
- data: [],
- knowledge: {} as IKnowledge,
- },
- reducers: {
- updateState(state, { payload }) {
- return {
- ...state,
- ...payload,
- };
- },
- setKnowledge(state, { payload }) {
- return {
- ...state,
- knowledge: payload,
- };
- },
- },
- effects: {
- *rmKb({ payload = {} }, { call, put }) {
- const { data } = yield call(kbService.rmKb, payload);
- const { retcode } = data;
- if (retcode === 0) {
- yield put({
- type: 'getList',
- payload: {},
- });
- }
- },
- *getList({ payload = {} }, { call, put }) {
- const { data } = yield call(kbService.getList, payload);
- const { retcode, data: res } = data;
-
- if (retcode === 0) {
- yield put({
- type: 'updateState',
- payload: {
- data: res,
- },
- });
- }
- },
- *getKnowledgeDetail({ payload = {} }, { call, put }) {
- const { data } = yield call(kbService.get_kb_detail, payload);
- if (data.retcode === 0) {
- yield put({ type: 'setKnowledge', payload: data.data });
- }
- return data.retcode;
- },
- },
- };
- export default model;
|