|
|
@@ -3,6 +3,7 @@ package com.sckw.payment.service;
|
|
|
import com.github.pagehelper.PageHelper;
|
|
|
import com.github.pagehelper.PageInfo;
|
|
|
import com.sckw.core.exception.BusinessException;
|
|
|
+import com.sckw.core.model.vo.TableTop;
|
|
|
import com.sckw.core.utils.StringTimeUtil;
|
|
|
import com.sckw.core.web.context.LoginUserHolder;
|
|
|
import com.sckw.payment.dao.KwpSettlementLogisticsMapper;
|
|
|
@@ -26,10 +27,7 @@ import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
-import java.util.HashMap;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
-import java.util.Objects;
|
|
|
+import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
@@ -54,7 +52,7 @@ public class KwpSettlementLogisticsService {
|
|
|
* @author Aick Spt
|
|
|
* @date 2023-07-24 16:21
|
|
|
*/
|
|
|
- public SettlementLogisticsStatusCountVo getCountListCollection(SettlementReq settlementReq) {
|
|
|
+ public List<TableTop> getCountListCollection(SettlementReq settlementReq) {
|
|
|
settlementReq.setUnitType(LogisticsUnitType.SHIPPER);
|
|
|
return getCountList(settlementReq);
|
|
|
}
|
|
|
@@ -65,7 +63,7 @@ public class KwpSettlementLogisticsService {
|
|
|
* @author Aick Spt
|
|
|
* @date 2023-07-24 16:23
|
|
|
*/
|
|
|
- public SettlementLogisticsStatusCountVo getCountListPayment(SettlementReq settlementReq) {
|
|
|
+ public List<TableTop> getCountListPayment(SettlementReq settlementReq) {
|
|
|
settlementReq.setUnitType(LogisticsUnitType.CARRIER);
|
|
|
return getCountList(settlementReq);
|
|
|
}
|
|
|
@@ -165,30 +163,45 @@ public class KwpSettlementLogisticsService {
|
|
|
return new PageInfo<>(kwpLedgerLogisticsList);
|
|
|
}
|
|
|
|
|
|
- public SettlementLogisticsStatusCountVo getCountList(SettlementReq settlementReq) {
|
|
|
+ public List<TableTop> getCountList(SettlementReq settlementReq) {
|
|
|
validSettlementReq(settlementReq);
|
|
|
SettlementLogisticsStatusCountVo settlementLogisticsStatusCountVos = new SettlementLogisticsStatusCountVo();
|
|
|
|
|
|
//加上当前登录者顶级企业id用于过滤数据
|
|
|
settlementReq.setEntId(LoginUserHolder.getEntId());
|
|
|
|
|
|
+ List<TableTop> tableTops = new ArrayList<>();
|
|
|
+ TableTop tableTop = new TableTop();
|
|
|
//总
|
|
|
settlementReq.setStatus(null);
|
|
|
settlementLogisticsStatusCountVos.setAllCount(settlementLogisticsMapper.getCountList(settlementReq));
|
|
|
+ tableTop.setName("全部").setValue(settlementReq.getStatus()).setTotal(Math.toIntExact(settlementLogisticsStatusCountVos.getAllCount()));
|
|
|
+ tableTops.add(tableTop);
|
|
|
|
|
|
//待结算
|
|
|
settlementReq.setStatus(SettlementEnum.WAITING_PAYMENT.getStatus());
|
|
|
- settlementLogisticsStatusCountVos.setWaitingPaymentCount(settlementLogisticsMapper.getCountList(settlementReq));
|
|
|
+// settlementLogisticsStatusCountVos.setWaitingPaymentCount(settlementLogisticsMapper.getCountList(settlementReq));
|
|
|
+ Long a = settlementLogisticsMapper.getCountList(settlementReq);
|
|
|
+ settlementLogisticsStatusCountVos.setWaitingPaymentCount(a);
|
|
|
+ TableTop tableTop1 = new TableTop();
|
|
|
+ tableTop1.setName("待结算").setValue(SettlementEnum.WAITING_PAYMENT.getStatus()).setTotal(Math.toIntExact(a));
|
|
|
+ tableTops.add(tableTop1);
|
|
|
|
|
|
//部分结算
|
|
|
settlementReq.setStatus(SettlementEnum.PARTIAL_PAYMENT.getStatus());
|
|
|
settlementLogisticsStatusCountVos.setPartialPaymentCount(settlementLogisticsMapper.getCountList(settlementReq));
|
|
|
+ TableTop tableTop2 = new TableTop();
|
|
|
+ tableTop2.setName("部分结算").setValue(SettlementEnum.PARTIAL_PAYMENT.getStatus()).setTotal(Math.toIntExact(settlementLogisticsStatusCountVos.getPartialPaymentCount()));
|
|
|
+ tableTops.add(tableTop2);
|
|
|
|
|
|
//全部结算
|
|
|
settlementReq.setStatus(SettlementEnum.ALL_PAYMENT.getStatus());
|
|
|
settlementLogisticsStatusCountVos.setAllPaymentCount(settlementLogisticsMapper.getCountList(settlementReq));
|
|
|
+ TableTop tableTop3 = new TableTop();
|
|
|
+ tableTop3.setName("全部结算").setValue(SettlementEnum.ALL_PAYMENT.getStatus()).setTotal(Math.toIntExact(settlementLogisticsStatusCountVos.getAllPaymentCount()));
|
|
|
+ tableTops.add(tableTop3);
|
|
|
|
|
|
- return settlementLogisticsStatusCountVos;
|
|
|
+ return tableTops;
|
|
|
}
|
|
|
|
|
|
private SettlementLogisticsDto detail(Long id, Integer unitType) {
|