From 76e9e19d3e6b3f1a30874ffb6dcbd8cd2ea438b5 Mon Sep 17 00:00:00 2001 From: Lemon Date: Wed, 23 Apr 2025 14:57:01 +0800 Subject: [PATCH] =?UTF-8?q?add=20=E6=96=B0=E5=A2=9E=20=E6=A0=B9=E6=8D=AE?= =?UTF-8?q?=E8=AE=A2=E5=8D=95=E5=8F=B7=E6=9F=A5=E8=AF=A2=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E5=88=86=E8=B4=A6=E4=BF=A1=E6=81=AF=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pile/OrderBasicInfoController.java | 20 ++++++++ .../pile/service/OrderSplitRecordService.java | 7 +++ .../impl/OrderSplitRecordServiceImpl.java | 46 +++++++++++++++++++ .../pile/vo/web/SplitRecordInfoVO.java | 10 ++++ .../mapper/pile/OrderSplitRecordMapper.xml | 2 + 5 files changed, 85 insertions(+) diff --git a/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/OrderBasicInfoController.java b/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/OrderBasicInfoController.java index 113b87a1a..e6f44c546 100644 --- a/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/OrderBasicInfoController.java +++ b/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/OrderBasicInfoController.java @@ -291,4 +291,24 @@ public class OrderBasicInfoController extends BaseController { return response; } + + /** + * 根据订单号查询订单分账信息 + * @param request + * @param orderCode + * @return + */ + @GetMapping("/queryOrderSplitDetail/{orderCode}") + public RestApiResponse queryOrderSplitDetail(HttpServletRequest request, @PathVariable("orderCode") String orderCode) { + RestApiResponse response = null; + try { + orderSplitRecordService.queryOrderSplitDetail(orderCode); + } catch (Exception e) { + logger.error("根据订单号查询订单分账信息 error", e); + response = new RestApiResponse<>(e); + } + logger.info("根据订单号查询订单分账信息 params:{}, result:{}", orderCode, response); + return response; + } + } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderSplitRecordService.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderSplitRecordService.java index 066c6808f..9e421f588 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderSplitRecordService.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderSplitRecordService.java @@ -85,5 +85,12 @@ public interface OrderSplitRecordService { List queryStationAggregateData(QueryOrderSplitDTO dto); List queryStationAggregateData(SplitConfigStationDTO dto); + + /** + * 根据订单号查询订单分账信息 + * @param orderCode + * @return + */ + List queryOrderSplitDetail(String orderCode); } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderSplitRecordServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderSplitRecordServiceImpl.java index 98a594385..0bfb7d9fe 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderSplitRecordServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderSplitRecordServiceImpl.java @@ -452,6 +452,52 @@ public class OrderSplitRecordServiceImpl implements OrderSplitRecordService { return resultList; } + /** + * 根据订单号查询订单分账信息 + * @param orderCode + * @return + */ + @Override + public List queryOrderSplitDetail(String orderCode) { + List resultList = new ArrayList<>(); + + List orderSplitRecordVOS = orderSplitRecordMapper.queryOrderSplitData(Lists.newArrayList(orderCode)); + SplitRecordInfoVO vo = SplitRecordInfoVO.builder() + .orderCode(orderCode) + .orderAmount(orderSplitRecordVOS.get(0).getOrderAmount()) + .settleAmount(String.valueOf(orderSplitRecordVOS.get(0).getSettleAmount())) + .paymentConfirmId(orderSplitRecordVOS.get(0).getPaymentConfirmId()) + .paymentId(orderSplitRecordVOS.get(0).getPaymentId()) + + .build(); + List orderSplitList = new ArrayList<>(); + for (OrderSplitRecordVO orderSplitRecordVO : orderSplitRecordVOS) { + SplitRecordInfoVO.OrderSplit orderSplit = SplitRecordInfoVO.OrderSplit.builder() + .adapayMemberId(orderSplitRecordVO.getAdapayMemberId()) + .merchantId(orderSplitRecordVO.getMerchantId()) + .merchantName(orderSplitRecordVO.getMerchantName()) + .electricitySplitRatio(String.valueOf(orderSplitRecordVO.getElectricitySplitRatio())) + .electricitySplitAmount(String.valueOf(orderSplitRecordVO.getElectricitySplitAmount())) + .serviceSplitRatio(String.valueOf(orderSplitRecordVO.getServiceSplitRatio())) + .serviceSplitAmount(String.valueOf(orderSplitRecordVO.getServiceSplitAmount())) + .feeAmount(String.valueOf(orderSplitRecordVO.getFeeAmount())) + + .build(); + // 收入金额 + BigDecimal subtract = orderSplitRecordVO.getElectricitySplitAmount() + .add(orderSplitRecordVO.getServiceSplitAmount()) + .subtract(new BigDecimal(orderSplitRecordVO.getFeeAmount())); + orderSplit.setRevenueAmount(String.valueOf(subtract)); + + orderSplitList.add(orderSplit); + } + vo.setOrderSplitList(orderSplitList); + + resultList.add(vo); + + return resultList; + } + /** * 根据汇付会员id查询分账汇总数据 * @param dto diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/vo/web/SplitRecordInfoVO.java b/jsowell-pile/src/main/java/com/jsowell/pile/vo/web/SplitRecordInfoVO.java index fd30ce704..7dc81c16a 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/vo/web/SplitRecordInfoVO.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/vo/web/SplitRecordInfoVO.java @@ -31,6 +31,16 @@ public class SplitRecordInfoVO { */ private String settleAmount; + /** + * 分账id + */ + private String paymentConfirmId; + + /** + * 支付id + */ + private String paymentId; + /** * 订单分账明细 */ diff --git a/jsowell-pile/src/main/resources/mapper/pile/OrderSplitRecordMapper.xml b/jsowell-pile/src/main/resources/mapper/pile/OrderSplitRecordMapper.xml index 8e9d458f1..fff7c663b 100644 --- a/jsowell-pile/src/main/resources/mapper/pile/OrderSplitRecordMapper.xml +++ b/jsowell-pile/src/main/resources/mapper/pile/OrderSplitRecordMapper.xml @@ -809,6 +809,8 @@ t1.adapay_member_id AS adapayMemberId, t4.id as merchantId, t4.merchant_name as merchantName, + t1.payment_id as paymentId, + t1.payment_confirm_id as paymentConfirmId, t1.electricity_split_ratio AS electricitySplitRatio, t1.electricity_split_amount AS electricitySplitAmount, t1.service_split_ratio AS serviceSplitRatio,