jk-GitHub-coder 3 år sedan
förälder
incheckning
bc9312fd3d

+ 85 - 50
YijiaRestful/src/main/java/com/platform/yijia/controller/CouponController.java

@@ -214,7 +214,7 @@ public class CouponController {
                     Integer stationId = cu.getStationId();
                     UserCoupon coupon = new UserCoupon();
                     coupon.setCouponNo(couponNo);
-                    coupon.setUnionId(unionId);
+                    //coupon.setUnionId(unionId);
                     UserCoupon couponInfo = couponService.selectUserCouponInfo(coupon);
                     if(couponInfo !=null){
                         String verification = couponInfo.getVerification();
@@ -278,6 +278,9 @@ public class CouponController {
                     if(couponIsUsed.equals("2")){
                         userCoupon.setCouponIsUsed("0");
                         userCoupon.setExpireFlag("1");
+                    }else if(couponIsUsed.equals("1")){
+                        //表示已使用
+                        userCoupon.setExpireFlag("2");
                     }
                     if(stationInfos.getCouponFlag() !=null && stationInfos.getCouponFlag().equals("1")){
                         userCoupon.setStationId(stationInfos.getGroupId());
@@ -529,65 +532,97 @@ public class CouponController {
                     if(userCouponInfo.getCouponIsUsed().equals("0")){
                         //判断当前优惠券是否是异业券
                         if(userCouponInfo.getCouponType().equals("3")){
-                            //核销人信息
-                            CouponVerificationUser couponVerificationUser = new CouponVerificationUser();
-                            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(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;
+
+                            //时间类型
+                            String availableControl = userCouponInfo.getAvailableControl();
+                            //判断日期标志
+                            boolean boo = false;
+                            switch (availableControl){
+                                case "0":   //一直可用
+                                    boolean before = new Date().before(userCouponInfo.getCouponEffectiveTime());
+                                    if (before)
+                                        boo =true;
+                                    break;
+                                case "1":   //每周周几
+                                    boolean activityDay_1 = this.isActivityDay("1", userCouponInfo.getCycleDays());
+                                    if(activityDay_1)
+                                        boo = true;
+                                    break;
+                                case "2":   //每月几号
+                                    boolean activityDay_2 = this.isActivityDay("2", userCouponInfo.getCycleDays());
+                                    if(activityDay_2)
+                                        boo = true;
+                                    break;
+                                case "3":   //固定日期
+                                    boolean activityDay_3 =this.isActivityDay("3", userCouponInfo.getAppointedDays());
+                                    if(activityDay_3)
+                                        boo = true;
+                                    break;
+                            }
+                            if(boo){
+                                //核销人信息
+                                CouponVerificationUser couponVerificationUser = new CouponVerificationUser();
+                                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(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;
+                                            }
                                         }
-                                    }
-                                    //是否能在该核销点核销
-                                    Integer stationIdVerification = cu.getStationId();              //核销人员所在核销点
-                                    if(verification.contains(verificationId) || stationIdVerification.toString().equals(stationIdCoupon.toString())){
+                                        //是否能在该核销点核销
+                                        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 if(verificationId.equals(stationIdCoupon.toString())){
-                                    //如果当前异业券没有核销站点,则为油站设置自己兑换券
-                                    userCoupon.setCouponIsUsed("1");
-                                    couponService.updateCouponUserInfo(userCoupon);
-                                    resultData = ResultData.success("核销成功!");
                                 }else {
-                                    //当前异业券不能在此异业端核销
-                                    resultData = ResultData.error(CodeMsg.ERROR_VERIFICATION);
+                                    //此人不是核销人员
+                                    resultData = ResultData.error(CodeMsg.NOT_COUPON_VERIFICATION_USER);
                                 }
                             }else {
-                                //此人不是核销人员
-                                resultData = ResultData.error(CodeMsg.NOT_COUPON_VERIFICATION_USER);
+                                //不是兑换券
+                                resultData = ResultData.error(CodeMsg.ERROR_COUPON_DATE);
                             }
                         }else{
                             //不是兑换券

+ 90 - 4
YijiaRestful/src/main/java/com/platform/yijia/controller/ElectronicMembershipCardController.java

@@ -322,7 +322,7 @@ public class ElectronicMembershipCardController {
     @RequestMapping(value = "/dzkPaySet", method = RequestMethod.GET)
     @ResponseBody
     @Transactional
-    public  String dzkPaySet(@RequestParam String ordNo, Integer id) throws ParseException {
+    public  String dzkPaySet(@RequestParam String ordNo, String id) throws ParseException {
         Gson gson =new Gson();
         ResultData resultData =null;
         if(ordNo !=null){
@@ -422,9 +422,9 @@ public class ElectronicMembershipCardController {
                     BigDecimal amtNew = new BigDecimal(dzkAmt);
                     BigDecimal discountAmtNew = new BigDecimal(discountAmt);
                     //获取该优惠券
-                    if(id !=null){
+                    if(StringUtils.isNotBlank(id) && !id.equals("undefined")){
                         UserCoupon userCoupon = new UserCoupon();
-                        userCoupon.setId(id);
+                        userCoupon.setId(Integer.valueOf(id));
                         UserCoupon ucResult = couponService.selectUserCouponInfo(userCoupon);
                         if(ucResult !=null){
                             payOrder.setDiscountCoupon(ucResult.getId().toString());
@@ -468,9 +468,19 @@ public class ElectronicMembershipCardController {
                             }
                         }
 
+                        UserCoupon userCoupon_p = new UserCoupon();
+                        userCoupon_p.setCouponIsUsed("1");
+                        //String discountCoupon = infoMap.get("discountCoupon").toString();
+                        userCoupon_p.setId(Integer.valueOf(id));
+                        userCoupon_p.setCreateTime(new Date());
+                        userCoupon_p.setVerificationTime(new Date());
+                        userCoupon_p.setMobilePhone(mobilePhone);
+                        couponService.updateCouponUserInfo(userCoupon_p);
+
+
                         //更新该优惠券的使用数量
                         UserCoupon u = new UserCoupon();
-                        u.setId(id);
+                        u.setId(Integer.valueOf(id));
                         UserCoupon userCouponInfo = couponService.selectUserCouponInfo(u);
                         Coupon coupon_up = new Coupon();
                         coupon_up.setCouponId(userCouponInfo.getCouponId());
@@ -485,6 +495,11 @@ public class ElectronicMembershipCardController {
                     //BigDecimal discountAmt = new BigDecimal(receivableAmt).subtract(new BigDecimal(dzkAmt));
                     //payOrder.setDiscountAmt(Double.valueOf(discountAmt));
                     payOrderService.getUpdatePayOrder(payOrder);
+
+                    if(stationInfos.getCouponEnabledFlag() !=null && stationInfos.getCouponEnabledFlag().equals("1")){
+                        this.drawCoupon(resultMap);
+                    }
+
                     //插入集团客户信息
                     //insertCustomerGroup(resultMap);
                     //更新客户表
@@ -689,6 +704,77 @@ public class ElectronicMembershipCardController {
         return gson.toJson(resultData);
     }
 
+    //主动领取
+    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(c.getCouponId());    //优惠券模板ID
+                                userCouponParam.setStationId(stationId);        //油站ID
+                                userCouponParam.setCouponIsEffective("1");      //优惠券是否有效
+                                userCouponParam.setGetCouponTime(new Date());   //优惠券领取时间
+                                String effectiveTimeType = c.getEffectiveTimeType();
+                                //'有效时间类型: 1,固定时间;2,领取后x天内有效'
+                                switch (effectiveTimeType) {
+                                    case "1":
+                                        userCouponParam.setCouponEffectiveTime(c.getEffectiveTimeEnd());  //优惠券有效期截止时间
+                                        break;
+                                    case "2":
+                                        Calendar calendar = Calendar.getInstance();
+                                        calendar.setTime(userCouponParam.getGetCouponTime());
+                                        calendar.add(Calendar.DATE, c.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);
+                            }
+                        }
+                    }
+                }
+            }
+        }
+    }
+
     //POS机打印小票
     public void posPrintReceipt(PayOrder payOrder){
         Map<String, Object> infoMap = payOrderService.getOrderInfoAndUserInfoByOrderNo(payOrder);

+ 13 - 8
YijiaRestful/src/main/java/com/platform/yijia/controller/PayController.java

@@ -190,10 +190,11 @@ public class PayController {
                     if(payOrder.getStatus() !=null && payOrder.getStatus().equals("0")){
                         //是否开启优惠券功能
                         if(stationInfos.getCouponEnabledFlag() !=null && stationInfos.getCouponEnabledFlag().equals("1")){
-                            Integer id = payInfoRequest.getId();
-                            if(id !=null){
+                            if(StringUtils.isNotBlank(payInfoRequest.getId()) && !payInfoRequest.getId().equals("undefined")){
+                                String id = payInfoRequest.getId();
+                                logger.info("优惠券ID:" + id);
                                 UserCoupon userCoupon = new UserCoupon();
-                                userCoupon.setId(id);
+                                userCoupon.setId(Integer.valueOf(id));
                                 UserCoupon ucResult = couponService.selectUserCouponInfo(userCoupon);
                                 if(ucResult !=null){
                                     PayOrder p =new PayOrder();
@@ -255,8 +256,10 @@ public class PayController {
                                     discountAmtNew = discountAmtNew.signum() == -1 ? new BigDecimal("0.01") : discountAmtNew.setScale(2,BigDecimal.ROUND_HALF_UP);
                                     p.setAmt(Double.valueOf(amtNew.toString()));
                                     p.setDiscountAmt(Double.valueOf(discountAmtNew.toString()));
-                                    p.setDiscountCoupon(id.toString());
+                                    p.setDiscountCoupon(id);
+                                    p.setOrderNo(ordNo);
                                     payOrderService.getUpdatePayOrder(p);
+                                    logger.info("优惠券更新完成!");
                                 }
                             }
                         }
@@ -264,6 +267,7 @@ public class PayController {
                         //将业务参数存放在 JSON 对象中
                         JSONObject reqData = new JSONObject();
                         PayOrder payOrderNew=payOrderService.selectOrderInfoByOrdNo(ordNo);
+                        logger.info("使用优惠券后的金额:" + payOrderNew.getAmt());
                         reqData.put("ordNo", payOrder.getOrderNo()); //商户订单号
                         //reqData.put("subMechId", ""); //子商户号
                         reqData.put("amt", payOrderNew.getAmt()); //订单总金额
@@ -987,6 +991,7 @@ public class PayController {
                                         userCoupon.setId(Integer.valueOf(discountCoupon));
                                         userCoupon.setCreateTime(new Date());
                                         userCoupon.setVerificationTime(new Date());
+                                        userCoupon.setMobilePhone(infoMap.get("mobilePhone").toString());
                                         couponService.updateCouponUserInfo(userCoupon);
 
                                         //更新该优惠券的使用数量
@@ -1372,20 +1377,20 @@ public class PayController {
                                 userCouponParam.setCouponNo(s1);                //优惠券编码
                                 userCouponParam.setUnionId(unionId);            //用户unionId
                                 userCouponParam.setIssueId(couponIssueId);      //领取方式ID
-                                userCouponParam.setCouponId(coupon.getCouponId());    //优惠券模板ID
+                                userCouponParam.setCouponId(c.getCouponId());    //优惠券模板ID
                                 userCouponParam.setStationId(stationId);        //油站ID
                                 userCouponParam.setCouponIsEffective("1");      //优惠券是否有效
                                 userCouponParam.setGetCouponTime(new Date());   //优惠券领取时间
-                                String effectiveTimeType = coupon.getEffectiveTimeType();
+                                String effectiveTimeType = c.getEffectiveTimeType();
                                 //'有效时间类型: 1,固定时间;2,领取后x天内有效'
                                 switch (effectiveTimeType) {
                                     case "1":
-                                        userCouponParam.setCouponEffectiveTime(coupon.getEffectiveTimeEnd());  //优惠券有效期截止时间
+                                        userCouponParam.setCouponEffectiveTime(c.getEffectiveTimeEnd());  //优惠券有效期截止时间
                                         break;
                                     case "2":
                                         Calendar calendar = Calendar.getInstance();
                                         calendar.setTime(userCouponParam.getGetCouponTime());
-                                        calendar.add(Calendar.DATE, coupon.getEffectiveDayNum());     //领取后多少天有效
+                                        calendar.add(Calendar.DATE, c.getEffectiveDayNum());     //领取后多少天有效
                                         userCouponParam.setCouponEffectiveTime(calendar.getTime());   //优惠券有效期截止时间
                                         break;
                                 }

+ 8 - 2
YijiaRestful/src/main/java/com/platform/yijia/controller/PayOrderController.java

@@ -145,7 +145,7 @@ public class PayOrderController {
                         resultMap.put("oilLiters", "0");
                         resultMap.put("discountPrice", "0");
                         resultMap.put("ordNo", ordNo);
-                        logger.info("返回前端的结果:" +resultMap.toString());
+                        //logger.info("返回前端的结果:" +resultMap.toString());
                         //payOrderMapper.insertSelective(payOrder);
                     }else {
                         //PayOrderResultInfo payOrderResultInfo = this.calculateAmt(payOrderRequest); //计算订单金额 价格 加油升数 等等
@@ -268,6 +268,7 @@ public class PayOrderController {
 //                            payOrder.setOilPersonnel(mapResultList.get(0).get("").toString());   //加油员
 //                            payOrder.setOilPersonnelId(oilPersonnelId.substring(0, oilPersonnelId.length()-1));
                             payOrderMapper.insertSelective(payOrder);
+                            logger.info("返回前端的结果:" +resultMap.toString());
                             resultData = ResultData.success(resultMap);
                         }else {
                             resultData = ResultData.error(CodeMsg.NO_PERSONNAL);
@@ -677,6 +678,7 @@ public class PayOrderController {
             payOrderResultInfo.setBalance(map.get("balance"));
             payOrderResultInfo.setOilsCardFlag(map.get("oilsCardFlag"));
             payOrderResultInfo.setCardOilsType(map.get("cardOilsType"));
+            payOrderResultInfo.setDzkDiscountPrice(oilPrice.toString());
         }
         return payOrderResultInfo;
     }
@@ -832,7 +834,7 @@ public class PayOrderController {
             payOrderResultInfo.setBalance(map.get("balance"));
             payOrderResultInfo.setOilsCardFlag(map.get("oilsCardFlag"));
             payOrderResultInfo.setCardOilsType(map.get("cardOilsType"));
-
+            payOrderResultInfo.setDzkDiscountPrice(oilPrice.toString());
             String dzkAmt = payOrderResultInfo.getDzkAmt();
             if(oilLiters.toString().equals("0.00")){
                 payOrderResultInfo.setDzkDiscountPrice(oilPrice.toString());
@@ -1030,6 +1032,7 @@ public class PayOrderController {
             payOrderResultInfo.setOilsCardFlag(map.get("oilsCardFlag"));
             payOrderResultInfo.setCardOilsType(map.get("cardOilsType"));
             String dzkAmt = payOrderResultInfo.getDzkAmt();
+            payOrderResultInfo.setDzkDiscountPrice(oilPrice.toString());
             if(oilLiters.toString().equals("0.00")){
                 payOrderResultInfo.setDzkDiscountPrice(oilPrice.toString());
             }else {
@@ -1171,6 +1174,7 @@ public class PayOrderController {
             payOrderResultInfo.setOilsCardFlag(map.get("oilsCardFlag"));
             payOrderResultInfo.setCardOilsType(map.get("cardOilsType"));
             String dzkAmt = payOrderResultInfo.getDzkAmt();
+            payOrderResultInfo.setDzkDiscountPrice(oilPrice.toString());
             if(oilLiters.toString().equals("0.00")){
                 payOrderResultInfo.setDzkDiscountPrice(oilPrice.toString());
             }else {
@@ -1316,6 +1320,7 @@ public class PayOrderController {
             payOrderResultInfo.setOilsCardFlag(map.get("oilsCardFlag"));
             payOrderResultInfo.setCardOilsType(map.get("cardOilsType"));
             String dzkAmt = payOrderResultInfo.getDzkAmt();
+            payOrderResultInfo.setDzkDiscountPrice(oilPrice.toString());
             if(oilLiters.toString().equals("0.00")){
                 payOrderResultInfo.setDzkDiscountPrice(oilPrice.toString());
             }else {
@@ -1436,6 +1441,7 @@ public class PayOrderController {
             payOrderResultInfo.setOilsCardFlag(map.get("oilsCardFlag"));
             payOrderResultInfo.setCardOilsType(map.get("cardOilsType"));
             String dzkAmt = payOrderResultInfo.getDzkAmt();
+            payOrderResultInfo.setDzkDiscountPrice(oilPrice.toString());
             if(oilLiters.toString().equals("0.00")){
                 payOrderResultInfo.setDzkDiscountPrice(oilPrice.toString());
             }else {

+ 3 - 3
YijiaRestful/src/main/java/com/platform/yijia/param/request/PayInfoRequest.java

@@ -3,7 +3,7 @@ package com.platform.yijia.param.request;
 public class PayInfoRequest {
 
     //订单信息
-    private Integer id;         //优惠券ID
+    private String id;         //优惠券ID
     private String openId;//openId
     private String oilGun;//油枪
     private String oilName;//油品
@@ -18,11 +18,11 @@ public class PayInfoRequest {
     private String payType;
     private String payChannelType;      //支付通道类型
 
-    public Integer getId() {
+    public String getId() {
         return id;
     }
 
-    public void setId(Integer id) {
+    public void setId(String id) {
         this.id = id;
     }
 

+ 3 - 0
YijiaRestful/src/main/java/com/platform/yijia/utils/CodeMsg.java

@@ -55,6 +55,9 @@ public class CodeMsg {
     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 ERROR_COUPON_DATE = new CodeMsg(-2,"当前异业券不在使用日期内");
+
+
 
 
     private CodeMsg(int retCode, String message) {

+ 2 - 2
YijiaRestful/src/main/resources/application.yml

@@ -19,7 +19,7 @@ yijia:
     domainName: mp.huijy.net
     # 路径前缀 test:测试; api:生产一线;prod:生产二线; demo:演示;
     path:
-        global-prefix: test
+        global-prefix: demo
 
 
 # POS机登录解密密文密码
@@ -44,7 +44,7 @@ swagger2:
 spring:
     datasource:
 #        url: jdbc:mysql://47.105.116.204:3306/jiaduoduo_db_prod?useUnicode=true&characterEncoding=utf8&nullCatalogMeansCurrent=true&serverTimezone=GMT%2b8&useSSL=true
-        url: jdbc:mysql://115.28.211.17:3306/jiaduoduo_db_test?useUnicode=true&characterEncoding=utf8&nullCatalogMeansCurrent=true&serverTimezone=GMT%2b8&useSSL=true
+        url: jdbc:mysql://115.28.211.17:3306/jiaduoduo_db_demo?useUnicode=true&characterEncoding=utf8&nullCatalogMeansCurrent=true&serverTimezone=GMT%2b8&useSSL=true
         username: develop
         password: 1234.Abcd
         driver-class-name: com.mysql.cj.jdbc.Driver

+ 14 - 2
YijiaRestful/src/main/resources/mapper/CouponMapper.xml

@@ -153,7 +153,7 @@
     </resultMap>
 
   <sql id="UserCoupon_Base_Column_List">
-    T1.id, T1.coupon_is_used, T1.coupon_no, T2.id AS coupon_id, T2.station_id, T2.coupon_name, T2.coupon_remark, T2.coupon_type, T2.coupon_threshold_amt, T2.oil_name, T2.oil_type, T2.coupon_amt, T2.effective_time_type,
+    T1.id, T1.coupon_is_used, T1.coupon_no, T1.coupon_effective_time, T1.get_coupon_time, T1.coupon_is_used, T2.id AS coupon_id, T2.station_id, T2.coupon_name, T2.coupon_remark, T2.coupon_type, T2.coupon_threshold_amt, T2.oil_name, T2.oil_type, T2.coupon_amt, T2.effective_time_type,
     T2.effective_time_start, T2.effective_time_end, T2.effective_day_num, T2.coupon_cumulative_num, T2.coupon_use_num,
     T2.open_platform, T2.status, T2.create_by, T2.create_time, T2.update_by, T2.update_time, T2.del_flag, T2.coupon_details, T2.verification,
     T2.is_card_flag, T2.is_grade_flag, T2.is_market_flag, T2.edit_flag, T2.available_control, T2.appointed_days, T2.cycle_days
@@ -261,6 +261,7 @@
             T3.coupon_hold_num,
             T3.coupon_cumulative_num,
             T3.coupon_use_num,
+            T3.coupon_num,
             T3.coupon_remark,
             T3.open_platform,
             T3.coupon_details,
@@ -381,7 +382,9 @@
             <if test="verificationTime != null">
                 verification_time = #{verificationTime},
             </if>
-
+            <if test="mobilePhone != null">
+                verification_user_phone = #{mobilePhone}
+            </if>
         </set>
         <where>
             <if test="unionId !=null and unionId !=''">
@@ -641,11 +644,19 @@
             AND FIND_IN_SET(#{oilName}, T2.oil_name)
         </if>
       <choose>
+          <!--未使用 按照获取优惠券时间排序-->
           <when test="expireFlag !=null and expireFlag == '0'.toString()">
               AND T1.coupon_effective_time &gt;= #{currentTime}
+              ORDER BY T1.get_coupon_time DESC
           </when>
+          <!--已过期 按照有效截止时间排序-->
           <when test="expireFlag !=null and expireFlag == '1'.toString()">
               AND T1.coupon_effective_time &lt; #{currentTime}
+              ORDER BY T1.coupon_effective_time  DESC
+          </when>
+          <!--已使用 按照核销时间排序-->
+          <when test="expireFlag !=null and expireFlag == '2'.toString()">
+              ORDER BY T1.verification_time DESC
           </when>
       </choose>
     </where>
@@ -718,6 +729,7 @@
                 AND FIND_IN_SET(#{oilName}, T2.oil_name)
             </if>
         </where>
+        ORDER BY T1.verification_time DESC
     </select>
 
     <!--用户获取优惠券-->