|
@@ -3,7 +3,6 @@ package com.diagbot.process;
|
|
import com.diagbot.biz.push.entity.Item;
|
|
import com.diagbot.biz.push.entity.Item;
|
|
import com.diagbot.biz.push.entity.Lis;
|
|
import com.diagbot.biz.push.entity.Lis;
|
|
import com.diagbot.biz.push.entity.Pacs;
|
|
import com.diagbot.biz.push.entity.Pacs;
|
|
-import com.diagbot.client.IcssPush5ServiceClient;
|
|
|
|
import com.diagbot.client.IcssPushServiceClient;
|
|
import com.diagbot.client.IcssPushServiceClient;
|
|
import com.diagbot.dto.*;
|
|
import com.diagbot.dto.*;
|
|
import com.diagbot.dto.icss.FeatureRate;
|
|
import com.diagbot.dto.icss.FeatureRate;
|
|
@@ -16,7 +15,6 @@ import com.diagbot.enums.StandConvertEnum;
|
|
import com.diagbot.facade.CommonFacade;
|
|
import com.diagbot.facade.CommonFacade;
|
|
import com.diagbot.facade.NeoFacade;
|
|
import com.diagbot.facade.NeoFacade;
|
|
import com.diagbot.facade.TranLisConfigIcssFacade;
|
|
import com.diagbot.facade.TranLisConfigIcssFacade;
|
|
-import com.diagbot.icss5.ConceptPushDTO;
|
|
|
|
import com.diagbot.util.ListUtil;
|
|
import com.diagbot.util.ListUtil;
|
|
import com.diagbot.vo.IcssVo;
|
|
import com.diagbot.vo.IcssVo;
|
|
import com.diagbot.vo.NeoPushVO;
|
|
import com.diagbot.vo.NeoPushVO;
|
|
@@ -25,7 +23,6 @@ import com.diagbot.vo.neoPushEntity.Diag;
|
|
import com.diagbot.vo.neoPushEntity.DiagVo;
|
|
import com.diagbot.vo.neoPushEntity.DiagVo;
|
|
import com.google.common.collect.Lists;
|
|
import com.google.common.collect.Lists;
|
|
import com.google.common.collect.Maps;
|
|
import com.google.common.collect.Maps;
|
|
-import org.apache.commons.collections.MapUtils;
|
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.springframework.beans.BeanUtils;
|
|
import org.springframework.beans.BeanUtils;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
@@ -50,53 +47,6 @@ public class PushProcess {
|
|
TranLisConfigIcssFacade tranLisConfigIcssFacade;
|
|
TranLisConfigIcssFacade tranLisConfigIcssFacade;
|
|
@Autowired
|
|
@Autowired
|
|
IcssPushServiceClient icssPushServiceClient;
|
|
IcssPushServiceClient icssPushServiceClient;
|
|
- @Autowired
|
|
|
|
- IcssPush5ServiceClient icssPush5ServiceClient;
|
|
|
|
-
|
|
|
|
- public PushDTO processIcss5(PushVO pushVo){
|
|
|
|
- List<String> ruleTypeList = Arrays.asList(pushVo.getFeatureType().split(","));
|
|
|
|
- Map<String, List<String>> typeWords = Maps.newHashMap();
|
|
|
|
- int length = pushVo.getLength();
|
|
|
|
- PushDTO pushDTO = new PushDTO();
|
|
|
|
- com.diagbot.icss5.PushVO icssVo = new com.diagbot.icss5.PushVO();
|
|
|
|
- BeanUtils.copyProperties(pushVo,icssVo);
|
|
|
|
- icssVo.setAge(new Double(pushVo.getAgeNum()).intValue());
|
|
|
|
- icssVo.setFeatureType("7");
|
|
|
|
- List<String> allDis = Lists.newArrayList();
|
|
|
|
- RespDTO<com.diagbot.icss5.PushDTO> annotation = icssPush5ServiceClient.getAnnotation(icssVo);
|
|
|
|
- Map<String, List<ConceptPushDTO>> disess = annotation.data.getDis();
|
|
|
|
- if(MapUtils.isNotEmpty(disess)){
|
|
|
|
- disess.values().forEach(x ->allDis.addAll(x.stream().map(z->z.getName()).collect(Collectors.toList())));
|
|
|
|
- }
|
|
|
|
- Map<String, List<PushBaseDTO>> dis = new HashMap<>();
|
|
|
|
- if (ListUtil.isNotEmpty(allDis)) {
|
|
|
|
- //先把所有疾病推出来
|
|
|
|
- if (ruleTypeList.contains("7")) {
|
|
|
|
- List<PushBaseDTO> diseeases = allDis.stream().map(x -> {
|
|
|
|
- PushBaseDTO pushBaseDTO = new PushBaseDTO();
|
|
|
|
- pushBaseDTO.setName(x);
|
|
|
|
- return pushBaseDTO;
|
|
|
|
- }).collect(Collectors.toList());
|
|
|
|
- diseeases = diseeases.subList(0, diseeases.size() >= length ? length : diseeases.size());
|
|
|
|
- dis.put(DiseaseTypeEnum.possibleDis.getName(), diseeases);
|
|
|
|
- pushDTO.setDis(dis);
|
|
|
|
-
|
|
|
|
- }
|
|
|
|
- //把第一个推送出来的诊断set到diagOrder中,再反推
|
|
|
|
- NeoPushVO pushVO = new NeoPushVO();
|
|
|
|
- DiagVo diagVo = new DiagVo();
|
|
|
|
- diagVo.setDiags(allDis.stream().map(x ->{
|
|
|
|
- Diag diag = new Diag();
|
|
|
|
- diag.setName(x);
|
|
|
|
- return diag;
|
|
|
|
- }).collect(Collectors.toList()));
|
|
|
|
- pushVO.setDiagVo(diagVo);
|
|
|
|
- //调用反推
|
|
|
|
- reversePushPackage(length, pushDTO, ruleTypeList, typeWords, pushVO, dis);
|
|
|
|
-
|
|
|
|
- }
|
|
|
|
- return pushDTO;
|
|
|
|
- }
|
|
|
|
|
|
|
|
public PushDTO processIcss(PushVO pushVo){
|
|
public PushDTO processIcss(PushVO pushVo){
|
|
List<Item> diag1 = pushVo.getDiag();
|
|
List<Item> diag1 = pushVo.getDiag();
|