mirror of
https://git.mirrors.martin98.com/https://github.com/infiniflow/ragflow.git
synced 2025-06-04 11:24:00 +08:00

### What problem does this PR solve? fix: after logging out and entering the knowledge base page again, the data before still exists #1306 ### Type of change - [x] Bug Fix (non-breaking change which fixes an issue)
50 lines
1.3 KiB
TypeScript
50 lines
1.3 KiB
TypeScript
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: {
|
|
*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;
|