@ -8,6 +8,8 @@ import cn.binarywang.wx.miniapp.config.impl.WxMaDefaultConfigImpl;
import cn.hutool.core.date.DateUtil ;
import cn.hutool.core.util.DesensitizedUtil ;
import com.github.binarywang.wxpay.bean.notify.WxPayOrderNotifyResult ;
import com.github.binarywang.wxpay.bean.result.WxPayOrderQueryResult ;
import com.github.binarywang.wxpay.exception.WxPayException ;
import jakarta.annotation.Resource ;
import lombok.extern.slf4j.Slf4j ;
import me.chanjar.weixin.common.error.WxErrorException ;
@ -189,7 +191,6 @@ public class OrderServiceImpl implements OrderService {
public void xcxSendNianfeiChannelOrder ( String orderNo , String outTradeNo , String openId , String itemDesc ) {
try {
AllOrderVo allOrderVo = allOrderService . queryByChannelOrder ( orderNo ) ;
SysClientVo sysClientVo = sysClientService . queryByClientId ( "632c661437d8e1da0c06bdddbaf6ed17" ) ;
WxMaService wxMaService = new WxMaServiceImpl ( ) ;
WxMaDefaultConfigImpl wxMaDefaultConfig = new WxMaDefaultConfigImpl ( ) ;
@ -266,11 +267,10 @@ public class OrderServiceImpl implements OrderService {
}
@Override
public void xcxSend ( Long orderId ) throws WxErrorException {
public void xcxSend ( Long orderId ) throws WxErrorException , WxPayException {
ProductOrderVo productOrderVo = productOrderService . queryById ( orderId ) ;
AllOrderVo allOrderVo = allOrderService . queryByProductOrderIdAndPayStatusAndOrderType ( orderId , "1" , "01" ) ;
Long userId = allOrderVo . getUserId ( ) ;
SysSocialVo sysSocialVo = sysSocialService . selectByUserIdAndSource ( userId , "wechat_mini_program" ) ;
WxPayOrderQueryResult wxPayOrderQueryResult = productOrderService . wxQueryOrder ( allOrderVo . getChannelOrder ( ) ) ;
SysClientVo sysClientVo = sysClientService . queryByClientId ( "632c661437d8e1da0c06bdddbaf6ed17" ) ;
WxMaService wxMaService = new WxMaServiceImpl ( ) ;
WxMaDefaultConfigImpl wxMaDefaultConfig = new WxMaDefaultConfigImpl ( ) ;
@ -278,7 +278,7 @@ public class OrderServiceImpl implements OrderService {
wxMaDefaultConfig . setAppid ( sysClientVo . getClientKey ( ) ) ;
wxMaService . setWxMaConfig ( wxMaDefaultConfig ) ;
WxMaShopOrderInfo wxMaShopOrderInfo = new WxMaShopOrderInfo ( ) ;
wxMaShopOrderInfo . setOpenid ( sysSocialVo . getOpenI d( ) ) ;
wxMaShopOrderInfo . setOpenid ( wxPayOrderQueryResult . getOpeni d( ) ) ;
WxMaOrderShippingInfoUploadRequest wxMaOrderShippingInfoUploadRequest = new WxMaOrderShippingInfoUploadRequest ( ) ;
OrderKeyBean orderKey = new OrderKeyBean ( ) ;
orderKey . setOrderNumberType ( 1 ) ;
@ -287,7 +287,7 @@ public class OrderServiceImpl implements OrderService {
wxMaOrderShippingInfoUploadRequest . setOrderKey ( orderKey ) ;
wxMaOrderShippingInfoUploadRequest . setUploadTime ( DateUtil . format ( new Date ( ) , "yyyy-MM-dd'T'HH:mm:ss.SSS'+08:00'" ) ) ;
PayerBean payer = new PayerBean ( ) ;
payer . setOpenid ( sysSocialVo . getOpenI d( ) ) ;
payer . setOpenid ( wxPayOrderQueryResult . getOpeni d( ) ) ;
wxMaOrderShippingInfoUploadRequest . setPayer ( payer ) ;
ArrayList < ShippingListBean > shippingList = new ArrayList < > ( ) ;
List < ProductOrderItemsVo > itemsList = productOrderVo . getItemsList ( ) ;
@ -313,12 +313,12 @@ public class OrderServiceImpl implements OrderService {
@Override
public void xcxSendChannelOrder ( String orderNo ) throws WxErrorException {
public void xcxSendChannelOrder ( String orderNo ) throws WxErrorException , WxPayException {
AllOrderVo allOrderVo = allOrderService . queryByChannelOrder ( orderNo ) ;
ProductOrderVo productOrderVo = productOrderService . queryById ( allOrderVo . getOrderId ( ) ) ;
WxPayOrderQueryResult wxPayOrderQueryResult = productOrderService . wxQueryOrder ( orderNo ) ;
String openid = wxPayOrderQueryResult . getOpenid ( ) ;
if ( productOrderVo ! = null ) {
Long userId = allOrderVo . getUserId ( ) ;
SysSocialVo sysSocialVo = sysSocialService . selectByUserIdAndSource ( userId , "wechat_mini_program" ) ;
SysClientVo sysClientVo = sysClientService . queryByClientId ( "632c661437d8e1da0c06bdddbaf6ed17" ) ;
WxMaService wxMaService = new WxMaServiceImpl ( ) ;
WxMaDefaultConfigImpl wxMaDefaultConfig = new WxMaDefaultConfigImpl ( ) ;
@ -326,7 +326,7 @@ public class OrderServiceImpl implements OrderService {
wxMaDefaultConfig . setAppid ( sysClientVo . getClientKey ( ) ) ;
wxMaService . setWxMaConfig ( wxMaDefaultConfig ) ;
WxMaShopOrderInfo wxMaShopOrderInfo = new WxMaShopOrderInfo ( ) ;
wxMaShopOrderInfo . setOpenid ( sysSocialVo . getOpenId ( ) ) ;
wxMaShopOrderInfo . setOpenid ( openid ) ;
WxMaOrderShippingInfoUploadRequest wxMaOrderShippingInfoUploadRequest = new WxMaOrderShippingInfoUploadRequest ( ) ;
OrderKeyBean orderKey = new OrderKeyBean ( ) ;
orderKey . setOrderNumberType ( 1 ) ;
@ -335,7 +335,7 @@ public class OrderServiceImpl implements OrderService {
wxMaOrderShippingInfoUploadRequest . setOrderKey ( orderKey ) ;
wxMaOrderShippingInfoUploadRequest . setUploadTime ( DateUtil . format ( new Date ( ) , "yyyy-MM-dd'T'HH:mm:ss.SSS'+08:00'" ) ) ;
PayerBean payer = new PayerBean ( ) ;
payer . setOpenid ( sysSocialVo . getOpenId ( ) ) ;
payer . setOpenid ( openid ) ;
wxMaOrderShippingInfoUploadRequest . setPayer ( payer ) ;
ArrayList < ShippingListBean > shippingList = new ArrayList < > ( ) ;
List < ProductOrderItemsVo > itemsList = productOrderVo . getItemsList ( ) ;