File size: 1,576 Bytes
f3d0ebd
6b8fc2c
362ec6c
 
6b8fc2c
362ec6c
fad2ec7
362ec6c
f3d0ebd
fad2ec7
362ec6c
 
6b8fc2c
 
 
362ec6c
f3d0ebd
362ec6c
 
 
 
 
 
 
 
f3d0ebd
 
362ec6c
6b8fc2c
 
f3d0ebd
362ec6c
 
6b8fc2c
e55650e
6b8fc2c
eb38196
6b8fc2c
362ec6c
 
f3d0ebd
6b8fc2c
f3d0ebd
e55650e
6b8fc2c
 
362ec6c
 
f3d0ebd
 
 
362ec6c
6b8fc2c
 
 
362ec6c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
import { IKnowledge } from '@/interfaces/database/knowledge';
import kbService from '@/services/kbService';
import { message } from 'antd';
import { DvaModel } from 'umi';

export interface KSModelState {
  isShowPSwModal: boolean;
  tenantIfo: any;
  knowledgeDetails: IKnowledge;
}

const model: DvaModel<KSModelState> = {
  namespace: 'kSModel',
  state: {
    isShowPSwModal: false,
    tenantIfo: {},
    knowledgeDetails: {} as any,
  },
  reducers: {
    updateState(state, { payload }) {
      return {
        ...state,
        ...payload,
      };
    },
    setKnowledgeDetails(state, { payload }) {
      return { ...state, knowledgeDetails: payload };
    },
  },
  effects: {
    *createKb({ payload = {} }, { call }) {
      const { data } = yield call(kbService.createKb, payload);
      const { retcode } = data;
      if (retcode === 0) {
        message.success('Created!');
      }
      return data;
    },
    *updateKb({ payload = {} }, { call, put }) {
      const { data } = yield call(kbService.updateKb, payload);
      const { retcode } = data;
      if (retcode === 0) {
        yield put({ type: 'getKbDetail', payload: { kb_id: payload.kb_id } });
        message.success('Updated!');
      }
    },
    *getKbDetail({ payload = {} }, { call, put }) {
      const { data } = yield call(kbService.get_kb_detail, payload);
      if (data.retcode === 0) {
        yield put({ type: 'setKnowledgeDetails', payload: data.data });
      }
      return data;
    },
  },
};
export default model;