Commit 25760b538e252f891377be2ac82937f2f1f7ceb6

Authored by yangfei

Merge remote-tracking branch 'origin/master'

Showing 9 changed files

platform-biz-service/src/main/java/com/lyms/platform/permission/service/CouponService.java View file @ 25760b5
... ... @@ -44,6 +44,8 @@
44 44  
45 45 Map<String,String> findCouponByCode(Map<String,String> param);
46 46  
  47 + BaseObjectResponse validateUse(String code, Integer type, String hospitalId);
  48 +
47 49 int updateCouponStatus(Map<String, String> param);
48 50 }
platform-biz-service/src/main/java/com/lyms/platform/permission/service/impl/CouponServiceImpl.java View file @ 25760b5
... ... @@ -91,7 +91,7 @@
91 91 private Map<String, List<Integer>> typeMap = new HashMap<String,List<Integer>>() {
92 92 {
93 93 put(PREGNANT_WOMAN, Arrays.asList(1, 2, 4, 5, 6));
94   - put(CHILDREN, Arrays.asList(7, 8));
  94 + put(CHILDREN, Arrays.asList(7, 8, 9, 10));
95 95 put(MATERNAL_NCHILDBIRTH_NHOSPITAL, Arrays.asList(3, 4, 5, 6));
96 96 put(MATERNAL_YCHILDBIRTH_NHOSPITAL, Arrays.asList(5, 6));
97 97 put(MATERNAL_YCHILDBIRTH_YHOSPITAL, Arrays.asList(6));
... ... @@ -356,6 +356,58 @@
356 356  
357 357 return RespBuilder.buildSuccess(patientsInfo);
358 358 }
  359 +
  360 +
  361 +
  362 + @Override
  363 + public BaseObjectResponse validateUse(String code, Integer type, String hospitalId) {
  364 + Map<String, Object> param = new HashMap<>();
  365 + param.put("code", code);
  366 + param.put("type", type);
  367 + List<CouponInfo> couponInfos = couponMapper.findList(param);
  368 + if(CollectionUtils.isEmpty(couponInfos))
  369 + return RespBuilder.buildErro(ResponseCode.COUPON_NOT_FOUND);
  370 + if(couponInfos.size() > 1)
  371 + return RespBuilder.buildErro(ResponseCode.COUPON_NOT_UNIQUE);
  372 +
  373 + CouponInfo couponInfo = couponInfos.get(0);
  374 + Map<String, Object> patientsInfo = getPatientsInfo(couponInfo.getUserId());
  375 +
  376 + if(couponInfo.getStatus() == 3) {
  377 + return RespBuilder.buildErro(ResponseCode.COUPON_IS_INVALID, patientsInfo);
  378 + }
  379 + if(couponInfo.getStatus() == -1) {
  380 + return RespBuilder.buildErro(ResponseCode.COUPON_IS_DISABLED, patientsInfo);
  381 + }
  382 + if(couponInfo.getStatus() == 2) {
  383 + return RespBuilder.buildErro(ResponseCode.COUPON_IS_USERD, patientsInfo);
  384 + }
  385 +
  386 + Map<String, Object> data = couponMapper.findValidateParam(param);
  387 + if(MapUtils.isEmpty(data)) {
  388 + return RespBuilder.buildErro(ResponseCode.COUPON_NOT_AVAILABLE, patientsInfo);
  389 + }
  390 +
  391 +
  392 + /** 验证区域 */
  393 + if(!validateArea(data.get("area_type").toString(), couponInfo.getCreateHospitalId(), hospitalId)) {
  394 + return RespBuilder.buildErro(ResponseCode.COUPON_AREA_NO_USE, patientsInfo);
  395 + }
  396 +
  397 + //验证优惠劵是否临时使用了 该功能属于秦皇岛区域
  398 + if (couponInfo.getTempStatus() != null && couponInfo.getTempStatus() == 1)
  399 + {
  400 + //验证临时使用的医院是不是当前登陆的医院
  401 + if (StringUtils.isNotEmpty(couponInfo.getTempHospitalId()) && !couponInfo.getTempHospitalId().equals(hospitalId))
  402 + {
  403 + return RespBuilder.buildErro(ResponseCode.COUPON_IS_USED);
  404 + }
  405 + }
  406 +
  407 +
  408 + return RespBuilder.buildSuccess(patientsInfo);
  409 + }
  410 +
359 411  
360 412 @Override
361 413 public Map<String, Object> getPatientsInfo(String userId) {
platform-common/src/main/java/com/lyms/platform/common/enums/BregmaticEnums.java View file @ 25760b5
... ... @@ -7,8 +7,10 @@
7 7 * Created by lt on 2017/7/18 0018
8 8 */
9 9 public enum BregmaticEnums {
10   - NORMAL(1, "闭合"),
11   - BOMBE(2, "未闭合");
  10 + NORMAL(1, "正常"),
  11 + BOMBE(2, "膨隆"),
  12 + Sunken(3, "凹陷"),
  13 + OTHER(4, "其他");
12 14  
13 15 private Integer id;
14 16 private String name;
platform-dal/src/main/java/com/lyms/platform/pojo/SmsConfigModel.java View file @ 25760b5
... ... @@ -51,6 +51,12 @@
51 51 //备注
52 52 private String remark;
53 53  
  54 + //区域前缀
  55 + private String areaPrefix;
  56 +
  57 + //对应医院中的孕妇,儿童,产妇是否收费
  58 + private String isCharge;
  59 +
54 60 public void covertObj(SmsConfigModel model)
55 61 {
56 62 this.id = model.getId();
... ... @@ -66,6 +72,24 @@
66 72 this.hospitalId=model.getHospitalId();
67 73 this.highConfig = model.getHighConfig();
68 74 this.remark = model.getRemark();
  75 + this.areaPrefix = model.getAreaPrefix();
  76 + this.isCharge = model.getIsCharge();
  77 + }
  78 +
  79 + public String getIsCharge() {
  80 + return isCharge;
  81 + }
  82 +
  83 + public void setIsCharge(String isCharge) {
  84 + this.isCharge = isCharge;
  85 + }
  86 +
  87 + public String getAreaPrefix() {
  88 + return areaPrefix;
  89 + }
  90 +
  91 + public void setAreaPrefix(String areaPrefix) {
  92 + this.areaPrefix = areaPrefix;
69 93 }
70 94  
71 95 public String getRemark() {
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/CouponPrintController.java View file @ 25760b5
... ... @@ -137,7 +137,7 @@
137 137  
138 138 Object type = couponInfo.get("type");
139 139 //验证优惠劵是否可以使用
140   - BaseObjectResponse objectResponse = couponService.validate(code, Integer.parseInt(type.toString()), hospitalId);
  140 + BaseObjectResponse objectResponse = couponService.validateUse(code, Integer.parseInt(type.toString()), hospitalId);
141 141 if (objectResponse.getErrorcode() != ResponseCode.SUCCESS.getCode())
142 142 {
143 143 return objectResponse;
... ... @@ -207,7 +207,7 @@
207 207  
208 208 Object type = couponInfo.get("type");
209 209 //验证优惠劵是否可以使用
210   - BaseObjectResponse objectResponse = couponService.validate(code,Integer.parseInt(type.toString()),hospitalId);
  210 + BaseObjectResponse objectResponse = couponService.validateUse(code,Integer.parseInt(type.toString()),hospitalId);
211 211 if (objectResponse.getErrorcode() != ResponseCode.SUCCESS.getCode())
212 212 {
213 213 return objectResponse;
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SmsConfigFacade.java View file @ 25760b5
... ... @@ -79,6 +79,8 @@
79 79 //model.setDeptPrefix(JsonUtil.array2JsonString(request.getDeptPrefix()));
80 80 model.setGuideTime(JsonUtil.array2JsonString(request.getGuideTime()));
81 81 model.setSmsService(JsonUtil.array2JsonString(request.getSmsService()));
  82 + model.setAreaPrefix(request.getAreaPrefix());
  83 + model.setIsCharge(JsonUtil.obj2Str(request.getIsCharge()));
82 84  
83 85 return model;
84 86 }
... ... @@ -182,6 +184,8 @@
182 184 List<String> weeks = JsonUtil.toList(model.getGuideTime(), String.class);
183 185 sr.setGuideTime(WeekEnums.getWeekEnums(weeks));
184 186 sr.setSmsService(getSelectedNode(model.getSmsService()));
  187 + sr.setAreaPrefix(model.getAreaPrefix());
  188 + sr.setIsCharge(JsonUtil.getMap(model.getIsCharge()));
185 189 return sr;
186 190 }
187 191  
platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/SmsConfigRequest.java View file @ 25760b5
... ... @@ -17,6 +17,10 @@
17 17 @FormParam
18 18 private Integer prefixType;
19 19  
  20 + //区域前缀
  21 + @FormParam
  22 + private String areaPrefix;
  23 +
20 24 //医院前缀
21 25 @FormParam
22 26 @NotEmpty(message = "医院前缀不能为空.")
23 27  
... ... @@ -35,9 +39,27 @@
35 39  
36 40 private String hospitalId;
37 41  
  42 + //是否收费,孕妇,儿童,产妇 {"pregnant":"true","baby":"false","puerperant":"true"}
  43 + private Map<String,String> isCharge;
  44 +
38 45 //高危配置
39 46 private String highConfig;
40 47  
  48 + public Map<String, String> getIsCharge() {
  49 + return isCharge;
  50 + }
  51 +
  52 + public void setIsCharge(Map<String, String> isCharge) {
  53 + this.isCharge = isCharge;
  54 + }
  55 +
  56 + public String getAreaPrefix() {
  57 + return areaPrefix;
  58 + }
  59 +
  60 + public void setAreaPrefix(String areaPrefix) {
  61 + this.areaPrefix = areaPrefix;
  62 + }
41 63  
42 64 public String getHospitalId() {
43 65 return hospitalId;
platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/SmsConfigResult.java View file @ 25760b5
... ... @@ -27,6 +27,29 @@
27 27  
28 28 private String hospitalId;
29 29  
  30 +
  31 + //是否收费,孕妇,儿童,产妇 {"pregnant":"true","baby":"false","puerperant":"true"}
  32 + private Map<String,String> isCharge;
  33 +
  34 + //区域前缀
  35 + private String areaPrefix;
  36 +
  37 + public Map<String, String> getIsCharge() {
  38 + return isCharge;
  39 + }
  40 +
  41 + public void setIsCharge(Map<String, String> isCharge) {
  42 + this.isCharge = isCharge;
  43 + }
  44 +
  45 + public String getAreaPrefix() {
  46 + return areaPrefix;
  47 + }
  48 +
  49 + public void setAreaPrefix(String areaPrefix) {
  50 + this.areaPrefix = areaPrefix;
  51 + }
  52 +
30 53 public String getId() {
31 54 return id;
32 55 }
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/NewbornServiceImpl.java View file @ 25760b5
... ... @@ -177,12 +177,10 @@
177 177 Criteria c = new Criteria();
178 178 c.orOperator(Criteria.where("mphone").is(key), Criteria.where("name").regex(key), Criteria.where("mcertNo").is(key)).and("yn").ne(0);
179 179 List<BabyModel> babyModels = mongoUtil.findField(BabyModel.class, c, "id");
180   - if(CollectionUtils.isNotEmpty(babyModels)) {
181   - List<String> babyIds = CollectionUtils.getId(babyModels, "id", String.class);
182   - criteria.and("babyId").in(babyIds);
183   - }
  180 + List<String> babyIds = CollectionUtils.getId(babyModels, "id", String.class);
  181 + criteria.and("babyId").in(babyIds);
184 182 }
185   - PageResult pageResult = findMongoPage(NewbornVisit.class, new Query(criteria), page, limit);
  183 + PageResult pageResult = findMongoPage(NewbornVisit.class, new Query(criteria).with(new Sort(Sort.Direction.DESC, "checkTime")), page, limit);
186 184 List<NewbornVisit> newbornVisits = (List<NewbornVisit>) pageResult.getGrid();
187 185 List<Map<String, Object>> restMap = new ArrayList<>();
188 186 for (NewbornVisit visit : newbornVisits) {
... ... @@ -197,7 +195,7 @@
197 195 if(person != null) {
198 196 temp.put("cardNo", com.lyms.platform.common.utils.StringUtils.encryCardNo(person.getCardNo()));
199 197 temp.put("name", person.getName());
200   - temp.put("age", DateUtil.getAge(person.getBirth()));
  198 + temp.put("age", DateUtil.getBabyMonthAge(person.getBirth(), visit.getCheckTime()));
201 199 temp.put("phone", com.lyms.platform.common.utils.StringUtils.encryPhone(person.getPhone()));
202 200 }
203 201 }
... ... @@ -209,7 +207,8 @@
209 207 temp.put("days", days);
210 208 }
211 209 }
212   - List<NewbornVisit> nvs = mongoTemplate.find(new Query(criteria), NewbornVisit.class);
  210 +
  211 + List<NewbornVisit> nvs = mongoTemplate.find(Query.query(Criteria.where("babyId").is(visit.getBabyId()).and("yn").ne("0")), NewbornVisit.class);
213 212 temp.put("count", nvs.size());
214 213 int benyuan = 0;
215 214 for (NewbornVisit nv : nvs) {
... ... @@ -321,6 +320,7 @@
321 320 restMap.put("checkTime", DateUtil.getYyyyMmDd(newbornVisit.getCheckTime())); /** 访视时间 */
322 321 restMap.put("visitLocation", newbornVisit.getVisitLocation()); /** 访视地点 */
323 322 restMap.put("nextVisitTime", NextVisitTimeEnums.getName(newbornVisit.getNextVisitTime())); /** 预约下次访视时间 */
  323 + restMap.put("nextVisitTimeDesc", DateUtil.getYyyyMmDd(newbornVisit.getNextVisitTimeDesc())); /** 预约下次访视时间 */
324 324 /** 问诊 */
325 325 restMap.put("feedType", FeedTypeEnums.getName(newbornVisit.getFeedType())); /** 喂养方式 */
326 326 restMap.put("feedNumber", newbornVisit.getFeedNumber()); /** 喂奶量 */