|
@@ -7,12 +7,8 @@ import com.diagbot.api.ImportExcel;
|
|
|
import com.diagbot.dto.ConceptDTO;
|
|
|
import com.diagbot.dto.LibraryInfoDTO;
|
|
|
import com.diagbot.entity.*;
|
|
|
-//import com.diagbot.dto.RelationDTO;
|
|
|
-//import com.diagbot.exception.CommonErrorCode;
|
|
|
-//import com.diagbot.exception.CommonException;
|
|
|
import com.diagbot.service.impl.ConceptServiceImpl;
|
|
|
import com.diagbot.vo.AmendTermVo;
|
|
|
-//import com.diagbot.vo.MedicalVo;
|
|
|
import com.diagbot.vo.TermVo;
|
|
|
import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
@@ -21,11 +17,8 @@ import org.springframework.web.bind.annotation.RequestBody;
|
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
|
|
|
|
|
|
|
-import java.time.LocalDateTime;
|
|
|
import java.util.ArrayList;
|
|
|
-import java.util.HashMap;
|
|
|
import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
|
|
|
|
|
|
/**
|
|
@@ -83,116 +76,7 @@ public class ConceptFacade extends ConceptServiceImpl {
|
|
|
|
|
|
|
|
|
/**
|
|
|
- * 获取医学术语静态信息
|
|
|
- *
|
|
|
- * @param termvo
|
|
|
- * @return ConceptDTO
|
|
|
- *
|
|
|
- public ConceptDTO getConceptKnowledge(@RequestBody TermVo termvo) {
|
|
|
-
|
|
|
- LibraryInfo libraryInfo;
|
|
|
- List<LibraryDetail> libraryDetails;
|
|
|
- TermVo termVo;
|
|
|
-
|
|
|
- ConceptDTO conceptDTO = getConcept(termvo);
|
|
|
-
|
|
|
- if (conceptDTO != null) {
|
|
|
- // 获取与医学术语的基本信息
|
|
|
- QueryWrapper<LibraryInfo> query = new QueryWrapper<>();
|
|
|
- query.eq("concept_id", conceptDTO.getId());
|
|
|
- query.eq("is_concept", 1);
|
|
|
- libraryInfo = libraryinfoFacade.getLibraryInfor(query);
|
|
|
-
|
|
|
- if (libraryInfo != null) {
|
|
|
- conceptDTO.setName(libraryInfo.getName());
|
|
|
-
|
|
|
- // 获取与术语相关的静态知识
|
|
|
- termVo = new TermVo();
|
|
|
- termVo.setConcept_id(conceptDTO.getId());
|
|
|
- termVo.setTerm(libraryInfo.getName());
|
|
|
- termVo.setType(libraryInfo.getType());
|
|
|
-
|
|
|
- libraryDetails = libraryDetailFacade.getLibraryDetail(termVo);
|
|
|
-
|
|
|
- if (libraryDetails != null) {
|
|
|
- conceptDTO.setInformation(libraryDetails);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- return conceptDTO;
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- /**
|
|
|
- * 获取术语医学信息
|
|
|
- *
|
|
|
- * @param termvo
|
|
|
- * @return ConceptDTO
|
|
|
- *
|
|
|
- public ConceptDTO getConceptMedInfo(@RequestBody TermVo termvo) {
|
|
|
- LibraryInfo libraryInfo;
|
|
|
-
|
|
|
- ConceptDTO conceptDTO = getConcept(termvo);
|
|
|
-
|
|
|
- if (conceptDTO != null) {
|
|
|
- // 获取与医学术语的基本信息
|
|
|
- QueryWrapper<LibraryInfo> query = new QueryWrapper<>();
|
|
|
- query.eq("concept_id", conceptDTO.getId());
|
|
|
- query.eq("is_concept", 1);
|
|
|
- libraryInfo = libraryinfoFacade.getLibraryInfor(query);
|
|
|
-
|
|
|
- if (libraryInfo != null) {
|
|
|
- conceptDTO.setName(libraryInfo.getName());
|
|
|
- // 获取与术语相关的临床医学信息
|
|
|
- QueryWrapper<Medical> medquery = new QueryWrapper<>();
|
|
|
- query.eq("concept_id", conceptDTO.getId());
|
|
|
- query.eq("name", termvo.getTerm());
|
|
|
- conceptDTO.setMedicalInfo(medicalFacade.getOne(medquery));
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- return conceptDTO;
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * 获取术语关系信息
|
|
|
- *
|
|
|
- * @param termvo
|
|
|
- * @return ConceptDTO
|
|
|
- *
|
|
|
- public ConceptDTO getConceptRelation(@RequestBody TermVo termvo) {
|
|
|
- LibraryInfo libraryInfo;
|
|
|
- TermVo termVo;
|
|
|
-
|
|
|
- ConceptDTO conceptDTO = getConcept(termvo);
|
|
|
- // 获取医学术语的基本信息
|
|
|
- if (conceptDTO != null) {
|
|
|
- // 获取与医学术语的基本信息
|
|
|
- QueryWrapper<LibraryInfo> query = new QueryWrapper<>();
|
|
|
- query.eq("concept_id", conceptDTO.getId());
|
|
|
- query.eq("is_concept", 1);
|
|
|
- libraryInfo = libraryinfoFacade.getLibraryInfor(query);
|
|
|
-
|
|
|
- if (libraryInfo != null) {
|
|
|
- conceptDTO.setName(libraryInfo.getName());
|
|
|
-
|
|
|
- termVo = new TermVo();
|
|
|
- termVo.setConcept_id(conceptDTO.getId());
|
|
|
-
|
|
|
- // 获取术语的所有上级信息
|
|
|
- conceptDTO.setRelations(relationFacade.getAllRelation(termvo));
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- return conceptDTO;
|
|
|
- }
|
|
|
- */
|
|
|
-
|
|
|
- /**
|
|
|
- * 获取医学术语列表
|
|
|
+ * 获取标准术语列表
|
|
|
*
|
|
|
* @param page
|
|
|
* @return IPage<LibraryDTO>
|
|
@@ -214,7 +98,7 @@ public class ConceptFacade extends ConceptServiceImpl {
|
|
|
ConceptDTO conceptDTO = new ConceptDTO();
|
|
|
|
|
|
TermVo termVo = new TermVo();
|
|
|
- termVo.setTerm(amendTermVo.getConcept());
|
|
|
+ termVo.setTerm(amendTermVo.getNewterm());
|
|
|
termVo.setType(amendTermVo.getNewtype());
|
|
|
|
|
|
LibraryInfo libraryInfo = libraryinfoFacade.upsertLibraryInfo(amendTermVo);
|
|
@@ -245,57 +129,6 @@ public class ConceptFacade extends ConceptServiceImpl {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- /*
|
|
|
- QueryWrapper<LibraryInfo> query = new QueryWrapper<>();
|
|
|
- query.eq("name", amendTermVo.getConcept());
|
|
|
- query.eq("type", amendTermVo.getNewtype());
|
|
|
- libraryInfo = libraryinfoFacade.getOne(query);
|
|
|
-
|
|
|
- // 如果术语不存在, 或者术语存在,但处于删除状态
|
|
|
- if (libraryInfo == null) {
|
|
|
- AmendTermVo amendconcept = new AmendTermVo();
|
|
|
- amendconcept.setOldterm("");
|
|
|
- amendconcept.setNewterm(amendTermVo.getConcept());
|
|
|
- amendconcept.setConcept(amendTermVo.getConcept());
|
|
|
- amendconcept.setNewtype(amendTermVo.getNewtype());
|
|
|
- libraryInfo = libraryinfoFacade.upsertLibraryInfo(amendconcept);
|
|
|
- }
|
|
|
- *
|
|
|
-
|
|
|
- // 如果术语已存在
|
|
|
-
|
|
|
- // 如果概念术语不存在,添加新术语,然后添加新的概念
|
|
|
- conceptDTO = getConcept(termVo);
|
|
|
- if (conceptDTO == null) {
|
|
|
- AmendTermVo amendconcept = new AmendTermVo();
|
|
|
- amendconcept.setOldterm(amendTermVo.getOldterm());
|
|
|
- amendconcept.setNewterm(amendTermVo.getConcept());
|
|
|
- amendconcept.setConcept("");
|
|
|
- amendconcept.setNewtype(amendTermVo.getNewtype());
|
|
|
- libraryinfoFacade.upsertLibraryInfo(amendconcept);
|
|
|
-
|
|
|
- Map<String, Object> params = new HashMap<>();
|
|
|
- params.put("name", amendTermVo.getConcept());
|
|
|
- params.put("type", amendTermVo.getNewtype());
|
|
|
- int libid = libraryinfoFacade.getLibraryInfor(params).getId().intValue();
|
|
|
-
|
|
|
-
|
|
|
- Concept concept = new Concept();
|
|
|
- concept.setLibId(libid);
|
|
|
- concept.setGmtCreated(LocalDateTime.now());
|
|
|
- this.saveOrUpdate(concept);
|
|
|
-
|
|
|
- termVo.setType(amendTermVo.getNewtype());
|
|
|
- conceptDTO = getConcept(termVo);
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- amendTermVo.setConcept_id(conceptDTO.getId());
|
|
|
- LibraryInfo libraryInfo = libraryinfoFacade.upsertLibraryInfo(amendTermVo);
|
|
|
- conceptDTO.setLibraryInfo(libraryInfo);
|
|
|
-
|
|
|
-// conceptDTO = updateConceptInfo(amendTermVo, conceptDTO);
|
|
|
- */
|
|
|
|
|
|
query = new QueryWrapper<>();
|
|
|
query.eq("name", amendTermVo.getNewterm());
|
|
@@ -316,26 +149,39 @@ public class ConceptFacade extends ConceptServiceImpl {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 更新或添加医学术语信息
|
|
|
+ * 删除医学术语信息
|
|
|
*
|
|
|
- * @param amendTermVo
|
|
|
- * @param conceptDTO
|
|
|
+ * @param termVo
|
|
|
* @return ConceptDTO
|
|
|
*
|
|
|
- public ConceptDTO updateConceptInfo(AmendTermVo amendTermVo, ConceptDTO conceptDTO) {
|
|
|
+ */
|
|
|
+ public ConceptDTO removeConceptInfo(TermVo termVo) {
|
|
|
+
|
|
|
+ ConceptDTO conceptDTO = getConcept(termVo);
|
|
|
|
|
|
- libraryDetailFacade.upsertConceptKnowledge(amendTermVo);
|
|
|
- conceptDTO.setInformation(amendTermVo.getInformation());
|
|
|
+ if (conceptDTO == null) {
|
|
|
+ conceptDTO = new ConceptDTO();
|
|
|
+ String msg = "概念\"" + termVo.getTerm() + "\"不存在!";
|
|
|
+ conceptDTO.setMessage(new ArrayList<String>());
|
|
|
+ conceptDTO.getMessage().add(msg);
|
|
|
|
|
|
- medicalFacade.upsertMedicalInfo(amendTermVo);
|
|
|
- conceptDTO.setMedicalInfo(amendTermVo.getMedicalInfo());
|
|
|
+ return conceptDTO;
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ conceptDTO = libraryDetailFacade.getConceptKnowledge(termVo);
|
|
|
+ if (conceptDTO.getInformation() != null && conceptDTO.getInformation().size() > 0) {
|
|
|
+ String msg = "概念\"" + termVo.getTerm() + "\"的静态知识还存在!";
|
|
|
+ conceptDTO.setMessage(new ArrayList<String>());
|
|
|
+ conceptDTO.getMessage().add(msg);
|
|
|
+
|
|
|
+ return conceptDTO;
|
|
|
+ }
|
|
|
|
|
|
- relationFacade.upsertRelationInfo(amendTermVo);
|
|
|
- conceptDTO.setRelations(amendTermVo.getRelations());
|
|
|
+ }
|
|
|
|
|
|
return conceptDTO;
|
|
|
}
|
|
|
- */
|
|
|
+
|
|
|
|
|
|
|
|
|
|