Commit 4d753dfa478070c76f8f56f4b6b422cae1c010c0

Authored by zhangchao
1 parent b0338fb588
Exists in dev

#fix:新增临时血糖血压管理分标签查询

Showing 7 changed files with 99 additions and 39 deletions

platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TemporaryBloodController.java View file @ 4d753df
... ... @@ -56,8 +56,8 @@
56 56 @RequestMapping(value = "/queryAll", method = RequestMethod.GET)
57 57 @TokenRequired
58 58 @ResponseBody
59   - public BaseResponse queryAll(String key, Integer age, Integer currentWeekEnd, Integer currentWeekStart, Integer page, Integer limit,Integer isPrint, HttpServletRequest request) {
60   - return temporaryBloodService.queryAll(key, age, currentWeekEnd, currentWeekStart, page, limit,isPrint, getUserId(request));
  59 + public BaseResponse queryAll(String key, Integer age, Integer currentWeekEnd, Integer currentWeekStart, Integer page, Integer limit,Integer isPrint,Integer type, HttpServletRequest request) {
  60 + return temporaryBloodService.queryAll(key, age, currentWeekEnd, currentWeekStart, page, limit,isPrint, getUserId(request),type);
61 61 }
62 62  
63 63 @ResponseBody
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TemporaryBloodSugarController.java View file @ 4d753df
... ... @@ -47,11 +47,17 @@
47 47  
48 48 }*/
49 49  
  50 + @ResponseBody
  51 + @RequestMapping(value = "/initSugar", method = RequestMethod.GET)
  52 + public void initSugar() {
  53 + bloodSugarService.initSugar();
  54 + }
  55 +
50 56 @RequestMapping(value = "/queryAll", method = RequestMethod.GET)
51 57 @TokenRequired
52 58 @ResponseBody
53   - public BaseResponse queryAll(String key, Integer age, Integer currentWeekStart, Integer currentWeekEnd, Integer page, Integer limit, Integer isPrint,HttpServletRequest request) {
54   - return bloodSugarService.queryAll(key, age, currentWeekStart, currentWeekEnd, page, limit, isPrint, getUserId(request));
  59 + public BaseResponse queryAll(String key, Integer age, Integer currentWeekStart, Integer currentWeekEnd, Integer page, Integer limit, Integer isPrint,Integer type,HttpServletRequest request) {
  60 + return bloodSugarService.queryAll(key, age, currentWeekStart, currentWeekEnd, page, limit, isPrint, getUserId(request),type);
55 61 }
56 62  
57 63 @ResponseBody
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java View file @ 4d753df
... ... @@ -6800,6 +6800,7 @@
6800 6800 final List<PatientService> serviceList = patientServiceService.queryPatientService(patientServiceQuery);
6801 6801 if (CollectionUtils.isNotEmpty(serviceList)) {
6802 6802  
  6803 + logger.info("buildingSync startup");
6803 6804 commonThreadPool.execute(new Runnable() {
6804 6805 @Override
6805 6806 public void run() {
6806 6807  
6807 6808  
6808 6809  
... ... @@ -6811,41 +6812,47 @@
6811 6812 PatientService patientService = serviceList.get(i);
6812 6813 babyModelQuery.setPid(patientService.getPid());
6813 6814 List<BabyModel> modelList= babyService.queryBabyWithQuery(babyModelQuery);
6814   - BabyModel babyModel= modelList.get(0);
6815   - String hospitalId = babyModel.getHospitalId();
6816   - Organization organization = organizationService.getOrganization(Integer.valueOf(hospitalId));
  6815 + if (CollectionUtils.isNotEmpty(modelList)){
  6816 + BabyModel babyModel= modelList.get(0);
  6817 + logger.info("BabyModel is not null,id "+babyModel.getId());
6817 6818  
6818   - List<MsgRequest> messages = new ArrayList<>();
6819   - MsgRequest mr = new MsgRequest();
6820   - mr.setPhone(babyModel.getMphone());
6821   - mr.setMemberId(null);
6822   - mr.setTypeId(ProjectTypeEnums.YNXT.getId());
6823   - mr.setStatus(SmsStatusEnums.WFS.getId());
6824   - mr.setHospitalId(hospitalId);
6825   - mr.setTempId(patientService.getId());
6826   - mr.setPatientId(babyModel.getId());
6827   - mr.setSmsStatus(SmsStatusEnums.WFS.getId());
6828   - mr.setServiceType(1); //判断发送类型
6829   - mr.setFirst("【服务名目通知】");//
6830   - mr.setObjType(ServiceObjEnums.BABYOBJ.getId());
6831   - mr.setSubTypeId(SmsServiceEnums.YBZD.getId());
6832   - int weeks = DateUtil.daysBetween(babyModel.getBirth(), new Date()) / 7;
6833   - String weekAge = String.valueOf(weeks) + "周";
6834   - mr.setKeyword1(weekAge);//
6835   - String keyWord2 = "服务名目通知(点此查看详情)";
  6819 + String hospitalId = babyModel.getHospitalId();
  6820 + Organization organization = organizationService.getOrganization(Integer.valueOf(hospitalId));
6836 6821  
6837   - //planTime 和 timeType为必填 否则推送中心会推送异常
6838   - mr.setTimeType(SmsTimeTypeEnums.ONTIME.getId());
6839   - mr.setPlanTime(DateUtil.getyyyy_MM_dd_hms(new Date()));
6840   - mr.setKeyword2(keyWord2);
6841   - mr.setRemark(organization.getName());
6842   - mr.setCreated(DateUtil.getyyyy_MM_dd_hms(new Date()));
6843   - mr.setWxTempId(WxTempleteIdEnums.BABY_YI_BAN_ZHI_DAO.getId());
6844   - messages.add(mr);
6845   - smsConfigFacade.saveMsg(messages, hospitalId);
  6822 + List<MsgRequest> messages = new ArrayList<>();
  6823 + MsgRequest mr = new MsgRequest();
  6824 + mr.setPhone(babyModel.getMphone());
  6825 + mr.setMemberId(null);
  6826 + mr.setTypeId(ProjectTypeEnums.YNXT.getId());
  6827 + mr.setStatus(SmsStatusEnums.WFS.getId());
  6828 + mr.setHospitalId(hospitalId);
  6829 + mr.setTempId(patientService.getId());
  6830 + mr.setPatientId(babyModel.getId());
  6831 + mr.setSmsStatus(SmsStatusEnums.WFS.getId());
  6832 + mr.setServiceType(1); //判断发送类型
  6833 + mr.setFirst("【服务名目通知】");//
  6834 + mr.setObjType(ServiceObjEnums.BABYOBJ.getId());
  6835 + mr.setSubTypeId(SmsServiceEnums.YBZD.getId());
  6836 + int weeks = DateUtil.daysBetween(babyModel.getBirth(), new Date()) / 7;
  6837 + String weekAge = String.valueOf(weeks) + "周";
  6838 + mr.setKeyword1(weekAge);//
  6839 + String keyWord2 = "服务名目通知(点此查看详情)";
  6840 +
  6841 + //planTime 和 timeType为必填 否则推送中心会推送异常
  6842 + mr.setTimeType(SmsTimeTypeEnums.ONTIME.getId());
  6843 + mr.setPlanTime(DateUtil.getyyyy_MM_dd_hms(new Date()));
  6844 + mr.setKeyword2(keyWord2);
  6845 + mr.setRemark(organization.getName());
  6846 + mr.setCreated(DateUtil.getyyyy_MM_dd_hms(new Date()));
  6847 + mr.setWxTempId(WxTempleteIdEnums.BABY_YI_BAN_ZHI_DAO.getId());
  6848 + messages.add(mr);
  6849 + smsConfigFacade.saveMsg(messages, hospitalId);
  6850 + }
  6851 +
6846 6852 }
6847 6853 }
6848 6854 });
  6855 + logger.info("buildingSync end");
6849 6856 }
6850 6857  
6851 6858  
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/ITemporaryBloodService.java View file @ 4d753df
... ... @@ -14,7 +14,7 @@
14 14  
15 15 /* BaseResponse queryOne(String id);
16 16 */
17   - BaseResponse queryAll(String key, Integer age, Integer stateWeek, Integer endWeek, Integer page, Integer limit,Integer isPrint, Integer userId);
  17 + BaseResponse queryAll(String key, Integer age, Integer stateWeek, Integer endWeek, Integer page, Integer limit,Integer isPrint, Integer userId,Integer type);
18 18  
19 19  
20 20 BaseResponse info(String id, Date startDate);
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/ITemporaryBloodSugarService.java View file @ 4d753df
... ... @@ -11,9 +11,11 @@
11 11  
12 12 BaseResponse deleteBloodSugar(String id);
13 13  
  14 + void initSugar();
  15 +
14 16 /*BaseResponse queryOne(String id);
15 17 */
16   - BaseResponse queryAll(String key, Integer age, Integer stateWeek, Integer endWeek, Integer page, Integer limit, Integer isPrint,Integer userId);
  18 + BaseResponse queryAll(String key, Integer age, Integer stateWeek, Integer endWeek, Integer page, Integer limit, Integer isPrint,Integer userId,Integer type);
17 19  
18 20 BaseResponse info(String parentId, Integer type, Date time);
19 21  
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/TemporaryBloodServiceImpl.java View file @ 4d753df
... ... @@ -151,7 +151,7 @@
151 151 }
152 152 */
153 153 @Override
154   - public BaseResponse queryAll(String key, Integer age, Integer stateWeek, Integer endWeek, Integer page, Integer limit,Integer isPrint, Integer userId) {
  154 + public BaseResponse queryAll(String key, Integer age, Integer stateWeek, Integer endWeek, Integer page, Integer limit,Integer isPrint, Integer userId,Integer type) {
155 155 boolean flag = false;
156 156 List<String> hospital = groupsFacade.findGroupHospital(userId, false);
157 157 Criteria criteria = Criteria.where("yn").ne(0).and("hospitalId").in(hospital);
... ... @@ -185,6 +185,21 @@
185 185 if(null!=isPrint){
186 186 criteria.and("isPrint").is(isPrint);
187 187 }
  188 +
  189 + if (type!=null){
  190 + // 90-140
  191 + if (type==1){
  192 + criteria.and("$where").is(
  193 + String.format("this.ssy>= %s && this.ssy<= %s", "90","140"));
  194 + }else if (type==2){
  195 + criteria.and("$where").is(
  196 + String.format("this.ssy< %s", "90"));
  197 + }else if (type==3){
  198 + criteria.and("$where").is(
  199 + String.format("this.ssy> %s", "140"));
  200 + }
  201 + }
  202 +
188 203 PageResult pageResult = findMongoPage(TemporaryBloodModel.class, new Query(criteria).with(new Sort(Sort.Direction.DESC, "modified")), page, limit);
189 204 List<TemporaryBloodModel> bloodPressures = (List<TemporaryBloodModel>) pageResult.getGrid();
190 205 List<Map<String, Object>> restList = new ArrayList<>();
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/TemporaryBloodSugarServiceImpl.java View file @ 4d753df
... ... @@ -24,11 +24,13 @@
24 24 import com.lyms.platform.pojo.*;
25 25 import com.mongodb.WriteResult;
26 26 import org.springframework.beans.factory.annotation.Autowired;
  27 +import org.springframework.beans.factory.annotation.Qualifier;
27 28 import org.springframework.data.domain.Sort;
28 29 import org.springframework.data.mongodb.core.MongoTemplate;
29 30 import org.springframework.data.mongodb.core.query.Criteria;
30 31 import org.springframework.data.mongodb.core.query.Query;
31 32 import org.springframework.data.mongodb.core.query.Update;
  33 +import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
32 34 import org.springframework.stereotype.Service;
33 35  
34 36 import java.util.*;
... ... @@ -101,6 +103,30 @@
101 103 }
102 104 return new BaseObjectResponse().setErrorcode(ErrorCodeConstants.NO_DATA).setErrormsg("请选择一条记录");
103 105 }
  106 + @Autowired
  107 + @Qualifier("commonThreadPool")
  108 + private ThreadPoolTaskExecutor commonThreadPool;
  109 + @Override
  110 + public void initSugar() {
  111 + final List<TemporaryBloodSugar> bloodSugars = mongoTemplate.find( new Query(new Criteria().and("yn").is(1)),TemporaryBloodSugar.class);
  112 + commonThreadPool.execute(new Runnable() {
  113 + @Override
  114 + public void run() {
  115 + Update update = new Update();
  116 + for (TemporaryBloodSugar bloodSugar:bloodSugars){
  117 + String str= getBloodSugarStatus(bloodSugar.getBloodSugarType(), bloodSugar.getBloodSugar());
  118 + Integer type=1;
  119 + if (str.equals("高血糖")){
  120 + type=3;
  121 + }else if (str.equals("低血糖")){
  122 + type=2;
  123 + }
  124 + update.set("sugarType",type);
  125 + mongoTemplate.upsert( new Query(new Criteria().and("id").is(bloodSugar.getId())),update, TemporaryBloodSugar.class);
  126 + }
  127 + }
  128 + });
  129 + }
104 130  
105 131 /* @Override
106 132 public BaseResponse queryOne(String id) {
... ... @@ -156,7 +182,7 @@
156 182 }
157 183 */
158 184 @Override
159   - public BaseResponse queryAll(String key, Integer age, Integer stateWeek, Integer endWeek, Integer page, Integer limit,Integer isPrint, Integer userId) {
  185 + public BaseResponse queryAll(String key, Integer age, Integer stateWeek, Integer endWeek, Integer page, Integer limit,Integer isPrint, Integer userId,Integer type) {
160 186 boolean flag = false;
161 187 List<String> hospital = groupsFacade.findGroupHospital(userId, false);
162 188 Criteria criteria = Criteria.where("yn").ne(0).and("hospitalId").in(hospital);
... ... @@ -164,6 +190,10 @@
164 190 if (org.apache.commons.lang.StringUtils.isNotBlank(key)) {
165 191 pCriteria.orOperator(Criteria.where("phone").regex(key), Criteria.where("userName").regex(key));
166 192 flag = true;
  193 + }
  194 + if (type!=null){
  195 + //1正常血糖管理、2低血糖管理、3高血糖管理
  196 + criteria.and("sugarType").is(type);
167 197 }
168 198 if (stateWeek != null && endWeek != null) {
169 199 Date start = DateUtil.getWeekStart(endWeek);