diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BirthController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BirthController.java index b23f80b..86aabf4 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BirthController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BirthController.java @@ -1,5 +1,6 @@ package com.lyms.platform.operate.web.controller; +import com.lyms.platform.biz.service.ArchiveDataServicer; import com.lyms.platform.biz.service.PatientsService; import com.lyms.platform.common.annotation.TokenRequired; import com.lyms.platform.common.base.BaseController; @@ -7,16 +8,26 @@ import com.lyms.platform.common.base.LoginContext; import com.lyms.platform.common.constants.ErrorCodeConstants; import com.lyms.platform.common.result.BaseResponse; 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.operate.web.facade.PatientServiceFacade; import com.lyms.platform.operate.web.facade.ViewFacade; import com.lyms.platform.operate.web.result.BirthResult; +import com.lyms.platform.pojo.ArchiveData; +import com.lyms.platform.query.ArchiveDataQuery; import com.lyms.platform.query.PatientsQuery; +import org.apache.commons.collections.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; +import java.math.BigDecimal; +import java.math.RoundingMode; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * 出生证明一件事一件办管理 @@ -28,6 +39,8 @@ public class BirthController extends BaseController { private PatientServiceFacade patientServiceFacade; @Autowired private ViewFacade viewFacade; + @Autowired + private ArchiveDataServicer archiveDataServicer; @RequestMapping(value = "/getPatientList", method = RequestMethod.GET) @ResponseBody @@ -70,4 +83,41 @@ public class BirthController extends BaseController { baseResponse.setErrormsg("成功"); return baseResponse; } + + @RequestMapping(value = "/testInit", method = RequestMethod.GET) + @ResponseBody + public BaseResponse testInit(){ + BaseResponse baseResponse=new BaseResponse(); + ArchiveDataQuery query = new ArchiveDataQuery(); + query.setHospitalId("2100002419"); + query.setCreatedStart(DateUtil.parseYMDHMS("2024-04-01 00:00:00")); + query.setCreatedEnd(DateUtil.parseYMDHMS("2024-06-10 00:00:00")); + List list= archiveDataServicer.query(query.convertToQuery()); + List> mapList=new ArrayList<>(); + if (CollectionUtils.isNotEmpty(list)){ + for (ArchiveData archiveData:list){ + Map map = JsonUtil.str2Obj(archiveData.getJsonData(), HashMap.class); + String history1 = JsonUtil.obj2JsonString(map.get("history")); + Map history = JsonUtil.str2Obj(history1, Map.class); + if (history.get("yqWeight")!=null&&history.get("height")!=null){ + BigDecimal height= new BigDecimal(String.valueOf(history.get("height"))); + if (height.compareTo(BigDecimal.ZERO)>0){ + height=height.multiply(height); + } + BigDecimal bim= new BigDecimal(String.valueOf(history.get("yqWeight"))).divide(height,2, RoundingMode.HALF_UP); + if (bim.compareTo(new BigDecimal("28"))>0){ + Map map1=new HashMap<>(); + map1.put("idCard",archiveData.getIdCard()); + map1.put("BMI",bim.toPlainString()); + mapList.add(map1); + } + } + } + } + baseResponse.setObject(mapList); + baseResponse.setErrorcode(ErrorCodeConstants.SUCCESS); + baseResponse.setErrormsg("成功"); + return baseResponse; + } + } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/CourseFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/CourseFacade.java index ca9ade1..b7cc9d9 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/CourseFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/CourseFacade.java @@ -350,7 +350,9 @@ public class CourseFacade { String id=courseModel.getId(); PatientsQuery patientsQuery = new PatientsQuery(); patientsQuery.setHospitalId(courseModel.getHospitalId()); - patientsQuery.setType(1); + if (courseModel.getCourseObjId()!=null){ + patientsQuery.setType(courseModel.getCourseObjId()); + } patientsQuery.setExtEnable(false); patientsQuery.setBuildTypeNot(1); patientsQuery.setYn(YnEnums.YES.getId()); @@ -359,12 +361,18 @@ public class CourseFacade { logger.info("courseTask{},patientsModels-->"+patientsModels.toString()); if (CollectionUtils.isNotEmpty(patientsModels)) { + List messages=new ArrayList<>(); for (Patients model : patientsModels) { - saveMsg(model.getHospitalId(),model.getPhone(),model.getId(), + messages= saveMsg(model.getHospitalId(),model.getPhone(),model.getId(), courseModel.getCourseName(),courseModel.getCourseSpeaker(),model.getId(),id, "孕妇学校新课程已发布,点击进入小程序预约",1); } + + if (CollectionUtils.isNotEmpty(messages)) { + logger.info("messages{},"+messages.toString()); + smsConfigFacade.saveMsg(messages, courseModel.getHospitalId()); + } } } } @@ -404,12 +412,18 @@ public class CourseFacade { List patientCourseModels = patientCourseService.queryPatientCourseList(patientCourseQuery); if (CollectionUtils.isNotEmpty(patientCourseModels)) { + List messages=new ArrayList<>(); for (PatientCourseModel model : patientCourseModels) { - saveMsg(model.getHospitalId(),model.getPhone(),model.getPatientId(), + messages= saveMsg(model.getHospitalId(),model.getPhone(),model.getPatientId(), courseModel.getCourseName(),courseModel.getCourseSpeaker(),model.getId(),model.getCourseId(), "您本次参加的孕妇学校课程已经取消,请注意安排时间。",null); } + + if (CollectionUtils.isNotEmpty(messages)) { + logger.info("messages{},"+messages.toString()); + smsConfigFacade.saveMsg(messages, courseModel.getHospitalId()); + } } } }).start(); @@ -536,6 +550,7 @@ public class CourseFacade { List patientCourseModels = patientCourseService.queryPatientCourseList(patientCourseQuery); if (CollectionUtils.isNotEmpty(patientCourseModels)) { + List messages=new ArrayList<>(); CourseQuery query1 = new CourseQuery(); for (PatientCourseModel patientCourseModel : patientCourseModels) { @@ -557,16 +572,20 @@ public class CourseFacade { } String courseName = CollectionUtils.isNotEmpty(courseModels1) ? courseModels1.get(0).getCourseName() : ""; - saveMsg(patientCourseModel.getHospitalId(),patientCourseModel.getPhone(),patientCourseModel.getPatientId(), + messages= saveMsg(patientCourseModel.getHospitalId(),patientCourseModel.getPhone(),patientCourseModel.getPatientId(), courseName,speaker,patientCourseModel.getId(),patientCourseModel.getCourseId(), "您本次参加的孕妇学校课程已经结束,请点击详情回顾课程内容并对本次课程评分。我们会根据您的评价结果相应做相应的评估的课程调整等。",null); } + if (CollectionUtils.isNotEmpty(messages)) { + logger.info("messages{},"+messages.toString()); + smsConfigFacade.saveMsg(messages, model.getHospitalId()); + } } } } } - private void saveMsg(String hospitalId,String phone,String patientId,String courseName,String doctorName,String patientCourseId,String courseId, + private List saveMsg(String hospitalId,String phone,String patientId,String courseName,String doctorName,String patientCourseId,String courseId, String msg,Integer type) { @@ -584,7 +603,7 @@ public class CourseFacade { startType=1; } if (startType == 0) { - return; + return null; } //短信前缀 String messagePrefix = configModel.getHospitalPrefix(); @@ -620,10 +639,8 @@ public class CourseFacade { } messages.add(mr); - if (CollectionUtils.isNotEmpty(messages)) { - logger.info("messages{},"+messages.toString()); - smsConfigFacade.saveMsg(messages, hospitalId); - } + + return messages; } public BaseResponse validateCourseName(String courseName, Integer userId,String courseId) {