|
@@ -3,10 +3,13 @@ package com.diagbot.facade;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
+import com.diagbot.client.NeoServiceClient;
|
|
|
import com.diagbot.dto.ConceptBaseDTO;
|
|
|
import com.diagbot.dto.DiagnoseDetailSaveDTO;
|
|
|
import com.diagbot.dto.DiagnosePageDTO;
|
|
|
import com.diagbot.dto.LibraryForDiagnoseDTO;
|
|
|
+import com.diagbot.dto.RespDTO;
|
|
|
+import com.diagbot.dto.VerifyDataDTO;
|
|
|
import com.diagbot.entity.CommonParam;
|
|
|
import com.diagbot.entity.Diagnose;
|
|
|
import com.diagbot.entity.DiagnoseDetail;
|
|
@@ -15,6 +18,7 @@ import com.diagbot.entity.DiagnoseQuestion;
|
|
|
import com.diagbot.entity.wrapper.DiagnoseWrapper;
|
|
|
import com.diagbot.enums.DiagnoseFieldEnum;
|
|
|
import com.diagbot.enums.DiagnoseTypeEnum;
|
|
|
+import com.diagbot.enums.HasQuestionEnum;
|
|
|
import com.diagbot.enums.InsertOrUpdateEnum;
|
|
|
import com.diagbot.enums.IsDeleteEnum;
|
|
|
import com.diagbot.enums.LexiconTypeEnum;
|
|
@@ -27,11 +31,13 @@ import com.diagbot.util.BeanUtil;
|
|
|
import com.diagbot.util.DateUtil;
|
|
|
import com.diagbot.util.DiagnoseTypeConvertUtil;
|
|
|
import com.diagbot.util.ListUtil;
|
|
|
+import com.diagbot.util.RespDTOUtil;
|
|
|
import com.diagbot.util.StringUtil;
|
|
|
import com.diagbot.vo.DeleteDiagnoseVO;
|
|
|
import com.diagbot.vo.DiagnosePageVO;
|
|
|
import com.diagbot.vo.DiseaseIndexVO;
|
|
|
import com.diagbot.vo.GetDiagnoseDetailVO;
|
|
|
+import com.diagbot.vo.NeoParamVO;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.beans.factory.annotation.Qualifier;
|
|
|
import org.springframework.stereotype.Component;
|
|
@@ -55,6 +61,8 @@ public class DiagnoseFacade extends DiagnoseServiceImpl {
|
|
|
DiagnoseDetailFacade diagnoseDetailFacade;
|
|
|
@Autowired
|
|
|
LibraryInfoFacade libraryInfoFacade;
|
|
|
+ @Autowired
|
|
|
+ NeoServiceClient neoServiceClient;
|
|
|
|
|
|
/**
|
|
|
* 诊断依据分页
|
|
@@ -91,7 +99,12 @@ public class DiagnoseFacade extends DiagnoseServiceImpl {
|
|
|
.set("neo_update", now)
|
|
|
.set("remark", deleteDiagnoseVO.getRemark()));
|
|
|
|
|
|
- // TODO 更新图谱
|
|
|
+ // 删除图谱数据
|
|
|
+ NeoParamVO neoParamVO = new NeoParamVO();
|
|
|
+ neoParamVO.setId(deleteDiagnoseVO.getId());
|
|
|
+ neoServiceClient.deleteNeo(neoParamVO);
|
|
|
+ RespDTO<Boolean> respDTO = neoServiceClient.updateNeo(neoParamVO);
|
|
|
+ RespDTOUtil.respNGDeal(respDTO, "删除图谱数据失败【远程调用】");
|
|
|
}
|
|
|
|
|
|
|
|
@@ -140,7 +153,8 @@ public class DiagnoseFacade extends DiagnoseServiceImpl {
|
|
|
*
|
|
|
* @param diagnoseWrapper
|
|
|
*/
|
|
|
- public List<DiagnoseDetail> verifyData(DiagnoseWrapper diagnoseWrapper) {
|
|
|
+ public VerifyDataDTO verifyData(DiagnoseWrapper diagnoseWrapper) {
|
|
|
+ VerifyDataDTO verifyDataDTO = new VerifyDataDTO();
|
|
|
CommonParam param = initCommonParam();
|
|
|
param.setPerson(diagnoseWrapper.getModifier());
|
|
|
|
|
@@ -255,10 +269,31 @@ public class DiagnoseFacade extends DiagnoseServiceImpl {
|
|
|
}
|
|
|
// 更新主表状态
|
|
|
this.update(new UpdateWrapper<Diagnose>()
|
|
|
- .set("has_question", ListUtil.isNotEmpty(diagnoseQuestionList)? 1 : 0)
|
|
|
+ .set("has_question", ListUtil.isNotEmpty(diagnoseQuestionList) ? HasQuestionEnum.HAS_QUESTION.getKey() : HasQuestionEnum.NO_QUESTION.getKey())
|
|
|
.eq("id", diagnose.getId())
|
|
|
);
|
|
|
- return diagnoseDetailList;
|
|
|
+ verifyDataDTO.setHasQuestion(ListUtil.isNotEmpty(diagnoseQuestionList) ? HasQuestionEnum.HAS_QUESTION.getKey() : HasQuestionEnum.NO_QUESTION.getKey());
|
|
|
+ verifyDataDTO.setDiagnoseDetailList(diagnoseDetailList);
|
|
|
+ return verifyDataDTO;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 更新图谱(先校验,再更新)
|
|
|
+ *
|
|
|
+ * @param diagnoseWrapper
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public void updateNeo(DiagnoseWrapper diagnoseWrapper) {
|
|
|
+ VerifyDataDTO verifyDataDTO = verifyData(diagnoseWrapper);
|
|
|
+ if (HasQuestionEnum.HAS_QUESTION.getKey() == verifyDataDTO.getHasQuestion()) {
|
|
|
+ throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "有问题词存在,不能更新图谱");
|
|
|
+ }
|
|
|
+ // 更新图谱对接接口
|
|
|
+ NeoParamVO neoParamVO = new NeoParamVO();
|
|
|
+ neoParamVO.setId(diagnoseWrapper.getId());
|
|
|
+ RespDTO<Boolean> respDTO = neoServiceClient.updateNeo(neoParamVO);
|
|
|
+ RespDTOUtil.respNGDeal(respDTO, "更新图谱数据失败【远程调用】");
|
|
|
}
|
|
|
|
|
|
|