| @@ -113,11 +113,10 @@ public class WxCardPayController extends BaseController { | |||
| return new ResultData(mapList); | |||
| } | |||
| @ApiOperation(value = "微信B端扫储值卡码支付订单", notes = "params:{\"cardId\":\"String\",\"cUserId\":\"String\",\"totalFee\":\"String(元)\"}") | |||
| @ApiOperation(value = "微信B端扫储值卡码支付订单", notes = "params:{\"cardId\":\"String\",\"totalFee\":\"String(元)\"}") | |||
| @PostMapping("scanCard") | |||
| public ResultData scanCard(@RequestBody Map<String, String> paramMap, HttpServletRequest request) { | |||
| String cardIdStr = paramMap.get("cardId"); | |||
| String cUserIdStr = paramMap.get("cUserId"); | |||
| String totalFeeStr = paramMap.get("totalFee"); | |||
| if (StringUtils.isBlank(cardIdStr) || cardIdStr.equalsIgnoreCase(Constant.UNDEFINED)) { | |||
| @@ -137,13 +136,13 @@ public class WxCardPayController extends BaseController { | |||
| if (expiredtime.before(new Date())) { | |||
| return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(),"码已失效,请更新二维码后重试"); | |||
| } | |||
| String cUserIdStr = decodeids[2]; | |||
| if (StringUtils.isBlank(cUserIdStr) || cUserIdStr.equalsIgnoreCase(Constant.UNDEFINED)) { | |||
| logger.error("cUserId不能为空"); | |||
| return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "cUserId不能为空"); | |||
| } | |||
| return saveECardCardPayOrder(cardIdStr,cUserIdStr,totalFeeStr); | |||
| }else { | |||
| return savePasswordCardPayOrder(cardIdStr,cUserIdStr,totalFeeStr); | |||
| return savePasswordCardPayOrder(cardIdStr,totalFeeStr); | |||
| } | |||
| } | |||
| @@ -172,7 +171,7 @@ public class WxCardPayController extends BaseController { | |||
| return saveCardPayOrder(cUserId,cardInfo,merchantBUser,totalFeeStr,EnumPayWay.PAY_WAY_WECHAT); | |||
| } | |||
| public ResultData savePasswordCardPayOrder(String cardIdStr,String cUserIdStr,String totalFeeStr) { | |||
| public ResultData savePasswordCardPayOrder(String cardIdStr,String totalFeeStr) { | |||
| Long cardId = null; | |||
| try { | |||
| cardId = Long.valueOf(cardIdStr); | |||
| @@ -223,7 +223,7 @@ public class WxCouponOrderController extends BaseController { | |||
| } | |||
| Map retmap = new HashMap(); | |||
| retmap.put("dynamicId", WxCouponOrderCVo.calcuteExpiredCouponOrderId(couponOrderId,Integer.parseInt(sysConfig.getConfigItemValue()))); | |||
| retmap.put("dynamicId", WxCouponOrderCVo.calcuteExpiredCouponOrderId(couponOrderId,Integer.parseInt(sysConfig.getConfigItemValue()),null)); | |||
| retmap.put("expiredSeconds", Integer.parseInt(sysConfig.getConfigItemValue())); | |||
| retmap.put("couponTenantId", couponTenantId); | |||
| return new ResultData(retmap); | |||
| @@ -363,9 +363,10 @@ public class WxCouponOrderController extends BaseController { | |||
| @GetMapping("cardDynamicId") | |||
| @ApiImplicitParams({ | |||
| @ApiImplicitParam(name = "cardId", value = "卡ID", dataType = "string", paramType = "query", required = true), | |||
| @ApiImplicitParam(name = "cardTenantId", value = "券tenantID", dataType = "string", paramType = "query", required = false) | |||
| @ApiImplicitParam(name = "cardTenantId", value = "券tenantID", dataType = "string", paramType = "query", required = true), | |||
| @ApiImplicitParam(name = "cUserId", value = "会员ID", dataType = "string", paramType = "query", required = true) | |||
| }) | |||
| public ResultData cardDynamicId(String cardId,String cardTenantId) { | |||
| public ResultData cardDynamicId(String cardId,String cardTenantId,String cUserId) { | |||
| if (StringUtils.isBlank(cardId) || cardId.equalsIgnoreCase(Constant.UNDEFINED)) { | |||
| return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); | |||
| @@ -377,7 +378,7 @@ public class WxCouponOrderController extends BaseController { | |||
| } | |||
| Map retmap = new HashMap(); | |||
| retmap.put("dynamicId", WxCouponOrderCVo.calcuteExpiredCouponOrderId(cardId,Integer.parseInt(sysConfig.getConfigItemValue()))); | |||
| retmap.put("dynamicId", WxCouponOrderCVo.calcuteExpiredCouponOrderId(cardId,Integer.parseInt(sysConfig.getConfigItemValue()),cUserId)); | |||
| retmap.put("expiredSeconds", Integer.parseInt(sysConfig.getConfigItemValue())); | |||
| retmap.put("cardTenantId", cardTenantId); | |||
| return new ResultData(retmap); | |||
| @@ -166,18 +166,20 @@ public class WxCouponOrderCVo extends WxCouponOrder { | |||
| public static final String arg = "&"; | |||
| public static String calcuteExpiredCouponOrderId(String couponOrderId,int expiredSeconds) { | |||
| public static String calcuteExpiredCouponOrderId(String couponOrderId,int expiredSeconds,String cUserId) { | |||
| if (StringUtils.isBlank(couponOrderId)) { | |||
| return null; | |||
| } | |||
| StringBuffer sb = new StringBuffer().append(couponOrderId); | |||
| if (expiredSeconds > 0 ) { | |||
| sb.append(arg).append(DateUtils.date2String(DateUtils.getSecondsTimeAfter(expiredSeconds, new Date()))); | |||
| return Base64Util.encode(sb.toString().getBytes()); | |||
| }else { | |||
| sb.append(arg).append(DateUtils.date2String(DateUtils.getSecondsTimeAfter(Integer.MAX_VALUE, new Date()))); | |||
| return Base64Util.encode(sb.toString().getBytes()); | |||
| } | |||
| if (StringUtils.isNotBlank(cUserId)) { | |||
| sb.append(arg).append(cUserId); | |||
| } | |||
| return Base64Util.encode(sb.toString().getBytes()); | |||
| } | |||
| public static String getDecodeExpiredCouponOrderId(String couponOrderId) { | |||
| @@ -188,6 +190,6 @@ public class WxCouponOrderCVo extends WxCouponOrder { | |||
| } | |||
| public static void main(String[] args) { | |||
| System.out.println(calcuteExpiredCouponOrderId("632830267681071104",300)); | |||
| System.out.println(calcuteExpiredCouponOrderId("632830267681071104",300,"632830267681071104")); | |||
| } | |||
| } | |||