File size: 1,644 Bytes
f3d0ebd
88e5a61
6b8fc2c
362ec6c
 
6b8fc2c
362ec6c
fad2ec7
362ec6c
f3d0ebd
fad2ec7
362ec6c
 
6b8fc2c
 
 
362ec6c
f3d0ebd
362ec6c
 
 
 
 
 
 
 
f3d0ebd
 
362ec6c
6b8fc2c
 
f3d0ebd
362ec6c
 
6b8fc2c
88e5a61
6b8fc2c
eb38196
6b8fc2c
362ec6c
 
f3d0ebd
6b8fc2c
f3d0ebd
88e5a61
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
58
import { IKnowledge } from '@/interfaces/database/knowledge';
import i18n from '@/locales/config';
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(i18n.t('message.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(i18n.t('message.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;