Commit 36736b29c4415bf12bd0c375e991cea7cd118e4c
1 parent
5f130bc792
Exists in
master
and in
6 other branches
隆化-儿童管理-儿保检查高危自动结案功能。全部儿童高危结案筛选
Showing 6 changed files with 174 additions and 1 deletions
- platform-dal/src/main/java/com/lyms/platform/pojo/BabyModel.java
- platform-dal/src/main/java/com/lyms/platform/query/BabyModelQuery.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyBuildController.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyCheckFacade.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/BabyManageRequest.java
platform-dal/src/main/java/com/lyms/platform/pojo/BabyModel.java
View file @
36736b2
... | ... | @@ -739,6 +739,27 @@ |
739 | 739 | //滦平儿童建档下次检查项 |
740 | 740 | private String nextCheckItem; |
741 | 741 | |
742 | + //隆化-儿童建档-自动结案 1:未结案 2:已结案 | |
743 | + private Integer settleType; | |
744 | + //隆化-儿童建档-自动结案时间 | |
745 | + private Date settleTime; | |
746 | + | |
747 | + public Integer getSettleType() { | |
748 | + return settleType; | |
749 | + } | |
750 | + | |
751 | + public void setSettleType(Integer settleType) { | |
752 | + this.settleType = settleType; | |
753 | + } | |
754 | + | |
755 | + public Date getSettleTime() { | |
756 | + return settleTime; | |
757 | + } | |
758 | + | |
759 | + public void setSettleTime(Date settleTime) { | |
760 | + this.settleTime = settleTime; | |
761 | + } | |
762 | + | |
742 | 763 | public String getNextCheckItem() { |
743 | 764 | return nextCheckItem; |
744 | 765 | } |
platform-dal/src/main/java/com/lyms/platform/query/BabyModelQuery.java
View file @
36736b2
... | ... | @@ -594,6 +594,39 @@ |
594 | 594 | private String asphyxiaMStart; |
595 | 595 | private String asphyxiaMEnd; |
596 | 596 | |
597 | + /** | |
598 | + * 隆化儿保需求问题2022.1.4 | |
599 | + */ | |
600 | + //隆化-儿童建档-自动结案 1:未结案 2:已结案 | |
601 | + private Integer settleType; | |
602 | + //隆化-儿童建档-自动结案时间 | |
603 | + private Date settleTimeStart; | |
604 | + private Date settleTimeEnd; | |
605 | + | |
606 | + public Integer getSettleType() { | |
607 | + return settleType; | |
608 | + } | |
609 | + | |
610 | + public void setSettleType(Integer settleType) { | |
611 | + this.settleType = settleType; | |
612 | + } | |
613 | + | |
614 | + public Date getSettleTimeStart() { | |
615 | + return settleTimeStart; | |
616 | + } | |
617 | + | |
618 | + public void setSettleTimeStart(Date settleTimeStart) { | |
619 | + this.settleTimeStart = settleTimeStart; | |
620 | + } | |
621 | + | |
622 | + public Date getSettleTimeEnd() { | |
623 | + return settleTimeEnd; | |
624 | + } | |
625 | + | |
626 | + public void setSettleTimeEnd(Date settleTimeEnd) { | |
627 | + this.settleTimeEnd = settleTimeEnd; | |
628 | + } | |
629 | + | |
597 | 630 | public boolean isEncodedNe() { |
598 | 631 | return encodedNe; |
599 | 632 | } |
... | ... | @@ -1719,6 +1752,9 @@ |
1719 | 1752 | if (StringUtils.isNotEmpty(clzffs)) { |
1720 | 1753 | condition = condition.and("clzffs", clzffs, MongoOper.IS); |
1721 | 1754 | } |
1755 | + if (null!=settleType) { | |
1756 | + condition = condition.and("settleType", settleType, MongoOper.IS); | |
1757 | + } | |
1722 | 1758 | |
1723 | 1759 | Criteria c = null; |
1724 | 1760 | if (null != birthStart) { |
... | ... | @@ -1928,6 +1964,22 @@ |
1928 | 1964 | } |
1929 | 1965 | } |
1930 | 1966 | |
1967 | + /***高危结案时间查询***/ | |
1968 | + if (null != settleTimeStart) { | |
1969 | + if (null != c) { | |
1970 | + c = c.and("settleTime").gte(settleTimeStart); | |
1971 | + } else { | |
1972 | + c = Criteria.where("settleTime").gte(settleTimeStart); | |
1973 | + } | |
1974 | + } | |
1975 | + | |
1976 | + if (null != settleTimeEnd) { | |
1977 | + if (null != c) { | |
1978 | + c = c.lte(settleTimeEnd); | |
1979 | + } else { | |
1980 | + c = Criteria.where("settleTime").lte(settleTimeEnd); | |
1981 | + } | |
1982 | + } | |
1931 | 1983 | /***预约时间查询***/ |
1932 | 1984 | if (null != nextDateStart) { |
1933 | 1985 | if (null != c) { |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyBuildController.java
View file @
36736b2
... | ... | @@ -273,7 +273,9 @@ |
273 | 273 | @RequestParam(value = "moderateAnaemia", required = false) String moderateAnaemia, |
274 | 274 | @RequestParam(value = "heartMurmur", required = false) String heartMurmur, |
275 | 275 | @RequestParam(value = "cyNumType", required = false) Integer cyNumType, |
276 | - @RequestParam(value = "qcNumType", required = false) Integer qcNumType | |
276 | + @RequestParam(value = "qcNumType", required = false) Integer qcNumType, | |
277 | + @RequestParam(value = "settleType", required = false) Integer settleType, | |
278 | + @RequestParam(value = "settleTime", required = false) String settleTime | |
277 | 279 | ) { |
278 | 280 | |
279 | 281 | if (CollectionUtils.isNotEmpty(highRiskInfos)) { |
... | ... | @@ -391,6 +393,10 @@ |
391 | 393 | request.setCyNumType(cyNumType); |
392 | 394 | //龋齿状态 |
393 | 395 | request.setQcNumType(qcNumType); |
396 | + //高危结案状态 | |
397 | + request.setSettleType(settleType); | |
398 | + //高危结案时间 | |
399 | + request.setSettleTime(settleTime); | |
394 | 400 | return babyBookbuildingFacade.queryBabyList(request, loginState.getId()); |
395 | 401 | } |
396 | 402 |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java
View file @
36736b2
... | ... | @@ -3239,6 +3239,20 @@ |
3239 | 3239 | babyQuery.setNextDateEnd(DateUtil.parseYMD(dates[1])); |
3240 | 3240 | } |
3241 | 3241 | } |
3242 | + //隆化-筛选高危结案状态 | |
3243 | + if(null!=request.getSettleType()){ | |
3244 | + babyQuery.setSettleType(request.getSettleType()); | |
3245 | + } | |
3246 | + //隆化-高危结案时间 | |
3247 | + if (StringUtils.isNotEmpty(request.getSettleTime())) { | |
3248 | + String settleTime = request.getSettleTime(); | |
3249 | + String[] dates = settleTime.split(" - "); | |
3250 | + | |
3251 | + babyQuery.setSettleTimeStart(DateUtil.parseYMD(dates[0])); | |
3252 | + if (dates.length == 2) { | |
3253 | + babyQuery.setSettleTimeEnd(DateUtil.parseYMD(dates[1])); | |
3254 | + } | |
3255 | + } | |
3242 | 3256 | //结案时间 |
3243 | 3257 | if (StringUtils.isNotEmpty(request.getEndCaseTime())) { |
3244 | 3258 | String endCaseTime = request.getEndCaseTime(); |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyCheckFacade.java
View file @
36736b2
... | ... | @@ -165,7 +165,36 @@ |
165 | 165 | List <BabyCheckModel> models = babyCheckService.queryBabyCheckRecord(query); |
166 | 166 | babyCheckService.updateBabyCheck(model, request.getId()); |
167 | 167 | |
168 | + //隆化-如果上次是高危这次没有高危就结案(儿童档案增加高危结案状态1:未结案2:已结案) | |
169 | + if (StringUtils.isNotEmpty(model.getBuildId())) { | |
170 | + BabyCheckModelQuery query2 = new BabyCheckModelQuery(); | |
171 | + query2.setBuildId(model.getBuildId()); | |
172 | + query2.setYn(YnEnums.YES.getId()); | |
173 | + List<BabyCheckModel> babyCheckModels = babyCheckService.queryBabyCheckRecord(query2); | |
174 | + //保证上次有检查,本次是健康 | |
175 | + if(CollectionUtils.isNotEmpty(babyCheckModels) && babyCheckModels.size()>1 && 0==request.getHighRisk()){ | |
176 | + //最后一次检查的上次检查是高危才结案 | |
177 | + if(babyCheckModels.get(0).getId()==request.getId() && 1==babyCheckModels.get(1).getHighRisk()){ | |
178 | + try { | |
179 | + settleCase(model.getBuildId()); | |
180 | + } catch (Exception e) { | |
181 | + e.printStackTrace(); | |
182 | + return new BaseResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("结案失败"); | |
183 | + } | |
184 | + } | |
185 | + } | |
186 | + //本次是高危 | |
187 | + if(CollectionUtils.isNotEmpty(babyCheckModels) && 1==request.getHighRisk()) { | |
188 | + //只判断最后一次检查(儿童档案增加高危结案状态1:未结案2:已结案) | |
189 | + if(babyCheckModels.get(0).getId()==request.getId()){ | |
190 | + BabyModel bm = new BabyModel(); | |
191 | + bm.setSettleType(1); | |
192 | + babyBookbuildingService.updateBabyBuild(bm,request.getBuildId()); | |
193 | + } | |
194 | + } | |
195 | + } | |
168 | 196 | |
197 | + | |
169 | 198 | if (StringUtils.isNotEmpty(request.getNextDate())) { |
170 | 199 | saveCheckItem(model.getNextDate(), request.getBuildId(), request.getConfigItemId(), model.getId(), hospitalId); |
171 | 200 | |
... | ... | @@ -784,6 +813,10 @@ |
784 | 813 | } |
785 | 814 | bm.setLastCheckDoctor(request.getCheckDoctor()); |
786 | 815 | bm.setDiseases(request.getDiseases()); |
816 | + //隆化-高危儿结案(检查如果是高危,儿童档案增加高危结案状态1:未结案2:已结案) | |
817 | + if(request.getHighRisk()==1){ | |
818 | + bm.setSettleType(1); | |
819 | + } | |
787 | 820 | //秦皇岛-高危儿详情添加到儿童档案 |
788 | 821 | bm.setQhdHighRiskInfo(CollectionUtils.isNotEmpty(request.getQhdHighRiskInfo())?request.getQhdHighRiskInfo():new ArrayList<Map<String, String>>()); |
789 | 822 | babyBookbuildingService.updateBabyBuild(bm, request.getBuildId()); |
... | ... | @@ -792,6 +825,25 @@ |
792 | 825 | model.setHospitalId(hospitalId); |
793 | 826 | model.setCreated(new Date()); |
794 | 827 | model = babyCheckService.addBabyCheck(model); |
828 | + //隆化-如果上次是高危这次没有高危就结案(儿童档案增加高危结案状态1:未结案2:已结案) | |
829 | + if (StringUtils.isNotEmpty(model.getBuildId()) && 0==model.getHighRisk()) { | |
830 | + BabyCheckModelQuery query2 = new BabyCheckModelQuery(); | |
831 | + query2.setBuildId(model.getBuildId()); | |
832 | + query2.setYn(YnEnums.YES.getId()); | |
833 | + List<BabyCheckModel> babyCheckModels = babyCheckService.queryBabyCheckRecord(query2); | |
834 | + //保证上次有检查 | |
835 | + if(CollectionUtils.isNotEmpty(babyCheckModels) && babyCheckModels.size()>1){ | |
836 | + //上次检查是高危才结案 | |
837 | + if(1==babyCheckModels.get(1).getHighRisk()){ | |
838 | + try { | |
839 | + settleCase(model.getBuildId()); | |
840 | + } catch (Exception e) { | |
841 | + e.printStackTrace(); | |
842 | + return new BaseResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("结案失败"); | |
843 | + } | |
844 | + } | |
845 | + } | |
846 | + } | |
795 | 847 | |
796 | 848 | |
797 | 849 | //儿童检查自动诊断 |
... | ... | @@ -5222,6 +5274,13 @@ |
5222 | 5274 | cnames.put("checkDate", "检查时间"); |
5223 | 5275 | cnames.put("hemoglobin", "检查结果"); |
5224 | 5276 | ResponseUtil.responseExcel(cnames, results, response); |
5277 | + } | |
5278 | + //隆化-如果上次是高危这次没有高危就结案(儿童档案增加高危结案状态1:未结案2:已结案) | |
5279 | + public void settleCase(String buildId) throws Exception{ | |
5280 | + BabyModel bm = new BabyModel(); | |
5281 | + bm.setSettleType(2); | |
5282 | + bm.setSettleTime(new Date()); | |
5283 | + babyBookbuildingService.updateBabyBuild(bm,buildId); | |
5225 | 5284 | } |
5226 | 5285 | } |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/BabyManageRequest.java
View file @
36736b2
... | ... | @@ -129,6 +129,27 @@ |
129 | 129 | //龋齿状态 1:正常,2:异常 |
130 | 130 | private Integer qcNumType; |
131 | 131 | |
132 | + //高危结案状态 | |
133 | + private Integer settleType; | |
134 | + //高危结案时间 | |
135 | + private String settleTime; | |
136 | + | |
137 | + public Integer getSettleType() { | |
138 | + return settleType; | |
139 | + } | |
140 | + | |
141 | + public void setSettleType(Integer settleType) { | |
142 | + this.settleType = settleType; | |
143 | + } | |
144 | + | |
145 | + public String getSettleTime() { | |
146 | + return settleTime; | |
147 | + } | |
148 | + | |
149 | + public void setSettleTime(String settleTime) { | |
150 | + this.settleTime = settleTime; | |
151 | + } | |
152 | + | |
132 | 153 | public Integer getQcNumType() { |
133 | 154 | return qcNumType; |
134 | 155 | } |