|
@@ -1,8 +1,10 @@
|
|
|
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.dto.DictionaryInfoDTO;
|
|
|
+import com.diagbot.dto.KlConceptDetailDTO;
|
|
|
import com.diagbot.dto.KlConceptStaticDTO;
|
|
|
import com.diagbot.dto.StaticKnowledgeDTO;
|
|
|
import com.diagbot.dto.StaticKnowledgeDetailDTO;
|
|
@@ -22,6 +24,8 @@ import com.diagbot.util.DateUtil;
|
|
|
import com.diagbot.util.EntityUtil;
|
|
|
import com.diagbot.util.ListUtil;
|
|
|
import com.diagbot.util.StringUtil;
|
|
|
+import com.diagbot.vo.ChangeStatusVO;
|
|
|
+import com.diagbot.vo.IdVO;
|
|
|
import com.diagbot.vo.KlConceptStaticPageVO;
|
|
|
import com.diagbot.vo.KlConceptStaticVO;
|
|
|
import com.diagbot.vo.StaticKnowledgeVO;
|
|
@@ -30,6 +34,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.beans.factory.annotation.Qualifier;
|
|
|
import org.springframework.stereotype.Component;
|
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
import java.util.Arrays;
|
|
|
import java.util.Date;
|
|
|
import java.util.HashMap;
|
|
@@ -293,6 +298,84 @@ public class KlConceptStaticFacade extends KlConceptStaticServiceImpl {
|
|
|
return true;
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 启用禁用
|
|
|
+ *
|
|
|
+ * @param changeStatusVO
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public Boolean changeStatus(ChangeStatusVO changeStatusVO) {
|
|
|
+ //String userId = SysUserUtils.getCurrentPrincipleID();
|
|
|
+ if (changeStatusVO.getUserId() == null) {
|
|
|
+ changeStatusVO.setUserId(0L);
|
|
|
+ }
|
|
|
+ Date now = DateUtil.now();
|
|
|
+ //更新主表
|
|
|
+ this.update(new UpdateWrapper<KlConceptStatic>()
|
|
|
+ .eq("concept_id", changeStatusVO.getId())
|
|
|
+ .eq("is_deleted", IsDeleteEnum.N.getKey())
|
|
|
+ .set("gmt_modified", now)
|
|
|
+ .set("modifier", changeStatusVO.getUserId())
|
|
|
+ .set("status", changeStatusVO.getStatus()));
|
|
|
+ //更新明细表
|
|
|
+ klConceptDetailService.update(new UpdateWrapper<KlConceptDetail>()
|
|
|
+ .eq("concept_id", changeStatusVO.getId())
|
|
|
+ .eq("is_deleted", IsDeleteEnum.N.getKey())
|
|
|
+ .set("gmt_modified", now)
|
|
|
+ .set("modifier", changeStatusVO.getUserId()));
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 根据术语id获取静态信息
|
|
|
+ *
|
|
|
+ * @param idVO
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public KlConceptStaticDTO getRecordById(IdVO idVO) {
|
|
|
+ KlConceptStaticDTO klConceptStaticDTO = new KlConceptStaticDTO();
|
|
|
+
|
|
|
+ List<DictionaryInfoDTO> dicTypeName = dictionaryFacade.getListByGroupType(13);
|
|
|
+ Map<String, String> dicTypeNameMap
|
|
|
+ = EntityUtil.makeMapWithKeyValue(dicTypeName, "val", "name");
|
|
|
+
|
|
|
+ KlConcept concept = klConceptFacade.getById(idVO.getId());
|
|
|
+ if (concept == null) {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+
|
|
|
+ KlConceptStatic staticInfo = this.getOne(new QueryWrapper<KlConceptStatic>()
|
|
|
+ .eq("concept_id", idVO.getId()), false);
|
|
|
+
|
|
|
+ if (staticInfo == null) {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+
|
|
|
+ List<KlConceptDetail> details = klConceptDetailFacade.list(new QueryWrapper<KlConceptDetail>()
|
|
|
+ .eq("is_deleted", IsDeleteEnum.N.getKey())
|
|
|
+ .eq("concept_id", idVO.getId())
|
|
|
+ .orderByAsc("order_no"));
|
|
|
+
|
|
|
+ klConceptStaticDTO.setId(concept.getId());
|
|
|
+ klConceptStaticDTO.setName(concept.getLibName());
|
|
|
+ klConceptStaticDTO.setType(convertType(concept.getLibType(), 2));
|
|
|
+ klConceptStaticDTO.setTypeName(dicTypeNameMap.get(LexiconEnum.getName(concept.getLibType())));
|
|
|
+
|
|
|
+ klConceptStaticDTO.setStatus(staticInfo.getStatus());
|
|
|
+ klConceptStaticDTO.setGmtModified(staticInfo.getGmtModified());
|
|
|
+ klConceptStaticDTO.setModifier(staticInfo.getModifier());
|
|
|
+ klConceptStaticDTO.setClinicalPathwayName(staticInfo.getClinicalPathwayName());
|
|
|
+ klConceptStaticDTO.setNoticeName(staticInfo.getNoticeName());
|
|
|
+
|
|
|
+ klConceptStaticDTO.setTitle(ListUtil.isNotEmpty(details)
|
|
|
+ ? details.stream().map(i -> i.getTitle()).collect(Collectors.joining("、"))
|
|
|
+ : "");
|
|
|
+ klConceptStaticDTO.setDetails(ListUtil.isNotEmpty(details)
|
|
|
+ ? BeanUtil.listCopyTo(details, KlConceptDetailDTO.class)
|
|
|
+ : new ArrayList<>());
|
|
|
+ return klConceptStaticDTO;
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
public Integer convertType(Integer type, Integer flag) {
|
|
|
Integer retType = null;
|