diff --git a/healthlink-his-server/healthlink-his-application/src/main/java/com/healthlink/his/web/knowledgegraph/dto/ImportResultDto.java b/healthlink-his-server/healthlink-his-application/src/main/java/com/healthlink/his/web/knowledgegraph/dto/ImportResultDto.java new file mode 100644 index 000000000..25beaf14b --- /dev/null +++ b/healthlink-his-server/healthlink-his-application/src/main/java/com/healthlink/his/web/knowledgegraph/dto/ImportResultDto.java @@ -0,0 +1,11 @@ +package com.healthlink.his.web.knowledgegraph.dto; + +import lombok.Data; + +@Data +public class ImportResultDto { + private int successCount; + private int failCount; + private int totalRows; + private String message; +} diff --git a/healthlink-his-ui/src/api/knowledgegraph/api.js b/healthlink-his-ui/src/api/knowledgegraph/api.js index 1c8da3dbc..e8660c23e 100644 --- a/healthlink-his-ui/src/api/knowledgegraph/api.js +++ b/healthlink-his-ui/src/api/knowledgegraph/api.js @@ -103,3 +103,43 @@ export function getPathwayPage(params) { export function getPathwaySteps(id) { return request({ url: `/knowledgegraph/pathway/${id}/steps`, method: 'get' }) } + +// KG3: 推理引擎 +export function suggestDiagnosis(data) { + return request({ url: '/knowledgegraph/reasoning/diagnosis', method: 'post', data }) +} + +export function suggestExaminations(data) { + return request({ url: '/knowledgegraph/reasoning/examination', method: 'post', data }) +} + +export function checkDrugInteractions(data) { + return request({ url: '/knowledgegraph/reasoning/drug-interaction', method: 'post', data }) +} + +export function suggestPathway(diseaseCode) { + return request({ url: `/knowledgegraph/reasoning/pathway/${diseaseCode}`, method: 'get' }) +} + +// KG4: 数据导入 +export function importDisease(file) { + const formData = new FormData() + formData.append('file', file) + return request({ url: '/knowledgegraph/import/disease', method: 'post', data: formData, headers: { 'Content-Type': 'multipart/form-data' } }) +} + +export function importDrug(file) { + const formData = new FormData() + formData.append('file', file) + return request({ url: '/knowledgegraph/import/drug', method: 'post', data: formData, headers: { 'Content-Type': 'multipart/form-data' } }) +} + +export function importRelations(file) { + const formData = new FormData() + formData.append('file', file) + return request({ url: '/knowledgegraph/import/relation', method: 'post', data: formData, headers: { 'Content-Type': 'multipart/form-data' } }) +} + +export function downloadImportTemplate(type) { + return request({ url: `/knowledgegraph/import/template/${type}`, method: 'get', responseType: 'blob' }) +} diff --git a/healthlink-his-ui/src/views/knowledgegraph/DataImport.vue b/healthlink-his-ui/src/views/knowledgegraph/DataImport.vue new file mode 100644 index 000000000..e1dcad9e7 --- /dev/null +++ b/healthlink-his-ui/src/views/knowledgegraph/DataImport.vue @@ -0,0 +1,134 @@ + + + + +