Commit c7c308d93431345fedd54af9b4ca480b183fc35e

Authored by yangfei

Merge remote-tracking branch 'origin/master'

Showing 16 changed files

platform-biz-service/src/main/java/com/lyms/platform/permission/dao/master/CouponMapper.java View file @ c7c308d
... ... @@ -94,5 +94,7 @@
94 94 Map<String,String> findCouponByCode(Map<String,String> param);
95 95  
96 96 int updateCouponStatus(Map<String, String> param);
  97 +
  98 + CouponInfo findUserCoupon(Map<String, Object> param);
97 99 }
platform-biz-service/src/main/java/com/lyms/platform/permission/service/CouponService.java View file @ c7c308d
1 1 package com.lyms.platform.permission.service;
2 2  
3 3 import com.lyms.platform.common.result.BaseObjectResponse;
4   -import com.lyms.platform.permission.model.CouponInfo;
5 4  
6 5 import java.util.List;
7 6 import java.util.Map;
... ... @@ -47,5 +46,7 @@
47 46 BaseObjectResponse validateUse(String code, Integer type, String hospitalId);
48 47  
49 48 int updateCouponStatus(Map<String, String> param);
  49 +
  50 + boolean validateUser(String userId, String code);
50 51 }
platform-biz-service/src/main/java/com/lyms/platform/permission/service/impl/CouponServiceImpl.java View file @ c7c308d
... ... @@ -7,7 +7,6 @@
7 7 import com.lyms.platform.common.result.ResponseCode;
8 8 import com.lyms.platform.common.utils.DateUtil;
9 9 import com.lyms.platform.common.utils.HttpClientUtil;
10   -import com.lyms.platform.common.utils.JsonUtil;
11 10 import com.lyms.platform.common.utils.PropertiesUtil;
12 11 import com.lyms.platform.permission.dao.master.CouponMapper;
13 12 import com.lyms.platform.permission.model.CouponInfo;
... ... @@ -543,6 +542,15 @@
543 542 @Override
544 543 public int updateCouponStatus(Map<String, String> param) {
545 544 return couponMapper.updateCouponStatus(param);
  545 + }
  546 +
  547 + @Override
  548 + public boolean validateUser(String userId, String code) {
  549 + Map<String, Object> map = new HashMap<>();
  550 + map.put("userId", userId);
  551 + map.put("code", code);
  552 + CouponInfo couponInfo = couponMapper.findUserCoupon(map);
  553 + return couponInfo == null ? false : true;
546 554 }
547 555  
548 556 @Override
platform-biz-service/src/main/resources/mainOrm/master/CouponMapper.xml View file @ c7c308d
... ... @@ -23,6 +23,10 @@
23 23 sequence_id,create_date,use_date, operator_use_id, user_id,create_user_id,coupon_template_id,create_hospital_id,used_id,used_hospital_id,status,temp_hospital_id,temp_status
24 24 </sql>
25 25  
  26 + <select id="findUserCoupon" parameterType="map" resultMap="couponInfoMap">
  27 + select * from coupon_info where user_id = #{userId} and sequence_id = #{code}
  28 + </select>
  29 +
26 30 <select id="getUserName" parameterType="string" resultType="string">
27 31 select name from users where id = #{id}
28 32 </select>
... ... @@ -70,7 +74,7 @@
70 74 </select>
71 75  
72 76 <select id="findInfo" parameterType="map" resultType="map">
73   - select a.create_date, b.name, b.title, b.show_start, b.show_end, b.unit_type, b.content, a.sequence_id, a.status
  77 + select a.create_date, b.name, b.title, b.show_start, b.show_end, b.unit_type, b.content, a.sequence_id, a.status, c.type
74 78 from coupon_info a, coupon_template b, coupon_type c, hospital_coupon_template_group d
75 79 where a.user_id = #{userId} and a.create_hospital_id = #{hospitalId} and a.coupon_template_id = b.id and b.type_id=c.id and d.hospital_id = #{hospitalId}
76 80 order by c.type desc, b.coupon_order desc
77 81  
... ... @@ -502,10 +506,10 @@
502 506  
503 507  
504 508 <select id="findCouponByCode" parameterType="Map" resultType="Map">
505   - SELECT c.user_id as pId,t.coupon_order as couponOrder,m.type,date_format(c.create_date,'%Y-%m-%d') as createDate from coupon_info c
  509 + SELECT c.create_hospital_id as createHospitalId,c.user_id as pId,t.coupon_order as couponOrder,m.type,date_format(c.create_date,'%Y-%m-%d') as createDate from coupon_info c
506 510 INNER JOIN coupon_template t on c.coupon_template_id = t.id
507 511 INNER JOIN coupon_type m on t.type_id = m.id
508   - where c.create_hospital_id=#{hospitalId} and c.sequence_id = #{code}
  512 + where c.sequence_id = #{code}
509 513 </select>
510 514  
511 515 <update id="updateCouponStatus" parameterType="Map">
platform-common/src/main/java/com/lyms/platform/common/enums/CouponEnums.java View file @ c7c308d
... ... @@ -16,7 +16,9 @@
16 16 MATERNAL_LEAVE_HOSPITAL(5, "产妇出院小结"),
17 17 MATERNAL_REVIEW(6, "产妇产后复查"),
18 18 CHILDREN_FILE(7, "儿童建档"),
19   - CHILDREN_HEALTHCARE(8, "儿童保健");
  19 + CHILDREN_HEALTHCARE(8, "儿童保健"),
  20 + CHILDREN_VISIT(9, "新生儿访视"),
  21 + CHILDREN_HEMOGLOBIN(10, "血红蛋白检查");
20 22  
21 23 private Integer code;
22 24 private String name;
platform-common/src/main/java/com/lyms/platform/common/result/ResponseCode.java View file @ c7c308d
... ... @@ -29,6 +29,7 @@
29 29 COUPON_IS_USERD(1004, "优惠券已被使用"),
30 30 COUPON_IS_DISABLED(1005, "优惠券已被禁用"),
31 31 COUPON_IS_USED(1006, "当前优惠劵已经在其他医院使用,不能重复使用"),
  32 + COUPON_IS_NOT_SELF(1007, "当前优惠劵不属于本人"),
32 33  
33 34 NEED_BUILD(1101, "未找到建档信息");
34 35  
platform-dal/src/main/java/com/lyms/platform/pojo/NewbornVisit.java View file @ c7c308d
... ... @@ -14,7 +14,7 @@
14 14 public class NewbornVisit {
15 15  
16 16 /** 优惠券 */
17   - private String hemoglobinCoupon;
  17 + private String couponCode;
18 18  
19 19 private String id;
20 20  
... ... @@ -91,6 +91,7 @@
91 91  
92 92 // 前囟 正常/膨隆/凹陷/其他
93 93 private String bregmatic;
  94 + private String bregmaticOther;
94 95  
95 96 // 未闭合尺寸
96 97 private String unclosedSize;
97 98  
... ... @@ -155,12 +156,20 @@
155 156 // 下次访视时间
156 157 private Date nextVisitTimeDesc;
157 158  
158   - public String getHemoglobinCoupon() {
159   - return hemoglobinCoupon;
  159 + public String getBregmaticOther() {
  160 + return bregmaticOther;
160 161 }
161 162  
162   - public void setHemoglobinCoupon(String hemoglobinCoupon) {
163   - this.hemoglobinCoupon = hemoglobinCoupon;
  163 + public void setBregmaticOther(String bregmaticOther) {
  164 + this.bregmaticOther = bregmaticOther;
  165 + }
  166 +
  167 + public String getCouponCode() {
  168 + return couponCode;
  169 + }
  170 +
  171 + public void setCouponCode(String couponCode) {
  172 + this.couponCode = couponCode;
164 173 }
165 174  
166 175 public String getId() {
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/CouponController.java View file @ c7c308d
... ... @@ -8,7 +8,9 @@
8 8 import com.lyms.platform.common.base.LoginContext;
9 9 import com.lyms.platform.common.result.BaseObjectResponse;
10 10 import com.lyms.platform.common.result.RespBuilder;
  11 +import com.lyms.platform.common.result.ResponseCode;
11 12 import com.lyms.platform.common.utils.PropertiesUtil;
  13 +import com.lyms.platform.common.utils.StringUtils;
12 14 import com.lyms.platform.operate.web.facade.AutoMatchFacade;
13 15 import com.lyms.platform.permission.service.CouponService;
14 16 import com.lyms.platform.pojo.PlantformConfigModel;
... ... @@ -90,7 +92,12 @@
90 92 @RequestMapping(method = RequestMethod.GET, value = "/validate/{code}/{type}")
91 93 @ResponseBody
92 94 @TokenRequired
93   - public BaseObjectResponse validate(@PathVariable String code, @PathVariable Integer type, HttpServletRequest request) {
  95 + public BaseObjectResponse validate(@PathVariable String code, @PathVariable Integer type, String userId, HttpServletRequest request) {
  96 + if(StringUtils.isNotEmpty(userId)) {
  97 + if(!couponService.validateUser(userId, code)) { /** 优惠券不属于本人 */
  98 + return RespBuilder.buildErro(ResponseCode.COUPON_IS_NOT_SELF);
  99 + }
  100 + }
94 101 return couponService.validate(code, type, autoMatchFacade.getHospitalId(getUserId(request)));
95 102 }
96 103  
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/CouponPrintController.java View file @ c7c308d
... ... @@ -152,13 +152,13 @@
152 152 Patients patient = list.get(0);
153 153 result.put("couponCode",code); //优惠劵
154 154 result.put("createDate",couponInfo.get("createDate"));//发放时间
155   - result.put("hospitalName",CommonsHelper.getHospitalName(patient.getHospitalId(), organizationService));//医院名称
  155 + result.put("hospitalName",CommonsHelper.getHospitalName(couponInfo.get("createHospitalId"), organizationService));//医院名称
156 156 result.put("userName",patient.getUsername()); //用户名
157 157 result.put("couponType",type.toString()); //优惠劵类型
158 158  
159 159 String areaName = "";
160   - if (org.apache.commons.lang.StringUtils.isNotEmpty(patient.getHospitalId())) {
161   - Organization organization = organizationService.getOrganization(Integer.parseInt(patient.getHospitalId()));
  160 + if (org.apache.commons.lang.StringUtils.isNotEmpty(couponInfo.get("createHospitalId"))) {
  161 + Organization organization = organizationService.getOrganization(Integer.parseInt(couponInfo.get("createHospitalId")));
162 162 if (organization != null && organization.getYn() == YnEnums.YES.getId()) {
163 163 String areaId = organization.getAreaId();
164 164 BasicConfig basicConfig = basicConfigService.getOneBasicConfigById(areaId);
... ... @@ -207,7 +207,7 @@
207 207  
208 208 Object type = couponInfo.get("type");
209 209 //验证优惠劵是否可以使用
210   - BaseObjectResponse objectResponse = couponService.validateUse(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;
... ... @@ -248,8 +248,8 @@
248 248 model.setSerialNumber(order == null ? "0" : order.toString());
249 249  
250 250 String hospital = "";
251   - if (org.apache.commons.lang.StringUtils.isNotEmpty(patient.getHospitalId())) {
252   - Organization organization = organizationService.getOrganization(Integer.parseInt(patient.getHospitalId()));
  251 + if (org.apache.commons.lang.StringUtils.isNotEmpty(couponInfo.get("createHospitalId"))) {
  252 + Organization organization = organizationService.getOrganization(Integer.parseInt(couponInfo.get("createHospitalId")));
253 253 if (organization != null && organization.getYn() == YnEnums.YES.getId()) {
254 254 hospital = organization.getName();
255 255 String areaId = organization.getAreaId();
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/NewbornVisitControoler.java View file @ c7c308d
... ... @@ -103,6 +103,7 @@
103 103 * @return
104 104 */
105 105 @RequestMapping(value = "/export", method = RequestMethod.GET)
  106 + @TokenRequired
106 107 public void export(HttpServletRequest request, HttpServletResponse response, Date startDate, Date endDate, String doctor, String key, Integer page, Integer limit) {
107 108 visitService.export(startDate, endDate, doctor, getUserId(request), response, key);
108 109 }
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyCheckFacade.java View file @ c7c308d
... ... @@ -246,13 +246,21 @@
246 246 public BaseResponse addBabyCheck(BabyCheckRequest request, Integer userId) {
247 247  
248 248 /** 验证产检券是否可用 可用就改为已使用状态 */
249   - if(org.apache.commons.lang3.StringUtils.isNotBlank(request.getCouponCode()) && request.getCouponType() != null) {
250   - BaseObjectResponse resp = couponService.validate(request.getCouponCode(), request.getCouponType(), autoMatchFacade.getHospitalId(userId));
  249 + if(org.apache.commons.lang3.StringUtils.isNotBlank(request.getCouponCode())) {
  250 + BaseObjectResponse resp = couponService.validate(request.getCouponCode(), 8, autoMatchFacade.getHospitalId(userId));
251 251 if(resp.getErrorcode() != 0) {
252 252 return resp;
253 253 }
254 254 }
255 255  
  256 + /** 验证产检券是否可用 可用就改为已使用状态(血红蛋白) */
  257 + if(org.apache.commons.lang3.StringUtils.isNotBlank(request.getHemoglobinCoupon())) {
  258 + BaseObjectResponse resp = couponService.validate(request.getHemoglobinCoupon(), 10, autoMatchFacade.getHospitalId(userId));
  259 + if(resp.getErrorcode() != 0) {
  260 + return resp;
  261 + }
  262 + }
  263 +
256 264 String hospitalId = autoMatchFacade.getHospitalId(userId);
257 265 //表示区域的
258 266 if (org.apache.commons.lang.StringUtils.isNotEmpty(groupsFacade.findByCurrentUserId(hospitalId))) {
259 267  
... ... @@ -297,9 +305,12 @@
297 305 model = babyCheckService.addBabyCheck(model);
298 306  
299 307 /** 使用优惠券 */
300   - if(org.apache.commons.lang3.StringUtils.isNotBlank(request.getCouponCode()) && request.getCouponType() != null) {
  308 + if(org.apache.commons.lang3.StringUtils.isNotBlank(request.getCouponCode())) {
301 309 couponService.use(autoMatchFacade.getHospitalId(userId), request.getCouponCode(), userId, model.getId());
302 310 }
  311 + if(org.apache.commons.lang3.StringUtils.isNotBlank(request.getHemoglobinCoupon())) {
  312 + couponService.use(autoMatchFacade.getHospitalId(userId), request.getHemoglobinCoupon(), userId, model.getId());
  313 + }
303 314  
304 315 BaseObjectResponse br = new BaseObjectResponse();
305 316 if (model == null || model.getId() == null) {
... ... @@ -463,6 +474,8 @@
463 474  
464 475 resMap.put("baseInfo", base);
465 476 resMap.put("checkList", list);
  477 +
  478 +
466 479 br.setData(resMap);
467 480 br.setErrorcode(ErrorCodeConstants.SUCCESS);
468 481 br.setErrormsg("成功");
469 482  
... ... @@ -897,10 +910,14 @@
897 910 BabyCheckModel checkModel = checkModels.get(0);
898 911 result = getBabyCheckResult(checkModel);
899 912 result.setCouponCode(couponService.findByUsedId(id));
  913 + /** 优惠券编号 */
  914 + String hemoglobinCoupon = couponService.findByUsedId(id);
  915 + if(StringUtils.isNotEmpty(hemoglobinCoupon)) {
  916 + result.setHemoglobinCoupon(hemoglobinCoupon);
  917 + }
900 918 }
901 919  
902 920 }
903   -
904 921  
905 922  
906 923 br.setData(result);
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SmsConfigFacade.java View file @ c7c308d
... ... @@ -944,8 +944,8 @@
944 944 String planTimeEnd = "";
945 945 if (StringUtils.isNotEmpty(planTime))
946 946 {
947   - planTimeStart = String.valueOf(DateUtil.getSecond(DateUtil.parseYMD(planTime.split(" - ")[0])) +" 00:00:00");
948   - planTimeEnd = String.valueOf(DateUtil.getSecond(DateUtil.parseYMD(planTime.split(" - ")[1]))+" 00:00:00");
  947 + planTimeStart =DateUtil.parseYMD(planTime.split(" - ")[0]) +" 00:00:00";
  948 + planTimeEnd = DateUtil.parseYMD(planTime.split(" - ")[1])+" 23:59:59";
949 949 }
950 950  
951 951 String actualTimeStart = "";
... ... @@ -953,8 +953,8 @@
953 953 if (StringUtils.isNotEmpty(actualTime))
954 954 {
955 955  
956   - actualTimeStart = String.valueOf(DateUtil.getSecond(DateUtil.parseYMD(actualTime.split(" - ")[0]))+" 00:00:00");
957   - actualTimeEnd = String.valueOf(DateUtil.getSecond(DateUtil.parseYMD(actualTime.split(" - ")[1])) + " 00:00:00");
  956 + actualTimeStart = DateUtil.parseYMD(actualTime.split(" - ")[0])+" 00:00:00";
  957 + actualTimeEnd = DateUtil.parseYMD(actualTime.split(" - ")[1]) + " 23:59:59";
958 958 }
959 959 List<Map<String,String>> list = new ArrayList<>();
960 960  
platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/BabyCheckRequest.java View file @ c7c308d
... ... @@ -13,6 +13,9 @@
13 13 public class BabyCheckRequest {
14 14  
15 15  
  16 + /** 优惠券 */
  17 + private String hemoglobinCoupon;
  18 +
16 19 private String id;
17 20  
18 21 private String pid;
... ... @@ -261,6 +264,14 @@
261 264  
262 265 //脐部
263 266 private Map<String,String> navel;
  267 +
  268 + public String getHemoglobinCoupon() {
  269 + return hemoglobinCoupon;
  270 + }
  271 +
  272 + public void setHemoglobinCoupon(String hemoglobinCoupon) {
  273 + this.hemoglobinCoupon = hemoglobinCoupon;
  274 + }
264 275  
265 276 public Map<String, String> getNavel() {
266 277 return navel;
platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/BabyCheckResult.java View file @ c7c308d
... ... @@ -9,6 +9,9 @@
9 9 public class BabyCheckResult {
10 10 private String id;
11 11  
  12 + // 血红蛋白券
  13 + private String hemoglobinCoupon;
  14 +
12 15 //建档ID
13 16 private String buildId;
14 17  
... ... @@ -792,6 +795,14 @@
792 795  
793 796 public void setHighRisk(Integer highRisk) {
794 797 this.highRisk = highRisk;
  798 + }
  799 +
  800 + public void setHemoglobinCoupon(String hemoglobinCoupon) {
  801 + this.hemoglobinCoupon = hemoglobinCoupon;
  802 + }
  803 +
  804 + public String getHemoglobinCoupon() {
  805 + return hemoglobinCoupon;
795 806 }
796 807 }
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/NewbornServiceImpl.java View file @ c7c308d
... ... @@ -12,6 +12,7 @@
12 12 import com.lyms.platform.common.utils.ReflectionUtils;
13 13 import com.lyms.platform.operate.web.facade.AccessPermissionFacade;
14 14 import com.lyms.platform.operate.web.facade.AutoMatchFacade;
  15 +import com.lyms.platform.operate.web.facade.OrganizationGroupsFacade;
15 16 import com.lyms.platform.operate.web.service.INewbornVisitService;
16 17 import com.lyms.platform.operate.web.utils.CollectionUtils;
17 18 import com.lyms.platform.operate.web.utils.FunvCommonUtil;
18 19  
... ... @@ -66,8 +67,11 @@
66 67 private CouponService couponService;
67 68  
68 69 @Autowired
69   - private AccessPermissionFacade accessPermissionFacade;
  70 + private CouponMapper couponMapper;
70 71  
  72 + @Autowired
  73 + private OrganizationGroupsFacade organizationGroupsFacade;
  74 +
71 75 @Override
72 76 public BaseObjectResponse init() {
73 77 List<Map<String, Object>> feedType = EnumUtil.toJson(FeedTypeEnums.class);
... ... @@ -93,9 +97,8 @@
93 97  
94 98  
95 99 /** 使用优惠券 */
96   - if(StringUtils.isNotBlank(newbornVisit.getHemoglobinCoupon())) {
97   - couponService.use(autoMatchFacade.getHospitalId(userId), newbornVisit.getHemoglobinCoupon(), userId, newbornVisit.getId());
98   - newbornVisit.setHemoglobinCoupon(null); /** 去除掉优惠券信息 不保存到数据库 */
  100 + if(StringUtils.isNotBlank(newbornVisit.getCouponCode())) {
  101 + couponService.use(autoMatchFacade.getHospitalId(userId), newbornVisit.getCouponCode(), userId, newbornVisit.getId());
99 102 }
100 103  
101 104 newbornVisit.setOperationId(userId.toString());
102 105  
... ... @@ -143,10 +146,10 @@
143 146 if (CollectionUtils.isNotEmpty(permissionsModels)) {
144 147 Set<String> set = permissionsModels.get(0).getData().keySet();
145 148 Iterator<String> it = set.iterator();
146   - BabyModel babyModel = mongoTemplate.findOne(Query.query(Criteria.where("hospitalId").in(set)
  149 + BabyModel babyModel = mongoTemplate.findOne(Query.query(Criteria.where("hospitalId").in(it)
147 150 .and("pid").is(pid)).with(new Sort(Sort.Direction.DESC, "created")), BabyModel.class);
148 151 if(babyModel == null) {
149   - return false; // 需要建档
  152 + return false; // 需 要建档
150 153 }
151 154 babyId = UUID.randomUUID().toString().replace("-", "");
152 155 babyModel.setId(babyId);
... ... @@ -162,11 +165,7 @@
162 165 @Override
163 166 public BaseObjectResponse list(Date startDate, Date endDate, String doctor, Integer userId, String key, Integer page, Integer limit) {
164 167 String hospitalId = autoMatchFacade.getHospitalId(userId);
165   - List<String> hospitalIds = accessPermissionFacade.getCurrentUserHospPermissions(userId);
166   - if(CollectionUtils.isEmpty(hospitalIds)) {
167   - return RespBuilder.buildSuccess();
168   - }
169   - Criteria criteria = Criteria.where("yn").ne("0").and("hospitalId").in(hospitalIds);
  168 + Criteria criteria = Criteria.where("yn").ne("0").and("hospitalId").is(hospitalId);
170 169 if(startDate != null && endDate != null) {
171 170 criteria.and("checkTime").gte(startDate).lt(DateUtil.addDay(endDate, 1));
172 171 }
173 172  
... ... @@ -189,11 +188,12 @@
189 188 temp.put("id", visit.getId());
190 189 temp.put("pid", visit.getPid());
191 190 temp.put("babyId", visit.getBabyId());
  191 + temp.put("hospitalId", visit.getHospitalId());
  192 +
192 193 String pid = visit.getPid();
193 194 if(StringUtils.isNotBlank(pid)) {
194 195 PersonModel person = mongoTemplate.findById(pid, PersonModel.class);
195 196 if(person != null) {
196   - temp.put("cardNo", com.lyms.platform.common.utils.StringUtils.encryCardNo(person.getCardNo()));
197 197 temp.put("name", person.getName());
198 198 temp.put("age", DateUtil.getBabyMonthAge(person.getBirth(), visit.getCheckTime()));
199 199 temp.put("phone", com.lyms.platform.common.utils.StringUtils.encryPhone(person.getPhone()));
... ... @@ -205,6 +205,10 @@
205 205 if(patients != null) {
206 206 int days = DateUtil.daysBetween(patients.getFmDate(), new Date());
207 207 temp.put("days", days);
  208 + temp.put("cardNo", com.lyms.platform.common.utils.StringUtils.encryCardNo(babyModel.getMcertNo())); /** 母亲证件号 */
  209 + temp.put("mCardNo", babyModel.getMcertNo()); /** 母亲证件号 */
  210 + temp.put("vcCardNo", babyModel.getVcCardNo()); /** 就诊卡号 */
  211 + temp.put("pcerteTypeId", babyModel.getMcertTypeId()); /** 证件类型 */
208 212 }
209 213 }
210 214  
... ... @@ -212,7 +216,7 @@
212 216 temp.put("count", nvs.size());
213 217 int benyuan = 0;
214 218 for (NewbornVisit nv : nvs) {
215   - if(hospitalId.equals(nv.getVisitHospitalId())) {
  219 + if(hospitalId.equals(nv.getHospitalId())) {
216 220 benyuan++;
217 221 }
218 222 }
... ... @@ -231,7 +235,6 @@
231 235 PageResult pageResult = (PageResult) rest.getData();
232 236 List<Map<String, Object>> datas = (List<Map<String, Object>>) pageResult.getGrid();
233 237 Map<String, String> cnames = new LinkedHashMap<>();
234   -// Map<String, String> cnames = new LinkedHashMap<>();
235 238 cnames.put("id", "#");
236 239 cnames.put("checkTime", "复查访视日期");
237 240 cnames.put("cardNo", "证件号");
... ... @@ -267,8 +270,11 @@
267 270  
268 271 @Override
269 272 public BaseObjectResponse query(Integer userId, String babyId) {
270   - String hospitalId = autoMatchFacade.getHospitalId(userId);
271   - List<NewbornVisit> newbornVisits = mongoTemplate.find(Query.query(Criteria.where("babyId").is(babyId).and("hospitalId").is(hospitalId).and("yn").ne("0"))
  273 + List<String> hospitalIds = organizationGroupsFacade.findGroupHospital(userId, true);
  274 + if(CollectionUtils.isEmpty(hospitalIds)) {
  275 + return RespBuilder.buildSuccess();
  276 + }
  277 + List<NewbornVisit> newbornVisits = mongoTemplate.find(Query.query(Criteria.where("babyId").is(babyId).and("hospitalId").in(hospitalIds).and("yn").ne("0"))
272 278 .with(new Sort(Sort.Direction.ASC, "checkTime")), NewbornVisit.class);
273 279 List<Map<String, Object>> rest = new ArrayList<>();
274 280 for (NewbornVisit newbornVisit : newbornVisits) {
275 281  
276 282  
277 283  
278 284  
279 285  
280 286  
281 287  
... ... @@ -313,54 +319,135 @@
313 319 if(newbornVisit != null) {
314 320 Map<String, Object> restMap = new HashMap<>();
315 321 restMap.put("id", newbornVisit.getId()); /** id */
  322 +
  323 + /**
  324 + * 未闭合尺寸
  325 + */
  326 + if(StringUtils.isNotBlank(newbornVisit.getUnclosedSize()) && StringUtils.isNotBlank(newbornVisit.getUnclosedSize2())) {
  327 + restMap.put("unclosedSize", newbornVisit.getUnclosedSize() + "cm X " + newbornVisit.getUnclosedSize2() + "cm");
  328 + }
  329 +
  330 + String couponCode = couponMapper.findByUsedId(id);
  331 + restMap.put("couponCode", couponCode == null ? "" : couponCode);
  332 +
316 333 /** 访视信息 */
317   - restMap.put("checkTimeDesc", newbornVisit.getCheckTimeDesc()); /** 产后天数 */
  334 + restMap.put("checkTimeDesc", newbornVisit.getCheckTimeDesc() == null ? "" : newbornVisit.getCheckTimeDesc()); /** 产后天数 */
318 335 restMap.put("visitHospitalId", mapper.getHospitalName(newbornVisit.getVisitHospitalId())); /** 访视机构 */
319 336 restMap.put("doctor", mapper.getUserName(newbornVisit.getDoctor())); /** 访视医生 */
320 337 restMap.put("checkTime", DateUtil.getYyyyMmDd(newbornVisit.getCheckTime())); /** 访视时间 */
321   - restMap.put("visitLocation", newbornVisit.getVisitLocation()); /** 访视地点 */
322   - restMap.put("nextVisitTime", NextVisitTimeEnums.getName(newbornVisit.getNextVisitTime())); /** 预约下次访视时间 */
323   - restMap.put("nextVisitTimeDesc", DateUtil.getYyyyMmDd(newbornVisit.getNextVisitTimeDesc())); /** 预约下次访视时间 */
  338 + restMap.put("visitLocation", newbornVisit.getVisitLocation() == null ? "" : newbornVisit.getVisitLocation()); /** 访视地点 */
  339 + if(newbornVisit.getNextVisitTime() != null) {
  340 + restMap.put("nextVisitTime", NextVisitTimeEnums.getName(newbornVisit.getNextVisitTime())); /** 预约下次访视时间 */
  341 + }
  342 + if(newbornVisit.getNextVisitTimeDesc() != null){
  343 + restMap.put("nextVisitTimeDesc", DateUtil.getYyyyMmDd(newbornVisit.getNextVisitTimeDesc())); /** 预约下次访视时间 */
  344 + }
324 345 /** 问诊 */
325   - restMap.put("feedType", FeedTypeEnums.getName(newbornVisit.getFeedType())); /** 喂养方式 */
326   - restMap.put("feedNumber", newbornVisit.getFeedNumber()); /** 喂奶量 */
327   - restMap.put("nurseNumber", newbornVisit.getNurseNumber()); /** 吃奶次数 */
328   - restMap.put("weight", newbornVisit.getWeight()); /** 新生儿体重 */
329   - restMap.put("height", newbornVisit.getHeight()); /** 出生身长 */
330   - restMap.put("vomit", VomitEnums.getName(newbornVisit.getVomit())); /** 呕吐 */
331   - restMap.put("shit", newbornVisit.getShit()); /** 大便 */
332   - restMap.put("shitNumber", newbornVisit.getShitNumber()); /** 大便次数 */
  346 + if(StringUtils.isNotBlank(newbornVisit.getFeedType())) {
  347 + restMap.put("feedType", FeedTypeEnums.getName(newbornVisit.getFeedType())); /** 喂养方式 */
  348 + }
  349 + if(StringUtils.isNotBlank(newbornVisit.getFeedNumber())) {
  350 + restMap.put("feedNumber", newbornVisit.getFeedNumber()); /** 喂奶量 */
  351 + }
  352 + if(newbornVisit.getNurseNumber() != null) {
  353 + restMap.put("nurseNumber", newbornVisit.getNurseNumber()); /** 吃奶次数 */
  354 + }
  355 + if(StringUtils.isNotBlank(newbornVisit.getWeight())) {
  356 + restMap.put("weight", newbornVisit.getWeight()); /** 新生儿体重 */
  357 + }
  358 + if(StringUtils.isNotBlank(newbornVisit.getHeight())) {
  359 + restMap.put("height", newbornVisit.getHeight()); /** 出生身长 */
  360 + }
  361 + if(StringUtils.isNotBlank(newbornVisit.getVomit())) {
  362 + restMap.put("vomit", VomitEnums.getName(newbornVisit.getVomit())); /** 呕吐 */
  363 + }
  364 + if(StringUtils.isNotBlank(newbornVisit.getShit())) {
  365 + restMap.put("shit", newbornVisit.getShit()); /** 大便 */
  366 + }
  367 + if(newbornVisit.getShitNumber() != null) {
  368 + restMap.put("shitNumber", newbornVisit.getShitNumber()); /** 大便次数 */
  369 + }
333 370 /** 体格测量 */
334   - restMap.put("temperature", newbornVisit.getTemperature()); /** 体温 */
335   - restMap.put("weightNow", newbornVisit.getWeightNow()); /** 目前体重 */
  371 + if(StringUtils.isNotBlank(newbornVisit.getTemperature())) {
  372 + restMap.put("temperature", newbornVisit.getTemperature()); /** 体温 */
  373 + }
  374 + if(StringUtils.isNotBlank(newbornVisit.getWeightNow())) {
  375 + restMap.put("weightNow", newbornVisit.getWeightNow()); /** 目前体重 */
  376 + }
  377 +
336 378 /** 体格检查 */
337   - restMap.put("heartRate", newbornVisit.getHeartRate()); /** 心率 */
338   - restMap.put("respiratoryRate", newbornVisit.getRespiratoryRate()); /** 呼吸频率 */
339   - restMap.put("skin", SkinEnums.getName(newbornVisit.getSkin())); /** 皮肤 */
340   - restMap.put("complexion", ComplexionEnums.getName(newbornVisit.getComplexion())); /** 面色 */
341   - restMap.put("ictericPart", newbornVisit.getIctericPart()); /** 黄染部位 */
342   - restMap.put("bregmatic", BregmaticEnums.getName(newbornVisit.getBregmatic())); /** 前囟 */
343   - restMap.put("eye", newbornVisit.getEye()); /** 眼外观 */
344   - restMap.put("limb", newbornVisit.getLimb()); /** 四肢活动 */
345   - restMap.put("ear", newbornVisit.getEar()); /** 耳外观 */
346   - restMap.put("neck", newbornVisit.getNeck()); /** 颈部包块 */
347   - restMap.put("nose", newbornVisit.getNose()); /** 鼻 */
348   - restMap.put("mouth", newbornVisit.getMouth()); /** 口腔 */
349   - restMap.put("gangmen", newbornVisit.getGangmen()); /** 肛门 */
350   - restMap.put("heartLung", newbornVisit.getHeartLung()); /** 心肺听诊 */
351   - restMap.put("umbilicalCord", UmbilicalCordEnums.getName(newbornVisit.getUmbilicalCord())); /** 脐带 */
352   - restMap.put("abdomen", newbornVisit.getAbdomen()); /** 腹部 */
353   - restMap.put("spine", newbornVisit.getSpine()); /** 脊柱 */
354   - restMap.put("extGenitalia", newbornVisit.getExtGenitalia()); /** 外生殖器 */
  379 + if(StringUtils.isNotBlank(newbornVisit.getHeartRate())) {
  380 + restMap.put("heartRate", newbornVisit.getHeartRate()); /** 心率 */
  381 + }
  382 + if(StringUtils.isNotBlank(newbornVisit.getRespiratoryRate())) {
  383 + restMap.put("respiratoryRate", newbornVisit.getRespiratoryRate()); /** 呼吸频率 */
  384 + }
  385 + if(StringUtils.isNotBlank(newbornVisit.getSkin())) {
  386 + restMap.put("skin", SkinEnums.getName(newbornVisit.getSkin())); /** 皮肤 */
  387 + }
  388 + if(StringUtils.isNotBlank(newbornVisit.getComplexion())) {
  389 + restMap.put("complexion", ComplexionEnums.getName(newbornVisit.getComplexion())); /** 面色 */
  390 + }
  391 + if(StringUtils.isNotBlank(newbornVisit.getIctericPart())) {
  392 + restMap.put("ictericPart", newbornVisit.getIctericPart()); /** 黄染部位 */
  393 + }
  394 + if(StringUtils.isNotBlank(newbornVisit.getBregmatic())) {
  395 + restMap.put("bregmatic", BregmaticEnums.getName(newbornVisit.getBregmatic())); /** 前囟 */
  396 + }
  397 + if(StringUtils.isNotBlank(newbornVisit.getBregmaticOther())) {
  398 + restMap.put("bregmaticOther", newbornVisit.getBregmaticOther()); /** 前囟 */
  399 + }
  400 + if(StringUtils.isNotBlank(newbornVisit.getEye())) {
  401 + restMap.put("eye", newbornVisit.getEye()); /** 眼外观 */
  402 + }
  403 + if(StringUtils.isNotBlank(newbornVisit.getLimb())) {
  404 + restMap.put("limb", newbornVisit.getLimb()); /** 四肢活动 */
  405 + }
  406 + if(StringUtils.isNotBlank(newbornVisit.getEar())) {
  407 + restMap.put("ear", newbornVisit.getEar()); /** 耳外观 */
  408 + }
  409 + if(StringUtils.isNotBlank(newbornVisit.getNeck())) {
  410 + restMap.put("neck", newbornVisit.getNeck()); /** 颈部包块 */
  411 + }
  412 + if(StringUtils.isNotBlank(newbornVisit.getNose())) {
  413 + restMap.put("nose", newbornVisit.getNose()); /** 鼻 */
  414 + }
  415 + if(StringUtils.isNotBlank(newbornVisit.getMouth())) {
  416 + restMap.put("mouth", newbornVisit.getMouth()); /** 口腔 */
  417 + }
  418 + if(StringUtils.isNotBlank(newbornVisit.getGangmen())) {
  419 + restMap.put("gangmen", newbornVisit.getGangmen()); /** 肛门 */
  420 + }
  421 + if(StringUtils.isNotBlank(newbornVisit.getHeartLung())) {
  422 + restMap.put("heartLung", newbornVisit.getHeartLung()); /** 心肺听诊 */
  423 + }
  424 + if(StringUtils.isNotBlank(newbornVisit.getUmbilicalCord())) {
  425 + restMap.put("umbilicalCord", UmbilicalCordEnums.getName(newbornVisit.getUmbilicalCord())); /** 脐带 */
  426 + }
  427 + if(StringUtils.isNotBlank(newbornVisit.getAbdomen())) {
  428 + restMap.put("abdomen", newbornVisit.getAbdomen()); /** 腹部 */
  429 + }
  430 + if(StringUtils.isNotBlank(newbornVisit.getSpine())) {
  431 + restMap.put("spine", newbornVisit.getSpine()); /** 脊柱 */
  432 + }
  433 + if(StringUtils.isNotBlank(newbornVisit.getExtGenitalia())) {
  434 + restMap.put("extGenitalia", newbornVisit.getExtGenitalia()); /** 外生殖器 */
  435 + }
355 436 /** 指导诊断 */
356   - restMap.put("diagnosis", mongoUtil.findNames(newbornVisit.getDiagnosis())); /** 诊断 */
357   - restMap.put("handleOpinions", newbornVisit.getHandleOpinions()); /** 处理意见 */
358   - restMap.put("guidanceOpinion", newbornVisit.getGuidanceOpinion()); /** 指导意见 */
  437 + if(CollectionUtils.isNotEmpty(newbornVisit.getDiagnosis())) {
  438 + restMap.put("diagnosis", mongoUtil.findNames(newbornVisit.getDiagnosis())); /** 诊断 */
  439 + }
  440 + if(StringUtils.isNotBlank(newbornVisit.getHandleOpinions())) {
  441 + restMap.put("handleOpinions", newbornVisit.getHandleOpinions()); /** 处理意见 */
  442 + }
  443 + if(StringUtils.isNotBlank(newbornVisit.getGuidanceOpinion())) {
  444 + restMap.put("guidanceOpinion", newbornVisit.getGuidanceOpinion()); /** 指导意见 */
  445 + }
359 446  
360 447 /** 其他 */
361   - restMap.put("skinOther", newbornVisit.getSkinOther());
362   - restMap.put("complexionOther", newbornVisit.getComplexionOther());
363   - restMap.put("umbilicalCordOther", newbornVisit.getUmbilicalCordOther());
  448 + restMap.put("skinOther", newbornVisit.getSkinOther() == null ? "" : newbornVisit.getSkinOther());
  449 + restMap.put("complexionOther", newbornVisit.getComplexionOther() == null ? "" : newbornVisit.getComplexionOther());
  450 + restMap.put("umbilicalCordOther", newbornVisit.getUmbilicalCordOther() == null ? "" : newbornVisit.getUmbilicalCordOther());
364 451 return RespBuilder.buildSuccess(restMap);
365 452 }
366 453 return RespBuilder.buildSuccess();
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/ReportServiceImpl.java View file @ c7c308d
... ... @@ -135,6 +135,25 @@
135 135 couponReportMap.put("8_8", "<div class='ag-double-line'>儿童保健券(七)<div>使用人次</div></div>");
136 136 couponReportMap.put("8_9", "<div class='ag-double-line'>儿童保健券(八)<div>使用人次</div></div>");
137 137 couponReportMap.put("8_10", "<div class='ag-double-line'>儿童保健券(九)<div>使用人次</div></div>");
  138 + couponReportMap.put("9_1", "<div class='ag-double-line'>新生儿访视券(一)<div>使用人次</div></div>");
  139 + couponReportMap.put("9_2", "<div class='ag-double-line'>新生儿访视券(二)<div>使用人次</div></div>");
  140 + couponReportMap.put("9_3", "<div class='ag-double-line'>新生儿访视券(三)<div>使用人次</div></div>");
  141 + couponReportMap.put("9_4", "<div class='ag-double-line'>新生儿访视券(四)<div>使用人次</div></div>");
  142 + couponReportMap.put("9_5", "<div class='ag-double-line'>新生儿访视券(五)<div>使用人次</div></div>");
  143 + couponReportMap.put("9_6", "<div class='ag-double-line'>新生儿访视券(六)<div>使用人次</div></div>");
  144 + couponReportMap.put("9_7", "<div class='ag-double-line'>新生儿访视券(七)<div>使用人次</div></div>");
  145 + couponReportMap.put("9_8", "<div class='ag-double-line'>新生儿访视券(八)<div>使用人次</div></div>");
  146 + couponReportMap.put("9_9", "<div class='ag-double-line'>新生儿访视券(九)<div>使用人次</div></div>");
  147 + couponReportMap.put("10_1", "<div class='ag-double-line'>血红蛋白检查券(一)<div>使用人次</div></div>");
  148 + couponReportMap.put("10_2", "<div class='ag-double-line'>血红蛋白检查券(二)<div>使用人次</div></div>");
  149 + couponReportMap.put("10_3", "<div class='ag-double-line'>血红蛋白检查券(三)<div>使用人次</div></div>");
  150 + couponReportMap.put("10_4", "<div class='ag-double-line'>血红蛋白检查券(四)<div>使用人次</div></div>");
  151 + couponReportMap.put("10_5", "<div class='ag-double-line'>血红蛋白检查券(五)<div>使用人次</div></div>");
  152 + couponReportMap.put("10_6", "<div class='ag-double-line'>血红蛋白检查券(六)<div>使用人次</div></div>");
  153 + couponReportMap.put("10_7", "<div class='ag-double-line'>血红蛋白检查券(七)<div>使用人次</div></div>");
  154 + couponReportMap.put("10_8", "<div class='ag-double-line'>血红蛋白检查券(八)<div>使用人次</div></div>");
  155 + couponReportMap.put("10_9", "<div class='ag-double-line'>血红蛋白检查券(九)<div>使用人次</div></div>");
  156 + couponReportMap.put("10_10", "<div class='ag-double-line'>血红蛋白检查券(十)<div>使用人次</div></div>");
138 157 /** 产后 */
139 158 couponReportMap.put("3_1", "<div class='ag-double-line'>产后建档券<div>使用人次</div></div>");
140 159 couponReportMap.put("4_1", "<div class='ag-double-line'>分娩券<div>使用人次</div></div>");