Просмотр исходного кода

fix pay v3

release_toaliyun_real
zhengfangyuan 3 лет назад
Родитель
Сommit
22ebf43e44
6 измененных файлов: 14 добавлений и 5 удалений
  1. +3
    -3
      mallinkBApi/src/main/java/com/iformall/controller/WxMicroPayController.java
  2. +1
    -0
      mallinkCApi/src/main/java/com/iformall/controller/WxPayOrderController.java
  3. +3
    -0
      mallinkPosApi/src/main/java/com/iformall/service/impl/PosServiceImpl.java
  4. +2
    -1
      mallinkService/src/main/java/com/iformall/service/WxCouponOrderService.java
  5. +2
    -1
      mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java
  6. +3
    -0
      mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java

+ 3
- 3
mallinkBApi/src/main/java/com/iformall/controller/WxMicroPayController.java Просмотреть файл

@@ -386,11 +386,11 @@ public class WxMicroPayController extends BaseController {
String couponOrderIdStr = paramMap.get("couponOrderId");
String authCode = paramMap.get("authCode");
String payPriceStr = paramMap.get("payPrice");
return saveMicopayPayOrder(orderIdStr, couponOrderIdStr, authCode, payPriceStr, EnumPayWay.PAY_WAY_WECHAT_MA, request);
return saveMicopayPayOrder(orderIdStr, couponOrderIdStr, authCode, payPriceStr, EnumPayWay.PAY_WAY_WECHAT_MA,EnumPayVersion.WX_PAY_V2, request);
}

private ResultData saveMicopayPayOrder(String orderIdStr,String couponOrderIdStr,String authCode,String payPriceStr,
EnumPayWay payWay, HttpServletRequest request) {
EnumPayWay payWay,EnumPayVersion payVersion, HttpServletRequest request) {
WxMerchantBUser user = getLoginBUser();
if (StringUtils.isBlank(orderIdStr)) {
logger.error("orderId不能为空");
@@ -456,7 +456,7 @@ public class WxMicroPayController extends BaseController {
Integer remainPrice = payPrice;
if (wxCouponOrder != null) {
try {
couponPayOrder = wxCouponOrderService.microPayPreVerify(composeOrder, wxCouponOrder, wxMerchantBUser, payPrice,payWay,ipStr,authCode);
couponPayOrder = wxCouponOrderService.microPayPreVerify(composeOrder, wxCouponOrder, wxMerchantBUser, payPrice,payWay,payVersion,ipStr,authCode);
//remainPrice = microOrder.getPayment() - couponPayOrder.getPayAmount();
remainPrice = couponPayOrder.getPayAmount();
// 更新实际支付金额


+ 1
- 0
mallinkCApi/src/main/java/com/iformall/controller/WxPayOrderController.java Просмотреть файл

@@ -204,6 +204,7 @@ public class WxPayOrderController extends BaseController {
payOrder.setFailReason(reasonStr);
payOrder.updateTenantInfo(getTenantInfo());
payOrder.setPayVendor(getPayWay().getCode());
payOrder.setPayVersion(getPayVersion().getCode());

try {
//有价券支付成功


+ 3
- 0
mallinkPosApi/src/main/java/com/iformall/service/impl/PosServiceImpl.java Просмотреть файл

@@ -2124,6 +2124,7 @@ public class PosServiceImpl implements PosService {
payOrder.setPayOrderNo(String.valueOf(payOrderId));
payOrder.setPayAmount(neuPaymentAmount);
payOrder.setPayVendor(EnumPayWay.PAY_WAY_POS_NEU.getCode());
payOrder.setPayVersion(EnumPayVersion.NEU_POS_V1.getCode());
payOrder.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode());
payOrder.setShare(EnumPayShare.NO.getCode());
payOrder.setPayFrom(EnumPayFrom.POS.getCode());
@@ -2223,6 +2224,7 @@ public class PosServiceImpl implements PosService {
payOrder.setPayOrderNo(String.valueOf(payOrderId));
payOrder.setPayAmount(neuPaymentAmount);
payOrder.setPayVendor(EnumPayWay.PAY_WAY_POS_NEU.getCode());
payOrder.setPayVersion(EnumPayVersion.NEU_POS_V1.getCode());
payOrder.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode());
payOrder.setShare(EnumPayShare.NO.getCode());
payOrder.setPayFrom(EnumPayFrom.POS.getCode());
@@ -2298,6 +2300,7 @@ public class PosServiceImpl implements PosService {
payOrder.setPayOrderNo(String.valueOf(payOrderId));
payOrder.setPayAmount(neuPaymentAmount);
payOrder.setPayVendor(EnumPayWay.PAY_WAY_POS_NEU.getCode());
payOrder.setPayVersion(EnumPayVersion.NEU_POS_V1.getCode());
payOrder.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode());
payOrder.setShare(EnumPayShare.NO.getCode());
payOrder.setPayFrom(EnumPayFrom.POS.getCode());


+ 2
- 1
mallinkService/src/main/java/com/iformall/service/WxCouponOrderService.java Просмотреть файл

@@ -7,6 +7,7 @@ import com.iformall.domain.po.*;
import com.iformall.domain.po.base.TenantEntity;
import com.iformall.domain.vo.*;
import com.iformall.enums.EnumCouponVerifyType;
import com.iformall.enums.EnumPayVersion;
import com.iformall.enums.EnumPayWay;
import com.iformall.service.order.entity.WxComposeOrder;

@@ -204,7 +205,7 @@ public interface WxCouponOrderService {
*/
JSONArray queryMicroPayCouponOrder(WxMerchantBUser user, WxCUserBasicInfo cUser, Integer price);

WxPayOrder microPayPreVerify(WxComposeOrder composeOrder, WxCouponOrder couponOrder, WxMerchantBUser bUser, Integer price, EnumPayWay payWay,String ipstr,String authCode);
WxPayOrder microPayPreVerify(WxComposeOrder composeOrder, WxCouponOrder couponOrder, WxMerchantBUser bUser, Integer price, EnumPayWay payWay,EnumPayVersion payVersion,String ipstr,String authCode);

Integer microPayVerify(WxMerchantBUser bUser, Long couponOrderId,EnumPayWay payWay);



+ 2
- 1
mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java Просмотреть файл

@@ -2552,7 +2552,7 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService {

@Override
@Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class})
public WxPayOrder microPayPreVerify(WxComposeOrder composeOrder, WxCouponOrder couponOrder, WxMerchantBUser bUser, Integer payPrice, EnumPayWay payWay,String ipstr,String authCode) {
public WxPayOrder microPayPreVerify(WxComposeOrder composeOrder, WxCouponOrder couponOrder, WxMerchantBUser bUser, Integer payPrice, EnumPayWay payWay,EnumPayVersion payVersion,String ipstr,String authCode) {
// 1. 获取券信息
WxCoupon wxCoupon = wxCouponMapper.selectById(couponOrder.getCouponId(),couponOrder.getTenantId());
if (wxCoupon == null) {
@@ -2700,6 +2700,7 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService {
// payOrder.setPayAmount(microOrder.getPayment());
// }
payOrder.setPayVendor(payWay.getCode());
payOrder.setPayVersion(payVersion.getCode());
payOrder.setPayOrderStatus(EnumPayStatus.PAY_STATUS_WAIT.getCode());
payOrder.setShare(shareCode);
if (shareCode.intValue() == EnumPayShare.YES.getCode().intValue()) {


+ 3
- 0
mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java Просмотреть файл

@@ -428,6 +428,7 @@ public class WxPayOrderServiceImpl implements WxPayOrderService {
record.setPayAmount(composeOrder.getPayment());
record.setPayFrom(payWay.getCode());
record.setPayVendor(payWay.getCode());
record.setPayVersion(payAccount.getPayVersion());
record.setPayOrderStatus(EnumPayStatus.PAY_STATUS_WAIT.getCode());
record.setMchType(payMchType.getCode());
record.setShare(isShare.getCode());
@@ -573,6 +574,7 @@ public class WxPayOrderServiceImpl implements WxPayOrderService {
record.setPayOrderNo(payOrderNo);
record.setPayAmount(record.getPayAmount());
record.setPayVendor(payWay.getCode());
record.setPayVersion(payAccount.getPayVersion());
record.setPayOrderStatus(EnumPayStatus.PAY_STATUS_WAIT.getCode());
record.setShare(isShare.getCode());
record.setComposeOrder(EnumComposeOrder.SINGLE.getCode());
@@ -1126,6 +1128,7 @@ public class WxPayOrderServiceImpl implements WxPayOrderService {
unPayOrder.setOrderId(composeOrder.getMainOrderId());
unPayOrder.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode());
unPayOrder.setPayVendor(payWay.getCode());
unPayOrder.setPayVersion(payAccount.getPayVersion());
wxPayOrderMapper.updateById(unPayOrder);
} catch (Exception e) {
logger.error("支付订单数据库更新失败: " + e.getMessage());


Загрузка…
Отмена
Сохранить