From 36b14919f2caf0d27fe6107dc81759e86c470a4b Mon Sep 17 00:00:00 2001 From: zhengfangyuan Date: Tue, 9 Aug 2022 19:15:54 +0800 Subject: [PATCH] fix pay v3 --- .../controller/app/WxAppinfoController.java | 19 +- .../controller/market/WxOrderController.java | 2 +- .../controller/rent/WxBillAllController.java | 10 + .../db/migration/V2022080800001_pay_v3.sql | 404 ++++++++++++++++++ .../iformall/controller/BaseController.java | 9 + .../WxCouponPasswordController.java | 6 +- .../controller/WxOrderController.java | 9 +- .../interceptor/AuthorizationInterceptor.java | 1 + .../controller/callback/TtPayController.java | 1 + .../callback/WxPayBillController.java | 3 +- .../controller/callback/WxPayController.java | 3 +- .../iformall/service/impl/PosServiceImpl.java | 1 + .../schedule/TtOrderQueryCpsSchedule.java | 1 + .../java/com/iformall/common/ErrorCode.java | 1 + .../com/iformall/domain/po/WxBatchOrder.java | 2 + .../com/iformall/domain/po/WxCouponOrder.java | 2 + .../java/com/iformall/domain/po/WxOrder.java | 8 +- .../com/iformall/domain/po/WxPayOrder.java | 2 + .../domain/po/base/BaseCUserEntity.java | 11 + .../msg/FmInsideNotifyRefundSuccessMsg.java | 5 +- .../iformall/domain/vo/WxOrderPayExpVo.java | 1 + .../com/iformall/domain/vo/WxOrderPayVo.java | 1 + .../com/iformall/enums/EnumComposeOrder.java | 2 +- .../com/iformall/enums/EnumPayVersion.java | 4 +- .../com/iformall/service/QrCodeService.java | 7 +- .../iformall/service/WxAppinfoService.java | 2 + .../service/WxCouponChannelService.java | 2 +- .../com/iformall/service/WxOrderService.java | 14 +- .../iformall/service/WxPayOrderService.java | 5 +- .../service/WxProfitSharingOrderService.java | 2 +- .../service/WxRefundOrderService.java | 3 +- .../cuser/tt/TtBUserServiceAdapter.java | 4 + .../cuser/tt/TtCUserServiceAdapter.java | 7 +- .../cuser/wx/WxBUserServiceAdapter.java | 4 + .../cuser/wx/WxCUserServiceAdapter.java | 8 +- .../service/impl/QrCodeServiceImpl.java | 13 +- .../service/impl/WxAppinfoServiceImpl.java | 17 + .../service/impl/WxCashOutServiceImpl.java | 2 +- .../impl/WxCouponChannelServiceImpl.java | 8 +- .../impl/WxCouponOrderServiceImpl.java | 10 +- .../service/impl/WxMerchantServiceImpl.java | 4 +- .../service/impl/WxOrderServiceImpl.java | 69 ++- .../service/impl/WxPayOrderServiceImpl.java | 14 +- .../impl/WxProfitSharingOrderServiceImpl.java | 6 +- .../impl/WxRefundOrderServiceImpl.java | 4 +- ...sideNotifyRefundSuccessMsgServiceImpl.java | 3 +- .../batch/BaseBatchOrderAdapterService.java | 1 + .../java/com/iformall/utils/Constant.java | 1 + .../resources/mapper/WxBatchOrderMapper.xml | 9 +- .../main/resources/mapper/WxBillAllMapper.xml | 2 +- .../resources/mapper/WxCouponOrderMapper.xml | 31 +- .../main/resources/mapper/WxOrderMapper.xml | 17 +- .../resources/mapper/WxPayOrderMapper.xml | 10 +- 53 files changed, 680 insertions(+), 107 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/app/WxAppinfoController.java b/mallinkAdmin/src/main/java/com/iformall/controller/app/WxAppinfoController.java index defc48ac1..7de072c6e 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/app/WxAppinfoController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/app/WxAppinfoController.java @@ -9,6 +9,7 @@ import com.iformall.domain.po.WxAppinfo; import com.iformall.domain.po.WxCouponChannel; import com.iformall.domain.po.WxMerchant; import com.iformall.enums.EnumAppPlat; +import com.iformall.enums.EnumPayVersion; import com.iformall.enums.EnumPayWay; import com.iformall.exception.MallinkException; import com.iformall.mapper.WxCouponChannelMapper; @@ -67,14 +68,14 @@ public class WxAppinfoController extends BaseController { public void run() { String param = merchant.getWeappScene(); if(StringUtils.isBlank(merchant.getQrCode())){ - ResultData wxQrCode = qrCodeService.uploadQrcode(merchant, 1, pageUrl, param, 0, "", "", "WX店铺"+merchant.getId().toString(),EnumAppPlat.WX); + ResultData wxQrCode = qrCodeService.uploadQrcode(merchant, 1, pageUrl, param, 0, "", "", "WX店铺"+merchant.getId().toString(),EnumAppPlat.WX,EnumPayVersion.WX_PAY_V2); Map wxMap = (Map) wxQrCode.data; if(wxMap != null && wxMap.get("url") != null) { merchant.setQrCode(wxMap.get("url")); } } if(StringUtils.isBlank(merchant.getTtQrCode())){ - ResultData ttQrCode = qrCodeService.uploadQrcode(merchant, 1, pageUrl, param, 0, "", "", "TT店铺"+merchant.getId().toString(),EnumAppPlat.TOUTIAO); + ResultData ttQrCode = qrCodeService.uploadQrcode(merchant, 1, pageUrl, param, 0, "", "", "TT店铺"+merchant.getId().toString(),EnumAppPlat.TOUTIAO,EnumPayVersion.DY_PAY_V2); Map ttMap = (Map) ttQrCode.data; if(ttMap != null && ttMap.get("url") != null) { merchant.setTtQrCode(ttMap.get("url")); @@ -106,14 +107,14 @@ public class WxAppinfoController extends BaseController { String param = couponChannel.getWeappScene(); if(StringUtils.isBlank(couponChannel.getQrCode())){ - ResultData wxQrCode = qrCodeService.uploadQrcode(couponChannel, 1, pageUrl, param, 0, "", "", "WX券"+couponChannel.getId().toString(),EnumAppPlat.WX); + ResultData wxQrCode = qrCodeService.uploadQrcode(couponChannel, 1, pageUrl, param, 0, "", "", "WX券"+couponChannel.getId().toString(),EnumAppPlat.WX,EnumPayVersion.WX_PAY_V2); Map wxMap = (Map) wxQrCode.data; if(wxMap != null && wxMap.get("url") != null) { couponChannel.setQrCode(wxMap.get("url")); } } if(StringUtils.isBlank(couponChannel.getTtQrCode())){ - ResultData ttQrCode = qrCodeService.uploadQrcode(couponChannel, 1, pageUrl, param, 0, "", "", "TT券"+couponChannel.getId().toString(),EnumAppPlat.TOUTIAO); + ResultData ttQrCode = qrCodeService.uploadQrcode(couponChannel, 1, pageUrl, param, 0, "", "", "TT券"+couponChannel.getId().toString(),EnumAppPlat.TOUTIAO,EnumPayVersion.DY_PAY_V2); Map ttMap = (Map) ttQrCode.data; if(ttMap != null && ttMap.get("url") != null) { couponChannel.setTtQrCode(ttMap.get("url")); @@ -135,6 +136,7 @@ public class WxAppinfoController extends BaseController { String pageUrl = (String) params.get("pageUrl"); String sceneParam = (String) params.get("sceneParam"); Integer platCode = (Integer) params.get("plat"); + Integer payVersion = (Integer) params.get("payVersion"); if(platCode == null){ platCode = EnumAppPlat.WX.getCode(); @@ -143,7 +145,12 @@ public class WxAppinfoController extends BaseController { if(plat == null){ plat = EnumAppPlat.WX; } - + + EnumPayVersion ePayVersion = EnumPayVersion.WX_PAY_V2; + if(payVersion != null){ + ePayVersion = EnumPayVersion.getEnum(payVersion); + } + int type = 1; try { type = (int) params.get("type"); @@ -166,7 +173,7 @@ public class WxAppinfoController extends BaseController { qrCodeService.exportQrcode(request, response, getTenantInfo(), type, pageUrl, sceneParam, withText, text1, text2, - name,plat); + name,plat,ePayVersion); } catch (Exception e) { logger.error(e.getMessage()); throw new MallinkException(Result.ERROR, "下载异常"); diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxOrderController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxOrderController.java index dacec16b8..47ff872ba 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxOrderController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxOrderController.java @@ -189,7 +189,7 @@ public class WxOrderController extends BaseController { // 免费券 WxComposeOrder composeOrder = orderFactory.getOrderAdapterService(EnumComposeOrder.SINGLE.getCode()).createDBMainOrder(coupon, user, 0, EnumPayWay.PAY_WAY_NOT_UNPAY_CREDIT); order = wxOrderService.saveFreeOrderForCoupon(new Date(),false,composeOrder,user, coupon, 1, - wxCouponChannel, orderSaveDto.getFormId(), null,null,EnumPayWay.PAY_WAY_NOT_UNPAY_CREDIT, + wxCouponChannel, orderSaveDto.getFormId(), null,null,EnumPayWay.PAY_WAY_NOT_UNPAY_CREDIT,EnumPayVersion.NO_VERSION, EnumOrderShopingType.ONLINE_PURCHASE.getCode(),null); return new ResultData(order); } catch (MallinkException e) { diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/rent/WxBillAllController.java b/mallinkAdmin/src/main/java/com/iformall/controller/rent/WxBillAllController.java index 0e6f4df18..fb0150f25 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/rent/WxBillAllController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/rent/WxBillAllController.java @@ -4,10 +4,12 @@ import com.alibaba.fastjson.JSONArray; import com.iformall.annotation.SystemControllerLog; import com.iformall.common.ResultData; import com.iformall.controller.base.BaseController; +import com.iformall.domain.po.WxMerchant; import com.iformall.domain.po.WxPayAccountBill; import com.iformall.domain.vo.WxBillAll; import com.iformall.domain.vo.WxBillExcelTemplate; import com.iformall.service.WxBillAllService; +import com.iformall.service.WxMerchantService; import com.iformall.service.WxPayAccountBillService; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; @@ -31,6 +33,9 @@ import java.util.Map; public class WxBillAllController extends BaseController { @Autowired private WxBillAllService wxBillAllService; + + @Autowired + private WxMerchantService wxMerchantService; private Logger logger = LoggerFactory.getLogger(WxBillAllController.class); @@ -85,6 +90,11 @@ public class WxBillAllController extends BaseController { @ApiImplicitParam(name = "type", value = "类型", dataType = "int", paramType = "query", required = true)}) public ResultData detail( Long id, Integer type) { Map result = wxBillAllService.detail(id, type); + Long merchantId = (Long) result.get("merchantId"); + WxMerchant merchant = wxMerchantService.getById(merchantId); + if (null != merchant) { + result.put("merchantName", merchant.getName()); + } return new ResultData(result); } diff --git a/mallinkAdmin/src/main/resources/db/migration/V2022080800001_pay_v3.sql b/mallinkAdmin/src/main/resources/db/migration/V2022080800001_pay_v3.sql index 928c3cc5a..515e51e42 100644 --- a/mallinkAdmin/src/main/resources/db/migration/V2022080800001_pay_v3.sql +++ b/mallinkAdmin/src/main/resources/db/migration/V2022080800001_pay_v3.sql @@ -1,2 +1,406 @@ ALTER TABLE `mallink`.`wx_pay_account` ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' AFTER `open_pay`; + +alter table wx_coupon_order_0 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_1 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_2 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_3 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_4 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_5 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_6 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_7 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_8 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_9 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_10 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_11 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_12 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_13 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_14 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_15 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_16 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_17 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_18 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_19 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_20 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_21 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_22 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_23 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_24 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_25 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_26 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_27 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_28 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_29 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_30 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_31 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_32 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_33 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_34 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_35 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_36 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_37 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_38 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_39 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_40 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_41 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_42 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_43 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_44 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_45 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_46 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_47 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_48 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_49 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_50 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_51 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_52 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_53 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_54 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_55 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_56 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_57 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_58 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_59 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_60 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_61 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_62 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_63 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_64 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_65 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_66 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_67 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_68 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_69 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_70 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_71 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_72 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_73 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_74 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_75 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_76 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_77 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_78 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_79 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_80 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_81 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_82 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_83 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_84 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_85 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_86 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_87 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_88 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_89 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_90 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_91 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_92 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_93 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_94 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_95 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_96 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_97 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_98 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_coupon_order_99 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; + +alter table wx_order_0 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_1 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_2 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_3 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_4 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_5 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_6 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_7 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_8 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_9 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_10 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_11 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_12 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_13 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_14 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_15 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_16 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_17 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_18 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_19 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_20 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_21 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_22 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_23 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_24 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_25 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_26 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_27 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_28 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_29 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_30 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_31 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_32 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_33 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_34 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_35 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_36 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_37 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_38 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_39 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_40 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_41 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_42 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_43 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_44 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_45 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_46 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_47 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_48 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_49 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_50 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_51 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_52 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_53 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_54 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_55 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_56 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_57 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_58 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_59 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_60 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_61 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_62 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_63 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_64 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_65 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_66 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_67 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_68 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_69 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_70 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_71 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_72 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_73 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_74 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_75 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_76 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_77 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_78 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_79 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_80 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_81 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_82 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_83 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_84 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_85 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_86 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_87 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_88 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_89 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_90 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_91 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_92 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_93 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_94 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_95 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_96 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_97 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_98 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_order_99 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; + +alter table wx_pay_order_0 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_1 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_2 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_3 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_4 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_5 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_6 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_7 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_8 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_9 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_10 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_11 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_12 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_13 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_14 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_15 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_16 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_17 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_18 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_19 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_20 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_21 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_22 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_23 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_24 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_25 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_26 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_27 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_28 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_29 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_30 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_31 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_32 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_33 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_34 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_35 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_36 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_37 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_38 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_39 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_40 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_41 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_42 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_43 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_44 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_45 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_46 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_47 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_48 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_49 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_50 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_51 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_52 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_53 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_54 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_55 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_56 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_57 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_58 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_59 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_60 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_61 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_62 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_63 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_64 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_65 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_66 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_67 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_68 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_69 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_70 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_71 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_72 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_73 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_74 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_75 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_76 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_77 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_78 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_79 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_80 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_81 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_82 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_83 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_84 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_85 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_86 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_87 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_88 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_89 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_90 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_91 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_92 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_93 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_94 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_95 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_96 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_97 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_98 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_pay_order_99 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; + +alter table wx_batch_order_0 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_1 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_2 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_3 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_4 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_5 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_6 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_7 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_8 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_9 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_10 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_11 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_12 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_13 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_14 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_15 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_16 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_17 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_18 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_19 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_20 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_21 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_22 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_23 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_24 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_25 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_26 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_27 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_28 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_29 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_30 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_31 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_32 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_33 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_34 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_35 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_36 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_37 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_38 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_39 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_40 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_41 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_42 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_43 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_44 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_45 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_46 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_47 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_48 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_49 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_50 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_51 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_52 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_53 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_54 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_55 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_56 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_57 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_58 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_59 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_60 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_61 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_62 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_63 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_64 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_65 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_66 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_67 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_68 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_69 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_70 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_71 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_72 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_73 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_74 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_75 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_76 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_77 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_78 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_79 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_80 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_81 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_82 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_83 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_84 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_85 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_86 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_87 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_88 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_89 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_90 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_91 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_92 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_93 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_94 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_95 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_96 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_97 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_98 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; +alter table wx_batch_order_99 ADD COLUMN `pay_version` smallint(1) COMMENT '支付版本' after pay_vendor; diff --git a/mallinkCApi/src/main/java/com/iformall/controller/BaseController.java b/mallinkCApi/src/main/java/com/iformall/controller/BaseController.java index 56c1d95af..b1713383c 100644 --- a/mallinkCApi/src/main/java/com/iformall/controller/BaseController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/BaseController.java @@ -125,6 +125,15 @@ public class BaseController { } return memberId; } + + public WxAppinfo getCurrentApp() { + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); + WxAppinfo appInfo = (WxAppinfo) request.getAttribute(Constant.APP_INFO); + if(appInfo == null){ + throw new MallinkException(ErrorCode.USER_APPINFO_NOT_EXIST); + } + return appInfo; + } /** * 微信端获取当前用户 wx_c_user,非会员 diff --git a/mallinkCApi/src/main/java/com/iformall/controller/WxCouponPasswordController.java b/mallinkCApi/src/main/java/com/iformall/controller/WxCouponPasswordController.java index 7b12861ba..4129907a5 100644 --- a/mallinkCApi/src/main/java/com/iformall/controller/WxCouponPasswordController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/WxCouponPasswordController.java @@ -54,10 +54,10 @@ public class WxCouponPasswordController extends BaseController { } catch (Exception e) { return new ResultData(Result.ERROR,e.getMessage()); } - return getCouponOrderByPassword(password, formId, memberId,EnumPayWay.PAY_WAY_NOT_UNPAY_PASSWD); + return getCouponOrderByPassword(password, formId, memberId,EnumPayWay.PAY_WAY_NOT_UNPAY_PASSWD,EnumPayVersion.NO_VERSION); } - private ResultData getCouponOrderByPassword(String password,String formId,Long memberId,EnumPayWay payWay) { + private ResultData getCouponOrderByPassword(String password,String formId,Long memberId,EnumPayWay payWay,EnumPayVersion payVersion) { if (StringUtils.isBlank(password) || password.equalsIgnoreCase(Constant.UNDEFINED)) { return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "password不能为空"); @@ -103,7 +103,7 @@ public class WxCouponPasswordController extends BaseController { try { WxComposeOrder composeOrder = orderFactory.getOrderAdapterService(EnumComposeOrder.SINGLE.getCode()).createDBMainOrder(coupon, member, 0, payWay); WxOrder order = orderService.saveFreeOrderForCoupon(new Date(),false,composeOrder,member, coupon, 1, - null, formId, couponPassword.getId(),null,payWay, + null, formId, couponPassword.getId(),null,payWay,payVersion, EnumOrderShopingType.ONLINE_PURCHASE.getCode(),null); } catch (MallinkException e) { setCouponPasswordStatus(couponPassword, EnumCouponPasswordStatus.getEnum(pwdStatus)); diff --git a/mallinkCApi/src/main/java/com/iformall/controller/WxOrderController.java b/mallinkCApi/src/main/java/com/iformall/controller/WxOrderController.java index d03805595..3e12c7e2e 100644 --- a/mallinkCApi/src/main/java/com/iformall/controller/WxOrderController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/WxOrderController.java @@ -114,8 +114,7 @@ public class WxOrderController extends BaseController { } catch (Exception e) { return new ResultData(Result.ERROR,e.getMessage()); } - - return wxOrderService.composeSaveOrder(false,EnumComposeOrder.PACKAGECOUPON,orderSaveDto,memberId,EnumPayWay.PAY_WAY_WECHAT,getTenantInfo()); + return wxOrderService.composeSaveOrder(false,EnumComposeOrder.PACKAGECOUPON,orderSaveDto,memberId,EnumPayWay.PAY_WAY_WECHAT,getTenantInfo(),this.getCurrentApp()); } @ApiOperation(value = "商品购物车组合下单", notes = "[{\"signleOrder\":{\"couponChannelId\":\"String\",\"couponId\":\"String\",\"press\":\"String\",\"orderGroupId\":\"String\",\"formId\":\"String\"},\"count\":8},]") @@ -127,7 +126,7 @@ public class WxOrderController extends BaseController { } catch (Exception e) { return new ResultData(Result.ERROR,e.getMessage()); } - return wxOrderService.composeSaveOrder(true,EnumComposeOrder.MULITY_NUMBER_ORDER_BATCH,orderSaveDto,memberId,EnumPayWay.PAY_WAY_WECHAT,getTenantInfo()); + return wxOrderService.composeSaveOrder(true,EnumComposeOrder.MULITY_NUMBER_ORDER_BATCH,orderSaveDto,memberId,EnumPayWay.PAY_WAY_WECHAT,getTenantInfo(),this.getCurrentApp()); } @ApiOperation(value = "券购物车组合下单", notes = "[{\"signleOrder\":{\"couponChannelId\":\"String\",\"couponId\":\"String\",\"press\":\"String\",\"orderGroupId\":\"String\",\"formId\":\"String\"},\"count\":8},]") @@ -139,7 +138,7 @@ public class WxOrderController extends BaseController { } catch (Exception e) { return new ResultData(Result.ERROR,e.getMessage()); } - return wxOrderService.composeSaveOrder(false,EnumComposeOrder.ONE_NUMBER_ORDER_BATCH,orderSaveDto,memberId,getPayWay(),getTenantInfo()); + return wxOrderService.composeSaveOrder(false,EnumComposeOrder.ONE_NUMBER_ORDER_BATCH,orderSaveDto,memberId,getPayWay(),getTenantInfo(),this.getCurrentApp()); } @ApiOperation(value = "单个券单个订单,卡(分账导致无法批量下单)、拼团,砍价用", notes = "{\"couponChannelId\":\"String\",\"couponId\":\"String\",\"press\":\"String\",\"orderGroupId\":\"String\",\"formId\":\"String\"}") @@ -160,7 +159,7 @@ public class WxOrderController extends BaseController { dto.setSignleOrder(orderSaveDto); dto.setCount(1); list.add(dto); - return wxOrderService.composeSaveOrder(false,EnumComposeOrder.SINGLE,list,memberId,getPayWay(),getTenantInfo()); + return wxOrderService.composeSaveOrder(false,EnumComposeOrder.SINGLE,list,memberId,getPayWay(),getTenantInfo(),this.getCurrentApp()); } @AuthIgnore diff --git a/mallinkCApi/src/main/java/com/iformall/interceptor/AuthorizationInterceptor.java b/mallinkCApi/src/main/java/com/iformall/interceptor/AuthorizationInterceptor.java index 2643230ad..df5ed6b19 100644 --- a/mallinkCApi/src/main/java/com/iformall/interceptor/AuthorizationInterceptor.java +++ b/mallinkCApi/src/main/java/com/iformall/interceptor/AuthorizationInterceptor.java @@ -68,6 +68,7 @@ public class AuthorizationInterceptor extends HandlerInterceptorAdapter { request.setAttribute(Constant.LOGIN_USER_KEY, cUser.getId()); request.setAttribute(Constant.TENANT_ID, cUser.getTenantId()); request.setAttribute(Constant.REQUEST_C_USER_KEY, cUser); + request.setAttribute(Constant.APP_INFO,cUser.getAppinfo()); if (StringUtils.isNotBlank(cUser.getParentTenantId())) { request.setAttribute(Constant.PARENT_TENANT_ID, cUser.getParentTenantId()); } diff --git a/mallinkCallback/src/main/java/com/iformall/controller/callback/TtPayController.java b/mallinkCallback/src/main/java/com/iformall/controller/callback/TtPayController.java index 7b3b1ca94..67cc9a742 100644 --- a/mallinkCallback/src/main/java/com/iformall/controller/callback/TtPayController.java +++ b/mallinkCallback/src/main/java/com/iformall/controller/callback/TtPayController.java @@ -219,6 +219,7 @@ public class TtPayController extends BaseController { refundSuccessMsg.setMsgType(EnumMsgRecordType.INSIDE_NOTIFY_REFUND_SUCCESS.getCode()); refundSuccessMsg.setDelayTimeLevel(3); refundSuccessMsg.setPayWay(EnumPayWay.PAY_WAY_TT.getCode()); + refundSuccessMsg.setPayVersion(EnumPayVersion.DY_PAY_V2.getCode()); refundSuccessMsg.setJsonMsg(jsonMsg); // response = wxRefundOrderService.notify(paramMap, EnumPayWay.PAY_WAY_WEAPP); diff --git a/mallinkCallback/src/main/java/com/iformall/controller/callback/WxPayBillController.java b/mallinkCallback/src/main/java/com/iformall/controller/callback/WxPayBillController.java index db8ff0c2e..0985dc963 100644 --- a/mallinkCallback/src/main/java/com/iformall/controller/callback/WxPayBillController.java +++ b/mallinkCallback/src/main/java/com/iformall/controller/callback/WxPayBillController.java @@ -1,6 +1,7 @@ package com.iformall.controller.callback; import com.iformall.controller.base.BaseController; +import com.iformall.enums.EnumPayVersion; import com.iformall.enums.EnumPayWay; import com.iformall.exception.BizMessageException; import com.iformall.exception.MallinkException; @@ -120,7 +121,7 @@ public class WxPayBillController extends BaseController { xml = IOUtils.toString(request.getInputStream(), Charset.forName("UTF-8")); logger.info(xml); paramMap = WxPayment.xmlToMap(xml); - response = wxRefundOrderService.notify(paramMap, EnumPayWay.PAY_WAY_WECHAT); + response = wxRefundOrderService.notify(paramMap, EnumPayWay.PAY_WAY_WECHAT,EnumPayVersion.WX_PAY_V2); logger.info("refund wxpay, notify success, req : " + xml + ", resp: " + response.toString()); return response; } catch (BizMessageException e) { diff --git a/mallinkCallback/src/main/java/com/iformall/controller/callback/WxPayController.java b/mallinkCallback/src/main/java/com/iformall/controller/callback/WxPayController.java index d7754fb13..572cf5ecf 100644 --- a/mallinkCallback/src/main/java/com/iformall/controller/callback/WxPayController.java +++ b/mallinkCallback/src/main/java/com/iformall/controller/callback/WxPayController.java @@ -137,6 +137,7 @@ public class WxPayController extends BaseController { refundSuccessMsg.setMsgType(EnumMsgRecordType.INSIDE_NOTIFY_REFUND_SUCCESS.getCode()); refundSuccessMsg.setDelayTimeLevel(3); refundSuccessMsg.setPayWay(EnumPayWay.PAY_WAY_WECHAT.getCode()); + refundSuccessMsg.setPayVersion(EnumPayVersion.WX_PAY_V2.getCode()); refundSuccessMsg.setJsonMsg(jsonMsg); // response = wxRefundOrderService.notify(paramMap, EnumPayWay.PAY_WAY_WEAPP); @@ -180,7 +181,7 @@ public class WxPayController extends BaseController { xml = IOUtils.toString(request.getInputStream(), Charset.forName("UTF-8")); paramMap = WxPayment.xmlToMap(xml); logger.info("share wxpay, notify, param: " + xml ); - response = wxPayOrderService.shareNotify(paramMap, EnumPayWay.PAY_WAY_WECHAT); + response = wxPayOrderService.shareNotify(paramMap, EnumPayWay.PAY_WAY_WECHAT,EnumPayVersion.WX_PAY_V2); logger.info("share wxpay, notify success, req : " + xml + ", resp: " + response.toString()); return response; } catch (BizMessageException e) { 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 788cb6de9..3eede770b 100644 --- a/mallinkPosApi/src/main/java/com/iformall/service/impl/PosServiceImpl.java +++ b/mallinkPosApi/src/main/java/com/iformall/service/impl/PosServiceImpl.java @@ -2460,6 +2460,7 @@ public class PosServiceImpl implements PosService { order.setOrderNumber(orderId); order.setType(EnumOrderType.POSPAY.getCode()); order.setPayVendor(EnumPayWay.PAY_WAY_POS_NEU.getCode()); + order.setPayVersion(EnumPayVersion.NEU_POS_V1.getCode()); order.setProductId(merchantBUser.getId()); order.setCUserId(memId); order.setPaymentType(EnumPayType.PAY_PAYMENT.getCode()); diff --git a/mallinkSchedule/src/main/java/com/iformall/schedule/TtOrderQueryCpsSchedule.java b/mallinkSchedule/src/main/java/com/iformall/schedule/TtOrderQueryCpsSchedule.java index 8e42702dd..2fb3a5b63 100644 --- a/mallinkSchedule/src/main/java/com/iformall/schedule/TtOrderQueryCpsSchedule.java +++ b/mallinkSchedule/src/main/java/com/iformall/schedule/TtOrderQueryCpsSchedule.java @@ -59,6 +59,7 @@ public class TtOrderQueryCpsSchedule { orderQ.updateTenantInfo(appinfo); orderQ.setType(EnumOrderType.COUPON.getCode()); orderQ.setPayVendor(EnumPayWay.PAY_WAY_TT.getCode()); + orderQ.setPayVersion(EnumPayVersion.DY_PAY_V2.getCode()); orderQ.setOrderStatus(EnumOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()); orderQ.setCpsStatus(EnumOrderCpsStatus.ORDER_DEF_CPS.getCode()); List orderList = wxOrderService.findList(orderQ); diff --git a/mallinkService/src/main/java/com/iformall/common/ErrorCode.java b/mallinkService/src/main/java/com/iformall/common/ErrorCode.java index 7ca2a448f..a0171d54a 100644 --- a/mallinkService/src/main/java/com/iformall/common/ErrorCode.java +++ b/mallinkService/src/main/java/com/iformall/common/ErrorCode.java @@ -97,6 +97,7 @@ public enum ErrorCode{ USER_PHONE_IS_FOUND(2009,"手机号已存在"), MEMBER_IS_LOCKED(2010, "当前会员已被锁定"), USER_BIRTHDATE_AFTER(2109, "出生日期大于当前日期"), + USER_APPINFO_NOT_EXIST(2110,"当前登录用户APP为空"), /** * 商场/商户 diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxBatchOrder.java b/mallinkService/src/main/java/com/iformall/domain/po/WxBatchOrder.java index a00ce763a..a62621079 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxBatchOrder.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxBatchOrder.java @@ -40,6 +40,8 @@ public class WxBatchOrder extends TenantEntity { private Date updateDate; @io.swagger.annotations.ApiModelProperty(value = "支付渠道EnumPayWay", name = "payVendor") private Integer payVendor; + @io.swagger.annotations.ApiModelProperty(value = "支付渠道版本EnumPayVersion", name = "payVersion") + private Integer payVersion; @io.swagger.annotations.ApiModelProperty(value = "组合订单类型EnumComposeOrder", name = "orderType") private Integer orderType; diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxCouponOrder.java b/mallinkService/src/main/java/com/iformall/domain/po/WxCouponOrder.java index ea550a2e6..0d267d630 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxCouponOrder.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxCouponOrder.java @@ -62,6 +62,8 @@ public class WxCouponOrder extends TenantEntity { private Integer couponPrice; @io.swagger.annotations.ApiModelProperty(value = "支付渠道EnumPayWay", name = "payVendor") private Integer payVendor; + @io.swagger.annotations.ApiModelProperty(value = "支付渠道版本EnumPayVersion", name = "payVersion") + private Integer payVersion; @io.swagger.annotations.ApiModelProperty(value="过期退款(0:正常,1不退)",name="autoRefund") private Integer autoRefund; diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxOrder.java b/mallinkService/src/main/java/com/iformall/domain/po/WxOrder.java index 192cda397..ee9257ae7 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxOrder.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxOrder.java @@ -59,10 +59,10 @@ public class WxOrder extends TenantEntity { private Long productId; @io.swagger.annotations.ApiModelProperty(value="类型(0:券,1:B刷卡支付,2:C扫码支付,3:储值卡, 10:POS支付)",name="type") private Integer type; - - @io.swagger.annotations.ApiModelProperty(value = "支付渠道EnumPayWay", name = "payVendor") - //历史数据可能为空 - private Integer payVendor; +// @io.swagger.annotations.ApiModelProperty(value = "支付渠道EnumPayWay", name = "payVendor") +// private Integer payVendor; + @io.swagger.annotations.ApiModelProperty(value = "支付渠道版本EnumPayVersion", name = "payVersion") + private Integer payVersion; @io.swagger.annotations.ApiModelProperty(value="0: 付款 1: 退款",name="paymentType") private Integer paymentType; diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxPayOrder.java b/mallinkService/src/main/java/com/iformall/domain/po/WxPayOrder.java index 31cc76c63..23b20094e 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxPayOrder.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxPayOrder.java @@ -53,6 +53,8 @@ public class WxPayOrder extends TenantEntity { private String transactionId; @io.swagger.annotations.ApiModelProperty(value="支付渠道: 0-微信 1-支付宝 2-银联 ",name="payVendor") private Integer payVendor; + @io.swagger.annotations.ApiModelProperty(value="支付渠道版本EnumPayVersion ",name="payVersion") + private Integer payVersion; @io.swagger.annotations.ApiModelProperty(value="支付订单号",name="payOrderNo") private String payOrderNo; @io.swagger.annotations.ApiModelProperty(value="支付状态: 0-支付中;1-支付成功;2-支付失败",name="payOrderStatus") diff --git a/mallinkService/src/main/java/com/iformall/domain/po/base/BaseCUserEntity.java b/mallinkService/src/main/java/com/iformall/domain/po/base/BaseCUserEntity.java index e9c81d907..2172681b9 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/base/BaseCUserEntity.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/base/BaseCUserEntity.java @@ -1,6 +1,7 @@ package com.iformall.domain.po.base; import com.baomidou.mybatisplus.annotation.TableField; +import com.iformall.domain.po.WxAppinfo; import com.iformall.enums.EnumAppPlat; import com.iformall.utils.UserUtil; import lombok.EqualsAndHashCode; @@ -33,6 +34,9 @@ public class BaseCUserEntity extends TenantEntity { @TableField(exist = false) protected static EnumAppPlat appPlat; + + @TableField(exist = false) + protected WxAppinfo appinfo; @TableField(exist = false) private List userIds; @@ -101,4 +105,11 @@ public class BaseCUserEntity extends TenantEntity { this.userIds = userIds; } + public WxAppinfo getAppinfo() { + return appinfo; + } + + public void setAppinfo(WxAppinfo appinfo) { + this.appinfo = appinfo; + } } diff --git a/mallinkService/src/main/java/com/iformall/domain/po/msg/FmInsideNotifyRefundSuccessMsg.java b/mallinkService/src/main/java/com/iformall/domain/po/msg/FmInsideNotifyRefundSuccessMsg.java index 720f029e8..5be7ab3b0 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/msg/FmInsideNotifyRefundSuccessMsg.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/msg/FmInsideNotifyRefundSuccessMsg.java @@ -9,8 +9,11 @@ import lombok.ToString; @EqualsAndHashCode(callSuper = true) public class FmInsideNotifyRefundSuccessMsg extends BaseMsg { - @io.swagger.annotations.ApiModelProperty(value = "消息来源", name = "payWay") + @io.swagger.annotations.ApiModelProperty(value = "支付渠道", name = "payWay") private Integer payWay; + + @io.swagger.annotations.ApiModelProperty(value = "支付渠道版本", name = "payVersion") + private Integer payVersion; @io.swagger.annotations.ApiModelProperty(value = "消息内容", name = "jsonMsg") private String jsonMsg; diff --git a/mallinkService/src/main/java/com/iformall/domain/vo/WxOrderPayExpVo.java b/mallinkService/src/main/java/com/iformall/domain/vo/WxOrderPayExpVo.java index b4ebf12ad..cb5a3f68f 100644 --- a/mallinkService/src/main/java/com/iformall/domain/vo/WxOrderPayExpVo.java +++ b/mallinkService/src/main/java/com/iformall/domain/vo/WxOrderPayExpVo.java @@ -93,6 +93,7 @@ public class WxOrderPayExpVo extends WxOrder { this.setProductId(o.getProductId()); this.setType(o.getType()); this.setPayVendor(o.getPayVendor()); + this.setPayVersion(o.getPayVersion()); this.setPaymentType(o.getPaymentType()); this.setPayment(o.getPayment()); this.setPaymentTime(o.getPaymentTime()); diff --git a/mallinkService/src/main/java/com/iformall/domain/vo/WxOrderPayVo.java b/mallinkService/src/main/java/com/iformall/domain/vo/WxOrderPayVo.java index f211c05d4..25be6358a 100644 --- a/mallinkService/src/main/java/com/iformall/domain/vo/WxOrderPayVo.java +++ b/mallinkService/src/main/java/com/iformall/domain/vo/WxOrderPayVo.java @@ -112,6 +112,7 @@ public class WxOrderPayVo extends WxOrder { this.setProductId(o.getProductId()); this.setType(o.getType()); this.setPayVendor(o.getPayVendor()); + this.setPayVersion(o.getPayVersion()); this.setPaymentType(o.getPaymentType()); this.setPayment(o.getPayment()); this.setPaymentTime(o.getPaymentTime()); diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumComposeOrder.java b/mallinkService/src/main/java/com/iformall/enums/EnumComposeOrder.java index e843c8ede..ce37651d5 100644 --- a/mallinkService/src/main/java/com/iformall/enums/EnumComposeOrder.java +++ b/mallinkService/src/main/java/com/iformall/enums/EnumComposeOrder.java @@ -38,7 +38,7 @@ public enum EnumComposeOrder { return message; } - //是单个支付还是组合支付 + //是单个支付还是组合支付,是否需要多分账 public static boolean isSingle(Integer type) { if (type.intValue() == SINGLE.getCode().intValue()) { return true; diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumPayVersion.java b/mallinkService/src/main/java/com/iformall/enums/EnumPayVersion.java index 3f26d6f30..02067840e 100644 --- a/mallinkService/src/main/java/com/iformall/enums/EnumPayVersion.java +++ b/mallinkService/src/main/java/com/iformall/enums/EnumPayVersion.java @@ -7,7 +7,9 @@ public enum EnumPayVersion { WX_PAY_V2(1, "微信支付2.0,老版本"), WX_PAY_V3(2, "微信支付3.0,对接电商收付通"), - DY_PAY_V2(3,"抖音支付2.0,对接商品库") + DY_PAY_V2(3,"抖音支付2.0,对接商品库"), + NEU_POS_V1(4,"东软POS支付1.0版本"), + NO_VERSION(5,"无需支付,无版本") ; public static EnumPayVersion getEnum(Integer code) { diff --git a/mallinkService/src/main/java/com/iformall/service/QrCodeService.java b/mallinkService/src/main/java/com/iformall/service/QrCodeService.java index 2c18598a9..c97978287 100644 --- a/mallinkService/src/main/java/com/iformall/service/QrCodeService.java +++ b/mallinkService/src/main/java/com/iformall/service/QrCodeService.java @@ -3,6 +3,7 @@ package com.iformall.service; import com.iformall.common.ResultData; import com.iformall.domain.po.base.TenantEntity; import com.iformall.enums.EnumAppPlat; +import com.iformall.enums.EnumPayVersion; import com.iformall.enums.EnumPayWay; import com.iformall.exception.MallinkException; import org.springframework.stereotype.Service; @@ -14,14 +15,14 @@ import java.util.Map; @Service public interface QrCodeService { - void downQrCode(TenantEntity tenantEntity, HttpServletRequest request, HttpServletResponse response, @RequestBody Map params,EnumAppPlat plat) throws MallinkException; + void downQrCode(TenantEntity tenantEntity, HttpServletRequest request, HttpServletResponse response, @RequestBody Map params,EnumAppPlat plat,EnumPayVersion payVersion) throws MallinkException; ResultData exportQrcode(HttpServletRequest request, HttpServletResponse response, TenantEntity tenantEntity, int type, String pageUrl, String sceneParam, int withText, String text1, String text2, - String name, EnumAppPlat plat); + String name, EnumAppPlat plat,EnumPayVersion payVersion); ResultData uploadQrcode(TenantEntity tenantEntity, int type, String pageUrl, String sceneParam, int withText, String text1, String text2, - String name,EnumAppPlat plat); + String name,EnumAppPlat plat,EnumPayVersion payVersion); } diff --git a/mallinkService/src/main/java/com/iformall/service/WxAppinfoService.java b/mallinkService/src/main/java/com/iformall/service/WxAppinfoService.java index 002dc0514..9d4f6ae28 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxAppinfoService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxAppinfoService.java @@ -64,6 +64,8 @@ public interface WxAppinfoService { */ WxAppinfo getCAppInfo(TenantEntity tenantEntity,EnumAppPlat appPlat); + WxAppinfo getBAppInfo(TenantEntity tenantEntity,EnumAppPlat appPlat); + /** * 保存或更新实体 * diff --git a/mallinkService/src/main/java/com/iformall/service/WxCouponChannelService.java b/mallinkService/src/main/java/com/iformall/service/WxCouponChannelService.java index 998828c82..4ff7931b9 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxCouponChannelService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxCouponChannelService.java @@ -84,5 +84,5 @@ public interface WxCouponChannelService { ResultData updateOnline(WxCouponChannel wxCouponChannel); - String getCouponOneMerchantUid(EnumPayWay payWay,Long couponChannelId, String tenantId); + String getCouponOneMerchantUid(EnumPayWay payWay,Integer payVersion,Long couponChannelId, String tenantId); } diff --git a/mallinkService/src/main/java/com/iformall/service/WxOrderService.java b/mallinkService/src/main/java/com/iformall/service/WxOrderService.java index b28a88250..10d11915a 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxOrderService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxOrderService.java @@ -22,6 +22,7 @@ import com.iformall.domain.vo.WxOrderQueryVo; import com.iformall.douyin.payv2.result.CreateOrderCallback; import com.iformall.enums.EnumComposeOrder; import com.iformall.enums.EnumOrderStatus; +import com.iformall.enums.EnumPayVersion; import com.iformall.enums.EnumPayWay; import com.iformall.service.order.entity.WxComposeOrder; @@ -88,7 +89,7 @@ public interface WxOrderService { * @param wxCouponSendVo 商户注券时必须指定 * @return WxCouponOrder */ - WxCouponOrder sendFreeCouponToUser(Long userId,TenantEntity tenantinfo,Long couponId, WxCouponSendVo wxCouponSendVo,EnumPayWay payWay,Long merchantId,Long bUserId); + WxCouponOrder sendFreeCouponToUser(Long userId,TenantEntity tenantinfo,Long couponId, WxCouponSendVo wxCouponSendVo,EnumPayWay payWay,EnumPayVersion payVersion,Long merchantId,Long bUserId); /** * 发券包子券 @@ -214,12 +215,13 @@ public interface WxOrderService { // 2. 创建免费订单, 领取 couponOrder WxOrder saveFreeOrderForCoupon(Date orderDate,boolean allowUnPayOrder,WxComposeOrder composeOrder, WxCUserBasicInfo user, WxCoupon coupon, int couponNumber, - WxCouponChannel couponChannel, String formId, Long couponPasswordId,String extParam, EnumPayWay payWay, + WxCouponChannel couponChannel, String formId, Long couponPasswordId,String extParam, EnumPayWay payWay,EnumPayVersion payVersion, Integer shippingType, UserBasicInfoAddress address); // 3. 创建有价订单 WxOrder saveNoFreeOrderForCoupon(Date orderDate,boolean allowUnPayOrder,WxComposeOrder composeOrder,WxCUserBasicInfo user, WxCoupon coupon,int couponNumber, - boolean isPressOrder,Long orderGroupId,String formId,Integer shippinType,UserBasicInfoAddress address,String extParam,WxCouponChannel couponChannel,EnumPayWay payWay); + boolean isPressOrder,Long orderGroupId,String formId,Integer shippinType,UserBasicInfoAddress address,String extParam,WxCouponChannel couponChannel, + EnumPayWay payWay,EnumPayVersion payVersion); /** * 下订单成功后处理 @@ -246,10 +248,12 @@ public interface WxOrderService { //ResultData saveOrder(OrderSaveDto orderSaveDto,Long cUserId,EnumPayWay payWay,TenantEntity tenantEntity); - ResultData composeSaveOrder(boolean allowUnPayOrder,EnumComposeOrder composeOrderType,List composeOrderSaveDto,Long cUserId,EnumPayWay payWay,TenantEntity tenantEntity); + ResultData composeSaveOrder(boolean allowUnPayOrder,EnumComposeOrder composeOrderType,List composeOrderSaveDto,Long cUserId,EnumPayWay payWay, + TenantEntity tenantEntity,WxAppinfo appinfo); //平台推送订单,如抖音支付2.0 - ResultData platPushSaveOrder(boolean allowUnPayOrder,EnumComposeOrder composeOrderType,String allExtParam,List platPushOrderList,Long cUserId,EnumPayWay payWay,TenantEntity tenantEntity); + ResultData platPushSaveOrder(boolean allowUnPayOrder,EnumComposeOrder composeOrderType,String allExtParam,List platPushOrderList,Long cUserId, + EnumPayWay payWay,EnumPayVersion payVersion,TenantEntity tenantEntity); void sendInsideOrderPushMsg(TenantEntity tenantEntity,Long composeOrderId); diff --git a/mallinkService/src/main/java/com/iformall/service/WxPayOrderService.java b/mallinkService/src/main/java/com/iformall/service/WxPayOrderService.java index d18d81b74..5ee9e0b14 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxPayOrderService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxPayOrderService.java @@ -17,6 +17,7 @@ import com.iformall.domain.po.WxPayOrder; import com.iformall.domain.po.base.TenantEntity; import com.iformall.enums.EnumComposeOrder; import com.iformall.enums.EnumPayShare; +import com.iformall.enums.EnumPayVersion; import com.iformall.enums.EnumPayWay; import com.iformall.service.order.entity.WxComposeOrder; import com.iformall.service.pay.entity.PayExtraParam; @@ -76,7 +77,7 @@ public interface WxPayOrderService { * @param payWay 支付方式 * @return */ - String shareNotify(Map paramMap, EnumPayWay payWay); + String shareNotify(Map paramMap, EnumPayWay payWay,EnumPayVersion payVersion); /** * 支付成功处理 @@ -93,7 +94,7 @@ public interface WxPayOrderService { * @param record * @param transactionId */ - void handleMicroOrderPaySuccess(Object result,String transcationId,EnumPayWay payWay,WxPayOrder record ,WxMerchantBUser user,WxAppinfo appInfo,PayExtraParam params); + void handleMicroOrderPaySuccess(Object result,String transcationId,EnumPayWay payWay,WxPayAccount payAccount,WxPayOrder record ,WxMerchantBUser user,WxAppinfo appInfo,PayExtraParam params); /** * 券支付成功处理 diff --git a/mallinkService/src/main/java/com/iformall/service/WxProfitSharingOrderService.java b/mallinkService/src/main/java/com/iformall/service/WxProfitSharingOrderService.java index a61483711..9c568e44f 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxProfitSharingOrderService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxProfitSharingOrderService.java @@ -21,7 +21,7 @@ public interface WxProfitSharingOrderService { /** * 创建分账订单 */ - ResultData createSharingOrder(WxSharingOrderDto wxSharingOrderDto,Integer payway,Integer mchType,Integer share); + ResultData createSharingOrder(WxSharingOrderDto wxSharingOrderDto,Integer payway,Integer payVersion,Integer mchType,Integer share); /** * 分账重试 diff --git a/mallinkService/src/main/java/com/iformall/service/WxRefundOrderService.java b/mallinkService/src/main/java/com/iformall/service/WxRefundOrderService.java index efe7e553b..4a50d3edc 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxRefundOrderService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxRefundOrderService.java @@ -6,6 +6,7 @@ import com.iformall.domain.po.*; import com.iformall.domain.po.base.TenantEntity; import com.iformall.douyin.payv2.result.RefundOrderCallback; import com.iformall.enums.EnumPayType; +import com.iformall.enums.EnumPayVersion; import com.iformall.enums.EnumPayWay; import java.util.Map; @@ -46,7 +47,7 @@ public interface WxRefundOrderService { * @param payWay 支付方式 * @return */ - String notify(Map paramMap, EnumPayWay payWay); + String notify(Map paramMap, EnumPayWay payWay,EnumPayVersion payVersion); /** * 处理退款成功 diff --git a/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtBUserServiceAdapter.java b/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtBUserServiceAdapter.java index e5f758acf..52daa6871 100644 --- a/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtBUserServiceAdapter.java +++ b/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtBUserServiceAdapter.java @@ -57,6 +57,10 @@ public class TtBUserServiceAdapter extends BasicCUserService implements CUserSer entity.setToken(ttBuser.getToken()); entity.updateTenantInfo(ttBuser); entity.setAppPlat(EnumAppPlat.TOUTIAO); + WxAppinfo appInfo = wxAppinfoService.getBAppInfo(ttBuser, entity.getAppPlat()); + if (null == appInfo) { + throw new MallinkException(ErrorCode.USER_APPINFO_NOT_EXIST.getCode(), "当前token查询不到APP"); + } entity.setRealUser(ttBuser); return entity; } diff --git a/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtCUserServiceAdapter.java b/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtCUserServiceAdapter.java index 47d55ec77..0bd4e556f 100644 --- a/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtCUserServiceAdapter.java +++ b/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtCUserServiceAdapter.java @@ -16,6 +16,7 @@ import com.iformall.domain.vo.UserStructureVo; import com.iformall.douyin.miniapp.api.TtMaService; import com.iformall.enums.EnumAppPlat; import com.iformall.enums.EnumAssignTagsTrigger; +import com.iformall.enums.EnumPayVersion; import com.iformall.enums.EnumYesOrNo; import com.iformall.exception.MallinkException; import com.iformall.mapper.TtCUserMapper; @@ -70,6 +71,10 @@ public class TtCUserServiceAdapter extends BasicCUserService implements CUserSer entity.setToken(ttCUser.getToken()); entity.updateTenantInfo(ttCUser); entity.setAppPlat(EnumAppPlat.TOUTIAO); + WxAppinfo appInfo = wxAppinfoService.getCAppInfo(ttCUser, entity.getAppPlat()); + if (null == appInfo) { + throw new MallinkException(ErrorCode.USER_APPINFO_NOT_EXIST.getCode(), "当前token查询不到APP"); + } entity.setRealUser(ttCUser); return entity; } @@ -342,7 +347,7 @@ public class TtCUserServiceAdapter extends BasicCUserService implements CUserSer String pageUrl = Constant.mainPageUrl; String param = userL.getWeappScene(); - ResultData resultData = qrCodeService.uploadQrcode(user, 1, pageUrl, param, 0, "", "", "TT用户"+userL.getUserId().toString(),EnumAppPlat.TOUTIAO); + ResultData resultData = qrCodeService.uploadQrcode(user, 1, pageUrl, param, 0, "", "", "TT用户"+userL.getUserId().toString(),EnumAppPlat.TOUTIAO,EnumPayVersion.DY_PAY_V2); Map map = (Map) resultData.data; if(map!=null && map.get("url") !=null) { String url = map.get("url"); diff --git a/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxBUserServiceAdapter.java b/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxBUserServiceAdapter.java index a93d6d81d..42795178d 100644 --- a/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxBUserServiceAdapter.java +++ b/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxBUserServiceAdapter.java @@ -57,6 +57,10 @@ public class WxBUserServiceAdapter extends BasicCUserService implements CUserSer entity.setToken(wxBuser.getToken()); entity.updateTenantInfo(wxBuser); entity.setAppPlat(EnumAppPlat.WX); + WxAppinfo appInfo = wxAppinfoService.getBAppInfo(wxBuser, entity.getAppPlat()); + if (null == appInfo) { + throw new MallinkException(ErrorCode.USER_APPINFO_NOT_EXIST.getCode(), "当前token查询不到APP"); + } entity.setRealUser(wxBuser); return entity; } diff --git a/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxCUserServiceAdapter.java b/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxCUserServiceAdapter.java index 194b9ec27..39e2a397f 100644 --- a/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxCUserServiceAdapter.java +++ b/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxCUserServiceAdapter.java @@ -14,6 +14,7 @@ import com.iformall.domain.vo.UserCountVo; import com.iformall.domain.vo.UserStructureVo; import com.iformall.enums.EnumAppPlat; import com.iformall.enums.EnumAssignTagsTrigger; +import com.iformall.enums.EnumPayVersion; import com.iformall.enums.EnumYesOrNo; import com.iformall.mapper.WxMallMapper; import com.iformall.service.WxAppinfoService; @@ -77,6 +78,11 @@ public class WxCUserServiceAdapter extends BasicCUserService implements CUserSer entity.updateTenantInfo(wxCUser); entity.setAppPlat(EnumAppPlat.WX); entity.setRealUser(wxCUser); + WxAppinfo appInfo = wxAppinfoService.getCAppInfo(wxCUser, entity.getAppPlat()); + if (null == appInfo) { + throw new MallinkException(ErrorCode.USER_APPINFO_NOT_EXIST.getCode(), "当前token查询不到APP"); + } + entity.setAppinfo(appInfo); return entity; } @@ -351,7 +357,7 @@ public class WxCUserServiceAdapter extends BasicCUserService implements CUserSer String pageUrl = Constant.mainPageUrl; String param = userL.getWeappScene(); - ResultData resultData = qrCodeService.uploadQrcode(user, 1, pageUrl, param, 0, "", "", "WX用户"+userL.getUserId().toString(),EnumAppPlat.WX); + ResultData resultData = qrCodeService.uploadQrcode(user, 1, pageUrl, param, 0, "", "", "WX用户"+userL.getUserId().toString(),EnumAppPlat.WX,EnumPayVersion.WX_PAY_V2); Map map = (Map) resultData.data; if(map!=null && map.get("url") !=null) { String url = map.get("url"); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/QrCodeServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/QrCodeServiceImpl.java index 45a69891d..55d0878fa 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/QrCodeServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/QrCodeServiceImpl.java @@ -5,6 +5,7 @@ import com.iformall.common.Result; import com.iformall.common.ResultData; import com.iformall.domain.po.base.TenantEntity; import com.iformall.enums.EnumAppPlat; +import com.iformall.enums.EnumPayVersion; import com.iformall.enums.EnumPayWay; import com.iformall.domain.po.WxAppinfo; import com.iformall.exception.MallinkException; @@ -43,7 +44,7 @@ public class QrCodeServiceImpl implements QrCodeService { @Override - public void downQrCode(TenantEntity tenantEntity, HttpServletRequest request, HttpServletResponse response, Map params,EnumAppPlat plat) throws MallinkException { + public void downQrCode(TenantEntity tenantEntity, HttpServletRequest request, HttpServletResponse response, Map params,EnumAppPlat plat,EnumPayVersion payVersion) throws MallinkException { String name = (String) params.get("name"); String pageUrl = (String) params.get("pageUrl"); String sceneParam = (String) params.get("sceneParam"); @@ -69,7 +70,7 @@ public class QrCodeServiceImpl implements QrCodeService { exportQrcode(request, response, tenantEntity, type, pageUrl, sceneParam, withText, text1, text2, - name,plat); + name,plat,payVersion); } catch (Exception e) { logger.error(e.getMessage()); throw new MallinkException(Result.ERROR, "下载异常"); @@ -80,7 +81,7 @@ public class QrCodeServiceImpl implements QrCodeService { public ResultData exportQrcode(HttpServletRequest request, HttpServletResponse response, TenantEntity tenantEntity, int type, String pageUrl, String sceneParam, int withText, String text1, String text2, - String name, EnumAppPlat plat) { + String name, EnumAppPlat plat,EnumPayVersion payVersion) { // type 0 有限二维码, 1 无限制二维码 // withText 0 不带字 1. 带下面的字,2 带下面的两行字 WxAppinfo appinfo = wxAppinfoService.getCAppInfo(tenantEntity,plat); @@ -100,7 +101,7 @@ public class QrCodeServiceImpl implements QrCodeService { pDest.mkdirs(); } try { - File codeFile = payServiceFactory.getQrcodeService(appinfo.getPlat()).getQrcode(appinfo, pageUrl, type, sceneParam); + File codeFile = payServiceFactory.getQrcodeService(appinfo.getPlat(),payVersion.getCode()).getQrcode(appinfo, pageUrl, type, sceneParam); copyFileToDest(withText, text1, text2, destPath1, dest, codeFile); org.apache.commons.io.FileUtils.forceDelete(codeFile); } catch (WxErrorException e) { @@ -121,7 +122,7 @@ public class QrCodeServiceImpl implements QrCodeService { @Override public ResultData uploadQrcode(TenantEntity tenantEntity, int type, String pageUrl, String sceneParam, int withText, String text1, String text2, - String name,EnumAppPlat plat) { + String name,EnumAppPlat plat,EnumPayVersion payVersion) { // type 0 有限二维码, 1 无限制二维码 // withText 0 不带字 1. 带下面的字,2 带下面的两行字 WxAppinfo appinfo = wxAppinfoService.getCAppInfo(tenantEntity,plat); @@ -141,7 +142,7 @@ public class QrCodeServiceImpl implements QrCodeService { pDest.mkdirs(); } try { - File codeFile = payServiceFactory.getQrcodeService(appinfo.getPlat()).getQrcode(appinfo, pageUrl, type, sceneParam); + File codeFile = payServiceFactory.getQrcodeService(appinfo.getPlat(),payVersion.getCode()).getQrcode(appinfo, pageUrl, type, sceneParam); copyFileToDest(withText, text1, text2, destPath1, dest, codeFile); org.apache.commons.io.FileUtils.forceDelete(codeFile); } catch (WxErrorException e) { diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxAppinfoServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxAppinfoServiceImpl.java index b8e909e22..71b30937c 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxAppinfoServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxAppinfoServiceImpl.java @@ -55,6 +55,23 @@ public class WxAppinfoServiceImpl implements WxAppinfoService { return appInfo; } + @Override + public WxAppinfo getBAppInfo(TenantEntity tenantEntity,EnumAppPlat appPlat) { + WxAppinfo appInfo = null; + WxAppinfo appinfoQ = new WxAppinfo(); + if (appPlat != null) { + appinfoQ.setPlat(appPlat.getCode()); + } + + appinfoQ.updateTenantInfo(tenantEntity); + appinfoQ.setType(EnumAppType.B.getCode()); + List appList = wxAppinfoMapper.selectList(new QueryWrapper(appinfoQ)); + if (appList.size() > 0) { + appInfo = appList.get(0); + } + return appInfo; + } + @Override public WxAppinfo getByAppId(String appId) { return wxAppinfoMapper.findByAppId(appId); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCashOutServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCashOutServiceImpl.java index b36fb3684..3510217ed 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCashOutServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCashOutServiceImpl.java @@ -243,7 +243,7 @@ public class WxCashOutServiceImpl implements WxCashOutService { if (null == payAccount) { return; } - CashOutAdapterResult result = payServiceFactory.getCashOutAdapterService(payWay.getCode()).cashOut(appInfo, payAccount, cashout); + CashOutAdapterResult result = payServiceFactory.getCashOutAdapterService(payWay.getCode(),payAccount.getPayVersion()).cashOut(appInfo, payAccount, cashout); cashout.setUpdateDate(new Date()); if (result.isSuccess()) { cashout.setStatus(EnumCashOutStatus.SUCCESS.getCode()); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponChannelServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponChannelServiceImpl.java index 1186d4a4d..4c56d347c 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponChannelServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponChannelServiceImpl.java @@ -208,13 +208,13 @@ public class WxCouponChannelServiceImpl implements WxCouponChannelService { String pageUrl = Constant.mainPageUrl; String param = couponChannel.getWeappScene(); - ResultData wxQrCode = qrCodeService.uploadQrcode(tenantEntity, 1, pageUrl, param, 0, "", "", "WX券"+couponChannelId.toString(),EnumAppPlat.WX); + ResultData wxQrCode = qrCodeService.uploadQrcode(tenantEntity, 1, pageUrl, param, 0, "", "", "WX券"+couponChannelId.toString(),EnumAppPlat.WX,EnumPayVersion.WX_PAY_V2); Map wxMap = (Map) wxQrCode.data; if(wxMap != null && wxMap.get("url") != null) { String url = wxMap.get("url"); couponChannel.setQrCode(url); } - ResultData ttQrCode = qrCodeService.uploadQrcode(tenantEntity, 1, pageUrl, param, 0, "", "", "TT券"+couponChannelId.toString(),EnumAppPlat.TOUTIAO); + ResultData ttQrCode = qrCodeService.uploadQrcode(tenantEntity, 1, pageUrl, param, 0, "", "", "TT券"+couponChannelId.toString(),EnumAppPlat.TOUTIAO,EnumPayVersion.DY_PAY_V2); Map ttmap = (Map) ttQrCode.data; if(ttmap != null && ttmap.get("url") != null) { String url = ttmap.get("url"); @@ -829,7 +829,7 @@ public class WxCouponChannelServiceImpl implements WxCouponChannelService { } @Override - public String getCouponOneMerchantUid(EnumPayWay payWay,Long couponChannelId, String tenantId) { + public String getCouponOneMerchantUid(EnumPayWay payWay,Integer payVersion,Long couponChannelId, String tenantId) { WxCouponChannel couponChannel = wxCouponChannelMapper.selectById(couponChannelId, tenantId); List merchantIds = wxCouponMerchantMapper.findMerchantIdListByProduct(couponChannel.getCouponId(), tenantId); Long merchantId = null; @@ -850,7 +850,7 @@ public class WxCouponChannelServiceImpl implements WxCouponChannelService { WxProfitSharingReceiver psReceiverQ = new WxProfitSharingReceiver(); psReceiverQ.setTenantId(tenantId); psReceiverQ.setMerchantId(merchantIds.get(0)); - psReceiverQ.setSharingType(payServiceFactory.getPayShareAdapterService(payWay.getCode()).getProfitSharingType()); + psReceiverQ.setSharingType(payServiceFactory.getPayShareAdapterService(payWay.getCode(),payVersion).getProfitSharingType()); psReceiverQ.setStatus(EnumProfitSharingReceiverStatus.PROFIT_SHARING_RECEIVER_STATUS_VALID.getCode()); psReceiverQ.setPlat(payWay.getPlat().getCode()); List psReceiverList = wxProfitSharingReceiverMapper.findList(psReceiverQ); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java index 3c5f6860c..f48646549 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java @@ -1307,7 +1307,7 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService { WxPayOrder wxPayOrder = wxPayOrderMapper.selectOne(new QueryWrapper(wxPayOrderQ)); if(wxPayOrder != null && EnumPayMchType.TOTAL.getCode().equals(wxPayOrder.getMchType()) && EnumPayShare.YES.getCode().equals(wxPayOrder.getShare())){ - payServiceFactory.getPayShareAdapterService(wxPayOrder.getPayVendor()) + payServiceFactory.getPayShareAdapterService(wxPayOrder.getPayVendor(),couponOrder.getPayVersion()) .getReceiverList(couponOrder, merchantId, wxPayOrder.getTtPayWay()); } @@ -1647,7 +1647,7 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService { merchantSubsidy.setOrderType(EnumOrderType.COUPON.getCode()); merchantSubsidy.setCouponOrderId(couponOrder.getId()); merchantSubsidy.setCouponType(couponOrder.getCouponType()); - merchantSubsidy.setType(payServiceFactory.getPayShareAdapterService(couponOrder.getPayVendor()).getSubsidyType()); + merchantSubsidy.setType(payServiceFactory.getPayShareAdapterService(couponOrder.getPayVendor(),couponOrder.getPayVersion()).getSubsidyType()); List msList = wxMerchantSubsidyMapper.selectList(new QueryWrapper(merchantSubsidy)); if (msList.size() > 0) { @@ -1663,7 +1663,7 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService { merchantSubsidy.setRealPayment(couponOrder.getCouponPrice()); merchantSubsidy.setSubsidy(couponOrder.getCouponPrice()); merchantSubsidy.setRealSubsidy(couponOrder.getCouponPrice()); - merchantSubsidy.setType(payServiceFactory.getPayShareAdapterService(couponOrder.getPayVendor()).getSubsidyType()); + merchantSubsidy.setType(payServiceFactory.getPayShareAdapterService(couponOrder.getPayVendor(),couponOrder.getPayVersion()).getSubsidyType()); merchantSubsidy.setCreateDate(curDate); merchantSubsidy.setUpdateDate(curDate); merchantSubsidy.setStatus(EnumMerchantSubsidyStatus.NOT_SUBSIDY.getCode()); @@ -1699,7 +1699,7 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService { logger.error("核销记账失败"+e.getMessage(),e); } }else if(wxPayOrder != null && EnumPayMchType.TOTAL.getCode().equals(wxPayOrder.getMchType())){ - List psReceiverList = payServiceFactory.getPayShareAdapterService(payWay) + List psReceiverList = payServiceFactory.getPayShareAdapterService(payWay,couponOrder.getPayVersion()) .getReceiverList(wxPayOrder,merchantId,wxPayOrder.getTtPayWay()); if (psReceiverList == null || psReceiverList.size() == 0) { @@ -1732,7 +1732,7 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService { wxSharingOrderDto.setPayTimeEnd(wxPayOrder.getPayTimeEnd()); wxSharingOrderDto.updateTenantInfo(wxPayOrder); wxSharingOrderDto.setTransactionId(wxPayOrder.getTransactionId()); - wxProfitSharingOrderService.createSharingOrder(wxSharingOrderDto,payWay,wxPayOrder.getMchType(),wxPayOrder.getShare()); + wxProfitSharingOrderService.createSharingOrder(wxSharingOrderDto,payWay,wxPayOrder.getPayVersion(),wxPayOrder.getMchType(),wxPayOrder.getShare()); } } catch (Exception e) { logger.error("微信分账: " + e.getMessage()); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java index c790c53fe..3587462c1 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java @@ -617,14 +617,14 @@ public class WxMerchantServiceImpl implements WxMerchantService { String param = merchant.getWeappScene(); //微信二维码,后续有别的二维码,再加字段 - ResultData wxQrCode = qrCodeService.uploadQrcode(tenantEntity,1,pageUrl,param,0,"","","WX店铺"+merchantId.toString(), EnumAppPlat.WX); + ResultData wxQrCode = qrCodeService.uploadQrcode(tenantEntity,1,pageUrl,param,0,"","","WX店铺"+merchantId.toString(), EnumAppPlat.WX,EnumPayVersion.WX_PAY_V2); Map wxMap = (Map)wxQrCode.data; if(wxMap != null && wxMap.get("url") != null) { String url = wxMap.get("url"); merchant.setQrCode(url); } //抖音二维码,后续有别的二维码,再加字段 - ResultData ttQrCode = qrCodeService.uploadQrcode(tenantEntity,1,pageUrl,param,0,"","","TT店铺"+merchantId.toString(), EnumAppPlat.TOUTIAO); + ResultData ttQrCode = qrCodeService.uploadQrcode(tenantEntity,1,pageUrl,param,0,"","","TT店铺"+merchantId.toString(), EnumAppPlat.TOUTIAO,EnumPayVersion.DY_PAY_V2); Map ttmap = (Map)ttQrCode.data; if(ttmap != null && ttmap.get("url") != null) { String url = ttmap.get("url"); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java index 0b8d85e54..5b6640af0 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java @@ -208,6 +208,10 @@ public class WxOrderServiceImpl implements WxOrderService { @Qualifier("couponDetailRedisTemplate") RedisTemplate cdRedisTemplate; + @Autowired + @Qualifier("commonObjectRedisTemplate") + RedisTemplate redisTemplate; + @Autowired OrderFactory orderFactory; @@ -1134,6 +1138,7 @@ public class WxOrderServiceImpl implements WxOrderService { record.setOrderNumber(orderNumber); record.setType(EnumOrderType.MICROPAY.getCode()); record.setPayVendor(EnumPayWay.PAY_WAY_WECHAT_MA.getCode()); + record.setPayVersion(EnumPayVersion.WX_PAY_V2.getCode()); record.setProductId(user.getId()); record.setPaymentType(EnumPayType.PAY_PAYMENT.getCode()); record.setPayment(payment); @@ -1206,6 +1211,7 @@ public class WxOrderServiceImpl implements WxOrderService { record.setOrderNumber(orderNumber); record.setType(EnumOrderType.MICROPAY.getCode()); record.setPayVendor(EnumPayWay.PAY_WAY_WECHAT_MA.getCode()); + record.setPayVersion(EnumPayVersion.WX_PAY_V2.getCode()); record.setProductId(user.getId()); if (cUser != null) { record.setCUserId(cUser.getId()); @@ -1262,6 +1268,7 @@ public class WxOrderServiceImpl implements WxOrderService { record.setOrderNumber(orderNumber); record.setType(EnumOrderType.PREPAIDCARD.getCode()); record.setPayVendor(EnumPayWay.PAY_WAY_PREPAIDCARD.getCode()); + record.setPayVersion(EnumPayVersion.NO_VERSION.getCode()); record.setProductId(merchant.getId()); record.setCUserId(cUserId); record.setPaymentType(EnumPayType.PAY_PAYMENT.getCode()); @@ -1779,7 +1786,7 @@ public class WxOrderServiceImpl implements WxOrderService { @Override @Transactional(propagation = Propagation.NESTED, readOnly = false, rollbackFor = {Exception.class}) - public WxCouponOrder sendFreeCouponToUser(Long userId,TenantEntity tenantinfo, Long couponId, WxCouponSendVo wxCouponSendVo,EnumPayWay payWay,Long merchantId,Long bUserId) { + public WxCouponOrder sendFreeCouponToUser(Long userId,TenantEntity tenantinfo, Long couponId, WxCouponSendVo wxCouponSendVo,EnumPayWay payWay,EnumPayVersion payVersion,Long merchantId,Long bUserId) { // check 用户状态 WxCUserBasicInfo user = null; try { @@ -1842,6 +1849,7 @@ public class WxOrderServiceImpl implements WxOrderService { record.setProductId(couponId); record.setType(EnumOrderType.COUPON.getCode()); record.setPayVendor(payWay.getCode()); + record.setPayVersion(payVersion.getCode()); record.setCUserId(user.getId()); record.setPaymentType(EnumPayType.PAY_PAYMENT.getCode()); record.setPayment(payment); @@ -1917,6 +1925,7 @@ public class WxOrderServiceImpl implements WxOrderService { record.setProductId(couponId); record.setType(EnumOrderType.COUPON.getCode()); record.setPayVendor(EnumPayWay.PAY_WAY_NOT_UNPAY_GIFTLIST.getCode()); + record.setPayVersion(EnumPayVersion.NO_VERSION.getCode()); record.setCUserId(user.getId()); record.setPaymentType(EnumPayType.PAY_PAYMENT.getCode()); record.setPayment(coupon.getSalePrice()); @@ -2558,7 +2567,7 @@ public class WxOrderServiceImpl implements WxOrderService { sharingOrder.setPayTimeEnd(wxPayOrder.getPayTimeEnd()); sharingOrder.updateTenantInfo(wxPayOrder); sharingOrder.setTransactionId(wxPayOrder.getTransactionId()); - wxProfitSharingOrderService.createSharingOrder(sharingOrder,payWay.getCode(),wxPayOrder.getMchType(),wxPayOrder.getShare()); + wxProfitSharingOrderService.createSharingOrder(sharingOrder,payWay.getCode(),wxPayOrder.getPayVersion(),wxPayOrder.getMchType(),wxPayOrder.getShare()); } else { logger.error("微信分账: 未找到payorder or merchant at orderid-" + orderId); } @@ -2782,7 +2791,7 @@ public class WxOrderServiceImpl implements WxOrderService { @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) public WxComposeOrder savePlatPushOrderForCoupon(TenantEntity tenantEntity,boolean allowUnPayOrder,EnumComposeOrder composeOrderType, - WxCUserBasicInfo user,String allExtParam,List platPushOrderList,EnumPayWay payWay) throws Exception { + WxCUserBasicInfo user,String allExtParam,List platPushOrderList,EnumPayWay payWay,EnumPayVersion payVersion) throws Exception { WxOrderServiceImpl proxy = (WxOrderServiceImpl) AopContext.currentProxy(); // 防止同一用户重复下单,1秒内 String key = new StringBuilder().append("savePlatPushOrder:").append(user.getId()).toString(); @@ -2828,12 +2837,12 @@ public class WxOrderServiceImpl implements WxOrderService { logger.info("extParam---------------------------"+extParam); lastOrder = proxy.handleSaveOrderForCouponSingle(orderDate,allowUnPayOrder,composeOrder, user, orderdto.getWxCoupon(), 1, orderdto.isPress(),orderdto.getOrderGroupId(),orderdto.getFormId(),orderdto.getShippingType(),orderdto.getAddress(),extParam, - orderdto.getWxCouponChannel(), payWay); + orderdto.getWxCouponChannel(), payWay,payVersion); } }else { lastOrder = proxy.handleSaveOrderForCouponSingle(orderDate,allowUnPayOrder,composeOrder, user, orderdto.getWxCoupon(), orderdto.getCount(), orderdto.isPress(),orderdto.getOrderGroupId(),orderdto.getFormId(),orderdto.getShippingType(),orderdto.getAddress(),orderdto.getExtParam(), - orderdto.getWxCouponChannel(), payWay); + orderdto.getWxCouponChannel(), payWay,payVersion); } } //如果没有orderId,则用lastOrder的信息 @@ -2858,7 +2867,8 @@ public class WxOrderServiceImpl implements WxOrderService { @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) - public WxComposeOrder saveOrderForCoupon(TenantEntity tenantEntity,boolean allowUnPayOrder,EnumComposeOrder composeOrderType,WxCUserBasicInfo user,List orderSave,EnumPayWay payWay) { + public WxComposeOrder saveOrderForCoupon(TenantEntity tenantEntity,boolean allowUnPayOrder,EnumComposeOrder composeOrderType,WxCUserBasicInfo user,List orderSave, + EnumPayWay payWay,EnumPayVersion payVersion) { WxOrderServiceImpl proxy = (WxOrderServiceImpl) AopContext.currentProxy(); // 防止同一用户重复下单,1秒内 String key = new StringBuilder().append("saveComposeOrder:").append(user.getId()).toString(); @@ -2888,12 +2898,12 @@ public class WxOrderServiceImpl implements WxOrderService { for (int j = 0; j < orderdto.getCount(); j++) { lastOrder = proxy.handleSaveOrderForCouponSingle(orderDate,allowUnPayOrder,composeOrder, user, orderdto.getWxCoupon(), 1, orderdto.getSignleOrder().isPressOrder(),orderdto.getSignleOrder().getOrderGroupId(),orderdto.getSignleOrder().getFormId(), - orderdto.getShippingType(),orderdto.getAddress(),null,orderdto.getWxCouponChannel(), payWay); + orderdto.getShippingType(),orderdto.getAddress(),null,orderdto.getWxCouponChannel(), payWay,payVersion); } }else { lastOrder = proxy.handleSaveOrderForCouponSingle(orderDate,allowUnPayOrder,composeOrder, user, orderdto.getWxCoupon(), orderdto.getCount(), orderdto.getSignleOrder().isPressOrder(),orderdto.getSignleOrder().getOrderGroupId(),orderdto.getSignleOrder().getFormId(), - orderdto.getShippingType(),orderdto.getAddress(),null,orderdto.getWxCouponChannel(), payWay); + orderdto.getShippingType(),orderdto.getAddress(),null,orderdto.getWxCouponChannel(), payWay,payVersion); } } //如果没有orderId,则用lastOrder的信息 @@ -2905,14 +2915,15 @@ public class WxOrderServiceImpl implements WxOrderService { @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) public WxOrder handleSaveOrderForCouponSingle(Date orderDate,boolean allowUnPayOrder,WxComposeOrder composeOrder,WxCUserBasicInfo user,WxCoupon coupon,int perCouponNumber, - boolean isPressOrder,Long orderGroupId,String formId,Integer shippinType,UserBasicInfoAddress address,String extParam,WxCouponChannel couponChannel,EnumPayWay payWay) { + boolean isPressOrder,Long orderGroupId,String formId,Integer shippinType,UserBasicInfoAddress address,String extParam,WxCouponChannel couponChannel, + EnumPayWay payWay,EnumPayVersion payVersion) { WxOrderServiceImpl proxy = (WxOrderServiceImpl) AopContext.currentProxy(); // 是否砍价 WxOrder order = null; if (checkCouponIsFree(coupon,couponChannel,shippinType)) { // 免费券 order = proxy.saveFreeOrderForCoupon(orderDate,allowUnPayOrder,composeOrder,user, coupon,perCouponNumber,couponChannel, - formId,null,extParam,payWay,shippinType,address); + formId,null,extParam,payWay,payVersion,shippinType,address); if (order != null) { // 6. 下订单完成,发送内部消息 // 下订单完成,发送内部消息 @@ -2926,7 +2937,7 @@ public class WxOrderServiceImpl implements WxOrderService { } else { // 有价券 order = proxy.saveNoFreeOrderForCoupon(orderDate,allowUnPayOrder,composeOrder,user, coupon,perCouponNumber,isPressOrder, - orderGroupId,formId,shippinType,address,extParam,couponChannel,payWay); + orderGroupId,formId,shippinType,address,extParam,couponChannel,payWay,payVersion); } // couponActionLog // try { @@ -2965,7 +2976,7 @@ public class WxOrderServiceImpl implements WxOrderService { @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) @Override public WxOrder saveFreeOrderForCoupon(Date orderDate,boolean allowUnPayOrder,WxComposeOrder composeOrder,WxCUserBasicInfo user, WxCoupon coupon,int couponNumber, - WxCouponChannel couponChannel, String formId, Long couponPasswordId,String extParam,EnumPayWay payWay, + WxCouponChannel couponChannel, String formId, Long couponPasswordId,String extParam,EnumPayWay payWay,EnumPayVersion payVersion, Integer shippingType, UserBasicInfoAddress address) { WxOrderServiceImpl proxy = (WxOrderServiceImpl) AopContext.currentProxy(); @@ -3001,6 +3012,7 @@ public class WxOrderServiceImpl implements WxOrderService { } record.setType(orderType); record.setPayVendor(payWay.getCode()); + record.setPayVersion(payVersion.getCode()); record.setOrderStatus(EnumOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()); record.setPaymentType(EnumPayType.PAY_PAYMENT.getCode()); record.setPayment(0); @@ -3034,7 +3046,8 @@ public class WxOrderServiceImpl implements WxOrderService { @Override @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) public WxOrder saveNoFreeOrderForCoupon(Date orderDate,boolean allowUnPayOrder,WxComposeOrder composeOrder,WxCUserBasicInfo user, WxCoupon coupon,int couponNumber, - boolean isPressOrder,Long orderGroupId,String formId,Integer shippinType,UserBasicInfoAddress address,String extParam,WxCouponChannel couponChannel,EnumPayWay payWay) { + boolean isPressOrder,Long orderGroupId,String formId,Integer shippinType,UserBasicInfoAddress address,String extParam,WxCouponChannel couponChannel, + EnumPayWay payWay,EnumPayVersion payVersion) { WxOrderServiceImpl proxy = (WxOrderServiceImpl) AopContext.currentProxy(); // 3. 减库存操作。所有的订单都跟减库存操作时的订单详情保持一致 @@ -3076,6 +3089,7 @@ public class WxOrderServiceImpl implements WxOrderService { WxOrder record = new WxOrder(); record.setType(orderType); record.setPayVendor(payWay.getCode()); + record.setPayVersion(payVersion.getCode()); record.setCouponChannelId(couponChannel.getId()); record.setOrderGroupId(orderGroupId); record.setFormId(formId); @@ -3148,6 +3162,7 @@ public class WxOrderServiceImpl implements WxOrderService { record.setCouponChannelId(couponChannelId); record.setType(orderType); record.setPayVendor(EnumPayWay.PAY_WAY_NOT_UNPAY_OUTER.getCode()); + record.setPayVersion(EnumPayVersion.NO_VERSION.getCode()); record.setOrderStatus(EnumOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()); record.setPaymentType(EnumPayType.PAY_PAYMENT.getCode()); record.setPayment(0); @@ -3395,8 +3410,14 @@ public class WxOrderServiceImpl implements WxOrderService { @Override - public ResultData composeSaveOrder(boolean allowUnPayOrder,EnumComposeOrder composeOrderType,List composeOrderSaveDto,Long cUserId,EnumPayWay payWay,TenantEntity tenantEntity) { + public ResultData composeSaveOrder(boolean allowUnPayOrder,EnumComposeOrder composeOrderType,List composeOrderSaveDto,Long cUserId,EnumPayWay payWay, + TenantEntity tenantEntity,WxAppinfo appinfo) { try { + + if ( null == appinfo) { + return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(),"无商品信息"); + } + if (null == composeOrderSaveDto || composeOrderSaveDto.size() <= 0 ) { return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(),"无商品信息"); } @@ -3418,9 +3439,21 @@ public class WxOrderServiceImpl implements WxOrderService { wxCUserBasicInfo,payWay,tenantEntity,i+1,singleProduct); ocsd.setWxCoupon(coupon); } + + WxPayAccount payAccount = RedisCacheUtils.getCacheObject(redisTemplate, "payAccount:"+appinfo.getPayId(), WxPayAccount.class); + if (null == payAccount) { + payAccount = wxPayAccountMapper.selectById(appinfo.getPayId()); + if (null != payAccount) { + RedisCacheUtils.cache(redisTemplate, "payAccount:"+appinfo.getPayId(), payAccount, 24*60*60); + } + } + if (null == payAccount) { + return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(),"app查询不到payAccount"); + } + WxOrderServiceImpl proxy = (WxOrderServiceImpl) AopContext.currentProxy(); try { - WxComposeOrder order = proxy.saveOrderForCoupon(tenantEntity,allowUnPayOrder,composeOrderType,wxCUserBasicInfo, composeOrderSaveDto, payWay); + WxComposeOrder order = proxy.saveOrderForCoupon(tenantEntity,allowUnPayOrder,composeOrderType,wxCUserBasicInfo, composeOrderSaveDto, payWay,payAccount.getPayVersion()); return new ResultData(order); } catch (MallinkException e) { logger.error("saveOrderForCoupon error.",e); @@ -3440,7 +3473,8 @@ public class WxOrderServiceImpl implements WxOrderService { } @Override - public ResultData platPushSaveOrder(boolean allowUnPayOrder,EnumComposeOrder composeOrderType,String allExtParam,List platPushOrderList,Long cUserId,EnumPayWay payWay,TenantEntity tenantEntity) { + public ResultData platPushSaveOrder(boolean allowUnPayOrder,EnumComposeOrder composeOrderType,String allExtParam,List platPushOrderList,Long cUserId, + EnumPayWay payWay,EnumPayVersion payVersion,TenantEntity tenantEntity) { try { if (null == platPushOrderList || platPushOrderList.size() <= 0 ) { return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(),"无商品信息"); @@ -3464,7 +3498,7 @@ public class WxOrderServiceImpl implements WxOrderService { } WxOrderServiceImpl proxy = (WxOrderServiceImpl) AopContext.currentProxy(); try { - WxComposeOrder order = proxy.savePlatPushOrderForCoupon(tenantEntity,allowUnPayOrder,composeOrderType,wxCUserBasicInfo, allExtParam,platPushOrderList, payWay); + WxComposeOrder order = proxy.savePlatPushOrderForCoupon(tenantEntity,allowUnPayOrder,composeOrderType,wxCUserBasicInfo, allExtParam,platPushOrderList, payWay,payVersion); return new ResultData(order); } catch (MallinkException e) { logger.error("saveOrderForCoupon error.",e); @@ -3543,6 +3577,7 @@ public class WxOrderServiceImpl implements WxOrderService { batchOrderQ.updateTenantInfo(wxOrder); batchOrderQ.setCUserId(wxOrder.getCUserId()); batchOrderQ.setPayVendor(wxOrder.getPayVendor()); + batchOrderQ.setPayVersion(wxOrder.getPayVersion()); List composeOrderIds = wxOrderMapper.getComposeOrderIds(wxOrder); if(composeOrderIds == null || composeOrderIds.isEmpty()){ batchOrderQ.setId(-999L); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java index 9121087a8..78d4cf36a 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java @@ -454,7 +454,7 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { for (WxOrder o : orderList) { String merchant_uid = ""; if(EnumPayMchType.DIRECT.equals(payMchType)){//直连模式记录收款商户 - merchant_uid = wxCouponChannelService.getCouponOneMerchantUid(payWay,o.getCouponChannelId(),o.getTenantId()); + merchant_uid = wxCouponChannelService.getCouponOneMerchantUid(payWay,payAccount.getPayVersion(),o.getCouponChannelId(),o.getTenantId()); if(StringUtils.isBlank(merchant_uid)){ throw new MallinkException(ErrorCode.PAY_ORDER_MERCHANT_UID_ERROR); } @@ -623,7 +623,7 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { //支付失败,更新record,支付成功,则调用 if (payResult.isSuccess()) { try { - handleMicroOrderPaySuccess(payResult.getData(), payResult.getTransactionId(),payWay,record,user, appInfo, params); + handleMicroOrderPaySuccess(payResult.getData(), payResult.getTransactionId(),payWay,payAccount,record,user, appInfo, params); }catch(Exception e) { logger.error("do handleMicroOrderPaySuccess() error.",e); try { @@ -699,7 +699,7 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { handleOrderPaySuccess(record, apiResult.getTransactionId()); //C端被动支付 }else if (payService instanceof CPassivePayService) { - handleMicroOrderPaySuccess(apiResult.getData(),apiResult.getTransactionId(),payWay, record,user,appInfo,null); + handleMicroOrderPaySuccess(apiResult.getData(),apiResult.getTransactionId(),payWay,payAccount, record,user,appInfo,null); } return new ResultData(Result.SUCCESS, "success",apiResult.getData()); }else if (status == EnumPayStatus.PAY_STATUS_ORDER_NOT_EXISTS.getCode().intValue()) { @@ -879,8 +879,8 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { * @return */ @Override - public String shareNotify(Map paramMap, EnumPayWay payWay) { - ShareNotifyAdapterResult shareResult = payServiceFactory.getPayShareAdapterService(payWay.getCode()).notify(paramMap,payWay); + public String shareNotify(Map paramMap, EnumPayWay payWay,EnumPayVersion payVersion) { + ShareNotifyAdapterResult shareResult = payServiceFactory.getPayShareAdapterService(payWay.getCode(),payVersion.getCode()).notify(paramMap,payWay); if (shareResult.isSuccess()) { // 处理支付成功 shareResult.getPayOrder().setPayEndFrom(EnumPayEndFrom.CALLBACK.getCode()); @@ -1068,11 +1068,11 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { @Override @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) - public void handleMicroOrderPaySuccess(Object result,String transcationId,EnumPayWay payWay, WxPayOrder record ,WxMerchantBUser user,WxAppinfo appInfo,PayExtraParam params) { + public void handleMicroOrderPaySuccess(Object result,String transcationId,EnumPayWay payWay,WxPayAccount payAccount, WxPayOrder record ,WxMerchantBUser user,WxAppinfo appInfo,PayExtraParam params) { // //B端操作,需要生成cUser CreateUser cUser = null; try { - cUser = payServiceFactory.getCPassivePayService(payWay.getCode()).getCUserAfterPay(result, appInfo); + cUser = payServiceFactory.getCPassivePayService(payWay.getCode(),payAccount.getPayVersion()).getCUserAfterPay(result, appInfo); } catch (Exception e1) { logger.error("创建C端用户失败: " ,e1); throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "创建C端用户失败: " + e1.getMessage()); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxProfitSharingOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxProfitSharingOrderServiceImpl.java index 9ae57bb74..79cb9bed6 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxProfitSharingOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxProfitSharingOrderServiceImpl.java @@ -260,9 +260,9 @@ public class WxProfitSharingOrderServiceImpl implements WxProfitSharingOrderServ @Override // @Transactional(isolation=Isolation.SERIALIZABLE, propagation = Propagation.REQUIRED, rollbackFor = {Exception.class}) - public ResultData createSharingOrder(WxSharingOrderDto sharingOrderDto,Integer payWay,Integer mchType,Integer share) { + public ResultData createSharingOrder(WxSharingOrderDto sharingOrderDto,Integer payWay,Integer payVersion,Integer mchType,Integer share) { - PayShareAdapterService payShareAdapterService = payServiceFactory.getPayShareAdapterService(payWay); + PayShareAdapterService payShareAdapterService = payServiceFactory.getPayShareAdapterService(payWay,payVersion); WxProfitSharingOrder record = payShareAdapterService.createSharingOrder(sharingOrderDto,mchType,share); @@ -693,7 +693,7 @@ public class WxProfitSharingOrderServiceImpl implements WxProfitSharingOrderServ public ResultData handerSharingOrder(WxProfitSharingOrder sharingOrder) { WxPayOrder payOrder = wxPayOrderMapper.selectById(sharingOrder.getOrderId(), sharingOrder.getTenantId()); if(payOrder != null && EnumPayStatus.PAY_STATUS_SUCCESS.getCode().equals(payOrder.getPayOrderStatus())){ - PayShareAdapterService payShareAdapterService = payServiceFactory.getPayShareAdapterService(payOrder.getPayVendor()); + PayShareAdapterService payShareAdapterService = payServiceFactory.getPayShareAdapterService(payOrder.getPayVendor(),payOrder.getPayVersion()); return payShareAdapterService.handerSharingOrder(payOrder,sharingOrder); }else{ return new ResultData(ErrorCode.PAY_ORDER_NOT_FOUND); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxRefundOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxRefundOrderServiceImpl.java index eddaf354f..e1df8b1ef 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRefundOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRefundOrderServiceImpl.java @@ -591,8 +591,8 @@ public class WxRefundOrderServiceImpl implements WxRefundOrderService { * @return */ @Override - public String notify(Map paramMap, EnumPayWay payWay) { - RefundNotifyAdapterResult notifyResult = payServiceFactory.getRefundPayAdapterService(payWay.getCode()).notify(paramMap, payWay); + public String notify(Map paramMap, EnumPayWay payWay,EnumPayVersion payVersion) { + RefundNotifyAdapterResult notifyResult = payServiceFactory.getRefundPayAdapterService(payWay.getCode(),payVersion.getCode()).notify(paramMap, payWay); if (!notifyResult.isSuccess()) { return notifyResult.getReturnJson(); }else { diff --git a/mallinkService/src/main/java/com/iformall/service/msg/impl/FmInsideNotifyRefundSuccessMsgServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/msg/impl/FmInsideNotifyRefundSuccessMsgServiceImpl.java index 16dd02b67..a236e8f22 100644 --- a/mallinkService/src/main/java/com/iformall/service/msg/impl/FmInsideNotifyRefundSuccessMsgServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/msg/impl/FmInsideNotifyRefundSuccessMsgServiceImpl.java @@ -3,6 +3,7 @@ package com.iformall.service.msg.impl; import com.alibaba.fastjson.JSON; import com.iformall.domain.po.msg.BaseMsg; import com.iformall.domain.po.msg.FmInsideNotifyRefundSuccessMsg; +import com.iformall.enums.EnumPayVersion; import com.iformall.enums.EnumPayWay; import com.iformall.service.WxRefundOrderService; import com.iformall.service.msg.MsgSendService; @@ -29,6 +30,6 @@ public class FmInsideNotifyRefundSuccessMsgServiceImpl implements MsgSendService public void send(BaseMsg baseMsg) throws Exception { FmInsideNotifyRefundSuccessMsg msg = (FmInsideNotifyRefundSuccessMsg)baseMsg; Map paramMap = JSON.parseObject(msg.getJsonMsg(), Map.class); - wxRefundOrderService.notify(paramMap, EnumPayWay.getEnum(msg.getPayWay())); + wxRefundOrderService.notify(paramMap, EnumPayWay.getEnum(msg.getPayWay()),EnumPayVersion.getEnum(msg.getPayVersion())); } } diff --git a/mallinkService/src/main/java/com/iformall/service/order/impl/batch/BaseBatchOrderAdapterService.java b/mallinkService/src/main/java/com/iformall/service/order/impl/batch/BaseBatchOrderAdapterService.java index 4b5517a55..6b5f6b91c 100644 --- a/mallinkService/src/main/java/com/iformall/service/order/impl/batch/BaseBatchOrderAdapterService.java +++ b/mallinkService/src/main/java/com/iformall/service/order/impl/batch/BaseBatchOrderAdapterService.java @@ -135,6 +135,7 @@ public abstract class BaseBatchOrderAdapterService implements OrderAdapterServic order.updateTenantInfo(tenantEntity); order.setPayment(payment); order.setPayVendor(payWay.getCode()); + order.setPayVersion(payVersion); order.setOrderType(composeOrderType.getCode()); order.setIsTtPoiOrder(isTtPoiOrder); order.setCreateDate(new Date()); diff --git a/mallinkService/src/main/java/com/iformall/utils/Constant.java b/mallinkService/src/main/java/com/iformall/utils/Constant.java index 4afd874e7..427fed561 100644 --- a/mallinkService/src/main/java/com/iformall/utils/Constant.java +++ b/mallinkService/src/main/java/com/iformall/utils/Constant.java @@ -60,6 +60,7 @@ public class Constant { public static final String APP_Id = "APP_Id"; public static final String APP_NAME = "APP_NAME"; + public static final String APP_INFO = "APPINFO"; public static final String LOGIN_B_USER_KEY = "LOGIN_B_USER_KEY"; diff --git a/mallinkService/src/main/resources/mapper/WxBatchOrderMapper.xml b/mallinkService/src/main/resources/mapper/WxBatchOrderMapper.xml index cc12a7cbb..0dd8e02f9 100644 --- a/mallinkService/src/main/resources/mapper/WxBatchOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxBatchOrderMapper.xml @@ -9,6 +9,7 @@ + @@ -16,7 +17,7 @@ - `id`,`tenant_id`,`parent_tenant_id`,`c_user_id`,`payment`,`ext_param`,`pay_vendor`,`order_type`,`is_tt_poi_order`,`create_date`,`update_date` + `id`,`tenant_id`,`parent_tenant_id`,`c_user_id`,`payment`,`ext_param`,`pay_vendor`,`pay_version`,`order_type`,`is_tt_poi_order`,`create_date`,`update_date` @@ -44,6 +45,9 @@ and `pay_vendor` = #{payVendor} + + and `pay_version` = #{payVersion} + and id in @@ -79,6 +83,9 @@ and o.pay_vendor = #{payVendor} + + and o.pay_version = #{payVersion} + and o.id in diff --git a/mallinkService/src/main/resources/mapper/WxBillAllMapper.xml b/mallinkService/src/main/resources/mapper/WxBillAllMapper.xml index bc3cbface..008f76410 100644 --- a/mallinkService/src/main/resources/mapper/WxBillAllMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxBillAllMapper.xml @@ -395,7 +395,7 @@ select co.id,co.tenant_id,co.parent_tenant_id,co.coupon_id,co.coupon_type,co.c_user_id,co.owner_id,co.b_user_id,co.b_merchant_id,co.order_id,co.expired_time, - co.coupon_order_status,co.create_date,co.update_date,co.coupon_price,co.verify_type,co.verify_remark,co.pay_vendor, + co.coupon_order_status,co.create_date,co.update_date,co.coupon_price,co.verify_type,co.verify_remark,co.pay_vendor,co.pay_version, co.`freight_price`,co.`shipping_type`,co.`shipping_address`,co.`shipping_status`,co.`delivery_info`,co.ext_param from wx_coupon_order co where co.tenant_id = #{tenantId} @@ -180,7 +185,7 @@ select co.id,co.tenant_id,co.parent_tenant_id,co.coupon_id,co.coupon_type,co.c_user_id,co.owner_id,co.b_user_id,co.b_merchant_id,co.expired_time,co.coupon_order_status,co.order_id, - co.create_date,co.update_date,co.coupon_price, co.verify_type, co.verify_remark,co.pay_vendor, + co.create_date,co.update_date,co.coupon_price, co.verify_type, co.verify_remark,co.pay_vendor,co.pay_version, co.`freight_price`,co.`shipping_type`,co.`shipping_address`,co.`shipping_status`,co.`delivery_info`,co.send_merchant_id,co.subsidy,co.ext_param FROM wx_coupon_order co where co.`tenant_id` = #{tenantId} @@ -782,7 +787,7 @@ select co.id,co.tenant_id,co.parent_tenant_id,co.coupon_id,co.coupon_type,co.c_user_id,co.owner_id,co.b_user_id,co.b_merchant_id, - co.order_id,co.expired_time,co.coupon_order_status,co.create_date,co.update_date,co.coupon_price,co.verify_type,co.verify_remark, co.pay_vendor, + co.order_id,co.expired_time,co.coupon_order_status,co.create_date,co.update_date,co.coupon_price,co.verify_type,co.verify_remark, co.pay_vendor,co.pay_version, co.`freight_price`,co.`shipping_type`,co.`shipping_address`,co.`shipping_status`,co.`delivery_info`,co.ext_param FROM wx_coupon_order co where co.`tenant_id` = #{tenantId} @@ -857,7 +862,7 @@ select co.id,co.tenant_id,co.parent_tenant_id,co.coupon_id,co.coupon_type,co.c_user_id,co.owner_id,co.b_user_id,co.b_merchant_id, - co.order_id,co.expired_time,co.coupon_order_status,co.create_date,co.update_date,co.coupon_price,co.verify_type,co.verify_remark,co.pay_vendor, + co.order_id,co.expired_time,co.coupon_order_status,co.create_date,co.update_date,co.coupon_price,co.verify_type,co.verify_remark,co.pay_vendor,co.pay_version, co.`freight_price`,co.`shipping_type`,co.`shipping_address`,co.`shipping_status`,co.`delivery_info`,co.ext_param from wx_coupon_order co where co.coupon_order_status = '1' @@ -897,7 +902,7 @@ select co.id,co.tenant_id,co.parent_tenant_id,co.coupon_id,co.coupon_type,co.c_user_id,co.owner_id,co.b_user_id,co.b_merchant_id,co.order_id,co.expired_time,co.coupon_order_status,co.create_date,co.update_date,co.coupon_price,co.verify_type,co.verify_remark,co.pay_vendor, - co.`freight_price`,co.`shipping_type`,co.`shipping_address`,co.`shipping_status`,co.`delivery_info`,co.ext_param + co.pay_version,co.`freight_price`,co.`shipping_type`,co.`shipping_address`,co.`shipping_status`,co.`delivery_info`,co.ext_param from wx_coupon_order co where co.id = #{id} and co.tenant_id = #{tenantId} @@ -945,7 +950,7 @@ select - co.id,co.tenant_id,co.parent_tenant_id,co.coupon_id,co.expired_time,co.coupon_order_status,co.create_date,co.update_date,co.coupon_price,co.verify_type,co.verify_remark,co.pay_vendor - from wx_coupon_order co + co.id,co.tenant_id,co.parent_tenant_id,co.coupon_id,co.expired_time,co.coupon_order_status,co.create_date,co.update_date,co.coupon_price,co.verify_type,co.verify_remark,co.pay_vendor, + co.pay_version from wx_coupon_order co where co.c_user_id = #{cUserId} and co.id = #{id} diff --git a/mallinkService/src/main/resources/mapper/WxOrderMapper.xml b/mallinkService/src/main/resources/mapper/WxOrderMapper.xml index 12ec12b52..41d95e9c0 100644 --- a/mallinkService/src/main/resources/mapper/WxOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxOrderMapper.xml @@ -11,6 +11,7 @@ + @@ -37,7 +38,7 @@ - `id`,`order_number`,`tenant_id`,`parent_tenant_id`,`c_user_id`,`coupon_channel_id`,`product_id`,`type`,`pay_vendor`,`payment_type`,`payment`,`payment_time`,`freight_price`,`order_status`,`cps_status`,`create_date`,`update_date`,`detail`,`ref_detail`, + `id`,`order_number`,`tenant_id`,`parent_tenant_id`,`c_user_id`,`coupon_channel_id`,`product_id`,`type`,`pay_vendor`,`pay_version`,`payment_type`,`payment`,`payment_time`,`freight_price`,`order_status`,`cps_status`,`create_date`,`update_date`,`detail`,`ref_detail`, `press_end_date`,`press_current_num`,`press_current_value`,`order_group_id`,`form_id`,`total_payment`,`compose_order_id`,`coupon_number`,`compose_order_type`,`shipping_type`,`shipping_address`,`parent_order_id`,`ext_param` @@ -77,6 +78,10 @@ and `pay_vendor` = #{payVendor} + + + and `pay_version` = #{payVersion} + and `payment_type` = #{paymentType} @@ -577,7 +582,7 @@ select - o.`id`,o.`order_number`,o.`tenant_id`,o.`c_user_id`,o.`coupon_channel_id`,o.`product_id`,o.`type`,o.`pay_vendor`, + o.`id`,o.`order_number`,o.`tenant_id`,o.`c_user_id`,o.`coupon_channel_id`,o.`product_id`,o.`type`,o.`pay_vendor`,o.`pay_version`, o.`payment_type`,o.`payment`,o.`payment_time`,o.`freight_price`,o.`order_status`,o.`create_date`,o.`update_date`,o.`detail`,o.`ref_detail` from wx_order o @@ -622,6 +630,9 @@ and o.pay_vendor = #{payVendor} + + + and o.pay_version = #{payVersion} and o.product_id in diff --git a/mallinkService/src/main/resources/mapper/WxPayOrderMapper.xml b/mallinkService/src/main/resources/mapper/WxPayOrderMapper.xml index 550df01dc..0dc33931e 100644 --- a/mallinkService/src/main/resources/mapper/WxPayOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxPayOrderMapper.xml @@ -19,6 +19,7 @@ + @@ -40,7 +41,7 @@ `id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`order_id`,`c_user_id`,`open_id`,`b_user_id`, `auth_code`,`ip`,`pay_amount`,`pay_time_start`,`pay_time_end`, - `prepay_id`,`transaction_id`,`pay_vendor`,`tt_pay_way`,`pay_order_no`, + `prepay_id`,`transaction_id`,`pay_vendor`,`pay_version`,`tt_pay_way`,`pay_order_no`, `pay_order_status`,`pay_param`,`mch_type`,`share`,`share_amount`,`rate_amount`,`fail_reason`, `pos_pay_order_id`,`pos_pay_order_time`,`pos_payment_type`,`pos_pay_order_no`,`pos_pay_des`,`compose_order`, `child_order_share` @@ -115,6 +116,10 @@ and `pay_vendor` = #{payVendor} + + + and `pay_version` = #{payVersion} + and `tt_pay_way` = #{ttPayWay} @@ -230,6 +235,7 @@ + @@ -244,7 +250,7 @@ p.`id`,p.`tenant_id`,p.`parent_tenant_id`,p.`create_time`,p.`update_time`,p.`order_id`,p.`c_user_id`,p.`open_id`,p.`b_user_id`, p.`auth_code`,p.`ip`,p.`pay_amount`,p.`pay_time_start`,p.`pay_time_end`, - p.`prepay_id`,p.`transaction_id`,p.`pay_vendor`,p.`pay_order_no`, + p.`prepay_id`,p.`transaction_id`,p.`pay_vendor`,p.`pay_version`,p.`pay_order_no`, p.`pay_order_status`,p.`share`,p.`share_amount`,p.`rate_amount`,p.`fail_reason`, a.`app_id`, a.`pay_id`