Commit 29c8368a6b3ae3bb2b1584fd2ba9092b8d451ff9

Authored by wtt
1 parent c011308e6e

update

Showing 5 changed files with 105 additions and 8 deletions

platform-common/src/main/java/com/lyms/platform/common/utils/DateUtil.java View file @ 29c8368
... ... @@ -1706,6 +1706,9 @@
1706 1706 int i = DateUtil.getAge2(bir, bir1);
1707 1707 System.out.println(i);
1708 1708  
  1709 +
  1710 + System.out.println( DateUtil.getDayStartTime(new Date()));
  1711 + System.out.println( DateUtil.getDayEndTime(new Date()));
1709 1712 }
1710 1713  
1711 1714 }
platform-dal/src/main/java/com/lyms/platform/query/AntExQuery.java View file @ 29c8368
... ... @@ -53,6 +53,25 @@
53 53  
54 54 private Date checkEndDate;
55 55  
  56 + private Date nextCheckTimeStartDate;
  57 + private Date nextCheckTimeEndDate;
  58 +
  59 + public Date getNextCheckTimeStartDate() {
  60 + return nextCheckTimeStartDate;
  61 + }
  62 +
  63 + public void setNextCheckTimeStartDate(Date nextCheckTimeStartDate) {
  64 + this.nextCheckTimeStartDate = nextCheckTimeStartDate;
  65 + }
  66 +
  67 + public Date getNextCheckTimeEndDate() {
  68 + return nextCheckTimeEndDate;
  69 + }
  70 +
  71 + public void setNextCheckTimeEndDate(Date nextCheckTimeEndDate) {
  72 + this.nextCheckTimeEndDate = nextCheckTimeEndDate;
  73 + }
  74 +
56 75 public Date getCheckStartDate() {
57 76 return checkStartDate;
58 77 }
... ... @@ -268,6 +287,15 @@
268 287 condition = condition.orCondition(new MongoCondition[]{mongoCondition, condition2});
269 288 }
270 289  
  290 +
  291 + if (null != nextCheckTimeEndDate && nextCheckTimeStartDate != null) {
  292 + if (null != c) {
  293 + c = c.where("nextCheckTime").gte(nextCheckTimeStartDate).lte(nextCheckTimeEndDate);
  294 + } else {
  295 + c = Criteria.where("nextCheckTime").gte(nextCheckTimeStartDate).lte(nextCheckTimeEndDate);
  296 + }
  297 + isAddStart = Boolean.TRUE;
  298 + }
271 299  
272 300 if (null != createdTimeStart && createdTimeEnd != null) {
273 301 if (null != c) {
platform-msg-generate/src/main/java/com/lyms/platform/msg/controller/MsgGenerateController.java View file @ 29c8368
... ... @@ -142,9 +142,9 @@
142 142 @ResponseBody
143 143 public String generaterAllMsg()
144 144 {
145   - msgGenerateService.generaterAllAmsMsg();
  145 +// msgGenerateService.generaterAllAmsMsg();
146 146 msgGenerateService.generaterAllTmpMsg();
147   - msgGenerateService.generaterAllCourseMsg();
  147 +// msgGenerateService.generaterAllCourseMsg();
148 148 return "";
149 149 }
150 150  
platform-msg-generate/src/main/java/com/lyms/platform/msg/service/impl/MsgGenerateServiceImpl.java View file @ 29c8368
... ... @@ -21,6 +21,7 @@
21 21 import org.slf4j.Logger;
22 22 import org.slf4j.LoggerFactory;
23 23 import org.springframework.beans.factory.annotation.Autowired;
  24 +import org.springframework.beans.factory.annotation.Qualifier;
24 25 import org.springframework.data.mongodb.core.MongoTemplate;
25 26 import org.springframework.stereotype.Service;
26 27  
27 28  
... ... @@ -95,8 +96,12 @@
95 96  
96 97 @Autowired
97 98 private MatDeliverService matDeliverService;
  99 + @Autowired
  100 + private AntenatalExaminationService antenatalExaminationService;
  101 + @Autowired
  102 + @Qualifier("cfCheckItemService")
  103 + private CheckItemService checkItemService;
98 104  
99   -
100 105 /**
101 106 * 生成孕妇的AMS推送消息
102 107 * @param generateHospitalId 医院id
... ... @@ -259,7 +264,10 @@
259 264 if (end > configModels.size()) {
260 265 end = configModels.size();
261 266 }
262   - TempleteMsgGenerateWorker worker = new TempleteMsgGenerateWorker(configModels.subList(i,end),
  267 + TempleteMsgGenerateWorker worker = new TempleteMsgGenerateWorker(
  268 + antenatalExaminationService,
  269 + checkItemService,
  270 + configModels.subList(i,end),
263 271 baseService,
264 272 yunBookbuildingService,
265 273 smsTemplateService,
... ... @@ -327,7 +335,8 @@
327 335 */
328 336 @Override
329 337 public void generaterAllTmpMsg() {
330   - generateTemplateMsg(null);
  338 +// generateTemplateMsg(null);
  339 + generateTemplateMsg("1000000115");
331 340 }
332 341  
333 342  
platform-msg-generate/src/main/java/com/lyms/platform/msg/worker/TempleteMsgGenerateWorker.java View file @ 29c8368
... ... @@ -5,7 +5,6 @@
5 5 import com.lyms.platform.biz.service.*;
6 6 import com.lyms.platform.common.enums.*;
7 7 import com.lyms.platform.common.utils.DateUtil;
8   -import com.lyms.platform.common.utils.JsonUtil;
9 8 import com.lyms.platform.common.utils.StringUtils;
10 9 import com.lyms.platform.msg.service.IBaseService;
11 10 import com.lyms.platform.msg.utils.DateUtils;
... ... @@ -18,7 +17,6 @@
18 17 import org.apache.commons.collections.CollectionUtils;
19 18 import org.slf4j.Logger;
20 19 import org.slf4j.LoggerFactory;
21   -import org.springframework.beans.factory.annotation.Autowired;
22 20 import org.springframework.data.domain.Sort;
23 21 import org.springframework.data.mongodb.core.MongoTemplate;
24 22 import org.springframework.data.mongodb.core.query.Criteria;
25 23  
... ... @@ -65,7 +63,9 @@
65 63  
66 64 private ResidentsArchiveService residentsArchiveService;
67 65  
  66 + private AntenatalExaminationService antenatalExaminationService;
68 67  
  68 + private CheckItemService checkItemService;
69 69  
70 70 private FolviteMapper folviteMapper;
71 71  
... ... @@ -73,7 +73,9 @@
73 73  
74 74  
75 75 private MatDeliverService matDeliverService;
76   - public TempleteMsgGenerateWorker(List<SmsConfigModel> configs,
  76 + public TempleteMsgGenerateWorker(AntenatalExaminationService antenatalExaminationService,
  77 + CheckItemService checkItemService,
  78 + List<SmsConfigModel> configs,
77 79 IBaseService baseService,
78 80 YunBookbuildingService yunBookbuildingService,
79 81 SmsTemplateService smsTemplateService,
... ... @@ -92,6 +94,8 @@
92 94 FolviteMapper folviteMapper
93 95  
94 96 ) {
  97 + this.antenatalExaminationService = antenatalExaminationService;
  98 + this.checkItemService = checkItemService;
95 99 this.configs = configs;
96 100 this.baseService = baseService;
97 101 this.yunBookbuildingService = yunBookbuildingService;
... ... @@ -1770,6 +1774,8 @@
1770 1774 String messageContent = "【" + messagePrefix + "】" + template.getContent();
1771 1775 //messageContent = HelperUtils.replaceEL(pat.getUsername(), yuYueDate, messageContent);
1772 1776 messageContent = HelperUtils.replaceELD(pat.getUsername(), yuYueDate, remark, messageContent);
  1777 + //包含{{检查项目}}就赋值最近检查项目
  1778 + messageContent = getCheckTimeStr(pat, messageContent);
1773 1779  
1774 1780 String checkTimeStr = DateUtils.getDateStr(yuYueDate, DateUtils.Y_M_D);
1775 1781 String checkName = "产前检查";
... ... @@ -1782,6 +1788,57 @@
1782 1788 messages.add(request);
1783 1789 }
1784 1790 }
  1791 + }
  1792 +
  1793 + private String getCheckTimeStr(Patients pat, String messageContent) {
  1794 + String nextCheckItem = "";
  1795 + try {
  1796 + if(StringUtils.isNotEmpty(messageContent) && messageContent.contains("{{检查项目}}")){
  1797 + Date nextCheckTime = pat.getNextCheckTime();
  1798 + //复诊
  1799 + AntExQuery antExQuery = new AntExQuery();
  1800 + antExQuery.setYn(YnEnums.YES.getId());
  1801 + antExQuery.setParentId(pat.getId());
  1802 + antExQuery.setNextCheckTimeStartDate(DateUtil.getDayStartTime(nextCheckTime));
  1803 + antExQuery.setNextCheckTimeEndDate(DateUtil.getDayEndTime(nextCheckTime));
  1804 + List <AntenatalExaminationModel> antenatalExaminationModels = antenatalExaminationService.queryAntenatalExamination(antExQuery.convertToQuery().addOrder(Sort.Direction.DESC, "created"));
  1805 + if(CollectionUtils.isNotEmpty(antenatalExaminationModels)){
  1806 + AntenatalExaminationModel fz = antenatalExaminationModels.get(0);
  1807 + if(fz!=null && StringUtils.isNotEmpty(fz.getConfigItemId())){
  1808 + String[] arrs = fz.getConfigItemId().split(",");
  1809 + for (String checkItemId : arrs) {
  1810 + String checkItem = checkItemService.getOne(Integer.parseInt(checkItemId));
  1811 + nextCheckItem += StringUtils.isEmpty(nextCheckItem) ? checkItem : ("," + checkItem);
  1812 + }
  1813 + }
  1814 +
  1815 + }
  1816 + //初诊
  1817 + AntExChuQuery antExChuQuery = new AntExChuQuery();
  1818 + antExChuQuery.setYn(YnEnums.YES.getId());
  1819 + antExChuQuery.setParentId(pat.getId());
  1820 + antExChuQuery.setNextCheckTimeStart(DateUtil.getDayStartTime(nextCheckTime));
  1821 + antExChuQuery.setNextCheckTimeEnd(DateUtil.getDayEndTime(nextCheckTime));
  1822 + System.out.println(antExChuQuery.convertToQuery().convertToMongoQuery());
  1823 + List <AntExChuModel> antExChuModels = antenatalExaminationService.queryAntExChu(antExChuQuery.convertToQuery().addOrder(Sort.Direction.DESC, "created"));
  1824 + if(CollectionUtils.isNotEmpty(antExChuModels) && CollectionUtils.isEmpty(antenatalExaminationModels)){
  1825 + AntExChuModel antExChuModel = antExChuModels.get(0);
  1826 + if(antExChuModel!=null && StringUtils.isNotEmpty(antExChuModel.getConfigItemId())){
  1827 + String[] arrs = antExChuModel.getConfigItemId().split(",");
  1828 + for (String checkItemId : arrs) {
  1829 + String checkItem = checkItemService.getOne(Integer.parseInt(checkItemId));
  1830 + nextCheckItem += StringUtils.isEmpty(nextCheckItem) ? checkItem : ("、" + checkItem);
  1831 + }
  1832 + }
  1833 + }
  1834 + if(StringUtils.isNotEmpty(nextCheckItem)){
  1835 + messageContent = messageContent.replace("{{检查项目}}", "检查"+nextCheckItem);
  1836 + }
  1837 + }
  1838 + } catch (NumberFormatException e) {
  1839 + e.printStackTrace();
  1840 + }
  1841 + return messageContent;
1785 1842 }
1786 1843  
1787 1844