查询时间段内订单总金额和总用电量V2

This commit is contained in:
2023-08-11 15:59:26 +08:00
parent de21084aec
commit 70dff61eef
10 changed files with 74 additions and 49 deletions

View File

@@ -220,7 +220,9 @@ public interface IOrderBasicInfoService {
*/
OrderTotalDataVO getOrderTotalData(QueryOrderDTO orderBasicInfo);
/**
OrderTotalDataVO getOrderTotalDataV2(QueryOrderDTO dto);
/**
* 通过订单号查询订单信息(小程序发送消息用)
* @param orderCode
* @return

View File

@@ -93,4 +93,6 @@ public interface ISettleOrderReportService {
int updateBatchSelective(List<SettleOrderReport> list);
int batchInsert(List<SettleOrderReport> list);
List<SettleOrderReport> queryOrderReport(List<String> stationIdList, String startTime, String endTime);
}

View File

@@ -364,6 +364,37 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
return vo;
}
/**
* 查询时间段内订单总金额和总用电量V2
* @param dto
* @return
*/
@Override
public OrderTotalDataVO getOrderTotalDataV2(QueryOrderDTO dto) {
OrderTotalDataVO vo = new OrderTotalDataVO();
String startTime = dto.getStartTime();
String endTime = dto.getEndTime();
vo.setDateDescription(startTime + " - " + endTime);
List<String> stationIdList = Lists.newArrayList(dto.getStationId());
List<SettleOrderReport> settleOrderReports = settleOrderReportService.queryOrderReport(stationIdList, startTime, endTime);
// 总消费金额
BigDecimal sumOrderAmount = BigDecimal.ZERO;
// 总用电量
BigDecimal sumUsedElectricity = BigDecimal.ZERO;
// 总结算金额
BigDecimal sumSettleAmount = BigDecimal.ZERO;
for (SettleOrderReport settleOrderReport : settleOrderReports) {
sumOrderAmount = sumOrderAmount.add(settleOrderReport.getTotalAmount());
sumUsedElectricity = sumUsedElectricity.add(settleOrderReport.getUseElectricity());
// 结算金额拆分为 交易金额 + 交易手续费
sumSettleAmount = sumSettleAmount.add(settleOrderReport.getTradeAmount()).add(settleOrderReport.getTradeFee());
}
vo.setSumSettleAmount(sumSettleAmount);
vo.setSumUsedElectricity(sumUsedElectricity);
vo.setSumOrderAmount(sumOrderAmount);
return vo;
}
/**
* 通过订单号查询订单信息(小程序发送消息用)
*

View File

@@ -222,5 +222,10 @@ public class SettleOrderReportServiceImpl implements ISettleOrderReportService {
public int batchInsert(List<SettleOrderReport> list) {
return settleOrderReportMapper.batchInsert(list);
}
@Override
public List<SettleOrderReport> queryOrderReport(List<String> stationIdList, String startTime, String endTime) {
return settleOrderReportMapper.queryOrderReport(stationIdList, startTime, endTime);
}
}