调试订单临时接口

This commit is contained in:
Guoqs
2025-04-29 11:30:35 +08:00
parent fda771f88e
commit 58c1500c36
2 changed files with 38 additions and 8 deletions

View File

@@ -768,8 +768,8 @@ public class TempController extends BaseController {
RestApiResponse<?> response; RestApiResponse<?> response;
try { try {
// 调试结算订单逻辑 // 调试结算订单逻辑
tempService.debugOrder(dto); Map<String, Object> resultMap = tempService.debugOrder(dto);
response = new RestApiResponse<>(); response = new RestApiResponse<>(resultMap);
} catch (Exception e) { } catch (Exception e) {
logger.error("调试结算订单逻辑V2error,", e); logger.error("调试结算订单逻辑V2error,", e);
response = new RestApiResponse<>(); response = new RestApiResponse<>();

View File

@@ -44,6 +44,7 @@ import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.math.RoundingMode; import java.math.RoundingMode;
import java.text.MessageFormat;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
@@ -1063,15 +1064,23 @@ public class TempService {
* 调试订单 * 调试订单
* @param dto * @param dto
*/ */
public void debugOrder(DebugOrderDTO dto) { public Map<String, Object> debugOrder(DebugOrderDTO dto) {
if (dto == null || StringUtils.isBlank(dto.getOrderCode())) { Map<String, Object> resultMap = Maps.newHashMap();
String orderCode = dto.getOrderCode();
if (dto == null || StringUtils.isBlank(orderCode)) {
logger.info("debugOrder, 参数为空直接放回"); logger.info("debugOrder, 参数为空直接放回");
return; return resultMap;
} }
resultMap.put("orderCode", orderCode);
resultMap.put("reCalculateFlag", dto.getReCalculateFlag());
resultMap.put("reRefundFlag", dto.getReRefundFlag());
resultMap.put("reSplitFlag", dto.getReSplitFlag());
// 根据订单号查询订单信息 // 根据订单号查询订单信息
OrderBasicInfo orderBasicInfo = orderBasicInfoService.getOrderInfoByOrderCode(dto.getOrderCode()); OrderBasicInfo orderBasicInfo = orderBasicInfoService.getOrderInfoByOrderCode(orderCode);
OrderDetail orderDetail = orderBasicInfoService.getOrderDetailByOrderCode(dto.getOrderCode()); OrderDetail orderDetail = orderBasicInfoService.getOrderDetailByOrderCode(orderCode);
// 是否重新计算 // 是否重新计算
if (StringUtils.equals(dto.getReCalculateFlag(), "1")) { if (StringUtils.equals(dto.getReCalculateFlag(), "1")) {
@@ -1107,16 +1116,24 @@ public class TempService {
// 计算订单折扣 // 计算订单折扣
programLogic.calculateOrderDiscountsV2(orderBasicInfo, orderDetail); programLogic.calculateOrderDiscountsV2(orderBasicInfo, orderDetail);
logger.info("debugOrder重新计算订单, orderCode:{}, 支付金额:{}, 消费金额:{}, 折扣金额:{}, 退款金额:{}, 结算金额:{}", String message = MessageFormat.format("debugOrder重新计算订单, orderCode:{0}, 支付金额:{1}, 消费金额:{2}, 折扣金额:{3}, 退款金额:{4}, 结算金额:{5}",
orderBasicInfo.getOrderCode(), orderBasicInfo.getPayAmount(), orderBasicInfo.getOrderAmount(), orderBasicInfo.getOrderCode(), orderBasicInfo.getPayAmount(), orderBasicInfo.getOrderAmount(),
orderBasicInfo.getDiscountAmount(), orderBasicInfo.getRefundAmount(), orderBasicInfo.getSettleAmount()); orderBasicInfo.getDiscountAmount(), orderBasicInfo.getRefundAmount(), orderBasicInfo.getSettleAmount());
// logger.info("debugOrder重新计算订单, orderCode:{}, 支付金额:{}, 消费金额:{}, 折扣金额:{}, 退款金额:{}, 结算金额:{}",
// orderBasicInfo.getOrderCode(), orderBasicInfo.getPayAmount(), orderBasicInfo.getOrderAmount(),
// orderBasicInfo.getDiscountAmount(), orderBasicInfo.getRefundAmount(), orderBasicInfo.getSettleAmount());
logger.info(message);
// 更新数据库 // 更新数据库
OrderTransactionDTO orderTransactionDTO = new OrderTransactionDTO(); OrderTransactionDTO orderTransactionDTO = new OrderTransactionDTO();
orderTransactionDTO.setOrderBasicInfo(orderBasicInfo); orderTransactionDTO.setOrderBasicInfo(orderBasicInfo);
orderTransactionDTO.setOrderDetail(orderDetail); orderTransactionDTO.setOrderDetail(orderDetail);
transactionService.doUpdateOrder(orderTransactionDTO); transactionService.doUpdateOrder(orderTransactionDTO);
resultMap.put("reCalculateFlagResult", message);
} }
} else {
resultMap.put("reCalculateFlagResult", orderCode + "本次未重新计算订单");
} }
// 组装after参数 // 组装after参数
@@ -1142,7 +1159,13 @@ public class TempService {
} catch (Exception e) { } catch (Exception e) {
logger.error("debugOrder-订单:{}, 订单退款,汇付退款异常", afterSettleOrderDTO.getOrderCode(), e); logger.error("debugOrder-订单:{}, 订单退款,汇付退款异常", afterSettleOrderDTO.getOrderCode(), e);
} }
// logger.info("debugOrder-订单:{}, 订单退款,汇付退款成功", afterSettleOrderDTO.getOrderCode());
String message = MessageFormat.format("debugOrder-订单:{0}, 订单退款,汇付退款成功", afterSettleOrderDTO.getOrderCode());
resultMap.put("reRefundFlagResult", message);
} else {
resultMap.put("reRefundFlagResult", orderCode + "本次未重新退款");
} }
// 是否重新分账 // 是否重新分账
if (StringUtils.equals(dto.getReSplitFlag(), "1")) { if (StringUtils.equals(dto.getReSplitFlag(), "1")) {
try { try {
@@ -1150,7 +1173,14 @@ public class TempService {
} catch (Exception e) { } catch (Exception e) {
logger.error("debugOrder-订单:{}, 订单结算金额,汇付分账异常", afterSettleOrderDTO.getOrderCode(), e); logger.error("debugOrder-订单:{}, 订单结算金额,汇付分账异常", afterSettleOrderDTO.getOrderCode(), e);
} }
// logger.info("debugOrder-订单:{}, 订单结算金额,汇付分账成功", afterSettleOrderDTO.getOrderCode());
String message = MessageFormat.format("debugOrder-订单:{0}, 订单结算金额,汇付分账成功", afterSettleOrderDTO.getOrderCode());
resultMap.put("reSplitFlag", message);
} else {
resultMap.put("reSplitFlag", orderCode + "本次未重新分账");
} }
return resultMap;
} }
} }