mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-06-13 03:39:55 +08:00
update 订单分账逻辑
This commit is contained in:
@@ -35,7 +35,7 @@ import com.jsowell.common.util.*;
|
|||||||
import com.jsowell.common.util.Cp56Time2a.Cp56Time2aUtil;
|
import com.jsowell.common.util.Cp56Time2a.Cp56Time2aUtil;
|
||||||
import com.jsowell.common.util.http.HttpUtils;
|
import com.jsowell.common.util.http.HttpUtils;
|
||||||
import com.jsowell.common.util.id.IdUtils;
|
import com.jsowell.common.util.id.IdUtils;
|
||||||
import com.jsowell.common.util.id.SnUtils;
|
import com.jsowell.pile.util.SnUtils;
|
||||||
import com.jsowell.common.util.id.SnowflakeIdWorker;
|
import com.jsowell.common.util.id.SnowflakeIdWorker;
|
||||||
import com.jsowell.common.util.ip.AddressUtils;
|
import com.jsowell.common.util.ip.AddressUtils;
|
||||||
import com.jsowell.netty.handler.HeartbeatRequestHandler;
|
import com.jsowell.netty.handler.HeartbeatRequestHandler;
|
||||||
|
|||||||
@@ -55,7 +55,6 @@ import org.apache.commons.collections4.CollectionUtils;
|
|||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.beans.factory.annotation.Value;
|
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
@@ -92,12 +91,6 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private RedisCache redisCache;
|
private RedisCache redisCache;
|
||||||
|
|
||||||
@Value("${adapay.jsowell.appId}")
|
|
||||||
private String ADAPAY_APP_ID;
|
|
||||||
|
|
||||||
@Value("${adapay.callback}")
|
|
||||||
private String ADAPAY_CALLBACK_URL;
|
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private WxAppletRemoteService wxAppletRemoteService;
|
private WxAppletRemoteService wxAppletRemoteService;
|
||||||
|
|
||||||
@@ -701,7 +694,10 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
|
|||||||
dto.setOrderDetail(orderDetail);
|
dto.setOrderDetail(orderDetail);
|
||||||
transactionService.doUpdateOrder(dto);
|
transactionService.doUpdateOrder(dto);
|
||||||
|
|
||||||
// 需要退款的情况
|
// 订单支付结算
|
||||||
|
orderPaymentSettlement(orderBasicInfo);
|
||||||
|
|
||||||
|
// 退款逻辑/需要退款的情况
|
||||||
BigDecimal residue = orderBasicInfo.getRefundAmount();
|
BigDecimal residue = orderBasicInfo.getRefundAmount();
|
||||||
if (residue.compareTo(BigDecimal.ZERO) > 0) {
|
if (residue.compareTo(BigDecimal.ZERO) > 0) {
|
||||||
// 执行退款逻辑
|
// 执行退款逻辑
|
||||||
@@ -733,6 +729,29 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
|
|||||||
logger.info("结算订单end:{} OrderTransactionDTO:{}", orderBasicInfo.getOrderCode(), JSONObject.toJSONString(dto));
|
logger.info("结算订单end:{} OrderTransactionDTO:{}", orderBasicInfo.getOrderCode(), JSONObject.toJSONString(dto));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 订单分账逻辑
|
||||||
|
* 订单结算完成,就执行分账
|
||||||
|
* 清分账单生成逻辑改为当天第一笔结算后就新建,后面的产生的订单,追加更新
|
||||||
|
*/
|
||||||
|
private OrderSettleResult orderPaymentSettlement(OrderBasicInfo orderBasicInfo) {
|
||||||
|
String appId = "";
|
||||||
|
AdapayMemberAccount adapayMemberAccount = null;
|
||||||
|
OrderSettleResult orderSettleResult = null;
|
||||||
|
try {
|
||||||
|
if (OrderPayModeEnum.PAYMENT_OF_BALANCE.getValue().equals(orderBasicInfo.getPayMode())) {
|
||||||
|
// 余额支付的订单
|
||||||
|
orderSettleResult = doBalancePayment(orderBasicInfo, adapayMemberAccount, appId);
|
||||||
|
} else {
|
||||||
|
// 在线支付,进行支付确认分账
|
||||||
|
orderSettleResult = doPaymentConfirm(orderBasicInfo, adapayMemberAccount, appId);
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
logger.error("订单交易确认失败:{}", orderBasicInfo.getOrderCode(), e);
|
||||||
|
}
|
||||||
|
return orderSettleResult;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 返回更新后的OrderBasicInfo对象
|
* 返回更新后的OrderBasicInfo对象
|
||||||
* 专用方法,其他地方如果要用请仔细检查
|
* 专用方法,其他地方如果要用请仔细检查
|
||||||
|
|||||||
Reference in New Issue
Block a user