|
@@ -1,5 +1,6 @@
|
|
|
package com.diagbot.facade;
|
|
|
|
|
|
+import com.diagbot.biz.push.entity.Item;
|
|
|
import com.diagbot.client.CdssCoreClient;
|
|
|
import com.diagbot.dto.BillMsg;
|
|
|
import com.diagbot.dto.ConceptDetailDTO;
|
|
@@ -29,8 +30,10 @@ import org.springframework.stereotype.Component;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.Arrays;
|
|
|
import java.util.HashMap;
|
|
|
+import java.util.HashSet;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
+import java.util.Set;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
@@ -55,6 +58,10 @@ public class PushFacade {
|
|
|
* @param pushVO
|
|
|
*/
|
|
|
public PushDTO push(PushVO pushVO) {
|
|
|
+ List<String> featureTypes = StringUtil.isNotBlank(pushVO.getFeatureType())
|
|
|
+ ? Arrays.asList(pushVO.getFeatureType().split(","))
|
|
|
+ : Lists.newArrayList();
|
|
|
+
|
|
|
if (pushVO.getDiseaseName() != null
|
|
|
&& StringUtil.isBlank(pushVO.getDiseaseName().getName())
|
|
|
&& StringUtil.isBlank(pushVO.getDiseaseName().getUniqueName())) {
|
|
@@ -71,6 +78,23 @@ public class PushFacade {
|
|
|
//------------------测试数据开始------------------
|
|
|
// PushDTO data = testDataPush();
|
|
|
//------------------测试数据结束------------------
|
|
|
+
|
|
|
+ //已下诊断
|
|
|
+ data.setClickAffDis(Lists.newArrayList());
|
|
|
+ if (ListUtil.isNotEmpty(pushVO.getDiag())) {
|
|
|
+ Set<String> nameSet = new HashSet<>();
|
|
|
+ for (Item item : pushVO.getDiag()) {
|
|
|
+ if (nameSet.contains(item.getName())) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ PushBaseDTO diagDto = new PushBaseDTO();
|
|
|
+ diagDto.setName(item.getUniqueName());
|
|
|
+ diagDto.setHisNameList(Arrays.asList(new String[] { item.getName() }));
|
|
|
+ nameSet.add(item.getName());
|
|
|
+ data.getClickAffDis().add(diagDto);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
//出参映射
|
|
|
data = assembleFacade.assemblePushDTO(data, pushVO.getHospitalId());
|
|
|
//是否有静态信息
|
|
@@ -80,7 +104,9 @@ public class PushFacade {
|
|
|
}
|
|
|
//一般治疗
|
|
|
if (data != null) {
|
|
|
- data.setTreat(retGeneraTreat(data, pushVO.getHospitalId()));
|
|
|
+ if (ListUtil.isNotEmpty(featureTypes) && featureTypes.contains("10")) {
|
|
|
+ data.setTreat(retGeneraTreat(data, pushVO.getHospitalId()));
|
|
|
+ }
|
|
|
}
|
|
|
return data;
|
|
|
}
|