diff --git a/platform-msg-generate/src/main/java/com/lyms/platform/msg/worker/TempleteMsgGenerateWorker.java b/platform-msg-generate/src/main/java/com/lyms/platform/msg/worker/TempleteMsgGenerateWorker.java index d814d1f..67dbf58 100644 --- a/platform-msg-generate/src/main/java/com/lyms/platform/msg/worker/TempleteMsgGenerateWorker.java +++ b/platform-msg-generate/src/main/java/com/lyms/platform/msg/worker/TempleteMsgGenerateWorker.java @@ -396,9 +396,137 @@ public class TempleteMsgGenerateWorker implements Runnable { } } } + //儿童疫苗提醒 + else if (smsType == SmsServiceEnums.EBYMTX.getId()) + { + //发送频次 + Integer sendFreq = template.getSendFrequency(); + + if (sendFreq == SendFrequencyEnums.ONCE.getId()) + { + + //GL(0,"公历","0,1,2","0,1,2,3"),NL(1,"农历","0,1,2","0,1,2,3"),TSRQ(2,"特殊日期","0,2","1,2,3"),SLRQ(3,"生理日期","0","1,2,3"); + Integer sendDateType = template.getSendDateType(); + if (sendDateType == SendDateEnums.SLRQ.getId()) + { + + //时间类型 + Integer specialDateType = template.getSpecialDateType(); + + //儿童天数 + if (specialDateType == SpecialDateEnums.ETTS.getId()) + { + + //发送短信集合 + MsgListRequest list = new MsgListRequest(); + List messages = new ArrayList<>(); + + Integer start = template.getStart(); + Integer end = template.getEnd(); + + if (start != null && end != null) + { + Date startDate = DateUtils.getNewDate(new Date(),-end, "天", sendTimeType); + Date endDate = DateUtils.getNewDate(new Date(),-start,"天",sendTimeType); + startDate = DateUtils.formatDate(startDate, DateUtils.Y_M_D); + endDate = DateUtils.formatDate(endDate,DateUtils.Y_M_D); + babyModelQuery.setBirthStart(startDate); + babyModelQuery.setBirthEnd(endDate); + + List babyModels = babyBookbuildingService.queryBabyBuildByCond(babyModelQuery); + if (CollectionUtils.isNotEmpty(babyModels)) + { + for (BabyModel model : babyModels) + { + if (model.getBirth() == null) + { + continue; + } + if (HelperUtils.isExistMsg(model.getId(), template.getId())) + { + continue; + } + + //短信前缀 + String messagePrefix = baseService.getSmsPrefix(config, model.getBuildDoctor(),ServiceObjEnums.BABYOBJ.getId()); + String messageContent = "【"+messagePrefix+"】"+template.getContent(); + messageContent = HelperUtils.replaceName(model.getName(), messageContent); + + String itemName = "儿童保健"; + String nextCheckTime = HelperUtils.getKeyword(start, end, "天"); + + MsgRequest request = HelperUtils.getMessageRequest(messageContent, model.getMphone(), + ServiceObjEnums.BABYOBJ.getId(), template.getSmsType(), + model.getHospitalId(), template.getId(), model.getId(), itemName, nextCheckTime, "", + WxTempleteIdEnums.ER_TONG_TI_XING.getId(),service); + + messages.add(request); + } + } + } + + list.setMessages(messages); + HelperUtils.sendMsg(list); + } + //儿童月龄 + else if (specialDateType == SpecialDateEnums.ETYL.getId()) + { + + //发送短信集合 + MsgListRequest list = new MsgListRequest(); + List messages = new ArrayList<>(); + + Integer start = template.getStart(); + Integer end = template.getEnd(); + if (start != null && end != null) + { + Date startDate = DateUtils.getNewDate(new Date(),-end-1, "月", sendTimeType); + Date endDate = DateUtils.getNewDate(new Date(),-start,"月",sendTimeType); + startDate = DateUtils.formatDate(startDate, DateUtils.Y_M_D); + endDate = DateUtils.formatDate(endDate,DateUtils.Y_M_D); + babyModelQuery.setBirthStart(startDate); + babyModelQuery.setBirthEnd(endDate); + List babyModels = babyBookbuildingService.queryBabyBuildByCond(babyModelQuery); + if (CollectionUtils.isNotEmpty(babyModels)) + { + for (BabyModel model : babyModels) + { + if (model.getBirth() == null) + { + continue; + } + + if (HelperUtils.isExistMsg(model.getId(),template.getId())) + { + continue; + } + + //短信前缀 + String messagePrefix = baseService.getSmsPrefix(config, model.getBuildDoctor(),ServiceObjEnums.BABYOBJ.getId()); + String messageContent = "【"+messagePrefix+"】"+template.getContent(); + messageContent = HelperUtils.replaceName(model.getName(), messageContent); + String itemName = "儿童保健"; + String nextCheckTime = HelperUtils.getKeyword(start, end, "月龄"); + + MsgRequest request = HelperUtils.getMessageRequest(messageContent, model.getMphone(), + ServiceObjEnums.BABYOBJ.getId(), template.getSmsType(), + model.getHospitalId(), template.getId(), model.getId(), itemName, nextCheckTime, "", + WxTempleteIdEnums.ER_TONG_TI_XING.getId(),service); + messages.add(request); + + } + } + } + + list.setMessages(messages); + HelperUtils.sendMsg(list); + } + } + } + } }