From 68236c3297a17635fed348d6f3a78e0981a66f47 Mon Sep 17 00:00:00 2001 From: litao Date: Sat, 6 May 2017 10:36:56 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=8C=E7=BB=B4=E7=A0=81=E5=9C=B0=E5=9D=80?= =?UTF-8?q?=E6=8A=BD=E5=8F=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../platform/permission/service/CouponService.java | 7 +++- .../permission/service/impl/CouponServiceImpl.java | 47 +++++++++++++--------- .../operate/web/controller/CouponController.java | 6 ++- 3 files changed, 40 insertions(+), 20 deletions(-) diff --git a/platform-biz-service/src/main/java/com/lyms/platform/permission/service/CouponService.java b/platform-biz-service/src/main/java/com/lyms/platform/permission/service/CouponService.java index e5811e3..f763781 100644 --- a/platform-biz-service/src/main/java/com/lyms/platform/permission/service/CouponService.java +++ b/platform-biz-service/src/main/java/com/lyms/platform/permission/service/CouponService.java @@ -2,6 +2,7 @@ package com.lyms.platform.permission.service; import com.lyms.platform.common.result.BaseObjectResponse; +import java.util.Map; import java.util.Set; /** @@ -14,9 +15,13 @@ public interface CouponService{ BaseObjectResponse validate(String code, Integer type, String hospitalId); - BaseObjectResponse findList(String userId, String hospitalId); + BaseObjectResponse findList(String userId, String hospitalId, String url); BaseObjectResponse use(String hospitalId, String code, Integer userId); Set findTypes(String hospital); + + Map getPatientsInfo(String userId); + + Map getPatientsInfoByCode(String code); } diff --git a/platform-biz-service/src/main/java/com/lyms/platform/permission/service/impl/CouponServiceImpl.java b/platform-biz-service/src/main/java/com/lyms/platform/permission/service/impl/CouponServiceImpl.java index 1511c41..f8e80f8 100644 --- a/platform-biz-service/src/main/java/com/lyms/platform/permission/service/impl/CouponServiceImpl.java +++ b/platform-biz-service/src/main/java/com/lyms/platform/permission/service/impl/CouponServiceImpl.java @@ -21,13 +21,11 @@ import org.apache.commons.lang3.time.DateUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; import org.springframework.data.domain.Sort; import org.springframework.data.mongodb.core.MongoTemplate; import org.springframework.data.mongodb.core.query.Criteria; import org.springframework.data.mongodb.core.query.Query; import org.springframework.stereotype.Service; -import org.springframework.util.Assert; import java.util.*; @@ -58,8 +56,7 @@ public class CouponServiceImpl implements CouponService { /** 建档 */ private static final String PUT_ON_RECORD = "4"; - @Value("${or.code.url}") - private String url; + @Autowired private CouponMapper couponMapper; @@ -227,40 +224,54 @@ public class CouponServiceImpl implements CouponService { return RespBuilder.buildErro(ResponseCode.COUPON_NOT_UNIQUE); CouponInfo couponInfo = couponInfos.get(0); + Map patientsInfo = getPatientsInfo(couponInfo.getUserId()); + if(couponInfo.getStatus() == -1) { - return RespBuilder.buildErro(ResponseCode.COUPON_IS_DISABLED); + return RespBuilder.buildErro(ResponseCode.COUPON_IS_DISABLED, patientsInfo); } if(couponInfo.getStatus() == 2) { - return RespBuilder.buildErro(ResponseCode.COUPON_IS_USERD); + return RespBuilder.buildErro(ResponseCode.COUPON_IS_USERD, patientsInfo); } Map data = couponMapper.findValidateParam(param); if(MapUtils.isEmpty(data)) { - return RespBuilder.buildErro(ResponseCode.COUPON_NOT_AVAILABLE); + return RespBuilder.buildErro(ResponseCode.COUPON_NOT_AVAILABLE, patientsInfo); } /** 验证时间 */ - if(!validateDate(couponInfo.getUserId(), Integer.parseInt(data.get("actual_start").toString()), Integer.parseInt(data.get("actual_end").toString()), Integer.parseInt(data.get("unit_type").toString()), + /*if(!validateDate(couponInfo.getUserId(), Integer.parseInt(data.get("actual_start").toString()), Integer.parseInt(data.get("actual_end").toString()), Integer.parseInt(data.get("unit_type").toString()), data.get("create_hospital_id").toString(), Integer.parseInt(data.get("type").toString()))) - return RespBuilder.buildErro(ResponseCode.COUPON_TIME_OUT); + return RespBuilder.buildErro(ResponseCode.COUPON_TIME_OUT, patientsInfo);*/ /** 验证区域 */ - if(!validateArea(data.get("area_type").toString(), couponInfo.getCreateHospitalId(), hospitalId)) { - return RespBuilder.buildErro(ResponseCode.COUPON_AREA_NO_USE); - } - + /* if(!validateArea(data.get("area_type").toString(), couponInfo.getCreateHospitalId(), hospitalId)) { + return RespBuilder.buildErro(ResponseCode.COUPON_AREA_NO_USE, patientsInfo); + }*/ + return RespBuilder.buildSuccess(patientsInfo); + } + @Override + public Map getPatientsInfo(String userId) { Map restMap = new HashMap<>(); - restMap.put("userId", couponInfo.getUserId()); - Patients patients = mongoTemplate.findOne(Query.query(Criteria.where("pid").is(couponInfo.getUserId())), Patients.class); + restMap.put("userId", userId); + Patients patients = mongoTemplate.findOne(Query.query(Criteria.where("pid").is(userId)), Patients.class); if(patients != null) { restMap.put("vcCardNo", patients.getVcCardNo()); /** 就诊卡号 */ restMap.put("cardNo", patients.getCardNo()); /** 证件号 */ restMap.put("pcerteTypeId", patients.getPcerteTypeId()); /** 证件类型id */ } + return restMap; + } - - return RespBuilder.buildSuccess(restMap); + @Override + public Map getPatientsInfoByCode(String code) { + Map param = new HashMap<>(); + param.put("code", code); + List list = couponMapper.findList(param); + if(CollectionUtils.isNotEmpty(list)) { + return getPatientsInfo(list.get(0).getUserId()); + } + return null; } /** 1=省 2=市 3=区 4=单医院 */ @@ -340,7 +351,7 @@ public class CouponServiceImpl implements CouponService { } @Override - public BaseObjectResponse findList(String userId, String hospitalId) { + public BaseObjectResponse findList(String userId, String hospitalId, String url) { Map param = new HashMap<>(); param.put("userId", userId); param.put("hospitalId", hospitalId); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/CouponController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/CouponController.java index a52cf76..df0e3f4 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/CouponController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/CouponController.java @@ -7,6 +7,7 @@ import com.lyms.platform.common.result.BaseObjectResponse; import com.lyms.platform.operate.web.facade.AutoMatchFacade; import com.lyms.platform.permission.service.CouponService; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; @@ -30,6 +31,9 @@ public class CouponController extends BaseController { @Autowired AutoMatchFacade autoMatchFacade; + @Value("${or.code.url}") + private String url; + /** * 创建用户产检券 * @param userId @@ -54,7 +58,7 @@ public class CouponController extends BaseController { @RequestMapping(method = RequestMethod.GET, value = "/{userId}/{hospitalId}") @ResponseBody public BaseObjectResponse list(@PathVariable String userId, @PathVariable String hospitalId) { - return couponService.findList(userId, hospitalId); + return couponService.findList(userId, hospitalId, url); } -- 1.8.3.1