Commit ee0836884e5ec23e21bb18a0fdba65af42021d2c

Authored by dongqin
1 parent c2da500147

追访记录

Showing 4 changed files with 42 additions and 23 deletions

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;