Commit 254c9039a52defd60a57df38d4d610818a65e234

Authored by baohanddd

Merge remote-tracking branch 'origin/master'

Showing 3 changed files

platform-common/src/main/java/com/lyms/platform/common/utils/StringUtils.java View file @ 254c903
... ... @@ -143,6 +143,22 @@
143 143 return String.valueOf(str);
144 144 }
145 145  
  146 +
  147 + /**
  148 + * 替换短信中的表达式
  149 + * @return
  150 + */
  151 + public static String replaceEL(String name,Date checkDate,String repalceStr)
  152 + {
  153 + if (StringUtils.isNotEmpty(repalceStr))
  154 + {
  155 + String date = DateUtil.getyyyy_MM_dd(checkDate);
  156 + return repalceStr.replace("{{姓名}}",name).replace("{{预产期}}", date);
  157 + }
  158 + return repalceStr;
  159 + }
  160 +
  161 +
146 162 // public static void main(String[] arg) {
147 163 // System.out.print(encryPhone("18382670036"));
148 164 // }
platform-data-api/src/main/java/com/lyms/platform/data/service/impl/SmsServiceImpl.java View file @ 254c903
... ... @@ -513,6 +513,7 @@
513 513 patientsQuery.setYn(YnEnums.YES.getId());
514 514 //1孕妇 3 产妇
515 515 patientsQuery.setType(3);
  516 + patientsQuery.setDueStatus(0);
516 517  
517 518 // //末次月经必须大于当前时间减去42周视为为分娩孕妇
518 519 // Date lastMensesMax = DateUtil.addDay(new Date(), -42);
... ... @@ -915,43 +916,43 @@
915 916 Integer sendDateType = template.getSendDateType();
916 917 if (sendDateType == SendDateEnums.TSRQ.getId()) {
917 918 //孕妇的建档 和服务结束
918   - Integer specialDateType = template.getSpecialDateType();
919   - //服务结束
920   - if (specialDateType == SpecialDateEnums.FWJS.getId())
921   - {
922   -
923   - Date endDate = DateUtil.getNewDate(-42, "周", 0);
924   - //把时间格式化成 yyyy_MM_dd 的日期
925   - endDate = DateUtil.formatDate(endDate);
926   - patientsQuery.setYn(YnEnums.YES.getId());
927   - //1孕妇
928   - patientsQuery.setType(1);
929   - patientsQuery.setLastMensesEnd(endDate);
930   - patientsQuery.setLastMensesStart(endDate);
931   -
932   - List<Patients> patients = yunBookbuildingService.queryPregnantWithQuery(patientsQuery);
933   - if (CollectionUtils.isNotEmpty(patients))
934   - {
935   - for (Patients pat : patients)
936   - {
937   -
938   - //短信前缀
939   - String messagePrefix = getSmsPrefix(config,pat.getBookbuildingDoctor());
940   - String messageContent = "【"+messagePrefix+"】"+template.getContent();
941   - messageContent = replaceName(pat.getUsername(), messageContent);
942   - MessageRequest request = getMessageRequest( messageContent,pat.getPhone(),ServiceObjEnums.YUNOBJ.getId(), template.getSmsType(),
943   - pat.getHospitalId(),template.getId(),pat.getId());
944   - messages.add(request);
945   -
946   - //更新成产妇状态 分娩时间设置成当前时间
947   - pat.setType(3);
948   - pat.setFmDate(new Date());
949   - pat.setModified(new Date());
950   - yunBookbuildingService.updatePregnant(pat, pat.getId());
951   - }
952   -
953   - }
954   - }
  919 +// Integer specialDateType = template.getSpecialDateType();
  920 +// //服务结束
  921 +// if (specialDateType == SpecialDateEnums.FWJS.getId())
  922 +// {
  923 +//
  924 +// Date endDate = DateUtil.getNewDate(-42, "周", 0);
  925 +// //把时间格式化成 yyyy_MM_dd 的日期
  926 +// endDate = DateUtil.formatDate(endDate);
  927 +// patientsQuery.setYn(YnEnums.YES.getId());
  928 +// //1孕妇
  929 +// patientsQuery.setType(1);
  930 +// patientsQuery.setLastMensesEnd(endDate);
  931 +// patientsQuery.setLastMensesStart(endDate);
  932 +//
  933 +// List<Patients> patients = yunBookbuildingService.queryPregnantWithQuery(patientsQuery);
  934 +// if (CollectionUtils.isNotEmpty(patients))
  935 +// {
  936 +// for (Patients pat : patients)
  937 +// {
  938 +//
  939 +// //短信前缀
  940 +// String messagePrefix = getSmsPrefix(config,pat.getBookbuildingDoctor());
  941 +// String messageContent = "【"+messagePrefix+"】"+template.getContent();
  942 +// messageContent = replaceName(pat.getUsername(), messageContent);
  943 +// MessageRequest request = getMessageRequest( messageContent,pat.getPhone(),ServiceObjEnums.YUNOBJ.getId(), template.getSmsType(),
  944 +// pat.getHospitalId(),template.getId(),pat.getId());
  945 +// messages.add(request);
  946 +//
  947 +// //更新成产妇状态 分娩时间设置成当前时间
  948 +// pat.setType(3);
  949 +// pat.setFmDate(new Date());
  950 +// pat.setModified(new Date());
  951 +// yunBookbuildingService.updatePregnant(pat, pat.getId());
  952 +// }
  953 +//
  954 +// }
  955 +// }
955 956 //孕妇建档在 孕妇建档生成
956 957  
957 958 }
... ... @@ -1028,7 +1029,23 @@
1028 1029 BabyModelQuery query = new BabyModelQuery();
1029 1030 query.setYn(YnEnums.YES.getId());
1030 1031 query.setId(checkModel.getBuildId());
1031   - messages.addAll(getBabyMessageRequestList( babyModelQuery, config, template));
  1032 +
  1033 + //查询符合条件儿童
  1034 + List<BabyModel> babyModels = babyBookbuildingService.queryBabyBuildByCond(babyModelQuery);
  1035 + if (CollectionUtils.isNotEmpty(babyModels))
  1036 + {
  1037 + for (BabyModel model : babyModels)
  1038 + {
  1039 + //短信前缀
  1040 + String messagePrefix = getSmsPrefix(config, model.getBuildDoctor());
  1041 + String messageContent = "【"+messagePrefix+"】"+template.getContent();
  1042 + messageContent = replaceEL(model.getName(), yuYueDate, messageContent);
  1043 + MessageRequest request = getMessageRequest(messageContent,model.getMphone(),ServiceObjEnums.YUNOBJ.getId(), template.getSmsType(),
  1044 + model.getHospitalId(),template.getId(),model.getId());
  1045 + messages.add(request);
  1046 + }
  1047 + }
  1048 + //messages.addAll(getBabyMessageRequestList( babyModelQuery, config, template));
1032 1049 }
1033 1050 }
1034 1051 }
... ... @@ -1368,7 +1385,21 @@
1368 1385 query.setYn(YnEnums.YES.getId());
1369 1386 query.setId(orderModel.getParentId());
1370 1387  
1371   - messages.addAll(getChanMessageRequestList(patientsQuery,config,template));
  1388 + //查询符合条件的产妇
  1389 + List<Patients> patients = yunBookbuildingService.queryPregnantWithQuery(patientsQuery);
  1390 + if (CollectionUtils.isNotEmpty(patients))
  1391 + {
  1392 + for (Patients pat : patients)
  1393 + {
  1394 + //短信前缀
  1395 + String messagePrefix = getSmsPrefix(config,pat.getBookbuildingDoctor());
  1396 + String messageContent = "【"+messagePrefix+"】"+template.getContent();
  1397 + messageContent = replaceEL(pat.getUsername(), actualSendDate, messageContent);
  1398 + MessageRequest request = getMessageRequest(messageContent,pat.getPhone(),ServiceObjEnums.CHANOBJ.getId(), template.getSmsType(),
  1399 + pat.getHospitalId(),template.getId(),pat.getId());
  1400 + messages.add(request);
  1401 + }
  1402 + }
1372 1403 }
1373 1404 }
1374 1405 }
... ... @@ -1420,6 +1451,49 @@
1420 1451 //产妇服务结束
1421 1452 else if (specialDateType == SpecialDateEnums.FWJS.getId())
1422 1453 {
  1454 + /**
  1455 + * 产妇服务结束
  1456 + */
  1457 + Date chanEndDate = DateUtil.getNewDate(-16, "周", 0);
  1458 + //把时间格式化成 yyyy_MM_dd 的日期
  1459 + chanEndDate = DateUtil.parseYMD(DateUtil.getyyyy_MM_dd(chanEndDate));
  1460 + PatientsQuery chanpatientsQuery = new PatientsQuery();
  1461 + chanpatientsQuery.setYn(YnEnums.YES.getId());
  1462 + //3产妇
  1463 + chanpatientsQuery.setType(3);
  1464 + chanpatientsQuery.setDueStatus(0);
  1465 + chanpatientsQuery.setFmDateEnd(chanEndDate);
  1466 + chanpatientsQuery.setFmDateStart(chanEndDate);
  1467 +
  1468 + List<Patients> patients = yunBookbuildingService.queryPregnantWithQuery(chanpatientsQuery);
  1469 + if (CollectionUtils.isNotEmpty(patients))
  1470 + {
  1471 + for (Patients pat : patients)
  1472 + {
  1473 +
  1474 + //短信前缀
  1475 + String messagePrefix = getSmsPrefix(config,pat.getBookbuildingDoctor());
  1476 + String messageContent = "【"+messagePrefix+"】"+template.getContent();
  1477 + messageContent = replaceName(pat.getUsername(), messageContent);
  1478 + MessageRequest request = getMessageRequest( messageContent,pat.getPhone(),ServiceObjEnums.CHANOBJ.getId(), template.getSmsType(),
  1479 + pat.getHospitalId(),template.getId(),pat.getId());
  1480 + messages.add(request);
  1481 +
  1482 + //更新状态为过期
  1483 + //判断其为增值服务还是 标准服务
  1484 + if (pat.getServiceType() == ServiceTypeEnums.STANDARD_SERVICE.getId())
  1485 + {
  1486 + pat.setServiceStatus(ServiceStatusEnums.STANDARD_OVERDUE.getId());
  1487 + }
  1488 + else if (pat.getServiceType() == ServiceTypeEnums.ADD_SERVICE.getId())
  1489 + {
  1490 + pat.setServiceStatus(ServiceStatusEnums.ADD_OVERDUE.getId());
  1491 + }
  1492 + yunBookbuildingService.updatePregnant(pat, pat.getId());
  1493 +
  1494 + }
  1495 + }
  1496 +
1423 1497  
1424 1498 }
1425 1499 }
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BookbuildingFacade.java View file @ 254c903
... ... @@ -437,7 +437,10 @@
437 437 MessageListRequest smsList = new MessageListRequest();
438 438 List<MessageRequest> messages = new ArrayList<>();
439 439 MessageRequest mr = new MessageRequest();
440   - mr.setContent("【"+messagePrefix+"】"+templateModel.getContent());
  440 + Date dueDate = DateUtil.addWeek(patient.getLastMenses(),42);
  441 + String content = StringUtils.replaceEL(patient.getUsername(),dueDate,templateModel.getContent());
  442 +
  443 + mr.setContent("【"+messagePrefix+"】"+content);
441 444 mr.setObjType(ServiceObjEnums.YUNOBJ.getId());
442 445 mr.setPhone(patient.getPhone());
443 446 mr.setTimeType(SmsTimeTypeEnums.ONTIME.getId());