Commit 9ef09e2e6997177c47c89d67434c269fa1bedca5

Authored by wtt
1 parent 841a1ef7a2

膳食录入

Showing 5 changed files with 242 additions and 10 deletions

platform-dal/src/main/java/com/lyms/platform/beans/SerialIdEnum.java View file @ 9ef09e2
... ... @@ -121,8 +121,8 @@
121 121 PregnantDeathModel("PregnantDeathModel", 7244731601920572967L),
122 122 BabyDeathModel("BabyDeathModel", 7244731601924572967L),
123 123 CervicalCancerModel("CervicalCancerModel", 4302505773278441592L),
124   - DefectiveChildModel("DefectiveChildModel", 1684816144240073408L)
125   - ;
  124 + DefectiveChildModel("DefectiveChildModel", 1684816144240073408L),
  125 + WxChooseInfoModel("WxChooseInfoModel",-1814469732375965270L);
126 126  
127 127 private String cname;
128 128 private Long cid;
platform-dal/src/main/java/com/lyms/platform/pojo/WxChooseInfoModel.java View file @ 9ef09e2
  1 +package com.lyms.platform.pojo;
  2 +
  3 +import com.lyms.platform.beans.SerialIdEnum;
  4 +import com.lyms.platform.common.result.BaseModel;
  5 +import org.springframework.data.mongodb.core.mapping.Document;
  6 +
  7 +import java.util.Date;
  8 +import java.util.List;
  9 +import java.util.Map;
  10 +
  11 +/**
  12 + * @Author dongqin
  13 + * @Description 小程序孕妇膳食录入信息
  14 + * @Date 14:34 2019/5/30
  15 + */
  16 +@Document(collection = "lyms_wx_choose_info")
  17 +public class WxChooseInfoModel extends BaseModel {
  18 +
  19 + private static final long serialVersionUID = SerialIdEnum.WxChooseInfoModel.getCid();
  20 +
  21 + private String id;
  22 +
  23 + /**
  24 + * 孕妇/儿保 id
  25 + */
  26 + private String pid;
  27 +
  28 + /**
  29 + * 医院ID
  30 + */
  31 + private String hospitalId;
  32 +
  33 + /**
  34 + * 1-孕妇小程序 2-儿保小程序
  35 + */
  36 + private String type;
  37 +
  38 + /**
  39 + * 创建时间
  40 + */
  41 + private Date createTime;
  42 +
  43 + /**
  44 + * 更新时间
  45 + */
  46 + private Date updateTime;
  47 +
  48 + private List<Map> diets;
  49 +
  50 + private List<Map> yumInfos;
  51 +
  52 + private String doctorId;
  53 +
  54 + public String getDoctorId() {
  55 + return doctorId;
  56 + }
  57 +
  58 + public void setDoctorId(String doctorId) {
  59 + this.doctorId = doctorId;
  60 + }
  61 +
  62 + public String getPid() {
  63 + return pid;
  64 + }
  65 +
  66 + public void setPid(String pid) {
  67 + this.pid = pid;
  68 + }
  69 +
  70 + public String getId() {
  71 + return id;
  72 + }
  73 +
  74 + public void setId(String id) {
  75 + this.id = id;
  76 + }
  77 +
  78 + public String getHospitalId() {
  79 + return hospitalId;
  80 + }
  81 +
  82 + public void setHospitalId(String hospitalId) {
  83 + this.hospitalId = hospitalId;
  84 + }
  85 +
  86 + public String getType() {
  87 + return type;
  88 + }
  89 +
  90 + public void setType(String type) {
  91 + this.type = type;
  92 + }
  93 +
  94 + public Date getCreateTime() {
  95 + return createTime;
  96 + }
  97 +
  98 + public void setCreateTime(Date createTime) {
  99 + this.createTime = createTime;
  100 + }
  101 +
  102 + public List<Map> getDiets() {
  103 + return diets;
  104 + }
  105 +
  106 + public void setDiets(List<Map> diets) {
  107 + this.diets = diets;
  108 + }
  109 +
  110 + public List<Map> getYumInfos() {
  111 + return yumInfos;
  112 + }
  113 +
  114 + public void setYumInfos(List<Map> yumInfos) {
  115 + this.yumInfos = yumInfos;
  116 + }
  117 +
  118 + public Date getUpdateTime() {
  119 + return updateTime;
  120 + }
  121 +
  122 + public void setUpdateTime(Date updateTime) {
  123 + this.updateTime = updateTime;
  124 + }
  125 +}
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyCheckController.java View file @ 9ef09e2
... ... @@ -11,10 +11,7 @@
11 11 import com.lyms.platform.common.utils.StringUtils;
12 12 import com.lyms.platform.operate.web.facade.AutoMatchFacade;
13 13 import com.lyms.platform.operate.web.facade.BabyCheckFacade;
14   -import com.lyms.platform.operate.web.request.BabyBuildInfoParam;
15   -import com.lyms.platform.operate.web.request.BabyCheckRequest;
16   -import com.lyms.platform.operate.web.request.BabyInterrogationRequest;
17   -import com.lyms.platform.operate.web.request.WxBabyMeasureRequest;
  14 +import com.lyms.platform.operate.web.request.*;
18 15 import com.lyms.platform.permission.service.CouponService;
19 16 import org.springframework.beans.factory.annotation.Autowired;
20 17 import org.springframework.stereotype.Controller;
... ... @@ -363,6 +360,19 @@
363 360 }
364 361  
365 362 /**
  363 + * 儿保小程序 - 儿童膳食信息录入
  364 + *
  365 + * @param param
  366 + * @return
  367 + */
  368 + @RequestMapping(method = RequestMethod.POST, value = "/wx/babyChooseInfo/saveOrUpdate")
  369 + @ResponseBody
  370 + public BaseResponse babyChooseInfoSaveOrUpdate(@RequestBody WxBabyChooseRequest param) {
  371 + return babyCheckFacade.babyChooseInfoSaveOrUpdate(param);
  372 + }
  373 +
  374 +
  375 + /**
366 376 * 儿保小程序 - 儿童测量信息列表
367 377 *
368 378 * @param param
... ... @@ -386,6 +396,19 @@
386 396 public BaseResponse babyMeasureInfoDetail(@RequestBody BaseQuery param) {
387 397 return babyCheckFacade.babyMeasureInfoDetail(param);
388 398 }
  399 + /**
  400 + * 获取在儿保小程序中当天填入的最新膳食信息
  401 + *
  402 + * @param param
  403 + * @return
  404 + */
  405 + @RequestMapping(method = RequestMethod.POST, value = "/babyChooseInfo/detail")
  406 + @TokenRequired
  407 + @ResponseBody
  408 + public BaseResponse babyChooseInfoDetail(@RequestBody BaseQuery param) {
  409 + return babyCheckFacade.babyChooseInfoDetail(param);
  410 + }
  411 +
389 412  
390 413 /**
391 414 * 获取在儿保小程序中当天填入的最新 --- 问诊信息
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyCheckFacade.java View file @ 9ef09e2
... ... @@ -10,10 +10,7 @@
10 10 import com.lyms.platform.common.enums.*;
11 11 import com.lyms.platform.common.result.*;
12 12 import com.lyms.platform.common.utils.*;
13   -import com.lyms.platform.operate.web.request.BabyBuildInfoParam;
14   -import com.lyms.platform.operate.web.request.BabyCheckRequest;
15   -import com.lyms.platform.operate.web.request.BabyInterrogationRequest;
16   -import com.lyms.platform.operate.web.request.WxBabyMeasureRequest;
  13 +import com.lyms.platform.operate.web.request.*;
17 14 import com.lyms.platform.operate.web.result.*;
18 15 import com.lyms.platform.operate.web.service.BabyAfterVisitService;
19 16 import com.lyms.platform.operate.web.service.PatientWeightService;
... ... @@ -2847,6 +2844,52 @@
2847 2844 }
2848 2845  
2849 2846 /**
  2847 + * 儿保小程序 - 儿童膳食信息录入
  2848 + *
  2849 + * @param param
  2850 + * @return
  2851 + */
  2852 + public BaseResponse babyChooseInfoSaveOrUpdate(WxBabyChooseRequest param) {
  2853 + param.setType("2");
  2854 + String pid = param.getPid();
  2855 + WxChooseInfoModel model = mongoTemplate.findOne(Query.query(Criteria.where("pid").is(pid).and("type").is("2")), WxChooseInfoModel.class);
  2856 + if (model == null) {
  2857 + List<Map> babyInfos = param.getDiets();
  2858 + Map map = babyInfos.get(0);
  2859 + map.put("createTime", DateUtil.getyyyy_MM_dd(new Date()));
  2860 + param.setCreateTime(new Date());
  2861 + WxChooseInfoModel wxModel = param;
  2862 + mongoTemplate.insert(wxModel);
  2863 + // 新增
  2864 + return new BaseResponse();
  2865 + }
  2866 + param.setUpdateTime(new Date());
  2867 + List<Map> dbBabyInfos = model.getDiets();
  2868 + boolean exist = false;
  2869 + Map currentMap = param.getDiets().get(0);
  2870 + if (CollectionUtils.isNotEmpty(dbBabyInfos)) {
  2871 + for (Map map : dbBabyInfos) {
  2872 + String dbDate = map.get("createTime").toString();
  2873 + String currentDate = DateUtil.getyyyy_MM_dd(new Date());
  2874 + if (dbDate.equals(currentDate)) {
  2875 + exist = true;
  2876 + map.putAll(currentMap);
  2877 + // temperature 体温 height 身高 weight 体重 headWidth 头围 bust 胸围 feed 喂养 createTime 时间
  2878 + break;
  2879 + }
  2880 + }
  2881 + }
  2882 + if (!exist) {
  2883 + Map map = param.getDiets().get(0);
  2884 + map.put("createTime", DateUtil.getyyyy_MM_dd(new Date()));
  2885 + dbBabyInfos.add(map);
  2886 + }
  2887 + mongoTemplate.updateMulti(Query.query(Criteria.where("id").is(model.getId()).and("type").is("2")), MongoConvertHelper
  2888 + .convertToNativeUpdate(ReflectionUtils.getUpdateField(model)), WxChooseInfoModel.class);
  2889 + return new BaseResponse();
  2890 + }
  2891 +
  2892 + /**
2850 2893 * 儿保小程序 - 儿童测量信息列表
2851 2894 *
2852 2895 * @param param
... ... @@ -2883,6 +2926,33 @@
2883 2926 if (CollectionUtils.isNotEmpty(models)) {
2884 2927 for (WxMeasureInfoModel model : models) {
2885 2928 List<Map> babyInfos = model.getBabyInfos();
  2929 + if (CollectionUtils.isNotEmpty(babyInfos)) {
  2930 + for (Map map : babyInfos) {
  2931 + String currentDate = DateUtil.getyyyy_MM_dd(new Date());
  2932 + String dbCreateDime = map.get("createTime").toString();
  2933 + if (dbCreateDime.equals(currentDate)) {
  2934 + baseResponse.setObject(map);
  2935 + break;
  2936 + }
  2937 + }
  2938 + }
  2939 + }
  2940 + }
  2941 + return baseResponse;
  2942 + }
  2943 +
  2944 + /**
  2945 + * 获取在儿保小程序中当天填入的最新膳食信息
  2946 + *
  2947 + * @param param
  2948 + * @return
  2949 + */
  2950 + public BaseResponse babyChooseInfoDetail(BaseQuery param) {
  2951 + List<WxChooseInfoModel> models = mongoTemplate.find(Query.query(Criteria.where("pid").is(param.getKeyword()).and("type").is("2")), WxChooseInfoModel.class);
  2952 + BaseResponse baseResponse = new BaseResponse();
  2953 + if (CollectionUtils.isNotEmpty(models)) {
  2954 + for (WxChooseInfoModel model : models) {
  2955 + List<Map> babyInfos = model.getDiets();
2886 2956 if (CollectionUtils.isNotEmpty(babyInfos)) {
2887 2957 for (Map map : babyInfos) {
2888 2958 String currentDate = DateUtil.getyyyy_MM_dd(new Date());
platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/WxBabyChooseRequest.java View file @ 9ef09e2
  1 +package com.lyms.platform.operate.web.request;
  2 +
  3 +import com.lyms.platform.pojo.WxChooseInfoModel;
  4 +
  5 +/**
  6 + *
  7 + *
  8 + * @Description 儿保膳食信息录入
  9 + * @Date 15:30 2019/5/30
  10 + */
  11 +
  12 +public class WxBabyChooseRequest extends WxChooseInfoModel {
  13 +
  14 +}