Commit 5ff149d521ffc32861901623c60c95a816c4c29e
1 parent
e0b08e22cf
Exists in
dev
#fix:新增服务名目通知
Showing 5 changed files with 70 additions and 4 deletions
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/IBloodPressureService.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/IBloodSugarService.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BaseServiceImpl.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BloodPressureServiceImpl.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BloodSugarServiceImpl.java
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/IBloodPressureService.java
View file @
5ff149d
... | ... | @@ -12,7 +12,7 @@ |
12 | 12 | BaseResponse addOrUpdate(Integer userId, BloodPressure bloodPressure); |
13 | 13 | |
14 | 14 | BaseResponse list(String key, String vcCardNo, Integer weekStart, |
15 | - Integer weekEnd, Integer age, Integer page, Integer limit, Integer isPrint,Integer userId,String type); | |
15 | + Integer weekEnd, Integer age, Integer page, Integer limit, Integer isPrint,Integer userId,String type,Integer level); | |
16 | 16 | |
17 | 17 | BaseResponse info(String id, Date startDate); |
18 | 18 |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/IBloodSugarService.java
View file @
5ff149d
... | ... | @@ -12,13 +12,15 @@ |
12 | 12 | |
13 | 13 | BaseResponse add(Integer userId, BloodSugar bloodSugar); |
14 | 14 | |
15 | - BaseResponse list(String isAll,String key, String vcCardNo, Integer weekStart, Integer weekEnd, Integer age, Integer page, Integer limit,Integer isPrint, Integer userId); | |
15 | + BaseResponse list(String isAll,String key, String vcCardNo, Integer weekStart, Integer weekEnd, Integer age, Integer page, Integer limit,Integer isPrint, Integer userId,Integer type); | |
16 | 16 | |
17 | 17 | BaseResponse info(String parentId, Integer type, Date time); |
18 | 18 | |
19 | 19 | BaseResponse getAppInfo(String parentId); |
20 | 20 | |
21 | 21 | BaseResponse initBloodSugar(Map<String, String> param); |
22 | + | |
23 | + void initSugar(); | |
22 | 24 | |
23 | 25 | BaseResponse init(); |
24 | 26 |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BaseServiceImpl.java
View file @
5ff149d
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BloodPressureServiceImpl.java
View file @
5ff149d
... | ... | @@ -212,9 +212,13 @@ |
212 | 212 | return RespBuilder.buildSuccess(); |
213 | 213 | } |
214 | 214 | |
215 | + /** | |
216 | + * @param type 1正常血压管理、2低血压管理、3妊高症管理 | |
217 | + * @return | |
218 | + */ | |
215 | 219 | @Override |
216 | 220 | public BaseResponse list(String key, String vcCardNo, Integer weekStart, Integer |
217 | - weekEnd, Integer age, Integer page, Integer limit,Integer isPrint, Integer userId,String isAll) { | |
221 | + weekEnd, Integer age, Integer page, Integer limit,Integer isPrint, Integer userId,String isAll,Integer type) { | |
218 | 222 | boolean flag = false; |
219 | 223 | List<String> hospitalIds = groupsFacade.findGroupHospital(userId, false); |
220 | 224 | String hospitalId = autoMatchFacade.getHospitalId(userId); |
... | ... | @@ -231,6 +235,7 @@ |
231 | 235 | |
232 | 236 | Criteria criteria = Criteria.where("yn").is(1).and("hospitalId").in(hids); |
233 | 237 | Criteria pCriteria = Criteria.where("yn").is(1).and("hospitalId").in(hospitalIds); |
238 | + | |
234 | 239 | if (StringUtils.isNotEmpty(key)) { |
235 | 240 | flag = true; |
236 | 241 | pCriteria.orOperator(Criteria.where("phone").regex(key), Criteria.where("username").regex(key), Criteria.where("cardNo").is(key)); |
... | ... | @@ -273,6 +278,19 @@ |
273 | 278 | |
274 | 279 | if(null!=isPrint){ |
275 | 280 | criteria.and("isPrint").is(isPrint); |
281 | + } | |
282 | + if (type!=null){ | |
283 | + // 90-140 | |
284 | + if (type==1){ | |
285 | + criteria.and("$where").is( | |
286 | + String.format("this.ssy>= %s && this.ssy<= %s", "90","140")); | |
287 | + }else if (type==2){ | |
288 | + criteria.and("$where").is( | |
289 | + String.format("this.ssy< %s", "90")); | |
290 | + }else if (type==3){ | |
291 | + criteria.and("$where").is( | |
292 | + String.format("this.ssy> %s", "140")); | |
293 | + } | |
276 | 294 | } |
277 | 295 | PageResult pageResult = findMongoPage(BloodPressure.class, new Query(criteria).with(new Sort(Sort.Direction.DESC, "modified")), page, limit); |
278 | 296 | List<BloodPressure> bloodPressures = (List<BloodPressure>) pageResult.getGrid(); |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BloodSugarServiceImpl.java
View file @
5ff149d
... | ... | @@ -13,6 +13,7 @@ |
13 | 13 | import com.lyms.platform.common.utils.StringUtils; |
14 | 14 | import com.lyms.platform.operate.web.constant.OrganizationConstant; |
15 | 15 | import com.lyms.platform.operate.web.facade.*; |
16 | +import com.lyms.platform.operate.web.result.BabyEarAddResult; | |
16 | 17 | import com.lyms.platform.operate.web.result.DiabetesRecordResult; |
17 | 18 | import com.lyms.platform.operate.web.service.IBloodSugarService; |
18 | 19 | import com.lyms.platform.operate.web.service.PatientWeightService; |
19 | 20 | |
... | ... | @@ -35,11 +36,13 @@ |
35 | 36 | import org.apache.commons.collections.MapUtils; |
36 | 37 | import org.apache.commons.collections.map.HashedMap; |
37 | 38 | import org.springframework.beans.factory.annotation.Autowired; |
39 | +import org.springframework.beans.factory.annotation.Qualifier; | |
38 | 40 | import org.springframework.data.domain.Sort; |
39 | 41 | import org.springframework.data.mongodb.core.MongoTemplate; |
40 | 42 | import org.springframework.data.mongodb.core.query.Criteria; |
41 | 43 | import org.springframework.data.mongodb.core.query.Query; |
42 | 44 | import org.springframework.data.mongodb.core.query.Update; |
45 | +import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; | |
43 | 46 | import org.springframework.stereotype.Service; |
44 | 47 | |
45 | 48 | import java.lang.reflect.InvocationTargetException; |
... | ... | @@ -103,6 +106,9 @@ |
103 | 106 | |
104 | 107 | @Autowired |
105 | 108 | private UsersService usersService; |
109 | + @Autowired | |
110 | + @Qualifier("commonThreadPool") | |
111 | + private ThreadPoolTaskExecutor commonThreadPool; | |
106 | 112 | |
107 | 113 | public BaseResponse add(Integer userId, BloodSugar bloodSugar) { |
108 | 114 | String pid = mongoUtil.getPid(bloodSugar.getParentId()); |
... | ... | @@ -124,6 +130,7 @@ |
124 | 130 | bloodSugar.setModified(new Date()); |
125 | 131 | bloodSugar.setCreatYmdDate(DateUtil.getyyyy_MM_dd(new Date())); |
126 | 132 | bloodSugar.setPid(mongoUtil.getPid(bloodSugar.getParentId())); |
133 | + | |
127 | 134 | bloodSugarService.add(bloodSugar); |
128 | 135 | |
129 | 136 | Update up = new Update(); |
130 | 137 | |
... | ... | @@ -132,8 +139,13 @@ |
132 | 139 | return RespBuilder.buildSuccess(bloodSugar.getId()); |
133 | 140 | } |
134 | 141 | |
142 | + /** | |
143 | + * | |
144 | + * @param type 1正常血糖管理、2低血糖管理、3高血糖管理 | |
145 | + * @return | |
146 | + */ | |
135 | 147 | @Override |
136 | - public BaseResponse list(String isAll,String key, String vcCardNo, Integer weekStart, Integer weekEnd, Integer age, Integer page, Integer limit,Integer isPrint, Integer userId) { | |
148 | + public BaseResponse list(String isAll,String key, String vcCardNo, Integer weekStart, Integer weekEnd, Integer age, Integer page, Integer limit,Integer isPrint, Integer userId,Integer type) { | |
137 | 149 | boolean flag = false; |
138 | 150 | if (StringUtils.isNotEmpty(key) || StringUtils.isNotEmpty(vcCardNo) || weekEnd != null || weekStart != null || age != null) { |
139 | 151 | flag = true; |
... | ... | @@ -151,6 +163,10 @@ |
151 | 163 | } |
152 | 164 | Criteria criteria = Criteria.where("yn").is(1); |
153 | 165 | criteria.and("hospitalId").in(hids); |
166 | + if (type!=null){ | |
167 | + //1正常血糖管理、2低血糖管理、3高血糖管理 | |
168 | + criteria.and("sugarType").is(type); | |
169 | + } | |
154 | 170 | if (flag) { |
155 | 171 | List<String> pids = mongoUtil.getPidsByCondition2(hospitalIds, key, vcCardNo, weekStart, weekEnd, age); |
156 | 172 | criteria.and("pid").in(pids); |
... | ... | @@ -355,6 +371,14 @@ |
355 | 371 | if (!flag) { |
356 | 372 | bloodSugarService.add(one); |
357 | 373 | } else { |
374 | + String str= getBloodSugarStatus(one.getBloodSugarType(), one.getBloodSugar()); | |
375 | + Integer type=1; | |
376 | + if (str.equals("高血糖")){ | |
377 | + type=3; | |
378 | + }else if (str.equals("低血糖")){ | |
379 | + type=2; | |
380 | + } | |
381 | + one.setSugarType(type); | |
358 | 382 | mongoTemplate.save(one); |
359 | 383 | } |
360 | 384 | |
... | ... | @@ -1673,6 +1697,27 @@ |
1673 | 1697 | } |
1674 | 1698 | } |
1675 | 1699 | return RespBuilder.buildSuccess(restList); |
1700 | + } | |
1701 | + | |
1702 | + public void initSugar(){ | |
1703 | + final List<BloodSugar> bloodSugars = mongoTemplate.find( new Query(new Criteria().and("yn").is(1)),BloodSugar.class); | |
1704 | + commonThreadPool.execute(new Runnable() { | |
1705 | + @Override | |
1706 | + public void run() { | |
1707 | + Update update = new Update(); | |
1708 | + for (BloodSugar bloodSugar:bloodSugars){ | |
1709 | + String str= getBloodSugarStatus(bloodSugar.getBloodSugarType(), bloodSugar.getBloodSugar()); | |
1710 | + Integer type=1; | |
1711 | + if (str.equals("高血糖")){ | |
1712 | + type=3; | |
1713 | + }else if (str.equals("低血糖")){ | |
1714 | + type=2; | |
1715 | + } | |
1716 | + update.set("sugarType",type); | |
1717 | + mongoTemplate.upsert( new Query(new Criteria().and("id").is(bloodSugar.getId())),update, BloodSugar.class); | |
1718 | + } | |
1719 | + } | |
1720 | + }); | |
1676 | 1721 | } |
1677 | 1722 | } |