admin
2021-02-19 58577bae968f2a10232bc8b3c04910b93ea3c69a
src/main/java/com/yeshi/buwan/controller/WXController.java
@@ -1,7 +1,5 @@
package com.yeshi.buwan.controller;
import com.yeshi.buwan.domain.vip.VIPOrderRecord;
import com.yeshi.buwan.exception.vip.VIPException;
import com.yeshi.buwan.service.inter.vip.VIPService;
import com.yeshi.buwan.util.StringUtil;
import com.yeshi.buwan.util.user.VipUtil;
@@ -13,7 +11,6 @@
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.yeshi.utils.entity.wx.WXAPPInfo;
import org.yeshi.utils.wx.WXPayV3Util;
import javax.annotation.Resource;
import javax.crypto.Cipher;
@@ -30,7 +27,6 @@
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
import java.util.Base64;
import java.util.Date;
@Controller
@RequestMapping("wx")
@@ -108,18 +104,9 @@
                String tradeState = decript.optString("trade_state");
                //支付成功
                if (tradeState.equalsIgnoreCase("SUCCESS")) {
                    boolean isPaySuccess = WXPayV3Util.isPaySuccess(outTradeNo, wxappInfo);
                    if (isPaySuccess) {
                        BigDecimal money = new BigDecimal(decript.optJSONObject("amount").optInt("total")).divide(new BigDecimal(100), 2, RoundingMode.FLOOR);
                        String id = VIPOrderUtil.getIdFromOutOrderNo(outTradeNo);
                        try {
                            vipService.paySuccess(id, VIPOrderRecord.PAY_WAY_WX, money, new Date());
                        } catch (VIPException e) {
                            logger.error("订单支付成功处理出错:{}", id, e);
                        }
                    }
                    String id = VIPOrderUtil.getIdFromOutOrderNo(outTradeNo);
                    vipService.checkOrderPayState(id);
                }
                break;
        }
    }