Commit e4460870d4e959e5cc4549373c7c90e2b52f0e64
1 parent
74a382ea49
Exists in
master
and in
1 other branch
儿保小程序
Showing 3 changed files with 104 additions and 2 deletions
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyCheckController.java
View file @
e446087
... | ... | @@ -5,12 +5,14 @@ |
5 | 5 | import com.lyms.platform.common.base.BaseController; |
6 | 6 | import com.lyms.platform.common.base.LoginContext; |
7 | 7 | import com.lyms.platform.common.constants.ErrorCodeConstants; |
8 | +import com.lyms.platform.common.dao.BaseQuery; | |
8 | 9 | import com.lyms.platform.common.result.BaseObjectResponse; |
9 | 10 | import com.lyms.platform.common.result.BaseResponse; |
10 | 11 | import com.lyms.platform.common.utils.StringUtils; |
11 | 12 | import com.lyms.platform.operate.web.facade.AutoMatchFacade; |
12 | 13 | import com.lyms.platform.operate.web.facade.BabyCheckFacade; |
13 | 14 | import com.lyms.platform.operate.web.request.BabyCheckRequest; |
15 | +import com.lyms.platform.operate.web.request.WxBabyMeasureRequest; | |
14 | 16 | import com.lyms.platform.permission.service.CouponService; |
15 | 17 | import org.springframework.beans.factory.annotation.Autowired; |
16 | 18 | import org.springframework.stereotype.Controller; |
... | ... | @@ -276,6 +278,29 @@ |
276 | 278 | return babyCheckFacade.getBabyReport(getUserId(request),babyId); |
277 | 279 | } |
278 | 280 | |
281 | + /** | |
282 | + * 儿保小程序 - 儿童测量信息录入 | |
283 | + * | |
284 | + * @param param | |
285 | + * @return | |
286 | + */ | |
287 | + @RequestMapping("/wx/babyMeasureInfo/saveOrUpdate") | |
288 | + @ResponseBody | |
289 | + public BaseResponse babyMeasureInfoSaveOrUpdate(@RequestBody WxBabyMeasureRequest param){ | |
290 | + return babyCheckFacade.babyMeasureInfoSaveOrUpdate(param); | |
291 | + } | |
292 | + | |
293 | + /** | |
294 | + * 儿保小程序 - 儿童测量信息列表 | |
295 | + * | |
296 | + * @param param | |
297 | + * @return | |
298 | + */ | |
299 | + @RequestMapping("/wx/babyMeasureInfo/list") | |
300 | + @ResponseBody | |
301 | + public BaseResponse babyMeasureInfoList(@RequestBody BaseQuery param){ | |
302 | + return babyCheckFacade.babyMeasureInfoList(param); | |
303 | + } | |
279 | 304 | |
280 | 305 | |
281 | 306 | } |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyCheckFacade.java
View file @
e446087
... | ... | @@ -3,12 +3,15 @@ |
3 | 3 | import com.lyms.hospitalapi.qhdfy.QhdfyHisService; |
4 | 4 | import com.lyms.platform.biz.service.*; |
5 | 5 | import com.lyms.platform.common.constants.ErrorCodeConstants; |
6 | +import com.lyms.platform.common.dao.BaseQuery; | |
7 | +import com.lyms.platform.common.dao.operator.MongoCondition; | |
8 | +import com.lyms.platform.common.dao.operator.MongoOper; | |
6 | 9 | import com.lyms.platform.common.enums.*; |
7 | 10 | import com.lyms.platform.common.result.BaseObjectResponse; |
8 | 11 | import com.lyms.platform.common.result.BaseResponse; |
9 | 12 | import com.lyms.platform.common.utils.*; |
10 | -import com.lyms.platform.common.utils.StringUtils; | |
11 | 13 | import com.lyms.platform.operate.web.request.BabyCheckRequest; |
14 | +import com.lyms.platform.operate.web.request.WxBabyMeasureRequest; | |
12 | 15 | import com.lyms.platform.operate.web.result.*; |
13 | 16 | import com.lyms.platform.operate.web.service.PatientWeightService; |
14 | 17 | import com.lyms.platform.operate.web.utils.MongoUtil; |
... | ... | @@ -23,7 +26,6 @@ |
23 | 26 | import com.lyms.platform.pojo.*; |
24 | 27 | import com.lyms.platform.query.*; |
25 | 28 | import org.apache.commons.collections.CollectionUtils; |
26 | -import org.apache.commons.lang.*; | |
27 | 29 | import org.springframework.beans.factory.annotation.Autowired; |
28 | 30 | import org.springframework.data.domain.Sort; |
29 | 31 | import org.springframework.data.mongodb.core.MongoTemplate; |
... | ... | @@ -2380,6 +2382,67 @@ |
2380 | 2382 | } else { |
2381 | 2383 | return md; |
2382 | 2384 | } |
2385 | + } | |
2386 | + | |
2387 | + /** | |
2388 | + * 儿保小程序 - 儿童测量信息录入 | |
2389 | + * | |
2390 | + * @param param | |
2391 | + * @return | |
2392 | + */ | |
2393 | + public BaseResponse babyMeasureInfoSaveOrUpdate(WxBabyMeasureRequest param) { | |
2394 | + param.setType("2"); | |
2395 | + String pid = param.getPid(); | |
2396 | + WxMeasureInfoModel model = mongoTemplate.findOne(Query.query(Criteria.where("pid").is(pid)), WxMeasureInfoModel.class); | |
2397 | + if (model == null){ | |
2398 | + List<Map> babyInfos = param.getBabyInfos(); | |
2399 | + Map map = babyInfos.get(0); | |
2400 | + map.put("createTime", DateUtil.getyyyy_MM_dd(new Date())); | |
2401 | + param.setCreateTime(new Date()); | |
2402 | + WxMeasureInfoModel wxModel = param; | |
2403 | + mongoTemplate.insert(wxModel); | |
2404 | + // 新增 | |
2405 | + return new BaseResponse(); | |
2406 | + } | |
2407 | + param.setUpdateTime(new Date()); | |
2408 | + List<Map> dbBabyInfos = model.getBabyInfos(); | |
2409 | + boolean exist = false; | |
2410 | + Map currentMap = param.getBabyInfos().get(0); | |
2411 | + if (CollectionUtils.isNotEmpty(dbBabyInfos)){ | |
2412 | + for (Map map: dbBabyInfos){ | |
2413 | + String dbDate = map.get("createTime").toString(); | |
2414 | + String currentDate = DateUtil.getyyyy_MM_dd(new Date()); | |
2415 | + if (dbDate.equals(currentDate)){ | |
2416 | + exist = true; | |
2417 | + map.putAll(currentMap); | |
2418 | + // temperature 体温 height 身高 weight 体重 headWidth 头围 bust 胸围 feed 喂养 createTime 时间 | |
2419 | + break; | |
2420 | + } | |
2421 | + } | |
2422 | + } | |
2423 | + if (!exist){ | |
2424 | + dbBabyInfos.add(param.getBabyInfos().get(0)); | |
2425 | + } | |
2426 | + mongoTemplate.updateMulti(Query.query(Criteria.where("id").is(model.getId())), MongoConvertHelper | |
2427 | + .convertToNativeUpdate(ReflectionUtils.getUpdateField(model)), WxMeasureInfoModel.class); | |
2428 | + return new BaseResponse(); | |
2429 | + } | |
2430 | + | |
2431 | + /** | |
2432 | + * 儿保小程序 - 儿童测量信息列表 | |
2433 | + * | |
2434 | + * @param param | |
2435 | + * @return | |
2436 | + */ | |
2437 | + public BaseResponse babyMeasureInfoList(BaseQuery param) { | |
2438 | + MongoCondition condition = MongoCondition.newInstance("type", "2", MongoOper.IS); | |
2439 | + condition = condition.and("pid", param.getKeyword(), MongoOper.IS); | |
2440 | + if (org.apache.commons.lang.StringUtils.isNotEmpty(param.getNeed())) { | |
2441 | + long count = mongoTemplate.count(Query.query(Criteria.where("type").is("2").and("ped").is(param.getKeyword())), WxMeasureInfoModel.class); | |
2442 | + param.mysqlBuild((int) count); | |
2443 | + //condition.start(babyQuery.getOffset()).end(babyQuery.getLimit()); | |
2444 | + } | |
2445 | + return null; | |
2383 | 2446 | } |
2384 | 2447 | } |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/WxBabyMeasureRequest.java
View file @
e446087