Commit 227142f0b81e348eb1bf49a75c6f92813b862e1b
1 parent
51a69e9887
Exists in
dev
#fix:优化血糖管理指标查询添加逻辑
Showing 2 changed files with 72 additions and 8 deletions
platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/BloodSugarService.java
View file @
227142f
| ... | ... | @@ -8,6 +8,7 @@ |
| 8 | 8 | import com.lyms.platform.pojo.CourseModel; |
| 9 | 9 | import com.lyms.platform.query.BloodSugarQuery; |
| 10 | 10 | import com.lyms.platform.query.CourseQuery; |
| 11 | +import org.apache.commons.collections.CollectionUtils; | |
| 11 | 12 | import org.apache.commons.lang.StringUtils; |
| 12 | 13 | import org.springframework.beans.factory.annotation.Autowired; |
| 13 | 14 | import org.springframework.data.domain.Sort; |
| 14 | 15 | |
| ... | ... | @@ -24,12 +25,12 @@ |
| 24 | 25 | private IBloodSugarDao bloodSugarDao; |
| 25 | 26 | |
| 26 | 27 | public void add(BloodSugar bloodSugar) { |
| 27 | - bloodSugar.setSugarType(getBloodSugarStatus(bloodSugar.getBloodSugarType(), bloodSugar.getBloodSugar())); | |
| 28 | + bloodSugar.setSugarType(getBloodSugarStatus(bloodSugar.getRiskFactorId(),bloodSugar.getHospitalId(),bloodSugar.getBloodSugarType(), bloodSugar.getBloodSugar())); | |
| 28 | 29 | bloodSugarDao.add(bloodSugar); |
| 29 | 30 | } |
| 30 | 31 | |
| 31 | 32 | public void update(BloodSugar bloodSugar) { |
| 32 | - bloodSugar.setSugarType(getBloodSugarStatus(bloodSugar.getBloodSugarType(), bloodSugar.getBloodSugar())); | |
| 33 | + bloodSugar.setSugarType(getBloodSugarStatus(bloodSugar.getRiskFactorId(),bloodSugar.getHospitalId(),bloodSugar.getBloodSugarType(), bloodSugar.getBloodSugar())); | |
| 33 | 34 | bloodSugarDao.updateXy(Query.query(Criteria.where("id").is(bloodSugar.getId())), bloodSugar); |
| 34 | 35 | } |
| 35 | 36 | |
| 36 | 37 | |
| 37 | 38 | |
| 38 | 39 | |
| ... | ... | @@ -43,15 +44,75 @@ |
| 43 | 44 | return bloodSugarDao.queryBloodSugarList(query.addOrder(direction, sortField)); |
| 44 | 45 | } |
| 45 | 46 | |
| 46 | - private Integer getBloodSugarStatus(Integer type, String bloodSugar) { | |
| 47 | + private Integer getBloodSugarStatus(List<String> riskFactorIds,String hospitalId,Integer type, String bloodSugar) { | |
| 47 | 48 | if (type == BloodSugarEnums.A.getId()) { |
| 48 | - return Double.parseDouble(bloodSugar) > 5.3D ? 3 : Double.parseDouble(bloodSugar) < 3.3D ? 2 : 1; | |
| 49 | + if (CollectionUtils.isNotEmpty(riskFactorIds)){ | |
| 50 | + //妊娠期糖尿病(GDM) | |
| 51 | + if (riskFactorIds.contains("5aab6d3d422b03d4ad2bf83e")){ | |
| 52 | + return Double.parseDouble(bloodSugar) > 5.3D ? 3: 1; | |
| 53 | + }else if (riskFactorIds.contains("5aab6d3e422b03d4ad2bf83f")){ | |
| 54 | + //糖尿病合并妊娠(PGDM) | |
| 55 | + return Double.parseDouble(bloodSugar) > 5.6D ? 3 : Double.parseDouble(bloodSugar) < 3.3D ? 2 : 1; | |
| 56 | + }else { | |
| 57 | + //大同特殊处理 | |
| 58 | + if ("2100002419".equals(hospitalId)){ | |
| 59 | + return Double.parseDouble(bloodSugar) > 5.1D ? 3 : Double.parseDouble(bloodSugar) < 3.6D ? 2 : 1; | |
| 60 | + }else { | |
| 61 | + return Double.parseDouble(bloodSugar) > 5.3D ? 3 : Double.parseDouble(bloodSugar) < 3.3D ? 2 : 1; | |
| 62 | + } | |
| 63 | + } | |
| 64 | + }else { | |
| 65 | + //大同特殊处理 | |
| 66 | + if ("2100002419".equals(hospitalId)){ | |
| 67 | + return Double.parseDouble(bloodSugar) > 5.1D ? 3 : Double.parseDouble(bloodSugar) < 3.6D ? 2 : 1; | |
| 68 | + }else { | |
| 69 | + return Double.parseDouble(bloodSugar) > 5.3D ? 3 : Double.parseDouble(bloodSugar) < 3.3D ? 2 : 1; | |
| 70 | + } | |
| 71 | + } | |
| 49 | 72 | } else if (type == BloodSugarEnums.D.getId() || type == BloodSugarEnums.F.getId()) { |
| 50 | - return Double.parseDouble(bloodSugar) > 5.3D ? 3 : Double.parseDouble(bloodSugar) < 3.3D ? 2 : 1; | |
| 73 | + if (CollectionUtils.isNotEmpty(riskFactorIds)){ | |
| 74 | + //妊娠期糖尿病(GDM) | |
| 75 | + if (riskFactorIds.contains("5aab6d3d422b03d4ad2bf83e")){ | |
| 76 | + return Double.parseDouble(bloodSugar) > 5.3D ? 3 : 1; | |
| 77 | + }else if (riskFactorIds.contains("5aab6d3e422b03d4ad2bf83f")){ | |
| 78 | + //糖尿病合并妊娠(PGDM) | |
| 79 | + return Double.parseDouble(bloodSugar) > 5.6D ? 3 : Double.parseDouble(bloodSugar) < 3.3D ? 2 : 1; | |
| 80 | + }else { | |
| 81 | + return Double.parseDouble(bloodSugar) > 5.3D ? 3 : Double.parseDouble(bloodSugar) < 3.3D ? 2 : 1; | |
| 82 | + } | |
| 83 | + }else{ | |
| 84 | + return Double.parseDouble(bloodSugar) > 5.3D ? 3 : Double.parseDouble(bloodSugar) < 3.3D ? 2 : 1; | |
| 85 | + } | |
| 51 | 86 | } else if (type == BloodSugarEnums.H.getId()) { |
| 52 | - return Double.parseDouble(bloodSugar) > 6.7D ? 3 : Double.parseDouble(bloodSugar) < 4.4D ? 2 : 1; | |
| 53 | - } else { | |
| 54 | - return Double.parseDouble(bloodSugar) > 6.7D ? 3 : Double.parseDouble(bloodSugar) < 4.4D ? 2 : 1; | |
| 87 | + if (CollectionUtils.isNotEmpty(riskFactorIds)){ | |
| 88 | + //妊娠期糖尿病(GDM) | |
| 89 | + if (riskFactorIds.contains("5aab6d3d422b03d4ad2bf83e")){ | |
| 90 | + return Double.parseDouble(bloodSugar) >= 3.3D ? 1 : 2; | |
| 91 | + }else if (riskFactorIds.contains("5aab6d3e422b03d4ad2bf83f")){ | |
| 92 | + //糖尿病合并妊娠(PGDM) | |
| 93 | + return Double.parseDouble(bloodSugar) > 5.6D ? 3 : Double.parseDouble(bloodSugar) < 3.3D ? 2 : 1; | |
| 94 | + }else { | |
| 95 | + return Double.parseDouble(bloodSugar) > 6.7D ? 3 : Double.parseDouble(bloodSugar) < 4.4D ? 2 : 1; | |
| 96 | + } | |
| 97 | + }else{ | |
| 98 | + return Double.parseDouble(bloodSugar) > 6.7D ? 3 : Double.parseDouble(bloodSugar) < 4.4D ? 2 : 1; | |
| 99 | + | |
| 100 | + } | |
| 101 | + } else { | |
| 102 | + if (CollectionUtils.isNotEmpty(riskFactorIds)){ | |
| 103 | + //妊娠期糖尿病(GDM) | |
| 104 | + if (riskFactorIds.contains("5aab6d3d422b03d4ad2bf83e")){ | |
| 105 | + return Double.parseDouble(bloodSugar) > 6.7D ? 3 : 1; | |
| 106 | + }else if (riskFactorIds.contains("5aab6d3e422b03d4ad2bf83f")){ | |
| 107 | + //糖尿病合并妊娠(PGDM) | |
| 108 | + return Double.parseDouble(bloodSugar) > 7.1D ? 3 : Double.parseDouble(bloodSugar) < 5.6D ? 2 : 1; | |
| 109 | + }else { | |
| 110 | + return Double.parseDouble(bloodSugar) > 6.7D ? 3 : Double.parseDouble(bloodSugar) < 4.4D ? 2 : 1; | |
| 111 | + } | |
| 112 | + }else{ | |
| 113 | + return Double.parseDouble(bloodSugar) > 6.7D ? 3 : Double.parseDouble(bloodSugar) < 4.4D ? 2 : 1; | |
| 114 | + | |
| 115 | + } | |
| 55 | 116 | } |
| 56 | 117 | } |
| 57 | 118 | public BloodSugar findOneById(String id) { |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BloodSugarServiceImpl.java
View file @
227142f
| ... | ... | @@ -115,7 +115,9 @@ |
| 115 | 115 | Patients patients = mongoTemplate.findById(bloodSugar.getParentId(), Patients.class); |
| 116 | 116 | String pid = patients.getPid(); |
| 117 | 117 | BloodSugar one = mongoTemplate.findOne(Query.query(Criteria.where("pid").is(pid).and("created").gt(DateUtil.getYMDTime()).and("bloodSugarType").is(bloodSugar.getBloodSugarType())), BloodSugar.class); |
| 118 | + | |
| 118 | 119 | if (one != null) { |
| 120 | + //one.setSugarType(sugarType); | |
| 119 | 121 | one.setModified(new Date()); |
| 120 | 122 | one.setBloodSugar(bloodSugar.getBloodSugar()); |
| 121 | 123 | if(null!=bloodSugar.getIsPrint()){ |
| ... | ... | @@ -125,6 +127,7 @@ |
| 125 | 127 | bloodSugarService.update(one); |
| 126 | 128 | return RespBuilder.buildSuccess(one.getId()); |
| 127 | 129 | } |
| 130 | + // bloodSugar.setSugarType(sugarType); | |
| 128 | 131 | bloodSugar.setParentId(patients.getId()); |
| 129 | 132 | bloodSugar.setHospitalId(autoMatchFacade.getHospitalId(userId)); |
| 130 | 133 | bloodSugar.setCreated(new Date()); |