|
import { IKnowledge } from '@/interfaces/database/knowledge'; |
|
import i18n from '@/locales/config'; |
|
import kbService from '@/services/knowledge-service'; |
|
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; |
|
|