diff --git a/platform-common/src/main/java/com/lyms/platform/common/enums/WxTempleteIdEnums.java b/platform-common/src/main/java/com/lyms/platform/common/enums/WxTempleteIdEnums.java index 2770001..f4d9f90 100644 --- a/platform-common/src/main/java/com/lyms/platform/common/enums/WxTempleteIdEnums.java +++ b/platform-common/src/main/java/com/lyms/platform/common/enums/WxTempleteIdEnums.java @@ -17,7 +17,9 @@ public enum WxTempleteIdEnums { ER_TONG_TI_XING("9BUY6THL261MmbVRb9iPZANQwJ5yKNzkE1VGCLPuI94","儿童月龄提醒"), //儿保预约提醒 JIAN_KANG_ZHI_DAO("98i1P6zh3slBxEKLftweaESnnem4w6SDmzvJIBWRXNE","孕期健康指导提醒"), - GAO_WEI_ZHI_DAO("n6fSC1wYc3jOfGmuI1Vtbut6TlaBPlt5482SqJ8CE4o","高危提醒"); + GAO_WEI_ZHI_DAO("n6fSC1wYc3jOfGmuI1Vtbut6TlaBPlt5482SqJ8CE4o","高危提醒"), + + ER_JIAN_KANG_ZHI_DAO("","儿童健康指导"); private WxTempleteIdEnums(String id, String name){ this.name=name; this.id =id; diff --git a/platform-msg-generate/src/main/java/com/lyms/platform/msg/service/IMsgGenerateService.java b/platform-msg-generate/src/main/java/com/lyms/platform/msg/service/IMsgGenerateService.java index ae903e2..4118dd6 100644 --- a/platform-msg-generate/src/main/java/com/lyms/platform/msg/service/IMsgGenerateService.java +++ b/platform-msg-generate/src/main/java/com/lyms/platform/msg/service/IMsgGenerateService.java @@ -23,4 +23,10 @@ public interface IMsgGenerateService { * @param hospitalId */ void generateTemplateMsg(String hospitalId); + + /** + * 生成产妇ams推送消息 + * @param generateHospitalId + */ + void generateChanAmsMsg(String generateHospitalId); } diff --git a/platform-msg-generate/src/main/java/com/lyms/platform/msg/service/impl/MsgGenerateServiceImpl.java b/platform-msg-generate/src/main/java/com/lyms/platform/msg/service/impl/MsgGenerateServiceImpl.java index 177c186..acb830a 100644 --- a/platform-msg-generate/src/main/java/com/lyms/platform/msg/service/impl/MsgGenerateServiceImpl.java +++ b/platform-msg-generate/src/main/java/com/lyms/platform/msg/service/impl/MsgGenerateServiceImpl.java @@ -5,6 +5,7 @@ import com.lyms.platform.msg.service.IBaseService; import com.lyms.platform.msg.service.IMsgGenerateService; import com.lyms.platform.msg.utils.DateUtils; import com.lyms.platform.msg.worker.BabyAmsMsgGenerateWorker; +import com.lyms.platform.msg.worker.ChanAmsMsgGenerateWorker; import com.lyms.platform.msg.worker.TempleteMsgGenerateWorker; import com.lyms.platform.msg.worker.YunAmsMsgGenerateWorker; import com.lyms.platform.permission.service.OrganizationService; @@ -81,7 +82,6 @@ public class MsgGenerateServiceImpl implements IMsgGenerateService { */ @Override public void generateBabyAmsMsg(String generateHospitalId) { - String week = DateUtils.getWeekOfDate(new Date()); List configModels = baseService.getHospitalConfigsByWeek(generateHospitalId); logger.info("The configs hospital size is {}",configModels.size()); if (CollectionUtils.isNotEmpty(configModels)) @@ -94,7 +94,33 @@ public class MsgGenerateServiceImpl implements IMsgGenerateService { end = configModels.size(); } BabyAmsMsgGenerateWorker checkPointCountWorker = new BabyAmsMsgGenerateWorker(configModels.subList(i,end), - baseService,babyBookbuildingService,week); + baseService,babyBookbuildingService); + pool.submit(checkPointCountWorker); + } + + } + } + + + /** + * 生成产妇的ams消息 + * @param generateHospitalId + */ + @Override + public void generateChanAmsMsg(String generateHospitalId) { + List configModels = baseService.getHospitalConfigsByWeek(generateHospitalId); + logger.info("The configs hospital size is {}",configModels.size()); + if (CollectionUtils.isNotEmpty(configModels)) + { + int batchSize = 5; + int end = 0; + for (int i = 0; i < configModels.size(); i += batchSize) { + end = (end + batchSize); + if (end > configModels.size()) { + end = configModels.size(); + } + ChanAmsMsgGenerateWorker checkPointCountWorker = new ChanAmsMsgGenerateWorker(configModels.subList(i,end), + baseService,yunBookbuildingService); pool.submit(checkPointCountWorker); } diff --git a/platform-msg-generate/src/main/java/com/lyms/platform/msg/worker/BabyAmsMsgGenerateWorker.java b/platform-msg-generate/src/main/java/com/lyms/platform/msg/worker/BabyAmsMsgGenerateWorker.java index fc82acb..efcd1f9 100644 --- a/platform-msg-generate/src/main/java/com/lyms/platform/msg/worker/BabyAmsMsgGenerateWorker.java +++ b/platform-msg-generate/src/main/java/com/lyms/platform/msg/worker/BabyAmsMsgGenerateWorker.java @@ -44,17 +44,14 @@ public class BabyAmsMsgGenerateWorker implements Runnable { private BabyBookbuildingService babyBookbuildingService; - private String week; public BabyAmsMsgGenerateWorker(List configs, IBaseService baseService, - BabyBookbuildingService babyBookbuildingService, - String week) + BabyBookbuildingService babyBookbuildingService) { this.configs = configs; this.baseService = baseService; this.babyBookbuildingService = babyBookbuildingService; - this.week = week; } @Override @@ -145,18 +142,14 @@ public class BabyAmsMsgGenerateWorker implements Runnable { { continue; } -// String messageContent = "【"+messagePrefix+"】" + message.getContent(); -// MessageRequest request = getMessageRequest( messageContent,baby.getMphone(),ServiceObjEnums.BABYOBJ.getId(), SmsServiceEnums.YBZD.getId(), -// baby.getHospitalId(),message.getId(),baby.getId()); - - String weekDay = ""; + String weekDay = DateUtil.getWeek(baby.getBirth(), new Date())+"周"; String title = "儿童健康指导";//SmsServiceEnums.getSmsServiceById(SmsServiceEnums.YBZD.getId()); String messageContent = "【"+messagePrefix+"】" + message.getContent(); MessageRequest request = HelperUtils.getMessageRequest(title, baby.getMphone(), ServiceObjEnums.BABYOBJ.getId(), SmsServiceEnums.YBZD.getId(), - baby.getHospitalId(), message.getId(), baby.getId(), weekDay, "", messageContent, WxTempleteIdEnums.CHAN_JIAN_TI_XING.getId()); + baby.getHospitalId(), message.getId(), baby.getId(), weekDay, "", messageContent, WxTempleteIdEnums.ER_JIAN_KANG_ZHI_DAO.getId()); messages.add(request); break; diff --git a/platform-msg-generate/src/main/java/com/lyms/platform/msg/worker/ChanAmsMsgGenerateWorker.java b/platform-msg-generate/src/main/java/com/lyms/platform/msg/worker/ChanAmsMsgGenerateWorker.java new file mode 100644 index 0000000..266168d --- /dev/null +++ b/platform-msg-generate/src/main/java/com/lyms/platform/msg/worker/ChanAmsMsgGenerateWorker.java @@ -0,0 +1,66 @@ +package com.lyms.platform.msg.worker; + +import com.lyms.platform.beans.MessageListRequest; +import com.lyms.platform.beans.MessageRequest; +import com.lyms.platform.biz.service.HighRiskService; +import com.lyms.platform.biz.service.YunBookbuildingService; +import com.lyms.platform.common.enums.*; +import com.lyms.platform.common.utils.DateUtil; +import com.lyms.platform.common.utils.JsonUtil; +import com.lyms.platform.common.utils.StringUtils; +import com.lyms.platform.msg.model.MessageContent; +import com.lyms.platform.msg.remote.AmsMessageService; +import com.lyms.platform.msg.remote.SaveMessageService; +import com.lyms.platform.msg.service.IBaseService; +import com.lyms.platform.msg.utils.DateUtils; +import com.lyms.platform.msg.utils.HelperUtils; +import com.lyms.platform.pojo.HighRiskSmsModel; +import com.lyms.platform.pojo.Patients; +import com.lyms.platform.pojo.SmsConfigModel; +import com.lyms.platform.query.HighRiskSmsQuery; +import com.lyms.platform.query.PatientsQuery; +import org.apache.commons.collections.CollectionUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Map; + +/** + * Created by lqy on 2017-07-18. + */ +public class ChanAmsMsgGenerateWorker implements Runnable { + + + private static final Logger logger = LoggerFactory.getLogger(ChanAmsMsgGenerateWorker.class); + + + + private List configs; + + private IBaseService baseService; + + private YunBookbuildingService yunBookbuildingService; + + public ChanAmsMsgGenerateWorker(List configs, IBaseService baseService, + YunBookbuildingService yunBookbuildingService) + { + this.configs = configs; + this.baseService = baseService; + this.yunBookbuildingService = yunBookbuildingService; + + } + + @Override + public void run() { + if (CollectionUtils.isNotEmpty(configs)) + { + for(SmsConfigModel config : configs) { + + + } + } + } +} diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PuerperaManageController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PuerperaManageController.java index 4a95f85..afdb4bd 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PuerperaManageController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PuerperaManageController.java @@ -255,6 +255,7 @@ public class PuerperaManageController extends BaseController { public BaseResponse queryRegionAllPatients(@Valid RiskPatientsQueryRequest patientsQueryRequest,HttpServletRequest request){ LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); patientsQueryRequest.setFmHospital(patientsQueryRequest.gethId()); + patientsQueryRequest.sethId(null); return patientFacade.queryHighRisk(patientsQueryRequest, null, 3,loginState.getId(),"true",Boolean.TRUE); }