新增 后管查询订单分账数据接口

This commit is contained in:
Lemon
2025-04-11 14:59:46 +08:00
parent 3f26010b7d
commit beced664ec
5 changed files with 127 additions and 7 deletions

View File

@@ -16,8 +16,9 @@ import lombok.NoArgsConstructor;
@NoArgsConstructor
@Builder
public class QueryOrderSplitDTO {
private int pageNo;
private int pageSize;
private Integer pageNo;
private Integer pageSize;
/**
* 站点id

View File

@@ -10,6 +10,7 @@ import com.jsowell.pile.vo.OrderInfoDetailVO;
import com.jsowell.pile.vo.web.OrderSplitDailySummaryData;
import com.jsowell.pile.vo.web.OrderSplitRecordVO;
import com.jsowell.pile.vo.web.SplitOrdersInfoVO;
import com.jsowell.pile.vo.web.SplitRecordInfoVO;
import java.util.List;
import java.util.Map;
@@ -70,7 +71,7 @@ public interface OrderSplitRecordService {
*/
List<SplitOrdersInfoVO> getSplitOrdersInfoList(SplitOrderDTO dto);
public List<OrderSplitRecordVO> queryOrderSplitData(QueryOrderSplitDTO dto);
public List<SplitRecordInfoVO> queryOrderSplitData(QueryOrderSplitDTO dto);
/**
* 根据汇付会员id查询时间段内订单分账记录

View File

@@ -1,5 +1,6 @@
package com.jsowell.pile.service.impl;
import com.github.pagehelper.PageHelper;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.jsowell.adapay.dto.PaymentConfirmParam;
@@ -25,6 +26,7 @@ import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -258,12 +260,48 @@ public class OrderSplitRecordServiceImpl implements OrderSplitRecordService {
* @return
*/
@Override
public List<OrderSplitRecordVO> queryOrderSplitData(QueryOrderSplitDTO dto) {
public List<SplitRecordInfoVO> queryOrderSplitData(QueryOrderSplitDTO dto) {
List<SplitRecordInfoVO> resultList = new ArrayList<>();
// 设置分页参数
int pageNo = dto.getPageNo() == null ? 1 : dto.getPageNo();
int pageSize = dto.getPageSize() == null ? 10 : dto.getPageSize();
PageHelper.startPage(pageNo, pageSize);
List<OrderSplitRecordVO> orderSplitRecordVOS = orderSplitRecordMapper.queryOrderSplitData(dto);
// 根据 orderCode 分组
Map<String, List<OrderSplitRecordVO>> collect = orderSplitRecordVOS.stream()
.collect(Collectors.groupingBy(OrderSplitRecordVO::getOrderCode));
return null;
for (Map.Entry<String, List<OrderSplitRecordVO>> entry : collect.entrySet()) {
String orderCode = entry.getKey();
List<OrderSplitRecordVO> splitRecordVOList = entry.getValue();
SplitRecordInfoVO vo = SplitRecordInfoVO.builder()
.orderCode(orderCode)
.orderAmount(orderSplitRecordVOS.get(0).getOrderAmount())
.settleAmount(String.valueOf(orderSplitRecordVOS.get(0).getSettleAmount()))
.build();
List<SplitRecordInfoVO.OrderSplit> orderSplitList = new ArrayList<>();
for (OrderSplitRecordVO orderSplitRecordVO : splitRecordVOList) {
SplitRecordInfoVO.OrderSplit orderSplit = SplitRecordInfoVO.OrderSplit.builder()
.adapayMemberId(orderSplitRecordVO.getAdapayMemberId())
.electricitySplitRatio(String.valueOf(orderSplitRecordVO.getElectricitySplitRatio()))
.electricitySplitAmount(String.valueOf(orderSplitRecordVO.getElectricitySplitAmount()))
.serviceSplitRatio(String.valueOf(orderSplitRecordVO.getServiceSplitRatio()))
.serviceSplitAmount(String.valueOf(orderSplitRecordVO.getServiceSplitAmount()))
.build();
orderSplitList.add(orderSplit);
}
vo.setOrderSplitList(orderSplitList);
resultList.add(vo);
}
return resultList;
}
@Override

View File

@@ -0,0 +1,76 @@
package com.jsowell.pile.vo.web;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
/**
* 后管订单分账明细页面VO
*
* @author Lemon
* @Date 2025/4/11 14:30:23
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class SplitRecordInfoVO {
private String orderCode;
/**
* 订单金额
*/
private String orderAmount;
/**
* 结算金额
*/
private String settleAmount;
/**
* 订单分账明细
*/
private List<OrderSplit> orderSplitList;
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public static class OrderSplit {
/**
* 汇付会员id
*/
private String adapayMemberId;
/**
* 电费分账比例
*/
private String electricitySplitRatio;
/**
* 电费分账金额
*/
private String electricitySplitAmount;
/**
* 服务费分账比例
*/
private String serviceSplitRatio;
/**
* 服务费分账金额
*/
private String serviceSplitAmount;
/**
* 手续费
*/
private String feeAmount;
}
}