jk-GitHub-coder před 3 roky
rodič
revize
aba49d1314

+ 59 - 40
YijiaRestful/src/main/java/com/platform/yijia/controller/CouponController.java

@@ -203,7 +203,7 @@ public class CouponController {
     @ApiOperation(value = "获取核销优惠券信息", httpMethod = "GET", notes = "获取核销优惠券信息")
     public String selectCouponVerificationInfo(@ApiParam(value = "核销优惠券码", required = true) @RequestParam String couponNo,
                                                @ApiParam(value = "用户unionId", required = true) @RequestParam String unionId){
-        Gson gson =new Gson();
+        Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd HH:mm:ss").create();
         ResultData resultData = null;
         try {
             if(StringUtils.isNotBlank(couponNo) && StringUtils.isNotBlank(unionId)){
@@ -226,9 +226,16 @@ public class CouponController {
                         }
                         boolean contains = verification.contains(stationId.toString());
                         if(contains){
+                            //如果当前登录用户是异业端核销人员非加油站异业券核销
                             resultData = ResultData.success(couponInfo);
                         }else {
-                            resultData = ResultData.error(CodeMsg.ERROR_VERIFICATION);
+                            Integer stationIdCoupon = couponInfo.getStationId();
+                            Integer stationIdVer = cu.getStationId();
+                            if(stationIdVer.toString().equals(stationIdCoupon.toString())){
+                                resultData = ResultData.success(couponInfo);
+                            }else {
+                                resultData = ResultData.error(CodeMsg.ERROR_VERIFICATION);
+                            }
                         }
                     }else {
                         resultData = ResultData.error(CodeMsg.NO_COUPON);
@@ -342,6 +349,7 @@ public class CouponController {
                                 Coupon coupon = couponService.selectCouponTemplateInfo(couponParam);
                                 //该优惠券是否存在
                                 if(coupon != null) {
+                                    Integer couponCumulativeNum = coupon.getCouponCumulativeNum();
                                     //该优惠券是否已被领完
                                     if(coupon.getCouponNum() != null && coupon.getCouponNum() > 0) {
                                         UserCoupon uc = new UserCoupon();
@@ -355,8 +363,8 @@ public class CouponController {
                                         //获取该用户所持有此优惠券的张数,即未使用的优惠券
                                         int userCouponCountNoUsed = couponService.selectUserCouponCount(uc);
                                         //获取该用户
-                                        if(userCouponCountNoUsed <= coupon.getCouponHoldNum()){
-                                            if(userCouponCountSum <= coupon.getCouponReceiveNum()){
+                                        if(userCouponCountNoUsed < coupon.getCouponHoldNum()){
+                                            if(userCouponCountSum < coupon.getCouponReceiveNum()){
                                                 userCouponParam.setCouponIsUsed("0");           //是否使用:0、未使用;1、已使用;
                                                 long currentTimeMillis = System.currentTimeMillis();
                                                 String s = stationId + Long.toString(currentTimeMillis) + Math.round((Math.random() + 1) * 1000);
@@ -382,6 +390,12 @@ public class CouponController {
                                                         break;
                                                 }
                                                 if(couponService.addUserCoupon(userCouponParam) == 1) {
+                                                    //更新该优惠券的领取数量
+                                                    Coupon coupon_up = new Coupon();
+                                                    coupon_up.setCouponId(couponId);
+                                                    couponCumulativeNum = couponCumulativeNum + 1;
+                                                    coupon_up.setCouponCumulativeNum(couponCumulativeNum);
+                                                    couponService.updateCouponInfo(coupon_up);
                                                     //领取成功
                                                     successCouponList.add(couponId.toString());
                                                     //领取成功后次数 +1
@@ -456,7 +470,7 @@ public class CouponController {
     @ResponseBody
     @Transactional
     public String findCouponVerificationUser(@RequestBody CouponVerificationUser couponVerificationUser){
-        Gson gson =new Gson();
+        Gson gson =new GsonBuilder().setDateFormat("yyyy-MM-dd HH:mm:ss").create();
         ResultData resultData = null;
         if(StringUtils.isNotBlank(couponVerificationUser.getMobilePhone()) && StringUtils.isNotBlank(couponVerificationUser.getUnionId())){
             //手机号
@@ -495,7 +509,6 @@ public class CouponController {
     }
 
 
-
     //异业端核销优惠券,兑换券
     @RequestMapping(value = "/writeOffCoupon", consumes = "application/json", method = RequestMethod.POST)
     @ResponseBody
@@ -505,8 +518,6 @@ public class CouponController {
         ResultData resultData = null;
         try {
             if(couponVerification !=null && StringUtils.isNoneBlank(couponVerification.getCouponNo()) && StringUtils.isNoneBlank(couponVerification.getUnionId())){
-                //核销点
-                String verificationId = couponVerification.getVerification();
                 String unionId = couponVerification.getUnionId();
                 //核销码
                 String couponNo = couponVerification.getCouponNo();
@@ -523,63 +534,71 @@ public class CouponController {
                             couponVerificationUser.setUnionId(unionId);
                             CouponVerificationUser cu = couponService.selectCouponVerificationUserInfo(couponVerificationUser);
                             if(cu !=null && cu.getStationId() !=null){
+                                //核销人员手机号
+                                String mobilePhone = cu.getMobilePhone();
+                                userCoupon.setMobilePhone(mobilePhone);
+                                //当前核销人员的核销点
+                                String verificationId = cu.getStationId().toString();
                                 //异业券核销,使用sys_user中账户核销
                                 StationInfo stationInfo = new StationInfo();
                                 stationInfo.setStationId(cu.getStationId());
                                 StationInfo stationInfos = stationService.selectStationInfo(stationInfo);
                                 //当前异业券的核销站点
                                 String verification = userCouponInfo.getVerification();
+                                userCoupon.setVerificationTime(new Date());                     //核销时间
+                                Integer stationIdCoupon = userCouponInfo.getStationId();        //当前优惠券所在发放站点
+                                //如果当前异业券有核销站点
                                 if(StringUtils.isNotBlank(verification)){
                                     //当前优惠券是否共享
-                                    if(StringUtils.isNotBlank(stationInfos.getCouponFlag()) && stationInfos.getCouponFlag().equals("1")){
-                                        verificationId = stationInfos.getGroupId().toString();
-                                    }
-                                    boolean contains = verification.contains(verificationId);
-                                    //是否能在该核销点核销
-                                    if(contains){
-                                        userCoupon.setCouponIsUsed("2");
-                                        couponService.updateCouponUserInfo(userCoupon);
-//                                    couponVerification.setCouponUserId(userCouponInfo.getId());
-//                                    couponVerification.setCreateTime(new Date());
-//                                    couponVerification.setVerification(cu.getStationId().toString());
-//                                    couponService.addCouponVerificationRecord(couponVerification);
-                                        resultData = ResultData.success("核销成功!");
-                                    }else {
-                                        //油站自己设置自己兑换券
-                                        Integer stationIdVerification = cu.getStationId();
-                                        Integer stationIdCoupon = userCouponInfo.getStationId();
-                                        if(stationIdVerification.toString().equals(stationIdCoupon.toString())){
-                                            userCoupon.setCouponIsUsed("2");
-                                            couponService.updateCouponUserInfo(userCoupon);
-                                            resultData = ResultData.success("核销成功!");
-                                        }else {
-                                            resultData = ResultData.error(CodeMsg.ERROR_VERIFICATION);
+                                    if(cu.getJiBie()!=null){
+                                        String jiBie = cu.getJiBie();
+                                        //核销人员所在站点的级别
+                                        switch (jiBie){
+                                            case "1":
+                                                if(StringUtils.isNotBlank(stationInfos.getCouponFlag()) && stationInfos.getCouponFlag().equals("1")){
+                                                    verificationId = stationInfos.getGroupId().toString();
+                                                }
+                                                break;
+                                            case "2":
+                                                if(StringUtils.isNotBlank(stationInfos.getCouponFlag()) && stationInfos.getCouponFlag().equals("1")){
+                                                    //表示为集团下优惠券共享
+                                                    verificationId = stationInfos.getStationId().toString();
+                                                }
+                                                break;
                                         }
-                                        //resultData = ResultData.error(CodeMsg.ERROR_VERIFICATION);
                                     }
-                                }else {
-                                    //油站自己设置自己兑换券
-                                    Integer stationIdVerification = cu.getStationId();
-                                    Integer stationIdCoupon = userCouponInfo.getStationId();
-                                    if(stationIdVerification.toString().equals(stationIdCoupon.toString())){
-                                        userCoupon.setCouponIsUsed("2");
+                                    //是否能在该核销点核销
+                                    Integer stationIdVerification = cu.getStationId();              //核销人员所在核销点
+                                    if(verification.contains(verificationId) || stationIdVerification.toString().equals(stationIdCoupon.toString())){
+                                        userCoupon.setCouponIsUsed("1");
                                         couponService.updateCouponUserInfo(userCoupon);
                                         resultData = ResultData.success("核销成功!");
                                     }else {
                                         resultData = ResultData.error(CodeMsg.ERROR_VERIFICATION);
                                     }
+                                }else if(verificationId.equals(stationIdCoupon.toString())){
+                                    //如果当前异业券没有核销站点,则为油站设置自己兑换券
+                                    userCoupon.setCouponIsUsed("1");
+                                    couponService.updateCouponUserInfo(userCoupon);
+                                    resultData = ResultData.success("核销成功!");
+                                }else {
+                                    //当前异业券不能在此异业端核销
+                                    resultData = ResultData.error(CodeMsg.ERROR_VERIFICATION);
                                 }
                             }else {
                                 //此人不是核销人员
                                 resultData = ResultData.error(CodeMsg.NOT_COUPON_VERIFICATION_USER);
                             }
                         }else{
+                            //不是兑换券
                             resultData = ResultData.error(CodeMsg.NOT_COUPON_VERIFICATION);
                         }
                     }else {
+                        //该兑换券已被使用
                         resultData = ResultData.error(CodeMsg.COUPON_VERIFICATION_USED);
                     }
                 }else {
+                    //没有此兑换券
                     resultData = ResultData.error(CodeMsg.NO_COUPON);
                 }
             }else {
@@ -602,7 +621,7 @@ public class CouponController {
     @ApiOperation(value = "获取核销优惠券信息", httpMethod = "GET", notes = "获取核销优惠券信息")
     public String selectCouponVerificationList(@ApiParam(value = "用户unionId", required = true) @RequestParam String unionId,
                                                @RequestParam int pageNum, @RequestParam int pageSize) {
-        Gson gson = new Gson();
+        Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd HH:mm:ss").create();
         ResultData resultData = null;
         if(StringUtils.isNotBlank(unionId)){
             CouponVerificationUser couponVerificationUser = new CouponVerificationUser();
@@ -626,7 +645,7 @@ public class CouponController {
                     userCoupon.setStationId(stationId);
                 }
                 userCoupon.setCouponType("3");
-                userCoupon.setCouponIsUsed("2");
+                userCoupon.setCouponIsUsed("1");
                 PageHelper.startPage(pageNum, pageSize);
                 List<UserCoupon> userCoupons = couponService.selectCouponVerificationList(userCoupon);
                 PageInfo pageInfo = new PageInfo(userCoupons);

+ 11 - 0
YijiaRestful/src/main/java/com/platform/yijia/controller/ElectronicMembershipCardController.java

@@ -468,6 +468,17 @@ public class ElectronicMembershipCardController {
                             }
                         }
 
+                        //更新该优惠券的使用数量
+                        UserCoupon u = new UserCoupon();
+                        u.setId(id);
+                        UserCoupon userCouponInfo = couponService.selectUserCouponInfo(u);
+                        Coupon coupon_up = new Coupon();
+                        coupon_up.setCouponId(userCouponInfo.getCouponId());
+                        Integer couponUseNum = userCouponInfo.getCouponUseNum();
+                        couponUseNum = couponUseNum + 1;
+                        coupon_up.setCouponCumulativeNum(couponUseNum);
+                        couponService.updateCouponInfo(coupon_up);
+
                     }
 
                     //payOrder.setTransactionId(ordNo);

+ 108 - 1
YijiaRestful/src/main/java/com/platform/yijia/controller/PayController.java

@@ -982,11 +982,26 @@ public class PayController {
                                     //discountCoupon
                                     if(infoMap.containsKey("discountCoupon") && infoMap.get("discountCoupon") !=null && infoMap.get("discountCoupon").toString() !=""){
                                         UserCoupon userCoupon = new UserCoupon();
-                                        userCoupon.setCouponIsUsed("2");
+                                        userCoupon.setCouponIsUsed("1");
                                         String discountCoupon = infoMap.get("discountCoupon").toString();
                                         userCoupon.setId(Integer.valueOf(discountCoupon));
                                         userCoupon.setCreateTime(new Date());
+                                        userCoupon.setVerificationTime(new Date());
                                         couponService.updateCouponUserInfo(userCoupon);
+
+                                        //更新该优惠券的使用数量
+                                        UserCoupon u = new UserCoupon();
+                                        u.setId(Integer.valueOf(discountCoupon));
+                                        UserCoupon userCouponInfo = couponService.selectUserCouponInfo(u);
+                                        Coupon coupon_up = new Coupon();
+                                        coupon_up.setCouponId(userCouponInfo.getCouponId());
+                                        Integer couponUseNum = userCouponInfo.getCouponUseNum();
+                                        couponUseNum = couponUseNum + 1;
+                                        coupon_up.setCouponCumulativeNum(couponUseNum);
+                                        couponService.updateCouponInfo(coupon_up);
+
+                                        //主动领取优惠券
+                                        this.drawCoupon(infoMap);
                                     }
                                 }
 
@@ -1199,7 +1214,22 @@ public class PayController {
                                         String discountCoupon = infoMap.get("discountCoupon").toString();
                                         userCoupon.setId(Integer.valueOf(discountCoupon));
                                         userCoupon.setCreateTime(new Date());
+                                        userCoupon.setVerificationTime(new Date());
                                         couponService.updateCouponUserInfo(userCoupon);
+
+                                        //更新该优惠券的使用数量
+                                        UserCoupon u = new UserCoupon();
+                                        u.setId(Integer.valueOf(discountCoupon));
+                                        UserCoupon userCouponInfo = couponService.selectUserCouponInfo(u);
+                                        Coupon coupon_up = new Coupon();
+                                        coupon_up.setCouponId(userCouponInfo.getCouponId());
+                                        Integer couponUseNum = userCouponInfo.getCouponUseNum();
+                                        couponUseNum = couponUseNum + 1;
+                                        coupon_up.setCouponCumulativeNum(couponUseNum);
+                                        couponService.updateCouponInfo(coupon_up);
+
+                                        //主动领取优惠券
+                                        this.drawCoupon(infoMap);
                                     }
                                 }
 
@@ -1303,6 +1333,80 @@ public class PayController {
         return result;
     }
 
+    //主动领取
+    public void drawCoupon(Map infoMap){
+        //按照应付来主动发放
+        //查询该油站是否有主动发放
+        BigDecimal receivableAmt = new BigDecimal(infoMap.get("receivableAmt").toString());
+        Integer stationId = Integer.valueOf(infoMap.get("stationId").toString());
+        String unionId = infoMap.get("unionId").toString();
+        Coupon coupon = new Coupon();
+        coupon.setStationId(stationId);
+        coupon.setIssueType("1");
+        List<Coupon> couponList = couponService.selectStaGrantCouponList(coupon);;
+        if(couponList !=null && couponList.size()>0){
+            //获取该油站已主动发放的优惠券
+            for(Coupon c: couponList){
+                if(!(receivableAmt.compareTo(c.getDiscountThresholdAmt()) == -1)){
+                    Integer couponHoldNum = c.getCouponHoldNum();           //持有张数
+                    Integer couponReceiveNum = c.getCouponReceiveNum();     //最多领取张数
+                    Integer couponNum = c.getCouponNum();                   //改模板最大数量
+                    String couponIssueId = c.getCouponIssueId();            //领取方式的ID
+                    Integer couponId = c.getCouponId();                     //优惠券模板ID
+                    Integer couponCumulativeNum = c.getCouponCumulativeNum();   //当前优惠券已领取的数量
+                    UserCoupon u = new UserCoupon();
+                    u.setUnionId(unionId);
+                    u.setStationId(stationId);
+                    u.setCouponIsUsed("0");
+                    int userCouponCount = couponService.selectUserCouponCount(u);
+                    u.setCouponIsUsed("1");
+                    int userCouponCountUsed = couponService.selectUserCouponCount(u);
+                    if(couponNum >0){
+                        if(userCouponCount < couponHoldNum){
+                            if(userCouponCountUsed < couponReceiveNum){
+                                UserCoupon userCouponParam = new UserCoupon();
+                                userCouponParam.setCouponIsUsed("0");           //是否使用:0、未使用;1、已使用;
+                                long currentTimeMillis = System.currentTimeMillis();
+                                String s = stationId + Long.toString(currentTimeMillis) + Math.round((Math.random() + 1) * 1000);
+                                String s1 = CryptUtil.useMD5(s);
+                                userCouponParam.setCouponNo(s1);                //优惠券编码
+                                userCouponParam.setUnionId(unionId);            //用户unionId
+                                userCouponParam.setIssueId(couponIssueId);      //领取方式ID
+                                userCouponParam.setCouponId(coupon.getCouponId());    //优惠券模板ID
+                                userCouponParam.setStationId(stationId);        //油站ID
+                                userCouponParam.setCouponIsEffective("1");      //优惠券是否有效
+                                userCouponParam.setGetCouponTime(new Date());   //优惠券领取时间
+                                String effectiveTimeType = coupon.getEffectiveTimeType();
+                                //'有效时间类型: 1,固定时间;2,领取后x天内有效'
+                                switch (effectiveTimeType) {
+                                    case "1":
+                                        userCouponParam.setCouponEffectiveTime(coupon.getEffectiveTimeEnd());  //优惠券有效期截止时间
+                                        break;
+                                    case "2":
+                                        Calendar calendar = Calendar.getInstance();
+                                        calendar.setTime(userCouponParam.getGetCouponTime());
+                                        calendar.add(Calendar.DATE, coupon.getEffectiveDayNum());     //领取后多少天有效
+                                        userCouponParam.setCouponEffectiveTime(calendar.getTime());   //优惠券有效期截止时间
+                                        break;
+                                }
+                                couponService.addUserCoupon(userCouponParam);
+                                //更新该优惠券的领取数量
+                                Coupon coupon_up = new Coupon();
+                                coupon_up.setCouponId(couponId);
+                                couponCumulativeNum = couponCumulativeNum + 1;
+                                coupon_up.setCouponCumulativeNum(couponCumulativeNum);
+                                couponService.updateCouponInfo(coupon_up);
+                            }
+                        }
+                    }
+                }
+            }
+        }
+    }
+
+    //领取后优惠券推送告知用户
+
+
     //插入客户信息
     public CustomerManage insertCustomerManage(Map infoMap) throws ParseException {
         CustomerManage customerManage = new CustomerManage();   //存放客户信息
@@ -2072,6 +2176,9 @@ public class PayController {
     }
 
 
+    //
+
+
     @RequestMapping(value = "/posPrintReceiptCeshi", consumes = "application/json", method = RequestMethod.POST)
     @ResponseBody
     public String posPrintReceiptCeshi(@RequestBody PayOrder payOrder){

+ 4 - 0
YijiaRestful/src/main/java/com/platform/yijia/dao/CouponMapper.java

@@ -1,6 +1,7 @@
 package com.platform.yijia.dao;
 
 
+import com.platform.yijia.controller.CouponController;
 import com.platform.yijia.pojo.*;
 
 import java.util.List;
@@ -10,6 +11,9 @@ public interface CouponMapper {
     //获取优惠券模板信息
     Coupon selectCouponTemplateInfo(Coupon coupon);
 
+    //更新优惠券模板信息
+    void updateCouponInfo(Coupon coupon);
+
     //获取加油券信息
     UserCoupon selectUserCouponInfo(UserCoupon coupon);
 

+ 5 - 2
YijiaRestful/src/main/java/com/platform/yijia/pojo/UserCoupon.java

@@ -20,12 +20,12 @@ public class UserCoupon {
     private String unionId;                 //用户union_id;
     private String couponNo;                //优惠券码
     private String couponIsUsed;            //优惠券是否被使用
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
     private Date getCouponTime;             //优惠券获取时间
     private String couponIsEffective;       //用户获得的优惠券是否还有效
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
     private Date couponEffectiveTime;       //优惠券有效期截止时间
     private Integer stationId;              //油站ID
+    private Date verificationTime;          //核销时间
+    private String verificationUserPhone;   //核销人手机号
 
     //SQL 条件判断 额外判断参数
     private Date currentTime;                //当前时间
@@ -46,6 +46,8 @@ public class UserCoupon {
     private Date effectiveTimeStart;        //固定时间-有效开始时间;
     private Date effectiveTimeEnd;          //固定时间-有效结束时间;
     private Integer effectiveDayNum;        //有效天数;
+    private Integer couponCumulativeNum;    //已领取的优惠券累计
+    private Integer couponUseNum;           //已使用的优惠券累计
     private String openPlatform;            //'发放平台,1.微信 2支付宝';
     private String grantStatus;             //发放状态:0,未发放;1,已发放;
     private String status;                  //有效状态:0,未生效; 1,生效;2,失效;
@@ -79,5 +81,6 @@ public class UserCoupon {
 
     //核销参数
     private Integer groupId;            //集团ID
+    private String mobilePhone;         //核销人员手机号
 
 }

+ 3 - 0
YijiaRestful/src/main/java/com/platform/yijia/service/CouponService.java

@@ -10,6 +10,9 @@ public interface CouponService {
     //获取优惠券模板信息
     Coupon selectCouponTemplateInfo(Coupon coupon);
 
+    //更新优惠券模板信息
+    void updateCouponInfo(Coupon coupon);
+
     //获取加油券信息
     UserCoupon selectUserCouponInfo(UserCoupon coupon);
 

+ 6 - 0
YijiaRestful/src/main/java/com/platform/yijia/service/impl/CouponServiceImpl.java

@@ -19,6 +19,12 @@ public class CouponServiceImpl implements CouponService {
         return couponMapper.selectCouponTemplateInfo(coupon);
     }
 
+    //更新优惠券模板信息
+    @Override
+    public void updateCouponInfo(Coupon coupon) {
+        couponMapper.updateCouponInfo(coupon);
+    }
+
     //更新用户进入领取页面次数
     @Override
     public void updateCouponUserGiveCount(CouponUserGiveCount couponUserGiveCount) {

+ 12 - 18
YijiaRestful/src/main/java/com/platform/yijia/utils/CodeMsg.java

@@ -35,34 +35,28 @@ public class CodeMsg {
     public static CodeMsg PARAMS_NUll = new CodeMsg(-2,"请求失败,必传参数不能为空!");
     public static CodeMsg WARSECOUNT_FAIL = new CodeMsg(-1,"库存不足");
     public static CodeMsg INTEGRAL_INSUFFICIENT = new CodeMsg(-2,"您的积分不足");
-    public static CodeMsg COUPON_LOSE_EFFECTIVE = new CodeMsg(-2,"优惠券已无效");
-    public static CodeMsg NO_COUPON = new CodeMsg(-3,"此优惠券不存在");
-    public static CodeMsg COUPON_NO_GRANT = new CodeMsg(-4,"此优惠券暂未发放");
+
     public static CodeMsg NO_PERSONNAL = new CodeMsg(-4,"该油站或油枪未添加或绑定加油员");
-    public static CodeMsg NO_COUPON_ISSUE = new CodeMsg(-4,"该领取方式不存在");
     public static CodeMsg NO_ENABLE_COUPON = new CodeMsg(-5,"该油站暂未开启积分功能");
+
+
+    //优惠券业务返回code
+    public static CodeMsg COUPON_LOSE_EFFECTIVE = new CodeMsg(-2,"优惠券已无效");
+    public static CodeMsg NO_COUPON = new CodeMsg(-3,"此优惠券不存在");
     public static CodeMsg COUPON_GIVE_COUNT_MAX = new CodeMsg(-6,"该用户进入该领取优惠券方式页面已达到最大次数值");
     public static CodeMsg ISSUE_CLOSE = new CodeMsg(-7,"该领取方式已关闭");
+    public static CodeMsg NO_COUPON_ISSUE = new CodeMsg(-4,"该领取方式不存在");
     public static CodeMsg NOT_GIVE_COUPON_TIME = new CodeMsg(-8,"当前时间该领取方式暂未开启");
+    public static CodeMsg COUPON_NOT_COUPONTHRESHOLDAMT = new CodeMsg(-10,"当前金额未达到优惠券使用门槛");
     public static CodeMsg COUPON_NOT_CONTATINS_OILNAME = new CodeMsg(-9,"当前优惠券不适用此油品");
-    public static CodeMsg ERROR_VERIFICATION = new CodeMsg(-1,"当前异业券不能在此异业端核销!");
-    public static CodeMsg COUPON_VERIFICATION_USED = new CodeMsg(-3,"当前异业券已使用!");
-    public static CodeMsg NOT_COUPON_VERIFICATION = new CodeMsg(-4,"当前优惠券不是异业兑换券!");
-
 
+    //优惠券核销
+    public static CodeMsg ERROR_VERIFICATION = new CodeMsg(-1,"当前异业券不能在此异业端核销!");
+    public static CodeMsg COUPON_VERIFICATION_USED = new CodeMsg(-3,"当前异业券已核销!");
+    public static CodeMsg NOT_COUPON_VERIFICATION = new CodeMsg(-5,"当前优惠券不是异业兑换券!");
     public static CodeMsg NOT_COUPON_VERIFICATION_USER = new CodeMsg(-4,"当前人员不是核销人员!");
 
 
-
-    public static CodeMsg COUPON_NOT_COUPONTHRESHOLDAMT = new CodeMsg(-10,"当前金额未达到优惠券使用门槛");
-
-
-
-
-
-
-
-
     private CodeMsg(int retCode, String message) {
         this.retCode = retCode;
         this.message = message;

+ 41 - 4
YijiaRestful/src/main/resources/mapper/CouponMapper.xml

@@ -85,6 +85,8 @@
     <result column="coupon_is_effective"      jdbcType="VARCHAR"   property="couponIsEffective" />
     <result column="get_coupon_time"          jdbcType="TIMESTAMP" property="getCouponTime" />
     <result column="coupon_effective_time"    jdbcType="TIMESTAMP" property="couponEffectiveTime" />
+    <result column="verification_time"        jdbcType="TIMESTAMP" property="verificationTime" />
+
 
     <result column="station_id"               jdbcType="INTEGER"   property="stationId" />
     <result column="coupon_name"              jdbcType="VARCHAR"   property="couponName" />
@@ -102,6 +104,8 @@
     <result column="effective_time_end"       jdbcType="TIMESTAMP" property="effectiveTimeEnd" />
     <result column="effective_day_num"        jdbcType="INTEGER"   property="effectiveDayNum" />
     <result column="coupon_receive_num"       jdbcType="INTEGER"   property="couponReceiveNum" />
+    <result column="coupon_cumulative_num"    jdbcType="INTEGER"   property="couponCumulativeNum" />
+    <result column="coupon_use_num"           jdbcType="INTEGER"   property="couponUseNum" />
     <result column="open_platform"            jdbcType="VARCHAR"   property="openPlatform" />
     <result column="grant_status"             jdbcType="VARCHAR"   property="grantStatus" />
     <result column="status"                   jdbcType="VARCHAR"   property="status" />
@@ -174,6 +178,28 @@
         </where>
     </select>
 
+
+    <!--更新优惠券模板-->
+    <update id="updateCouponInfo" parameterType="com.platform.yijia.pojo.Coupon">
+        UPDATE coupon_info
+        <set>
+            <if test="couponCumulativeNum != null">
+                coupon_cumulative_num = #{couponCumulativeNum},
+            </if>
+            <if test="couponUseNum != null">
+                coupon_use_num = #{couponUseNum},
+            </if>
+        </set>
+        <where>
+            <if test="stationId !=null">
+                AND station_id = #{stationId}
+            </if>
+            <if test="couponId !=null">
+                AND id = #{couponId}
+            </if>
+        </where>
+    </update>
+
     <!--查询领取方式信息-->
     <select id="selectCouponIssueList" parameterType="com.platform.yijia.pojo.CouponIssue" resultMap="CouponIssueBaseResultMap">
         SELECT
@@ -263,6 +289,9 @@
             <if test="couponIssueId !=null">
                 AND T1.issue_id = #{couponIssueId}
             </if>
+            <if test="issueType !=null">
+                AND T2.issue_type = #{issueType}
+            </if>
         </where>
     </select>
 
@@ -311,7 +340,7 @@
         </where>
     </select>
 
-    <!-- 更新订单-->
+    <!-- 更新用户进入页面次数-->
     <update id="updateCouponUserGiveCount" parameterType="com.platform.yijia.pojo.CouponUserGiveCount">
         UPDATE
             coupon_user_give_count
@@ -339,7 +368,7 @@
         </where>
     </update>
 
-    <!-- 更新用户订单信息-->
+    <!-- 更新用户优惠券信息-->
     <update id="updateCouponUserInfo" parameterType="com.platform.yijia.pojo.UserCoupon">
         UPDATE coupon_user
         <set>
@@ -349,6 +378,10 @@
             <if test="couponIsUsed != null">
                 coupon_is_used = #{couponIsUsed},
             </if>
+            <if test="verificationTime != null">
+                verification_time = #{verificationTime},
+            </if>
+
         </set>
         <where>
             <if test="unionId !=null and unionId !=''">
@@ -393,7 +426,7 @@
         </trim>
     </insert>
 
-    <!-- 更新核销用户订单信息-->
+    <!-- 更新核销用户信息-->
     <update id="updateCouponVerificationUser" parameterType="com.platform.yijia.pojo.CouponVerificationUser">
         UPDATE coupon_verification_user
         <set>
@@ -446,7 +479,7 @@
         LEFT JOIN       sys_user                      AS T2  ON T1.mobile_phone = T2.phonenumber
         LEFT JOIN       sys_dept                      AS T3  ON T2.dept_id = T3.dept_id
         <where>
-                T3.ji_bie &lt;&gt; "0"
+                T3.ji_bie = "1"  OR T3.ji_bie = "2"
             <if test="unionId !=null and unionId !=''">
                 AND T1.union_id = #{unionId}
             </if>
@@ -538,6 +571,9 @@
             <if test="couponIsUsed !=null and couponIsUsed !=''">
                 AND coupon_is_used = #{couponIsUsed}
             </if>
+            <if test="stationId !=null and stationId !=''">
+                AND station_id = #{stationId}
+            </if>
         </where>
     </select>
 
@@ -627,6 +663,7 @@
             T1.coupon_is_used,
             T1.get_coupon_time,
             T1.coupon_effective_time,
+            T1.verification_time,
             T3.issue_name,
             T2.station_id,
             T2.oil_name,