Commit c5710b3992e885ef4088c368ea3184949ff8eaec
1 parent
c7311fd687
Exists in
luanping
and in
1 other branch
#新增产妇康复推送
Showing 10 changed files with 340 additions and 5 deletions
- platform-biz-service/src/main/resources/mainOrm/master/MatDeliverPushRecordMapper.xml
- platform-msg-generate/src/main/java/com/lyms/platform/msg/controller/MsgGenerateController.java
- platform-msg-generate/src/main/java/com/lyms/platform/msg/remote/AmsMessageService.java
- platform-msg-generate/src/main/java/com/lyms/platform/msg/service/IBaseService.java
- platform-msg-generate/src/main/java/com/lyms/platform/msg/service/IMsgGenerateService.java
- platform-msg-generate/src/main/java/com/lyms/platform/msg/service/impl/BaseServiceImpl.java
- platform-msg-generate/src/main/java/com/lyms/platform/msg/service/impl/MsgGenerateServiceImpl.java
- platform-msg-generate/src/main/java/com/lyms/platform/msg/utils/DateUtils.java
- platform-msg-generate/src/main/java/com/lyms/platform/msg/worker/ChanKangAmsMsgGenerateWorker.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatDeliverFacade.java
platform-biz-service/src/main/resources/mainOrm/master/MatDeliverPushRecordMapper.xml
View file @
c5710b3
| ... | ... | @@ -17,8 +17,8 @@ |
| 17 | 17 | </select> |
| 18 | 18 | |
| 19 | 19 | <insert id="add" parameterType="com.lyms.platform.permission.model.MatDeliverPushRecord" useGeneratedKeys="true" keyProperty="id"> |
| 20 | - INSERT INTO mat_deliver_push_record(weekType,parentId) | |
| 21 | - VALUES (#{week_type},#{parent_id}) | |
| 20 | + INSERT INTO mat_deliver_push_record(week_type,parent_id) | |
| 21 | + VALUES (#{weekType},#{parentId}) | |
| 22 | 22 | </insert> |
| 23 | 23 | |
| 24 | 24 |
platform-msg-generate/src/main/java/com/lyms/platform/msg/controller/MsgGenerateController.java
View file @
c5710b3
| ... | ... | @@ -148,5 +148,12 @@ |
| 148 | 148 | return ""; |
| 149 | 149 | } |
| 150 | 150 | |
| 151 | + @RequestMapping(method = RequestMethod.GET, value = "/generateChanKangAmsMsg") | |
| 152 | + @ResponseBody | |
| 153 | + public String generateChanKangAmsMsg(){ | |
| 154 | + msgGenerateService.generateChanKangAmsMsg(null); | |
| 155 | + return ""; | |
| 156 | + } | |
| 157 | + | |
| 151 | 158 | } |
platform-msg-generate/src/main/java/com/lyms/platform/msg/remote/AmsMessageService.java
View file @
c5710b3
| ... | ... | @@ -10,6 +10,7 @@ |
| 10 | 10 | import com.lyms.platform.msg.model.MessageContent; |
| 11 | 11 | import com.lyms.platform.msg.model.MessageResponseEntity; |
| 12 | 12 | import net.sf.json.JSONArray; |
| 13 | +import net.sf.json.JSONObject; | |
| 13 | 14 | import org.apache.commons.collections.CollectionUtils; |
| 14 | 15 | import org.slf4j.Logger; |
| 15 | 16 | import org.slf4j.LoggerFactory; |
| ... | ... | @@ -33,6 +34,21 @@ |
| 33 | 34 | public static final String AMS_URL= ConfigInterface.AMS_URL; |
| 34 | 35 | public static final String DATA_URL= ConfigInterface.DATA_URL; |
| 35 | 36 | private static final String AUTHORIZATION = "healthbaby2015"; |
| 37 | + | |
| 38 | + | |
| 39 | + public static JSONObject getArticleList(Map<String, String> params){ | |
| 40 | + Map<String, String> headers = new HashMap<String, String>(); | |
| 41 | + headers.put("Authorization", AUTHORIZATION); | |
| 42 | + String str = HttpRequest.sendGet("http://ams.api.healthbaby.com.cn/v1/articleList", | |
| 43 | + params, headers); | |
| 44 | + try { | |
| 45 | + return JSONObject.fromObject(str); | |
| 46 | + } catch (Exception e) { | |
| 47 | + ExceptionUtils.catchException(e,"getArticleList exception"); | |
| 48 | + } | |
| 49 | + return null; | |
| 50 | + } | |
| 51 | + | |
| 36 | 52 | |
| 37 | 53 | public static Map<String,List<MessageContent>> getMessageTemplateMap(String hospitalId,AmsServiceTypeEnum serviceType) { |
| 38 | 54 | System.out.println("ams > hospitalId=" + hospitalId + ";serviceType=" + serviceType); |
platform-msg-generate/src/main/java/com/lyms/platform/msg/service/IBaseService.java
View file @
c5710b3
| 1 | 1 | package com.lyms.platform.msg.service; |
| 2 | 2 | |
| 3 | +import com.lyms.platform.msg.model.HighScoreResult; | |
| 4 | +import com.lyms.platform.permission.model.MatDeliverPushRecord; | |
| 5 | +import com.lyms.platform.pojo.MaternalDeliverModel; | |
| 3 | 6 | import com.lyms.platform.pojo.SmsConfigModel; |
| 4 | 7 | import com.lyms.platform.pojo.SmsTemplateModel; |
| 5 | 8 | |
| ... | ... | @@ -42,5 +45,12 @@ |
| 42 | 45 | public String getPregnantSmsPrefix(SmsConfigModel config,String pid,String mainPrefix,SmsTemplateModel template); |
| 43 | 46 | |
| 44 | 47 | public String getDoctorName(String doctorId); |
| 48 | + | |
| 49 | + public MaternalDeliverModel getModelByPid(String pid); | |
| 50 | + | |
| 51 | + public HighScoreResult queryRiskList(List<String> ids); | |
| 52 | + | |
| 53 | + public Integer selectByWeek(String parentId,Integer weeks); | |
| 54 | + void addWeek(MatDeliverPushRecord matDeliverPushRecord); | |
| 45 | 55 | } |
platform-msg-generate/src/main/java/com/lyms/platform/msg/service/IMsgGenerateService.java
View file @
c5710b3
platform-msg-generate/src/main/java/com/lyms/platform/msg/service/impl/BaseServiceImpl.java
View file @
c5710b3
| ... | ... | @@ -10,6 +10,7 @@ |
| 10 | 10 | import com.lyms.platform.msg.service.IBaseService; |
| 11 | 11 | import com.lyms.platform.msg.utils.DateUtils; |
| 12 | 12 | import com.lyms.platform.permission.model.*; |
| 13 | +import com.lyms.platform.permission.service.MatDeliverPushRecordService; | |
| 13 | 14 | import com.lyms.platform.permission.service.OrganizationService; |
| 14 | 15 | import com.lyms.platform.permission.service.PatientServiceService; |
| 15 | 16 | import com.lyms.platform.permission.service.UsersService; |
| ... | ... | @@ -68,6 +69,8 @@ |
| 68 | 69 | |
| 69 | 70 | @Autowired |
| 70 | 71 | private BasicConfigService basicConfigService; |
| 72 | + @Autowired | |
| 73 | + private MatDeliverPushRecordService matDeliverPushRecordService; | |
| 71 | 74 | |
| 72 | 75 | /** |
| 73 | 76 | * 查询出对应周几要发送的的医院配置 |
| ... | ... | @@ -540,6 +543,28 @@ |
| 540 | 543 | } |
| 541 | 544 | } |
| 542 | 545 | |
| 546 | + @Override | |
| 547 | + public MaternalDeliverModel getModelByPid(String pid) { | |
| 548 | + Query query = new Query(); | |
| 549 | + query.addCriteria(Criteria.where("parentId").is(pid).and("yn").is(1)); | |
| 550 | + List<MaternalDeliverModel> modelList = mongoTemplate.find(query, MaternalDeliverModel.class); | |
| 551 | + return modelList.get(0); | |
| 552 | + } | |
| 553 | + | |
| 554 | + @Override | |
| 555 | + public HighScoreResult queryRiskList(List<String> ids) { | |
| 556 | + return queryRisk(ids); | |
| 557 | + } | |
| 558 | + | |
| 559 | + @Override | |
| 560 | + public Integer selectByWeek(String parentId, Integer weeks) { | |
| 561 | + return matDeliverPushRecordService.selectByWeek(parentId,weeks); | |
| 562 | + } | |
| 563 | + | |
| 564 | + @Override | |
| 565 | + public void addWeek(MatDeliverPushRecord matDeliverPushRecord) { | |
| 566 | + matDeliverPushRecordService.add(matDeliverPushRecord); | |
| 567 | + } | |
| 543 | 568 | |
| 544 | 569 | |
| 545 | 570 | /** |
platform-msg-generate/src/main/java/com/lyms/platform/msg/service/impl/MsgGenerateServiceImpl.java
View file @
c5710b3
| ... | ... | @@ -247,6 +247,26 @@ |
| 247 | 247 | } |
| 248 | 248 | } |
| 249 | 249 | |
| 250 | + @Override | |
| 251 | + public void generateChanKangAmsMsg(String generateHospitalId) { | |
| 252 | + List<SmsConfigModel> configModels = baseService.getHospitalConfigsByWeek(generateHospitalId); | |
| 253 | + logger.info("The generateChanKangAmsMsg configs hospital size is {}", configModels.size()); | |
| 254 | + if (CollectionUtils.isNotEmpty(configModels)) | |
| 255 | + { | |
| 256 | + int end = 0; | |
| 257 | + for (int i = 0; i < configModels.size(); i += DEFAULT_BATCH_SIZE) { | |
| 258 | + end = (end + DEFAULT_BATCH_SIZE); | |
| 259 | + if (end > configModels.size()) { | |
| 260 | + end = configModels.size(); | |
| 261 | + } | |
| 262 | + ChanKangAmsMsgGenerateWorker checkPointCountWorker = new ChanKangAmsMsgGenerateWorker(configModels.subList(i,end), | |
| 263 | + baseService,yunBookbuildingService); | |
| 264 | + pool.execute(checkPointCountWorker); | |
| 265 | + } | |
| 266 | + | |
| 267 | + } | |
| 268 | + } | |
| 269 | + | |
| 250 | 270 | /** |
| 251 | 271 | * 生成模板消息 |
| 252 | 272 | * @param generateHospitalId |
| ... | ... | @@ -348,6 +368,7 @@ |
| 348 | 368 | generatePatAmsMsg(null); |
| 349 | 369 | generateBabyAmsMsg(null); |
| 350 | 370 | generateChanAmsMsg(null); |
| 371 | + generateChanKangAmsMsg(null); | |
| 351 | 372 | generateBabyDiseaseAmsMsg(null); |
| 352 | 373 | generateResidentAmsMsg(null); |
| 353 | 374 | } |
platform-msg-generate/src/main/java/com/lyms/platform/msg/utils/DateUtils.java
View file @
c5710b3
| ... | ... | @@ -236,8 +236,8 @@ |
| 236 | 236 | Date endDate = DateUtils.getNewDate(new Date(), -13, "周", 1); |
| 237 | 237 | System.out.println(DateUtils.getDateStr(DateUtils.formatDate(startDate, DateUtils.Y_M_D),DateUtils.Y_M_D)); |
| 238 | 238 | System.out.println(DateUtils.getDateStr(DateUtils.formatDate(endDate, DateUtils.Y_M_D),DateUtils.Y_M_D));*/ |
| 239 | - | |
| 240 | - System.out.println(DateUtils.getNewDate(DateUtils.preaseDate("2023-09-26 8:00:00",DateUtils.Y_M_D_H_M_S),13, "周", -1)); | |
| 239 | + System.out.println(getWeekOfDate(new Date())); | |
| 240 | + //System.out.println(DateUtils.getNewDate(DateUtils.preaseDate("2023-09-26 8:00:00",DateUtils.Y_M_D_H_M_S),13, "周", -1)); | |
| 241 | 241 | } |
| 242 | 242 | } |
platform-msg-generate/src/main/java/com/lyms/platform/msg/worker/ChanKangAmsMsgGenerateWorker.java
View file @
c5710b3
| 1 | +package com.lyms.platform.msg.worker; | |
| 2 | + | |
| 3 | +import com.lyms.platform.beans.MsgListRequest; | |
| 4 | +import com.lyms.platform.beans.MsgRequest; | |
| 5 | +import com.lyms.platform.biz.service.YunBookbuildingService; | |
| 6 | +import com.lyms.platform.common.enums.*; | |
| 7 | +import com.lyms.platform.common.utils.JsonUtil; | |
| 8 | +import com.lyms.platform.common.utils.StringUtils; | |
| 9 | +import com.lyms.platform.msg.model.HighScoreResult; | |
| 10 | +import com.lyms.platform.msg.remote.AmsMessageService; | |
| 11 | +import com.lyms.platform.msg.service.IBaseService; | |
| 12 | +import com.lyms.platform.msg.utils.DateUtils; | |
| 13 | +import com.lyms.platform.msg.utils.HelperUtils; | |
| 14 | +import com.lyms.platform.permission.model.MatDeliverPushRecord; | |
| 15 | +import com.lyms.platform.pojo.MaternalDeliverModel; | |
| 16 | +import com.lyms.platform.pojo.Patients; | |
| 17 | +import com.lyms.platform.pojo.SmsConfigModel; | |
| 18 | +import com.lyms.platform.query.PatientsQuery; | |
| 19 | +import org.apache.commons.collections.CollectionUtils; | |
| 20 | +import org.slf4j.Logger; | |
| 21 | +import org.slf4j.LoggerFactory; | |
| 22 | + | |
| 23 | +import java.util.*; | |
| 24 | + | |
| 25 | +/** | |
| 26 | + * 产后康复 | |
| 27 | + */ | |
| 28 | +public class ChanKangAmsMsgGenerateWorker implements Runnable { | |
| 29 | + private static final Logger logger = LoggerFactory.getLogger(ChanKangAmsMsgGenerateWorker.class); | |
| 30 | + | |
| 31 | + private List<SmsConfigModel> configs; | |
| 32 | + | |
| 33 | + private IBaseService baseService; | |
| 34 | + | |
| 35 | + private YunBookbuildingService yunBookbuildingService; | |
| 36 | + | |
| 37 | + | |
| 38 | + public ChanKangAmsMsgGenerateWorker(List<SmsConfigModel> configs, IBaseService baseService, | |
| 39 | + YunBookbuildingService yunBookbuildingService) { | |
| 40 | + this.configs = configs; | |
| 41 | + this.baseService = baseService; | |
| 42 | + this.yunBookbuildingService = yunBookbuildingService; | |
| 43 | + | |
| 44 | + } | |
| 45 | + | |
| 46 | + @Override | |
| 47 | + public void run() { | |
| 48 | + if (CollectionUtils.isNotEmpty(configs)) { | |
| 49 | + for (SmsConfigModel config : configs) { | |
| 50 | + | |
| 51 | + String hospitalId = config.getHospitalId(); | |
| 52 | + if (StringUtils.isEmpty(hospitalId)) { | |
| 53 | + continue; | |
| 54 | + } | |
| 55 | + | |
| 56 | + //判断医院是否运行 | |
| 57 | + if (!baseService.isRunning(hospitalId)) { | |
| 58 | + continue; | |
| 59 | + } | |
| 60 | + | |
| 61 | + String serviceStr = config.getSmsService(); | |
| 62 | + String serviceType = config.getServiceType(); | |
| 63 | + | |
| 64 | + //判断消息服务是否启动 | |
| 65 | + int service = baseService.isStartService(SmsServiceEnums.CHKFTX.getId(), serviceStr, serviceType); | |
| 66 | + if (service == 0) { | |
| 67 | + continue; | |
| 68 | + } | |
| 69 | + | |
| 70 | + | |
| 71 | + logger.info("The ChanKangAmsMsgGenerateWorker hospital id is " + hospitalId); | |
| 72 | + | |
| 73 | + PatientsQuery patientsQuery = new PatientsQuery(); | |
| 74 | + patientsQuery.setYn(YnEnums.YES.getId()); | |
| 75 | + patientsQuery.setHospitalId(hospitalId); | |
| 76 | + //1孕妇 3 产妇 | |
| 77 | + patientsQuery.setType(3); | |
| 78 | + patientsQuery.setDueStatus(0); | |
| 79 | + | |
| 80 | + List buildType = new ArrayList(); | |
| 81 | + buildType.add(0); | |
| 82 | + buildType.add(2); | |
| 83 | + patientsQuery.setSmsBuildTypeList(buildType); | |
| 84 | + | |
| 85 | + | |
| 86 | + //健康指导短信 只能是类型为 增值服务 开通状态 才发送 | |
| 87 | + patientsQuery.setServiceType(ServiceTypeEnums.ADD_MAT_DELIVER_SERVICE.getId()); | |
| 88 | + patientsQuery.setServiceStatus(ServiceStatusEnums.STANDARD_OPEN.getId()); | |
| 89 | + | |
| 90 | + | |
| 91 | + //查询符合条件的产妇 | |
| 92 | + List<Patients> patients = yunBookbuildingService.queryPregnantWithQuery(patientsQuery); | |
| 93 | + System.out.println("amsSmses--->"+patients); | |
| 94 | + if (CollectionUtils.isNotEmpty(patients)) { | |
| 95 | + | |
| 96 | + //发送短信集合 | |
| 97 | + MsgListRequest list = new MsgListRequest(); | |
| 98 | + List<MsgRequest> messages = new ArrayList<>(); | |
| 99 | + for (Patients pat : patients) { | |
| 100 | + if (pat == null || pat.getFmDate() == null) { | |
| 101 | + continue; | |
| 102 | + } | |
| 103 | + | |
| 104 | + MaternalDeliverModel maternalDeliverModel = baseService.getModelByPid(pat.getId()); | |
| 105 | + | |
| 106 | + System.out.println("maternalDeliverModel--->"+maternalDeliverModel); | |
| 107 | + //分娩类型 | |
| 108 | + String deliveryMode = getDelivery(maternalDeliverModel); | |
| 109 | + //计算产后多少周 按分娩日期计算 | |
| 110 | + int weeks = (DateUtils.daysBetween(pat.getFmDate(), new Date()) / 7)>12?12:DateUtils.daysBetween(pat.getFmDate(), new Date()) / 7; | |
| 111 | + | |
| 112 | + String parentId =maternalDeliverModel.getParentId(); | |
| 113 | + | |
| 114 | + Integer id = baseService.selectByWeek(parentId, weeks); | |
| 115 | + if (id != null) { | |
| 116 | + continue; | |
| 117 | + } | |
| 118 | + | |
| 119 | + | |
| 120 | + List<String> riskId = pat.getRiskFactorId(); | |
| 121 | + StringBuffer sb = new StringBuffer(); | |
| 122 | + if (CollectionUtils.isNotEmpty(riskId)) { | |
| 123 | + HighScoreResult highScoreResult = baseService.queryRiskList(riskId); | |
| 124 | + List<Map> riskList = highScoreResult.getHighRisk(); | |
| 125 | + if (CollectionUtils.isNotEmpty(riskList)) { | |
| 126 | + for (Map risk : riskList) { | |
| 127 | + sb.append(risk.get("name")).append(","); | |
| 128 | + } | |
| 129 | + } | |
| 130 | + } | |
| 131 | + | |
| 132 | + String highRisk = sb.toString(); | |
| 133 | + Map<String, String> params = new HashMap<>(); | |
| 134 | + params.put("weekType", String.valueOf(weeks)); | |
| 135 | + params.put("deliveryMode", deliveryMode); | |
| 136 | + if (highRisk.length() > 0) { | |
| 137 | + params.put("riskType", highRisk.substring(0, highRisk.length() - 1)); | |
| 138 | + } | |
| 139 | + System.out.println("params--->"+params); | |
| 140 | + // 查询模板短信 从ams平台配置的短信通过医院ID | |
| 141 | + net.sf.json.JSONObject amsSmses = AmsMessageService | |
| 142 | + .getArticleList(params); | |
| 143 | + System.out.println("amsSmses--->"+amsSmses); | |
| 144 | + if (amsSmses == null || amsSmses.getInt("errorcode") != 0 || | |
| 145 | + amsSmses.getJSONArray("list")==null || amsSmses.getJSONArray("list").size()==0) { | |
| 146 | + continue; | |
| 147 | + } | |
| 148 | + MatDeliverPushRecord matDeliverPushRecord = new MatDeliverPushRecord(); | |
| 149 | + matDeliverPushRecord.setParentId(parentId); | |
| 150 | + matDeliverPushRecord.setWeekType(weeks); | |
| 151 | + baseService.addWeek(matDeliverPushRecord); | |
| 152 | + id=matDeliverPushRecord.getId(); | |
| 153 | + | |
| 154 | + String yunWeek = "产后" + String.valueOf(weeks) + "周"; | |
| 155 | + String title = "产后康复指导(点此查看详情)"; | |
| 156 | + String messageContent = ""; | |
| 157 | + MsgRequest request = HelperUtils.getMessageRequest(messageContent, pat.getPhone(), | |
| 158 | + ServiceObjEnums.CHANOBJ.getId(), SmsServiceEnums.CHKFTX.getId(), | |
| 159 | + pat.getHospitalId(), String.valueOf(id), pat.getId(), yunWeek, title, "", | |
| 160 | + WxTempleteIdEnums.CHAN_YI_BAN_ZHI_DAO.getId(), service); | |
| 161 | + | |
| 162 | + messages.add(request); | |
| 163 | + } | |
| 164 | + if (CollectionUtils.isNotEmpty(messages)){ | |
| 165 | + list.setMessages(messages); | |
| 166 | + System.out.println("messages--->"+list); | |
| 167 | + HelperUtils.sendMsg(list); | |
| 168 | + } | |
| 169 | + } | |
| 170 | + } | |
| 171 | + } | |
| 172 | + } | |
| 173 | + | |
| 174 | + | |
| 175 | + /** | |
| 176 | + * 获取产妇分娩类型 | |
| 177 | + * | |
| 178 | + * @return | |
| 179 | + */ | |
| 180 | + private String getDelivery(MaternalDeliverModel data) { | |
| 181 | + String deliveryMode = ""; | |
| 182 | + if (org.apache.commons.lang.StringUtils.isNotEmpty(data.getDeliveryMode())) { | |
| 183 | + StringBuilder sb = new StringBuilder(); | |
| 184 | + | |
| 185 | + Map m = JsonUtil.str2Obj(data.getDeliveryMode(), Map.class); | |
| 186 | + String fmfs = null; | |
| 187 | + if (m != null) { | |
| 188 | + Object b = m.get("fmfs"); | |
| 189 | + if (b != null) { | |
| 190 | + fmfs = b.toString(); | |
| 191 | + if (fmfs != null) { | |
| 192 | + if (fmfs.equals("1")) { | |
| 193 | + String fmName = FmTypeEnums.getFmNameById(fmfs); | |
| 194 | + sb.append(fmName); | |
| 195 | + if (null != m.get("scfs") && !"null".equals(m.get("scfs").toString())) { | |
| 196 | + sb.append(","); | |
| 197 | + String scfs = m.get("scfs").toString(); | |
| 198 | + sb.append(FmTypeEnums.getFmScNameById(scfs)); | |
| 199 | + } | |
| 200 | + deliveryMode = sb.toString(); | |
| 201 | + } else if (fmfs.equals("2")) { | |
| 202 | + String fmName = FmTypeEnums.getFmNameById(fmfs); | |
| 203 | + deliveryMode = fmName; | |
| 204 | + } | |
| 205 | + } | |
| 206 | + } | |
| 207 | + } | |
| 208 | + } | |
| 209 | + return deliveryMode; | |
| 210 | + } | |
| 211 | +} |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatDeliverFacade.java
View file @
c5710b3
| ... | ... | @@ -4293,6 +4293,23 @@ |
| 4293 | 4293 | query.addCriteria(Criteria.where("parentId").is(patientsList.get(0).getId()).and("yn").is(1)); |
| 4294 | 4294 | List<MaternalDeliverModel> list = mongoTemplate.find(query, MaternalDeliverModel.class); |
| 4295 | 4295 | if (CollectionUtils.isNotEmpty(list)) { |
| 4296 | + //高危因素 | |
| 4297 | + List<String> riskId = patientsList.get(0).getRiskFactorId(); | |
| 4298 | + StringBuffer sb = new StringBuffer(); | |
| 4299 | + if (CollectionUtils.isNotEmpty(riskId)) { | |
| 4300 | + HighScoreResult highScoreResult = queryRisk(riskId); | |
| 4301 | + List<Map> riskList = highScoreResult.getHighRisk(); | |
| 4302 | + if (CollectionUtils.isNotEmpty(riskList)) { | |
| 4303 | + for (Map risk : riskList) { | |
| 4304 | + sb.append(risk.get("name")).append(","); | |
| 4305 | + } | |
| 4306 | + } | |
| 4307 | + } | |
| 4308 | + | |
| 4309 | + String highRisk = sb.toString(); | |
| 4310 | + if (highRisk.length() > 0) { | |
| 4311 | + params.put("riskType", highRisk.substring(0, highRisk.length() - 1)); | |
| 4312 | + } | |
| 4296 | 4313 | MaternalDeliverModel maternalDeliverModel = list.get(0); |
| 4297 | 4314 | String dueDate = maternalDeliverModel.getDueDate() + " 00:00:00"; |
| 4298 | 4315 | //分娩类型 基于ID查询对应文章 |
| ... | ... | @@ -4317,7 +4334,30 @@ |
| 4317 | 4334 | |
| 4318 | 4335 | private static int getTime(Date dueDate) { |
| 4319 | 4336 | int days = DateUtil.daysBetween(dueDate, new Date()); |
| 4320 | - return days / 7; | |
| 4337 | + return days%7==0?days/7:days/7+1; | |
| 4338 | + } | |
| 4339 | + private HighScoreResult queryRisk(List<String> id) { | |
| 4340 | + HighScoreResult highScoreResult = new HighScoreResult(); | |
| 4341 | + BasicConfigQuery | |
| 4342 | + basicConfigQuery = new BasicConfigQuery(); | |
| 4343 | + List data = new ArrayList(); | |
| 4344 | + Integer score = null; | |
| 4345 | + if (CollectionUtils.isNotEmpty(id)) { | |
| 4346 | + for (String i : id) { | |
| 4347 | + basicConfigQuery.setId(i); | |
| 4348 | + List<BasicConfig> basicConfigs = basicConfigService.queryBasicConfig(basicConfigQuery); | |
| 4349 | + if (CollectionUtils.isNotEmpty(basicConfigs)) { | |
| 4350 | + for (BasicConfig basicConfig : basicConfigs) { | |
| 4351 | + Map<String, Object> map = new HashMap<>(); | |
| 4352 | + map.put("id", basicConfig.getId()); | |
| 4353 | + map.put("name", basicConfig.getName()); | |
| 4354 | + data.add(map); | |
| 4355 | + } | |
| 4356 | + } | |
| 4357 | + } | |
| 4358 | + } | |
| 4359 | + highScoreResult.setHighRisk(data); | |
| 4360 | + return highScoreResult; | |
| 4321 | 4361 | } |
| 4322 | 4362 | |
| 4323 | 4363 | public static void main(String[] args) { |