Commit ee0836884e5ec23e21bb18a0fdba65af42021d2c
1 parent
c2da500147
Exists in
master
and in
6 other branches
追访记录
Showing 4 changed files with 42 additions and 23 deletions
- platform-dal/src/main/java/com/lyms/platform/pojo/BabyAfterVisitStatisticsModel.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BabyAfterVisitServiceImpl.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/BabyAfterVisitInfoModelWork.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/BabyAfterVisitStatisticsModelWork.java
platform-dal/src/main/java/com/lyms/platform/pojo/BabyAfterVisitStatisticsModel.java
View file @
ee08368
... | ... | @@ -98,6 +98,19 @@ |
98 | 98 | */ |
99 | 99 | private Date updateTime; |
100 | 100 | |
101 | + /** | |
102 | + * 访视流程 1-正常 2-作废 | |
103 | + */ | |
104 | + private String afterVisitWorkflowStatus; | |
105 | + | |
106 | + public String getAfterVisitWorkflowStatus() { | |
107 | + return afterVisitWorkflowStatus; | |
108 | + } | |
109 | + | |
110 | + public void setAfterVisitWorkflowStatus(String afterVisitWorkflowStatus) { | |
111 | + this.afterVisitWorkflowStatus = afterVisitWorkflowStatus; | |
112 | + } | |
113 | + | |
101 | 114 | public Date getCreated() { |
102 | 115 | return created; |
103 | 116 | } |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BabyAfterVisitServiceImpl.java
View file @
ee08368
... | ... | @@ -71,7 +71,7 @@ |
71 | 71 | String querNo = request.getQueryNo(); |
72 | 72 | Query query = new Query(); |
73 | 73 | String hospitalId = autoMatchFacade.getHospitalId(userId); |
74 | - query.addCriteria(Criteria.where("hospitalId").is(hospitalId).and("yn").is(1)); | |
74 | + query.addCriteria(Criteria.where("hospitalId").is(hospitalId).and("yn").is(1).and("afterVisitWorkflowStatus").is("1")); | |
75 | 75 | |
76 | 76 | // 查询号 姓名、证件号、手机号 |
77 | 77 | if (StringUtils.isNotEmpty(querNo)) { |
... | ... | @@ -111,6 +111,7 @@ |
111 | 111 | query.addCriteria(Criteria.where("hearCheckSize").gte(startEyeCheckSize).lte(endEyeCheckSize)); |
112 | 112 | } |
113 | 113 | |
114 | + query.addCriteria(Criteria.where("afterVisitWorkflowStatus").is("1")); | |
114 | 115 | // 组装分页query |
115 | 116 | long count = mongoTemplate.count(query, BabyAfterVisitStatisticsModel.class); |
116 | 117 | request.mysqlBuild((int) count); |
117 | 118 | |
... | ... | @@ -343,17 +344,13 @@ |
343 | 344 | query.addCriteria(Criteria.where("birth").gte(end).lte(start)); |
344 | 345 | } |
345 | 346 | |
346 | - // FIXME: 2019/7/3 原型添加时为输入框,查询时为下拉框,如何写程序? | |
347 | - // 追访结果 | |
348 | - String afterVisitResult = request.getAfterVisitResult(); | |
349 | - if (Objects.nonNull(afterVisitResult)) { | |
350 | - query.addCriteria(Criteria.where("afterVisitResult").is(afterVisitResult)); | |
351 | - } | |
352 | - | |
353 | 347 | // 流程状态 |
354 | 348 | String workflowStatus = request.getWorkflowStatus(); |
355 | 349 | if (Objects.nonNull(workflowStatus)) { |
356 | 350 | query.addCriteria(Criteria.where("afterVisitWorkflow").is(workflowStatus)); |
351 | + } else { | |
352 | + query.addCriteria(Criteria.where("afterVisitWorkflow").is("1")); | |
353 | + | |
357 | 354 | } |
358 | 355 | // 追访方式 |
359 | 356 | String afterVisitWay = request.getAfterVisitWay(); |
360 | 357 | |
361 | 358 | |
... | ... | @@ -441,11 +438,26 @@ |
441 | 438 | } |
442 | 439 | query.addCriteria(Criteria.where("appointmentTime").gte(start).lte(date)); |
443 | 440 | } |
444 | - if (!appointmentTimeBoolean && !nonNull) { | |
445 | - query.addCriteria(Criteria.where("appointmentTime").lte(new Date())); | |
441 | + | |
442 | + | |
443 | + // 追访结果 1-显示 当前时间 > 预约时间(默认) | |
444 | + // 2-显示 当前时间 < 预约时间 | |
445 | + String afterVisitResult = request.getAfterVisitResult(); | |
446 | + if (Objects.isNull(afterVisitResult)) { | |
447 | + afterVisitResult = "1"; | |
446 | 448 | } |
447 | 449 | |
450 | + if ("1".equals(afterVisitResult)) { | |
451 | + if (!appointmentTimeBoolean && !nonNull) { | |
452 | + query.addCriteria(Criteria.where("appointmentTime").lte(new Date())); | |
453 | + } | |
454 | + } else { | |
455 | + if (!appointmentTimeBoolean && !nonNull) { | |
456 | + query.addCriteria(Criteria.where("appointmentTime").gt(new Date())); | |
457 | + } | |
458 | + } | |
448 | 459 | |
460 | + | |
449 | 461 | // 组装分页query |
450 | 462 | long count = mongoTemplate.count(query, BabyAfterVisitInfoModel.class); |
451 | 463 | request.mysqlBuild((int) count); |
452 | 464 | |
... | ... | @@ -864,20 +876,11 @@ |
864 | 876 | Update update = MongoConvertHelper |
865 | 877 | .convertToNativeUpdate(ReflectionUtils.getUpdateField(visitInfoModel)); |
866 | 878 | mongoTemplate.updateFirst(Query.query(Criteria.where("_id").is(visitInfoModel.getId())), update, BabyAfterVisitInfoModel.class); |
867 | - if (afterVisitWorkflow.equals(TrackDownTransferEnums.B.getId().toString())) { | |
868 | - // 停止当前流程 | |
869 | - mongoTemplate.updateFirst(Query.query(Criteria.where(BABY_ID).is(babyId).and("type").is(type)), Update.update("yn", 2), BabyAfterVisitInfoModel.class); | |
870 | - } | |
871 | - | |
872 | 879 | if (afterVisitWorkflow.equals(TrackDownTransferEnums.C.getId().toString())) { |
873 | 880 | // 终止所有流程 |
874 | - int parseInt = Integer.parseInt(type); | |
875 | - if (parseInt == TYPE_CHECK) { | |
876 | - mongoTemplate.updateFirst(Query.query(Criteria.where(BABY_ID).is(babyId).and("type").is("3")), Update.update("yn", 2), BabyAfterVisitInfoModel.class); | |
877 | - } | |
878 | - if (parseInt == TYPE_EYE_CHECK) { | |
879 | - mongoTemplate.updateFirst(Query.query(Criteria.where(BABY_ID).is(babyId).and("type").is("2")), Update.update("yn", 2), BabyAfterVisitInfoModel.class); | |
880 | - } | |
881 | + mongoTemplate.updateFirst(Query.query(Criteria.where(BABY_ID).is(babyId).and("type").is("3")), Update.update("afterVisitWorkflow", "3"), BabyAfterVisitInfoModel.class); | |
882 | + mongoTemplate.updateFirst(Query.query(Criteria.where(BABY_ID).is(babyId).and("type").is("2")), Update.update("afterVisitWorkflow", "3"), BabyAfterVisitInfoModel.class); | |
883 | + mongoTemplate.updateFirst(Query.query(Criteria.where(BABY_ID).is(babyId)), Update.update("afterVisitWorkflowStatus", "2"), BabyAfterVisitStatisticsModel.class); | |
881 | 884 | } |
882 | 885 | |
883 | 886 | return new BaseResponse(); |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/BabyAfterVisitInfoModelWork.java
View file @
ee08368
... | ... | @@ -2,6 +2,7 @@ |
2 | 2 | |
3 | 3 | import com.lyms.platform.operate.web.utils.CollectionUtils; |
4 | 4 | import com.lyms.platform.pojo.BabyAfterVisitInfoModel; |
5 | +import com.lyms.platform.pojo.BabyAfterVisitStatisticsModel; | |
5 | 6 | import com.lyms.platform.pojo.BabyEyeCheck; |
6 | 7 | import com.lyms.platform.pojo.BabyModel; |
7 | 8 | import org.springframework.beans.BeanUtils; |
... | ... | @@ -50,7 +51,8 @@ |
50 | 51 | BabyModel babyModel = (BabyModel) object; |
51 | 52 | String babyId = babyModel.getId(); |
52 | 53 | boolean exists = mongoTemplate.exists(query.addCriteria(Criteria.where(BABY_ID).is(babyId)), BabyAfterVisitInfoModel.class); |
53 | - if (!exists) { | |
54 | + boolean workflowStatus = mongoTemplate.exists(Query.query(Criteria.where(BABY_ID).is(babyId).and("afterVisitWorkflowStatus").is("1")), BabyAfterVisitStatisticsModel.class); | |
55 | + if (!exists && workflowStatus) { | |
54 | 56 | babyAfterVisitInfoModel = new BabyAfterVisitInfoModel(); |
55 | 57 | infoModels.add(babyAfterVisitInfoModel); |
56 | 58 | BeanUtils.copyProperties(babyModel, babyAfterVisitInfoModel); |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/BabyAfterVisitStatisticsModelWork.java
View file @
ee08368
... | ... | @@ -79,6 +79,7 @@ |
79 | 79 | screenQuery.setBabyIds(new String[]{id}); |
80 | 80 | int screenCount = screenMapper.queryEarScreenListCount(screenQuery); |
81 | 81 | babyAfterVisitStatisticsModel.setHearCheckSize(screenCount); |
82 | + babyAfterVisitStatisticsModel.setAfterVisitWorkflowStatus("1"); | |
82 | 83 | } |
83 | 84 | } |
84 | 85 | return statisticsModelList; |