update 订单详情接口

This commit is contained in:
Guoqs
2024-08-06 17:04:28 +08:00
parent 602a3868db
commit 155e67ef85
8 changed files with 86 additions and 8 deletions

View File

@@ -8,6 +8,7 @@ import com.jsowell.common.constant.CacheConstants;
import com.jsowell.common.constant.Constants;
import com.jsowell.common.core.redis.RedisCache;
import com.jsowell.common.core.text.Convert;
import com.jsowell.common.enums.adapay.AdapayPayChannelEnum;
import com.jsowell.common.enums.ykc.OrderPayModeEnum;
import com.jsowell.common.enums.ykc.OrderPayRecordEnum;
import com.jsowell.common.enums.ykc.PaymentInstitutionsEnum;
@@ -94,7 +95,9 @@ public class OrderPayRecordServiceImpl implements OrderPayRecordService {
/**
* 查询订单支付信息
* 加缓存
*/
@Override
public List<OrderPayRecordVO> selectOrderPayRecordList(String orderCode) {
// 缓存
String redisKey = CacheConstants.SELECT_ORDER_PAY_INFO_LIST + orderCode;
@@ -116,9 +119,54 @@ public class OrderPayRecordServiceImpl implements OrderPayRecordService {
}
for (OrderPayRecordVO orderPayRecordVO : resultList) {
orderPayRecordVO.setPayModeDesc(OrderPayRecordEnum.getPayModeDesc(orderPayRecordVO.getPayMode()));
orderPayRecordVO.setPayChannelDesc(AdapayPayChannelEnum.getLabelByValue(orderPayRecordVO.getPayChannel()));
// 支付方式1-本金余额支付2-赠送余额支付3-白名单支付4-微信支付5-支付宝支付)
String payMode = orderPayRecordVO.getPayMode();
if (StringUtils.equals(payMode, OrderPayRecordEnum.PRINCIPAL_BALANCE_PAYMENT.getValue())
|| StringUtils.equals(payMode, OrderPayRecordEnum.GIFT_BALANCE_PAYMENT.getValue())) {
// 使用余额支付
orderPayRecordVO.setPayMode(OrderPayModeEnum.PAYMENT_OF_BALANCE.getValue());
String payModeDesc = null;
if (StringUtils.isNotBlank(OrderPayRecordEnum.getPayModeDesc(payMode))) {
payModeDesc = OrderPayRecordEnum.getPayModeDesc(payMode);
} else {
payModeDesc = OrderPayModeEnum.PAYMENT_OF_BALANCE.getValue();
}
orderPayRecordVO.setPayModeDesc(payModeDesc);
} else if (StringUtils.equals(payMode, OrderPayRecordEnum.WECHATPAY_PAYMENT.getValue())) {
// 使用微信支付
orderPayRecordVO.setPayMode(OrderPayModeEnum.PAYMENT_OF_WECHATPAY.getValue());
orderPayRecordVO.setPayModeDesc(OrderPayModeEnum.PAYMENT_OF_WECHATPAY.getLabel());
// 判断是微信支付还是汇付支付
String paymentInstitutions = orderPayRecordVO.getAcquirer();
if (StringUtils.equals(paymentInstitutions, PaymentInstitutionsEnum.WECHAT_PAY.getValue())) {
// 查微信支付回调记录
WxpayCallbackRecord wxpayCallbackRecord = wxpayCallbackRecordService.selectByOrderCode(orderCode);
if (wxpayCallbackRecord != null) {
orderPayRecordVO.setOutTradeNo(wxpayCallbackRecord.getOutTradeNo());
orderPayRecordVO.setTransactionId(wxpayCallbackRecord.getTransactionId());
}
} else if (StringUtils.equals(paymentInstitutions, PaymentInstitutionsEnum.ADAPAY.getValue())) {
List<PaymentInfo> paymentInfos = parseDeductionRecord(orderPayRecordVO.getDeductionRecord());
// 查询汇付支付回调
// AdapayCallbackRecord adapayCallbackRecord = adapayCallbackRecordService.selectByOrderCode(orderCode);
AdapayCallbackRecord adapayCallbackRecord = adapayCallbackRecordService.selectByPaymentId(paymentInfos.get(0).getPaymentId());
if (adapayCallbackRecord != null) {
orderPayRecordVO.setOutTradeNo(adapayCallbackRecord.getPaymentId());
orderPayRecordVO.setTransactionId(adapayCallbackRecord.getOutTransId());
}
}
} else if (StringUtils.equals(payMode, OrderPayRecordEnum.WHITELIST_PAYMENT.getValue())) {
// 使用白名单支付
orderPayRecordVO.setPayMode(OrderPayModeEnum.PAYMENT_OF_WHITELIST.getValue());
orderPayRecordVO.setPayModeDesc(OrderPayModeEnum.PAYMENT_OF_WHITELIST.getLabel());
}
}
redisCache.setCacheList(redisKey, resultList);
redisCache.expire(redisKey, CacheConstants.cache_expire_time_1d);
return resultList;
}
@@ -172,8 +220,8 @@ public class OrderPayRecordServiceImpl implements OrderPayRecordService {
// 使用余额支付
payInfo.setPayMode(OrderPayModeEnum.PAYMENT_OF_BALANCE.getValue());
String payModeDesc = null;
if (StringUtils.isNotBlank(OrderPayRecordEnum.getPayModeDescription(payMode))) {
payModeDesc = OrderPayRecordEnum.getPayModeDescription(payMode);
if (StringUtils.isNotBlank(OrderPayRecordEnum.getPayModeDesc(payMode))) {
payModeDesc = OrderPayRecordEnum.getPayModeDesc(payMode);
} else {
payModeDesc = OrderPayModeEnum.PAYMENT_OF_BALANCE.getValue();
}