diff --git a/mallinkPosApi/src/main/java/com/iformall/service/impl/PosServiceImpl.java b/mallinkPosApi/src/main/java/com/iformall/service/impl/PosServiceImpl.java index f9e45bca5..d7b4744c9 100644 --- a/mallinkPosApi/src/main/java/com/iformall/service/impl/PosServiceImpl.java +++ b/mallinkPosApi/src/main/java/com/iformall/service/impl/PosServiceImpl.java @@ -1103,10 +1103,25 @@ public class PosServiceImpl implements PosService { // 核销取消 if (couponOrderCVo.getCouponOrderStatus().equals(EnumCouponOrderStatus.COUPON_ORDER_USED.getCode()) && actionType.equals(EnumPosActionType.VERIFY_CANCEL)) { + // 检查是否有发放的券, 有则无法退券 + /* + try { + cancelVerify(couponOrderCVo, buUserId, posOrderId); + retMap.put(WxPayConstant.CANCEL, WxPayConstant.TRUE); + return retMap; + } catch (MallinkException e) { + logger.error(e.getMessage()); + throw new MallinkException(e.getErrorCode(), e.getMessage()); + } + */ logger.info("券已被核销无法取消: " + couponOrderIdStr); retMap.put(WxPayConstant.CANCEL, WxPayConstant.FALSE); - String errMessage = String.format("此券核销后无法退回,原价:%s元, 售价:%s元", coupon.getPriceStr(), couponOrderCVo.getCouponPriceStr()); - // TODO 系统发放的券 + Map cancelMap = new HashMap(); + cancelMap.put(WxPayConstant.PRICE, coupon.getPrice()); + cancelMap.put(WxPayConstant.SALE_PRICE, coupon.getSalePrice()); + retMap.put(WxPayConstant.CANCEL_JSON, JSON.toJSONString(cancelMap)); + String errMessage = String.format("此券核销后无法退回,原价:%s元, 售价:%s元", coupon.getPriceStr(), coupon.getSalePriceStr()); + // TODO 系统发放的券, 也加入核销信息中 retMap.put(WxPayConstant.CANCEL_DES, errMessage); return retMap; } diff --git a/mallinkService/src/main/java/com/iformall/pay/WxPayConstant.java b/mallinkService/src/main/java/com/iformall/pay/WxPayConstant.java index 4bab9a5b9..cead3f3d1 100644 --- a/mallinkService/src/main/java/com/iformall/pay/WxPayConstant.java +++ b/mallinkService/src/main/java/com/iformall/pay/WxPayConstant.java @@ -54,6 +54,7 @@ public class WxPayConstant { public final static String VERIFY = "verify"; public final static String PAY = "pay"; public final static String CANCEL = "cancel"; + public final static String CANCEL_JSON = "cancel_json"; public final static String CANCEL_DES = "cancel_des"; public final static String REG_QRCODE_URL = "qrcode_url";