浏览代码

2024年3月14日18:08:19

纪新园 1 年之前
父节点
当前提交
2ae5ea5827
共有 30 个文件被更改,包括 420 次插入224 次删除
  1. 55 2
      blade-service-api/blade-los-api/src/main/java/org/springblade/los/statisticAnalysis/FinanceProfitDtoList.java
  2. 9 0
      blade-service/blade-los/src/main/java/org/springblade/los/statisticAnalysis/controller/FinanceStatisticsController.java
  3. 2 0
      blade-service/blade-los/src/main/java/org/springblade/los/statisticAnalysis/service/IStatisticAnalysisService.java
  4. 189 2
      blade-service/blade-los/src/main/java/org/springblade/los/statisticAnalysis/service/impl/StatisticAnalysisServiceImpl.java
  5. 11 0
      blade-service/blade-sales-part/pom.xml
  6. 3 0
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/SalesPartApplication.java
  7. 1 1
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/accountManagement/controller/AccountManagementController.java
  8. 1 1
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/brand/controller/BrandDescController.java
  9. 0 61
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/config/MyBatisPlusConfig.java
  10. 12 12
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/corps/controller/CorpsDescController.java
  11. 1 1
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/corps/service/impl/CorpsAttnServiceImpl.java
  12. 7 7
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/goods/controller/GoodsDescController.java
  13. 2 2
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/maintenance/controller/MaintenanceController.java
  14. 10 10
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/maintenance/service/impl/MaintenanceServiceImpl.java
  15. 2 0
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/michelinApi/service/impl/MichelinServiceImpl.java
  16. 3 3
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/order/controller/OrderController.java
  17. 31 41
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/order/service/impl/OrderServiceImpl.java
  18. 5 5
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/productLaunch/controller/ProductLaunchController.java
  19. 1 1
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/productLaunch/service/impl/ProductLaunchServiceImpl.java
  20. 1 1
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/project/service/impl/ProjectGoodsServiceImpl.java
  21. 2 2
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/project/service/impl/QbProjectItemServiceImpl.java
  22. 1 1
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/settlement/controller/SettlementController.java
  23. 4 4
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/settlement/service/impl/SettlementServiceImpl.java
  24. 1 1
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/ship/controller/ShipController.java
  25. 2 2
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/ship/service/impl/ShipServiceImpl.java
  26. 8 14
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/shoppingCart/service/impl/ShoppingCartServiceImpl.java
  27. 44 44
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/statistics/service/impl/StatisticsServiceImpl.java
  28. 5 5
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/stock/controller/StockDescController.java
  29. 1 1
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/storage/controller/StorageDescController.java
  30. 6 0
      blade-service/blade-sales-part/src/main/resources/application-dev.yml

+ 55 - 2
blade-service-api/blade-los-api/src/main/java/org/springblade/los/statisticAnalysis/FinanceProfitDtoList.java

@@ -1,8 +1,11 @@
 package org.springblade.los.statisticAnalysis;
 
-import io.swagger.annotations.ApiModelProperty;
+import com.alibaba.excel.annotation.ExcelIgnore;
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.alibaba.excel.annotation.write.style.ColumnWidth;
+import com.alibaba.excel.annotation.write.style.ContentRowHeight;
+import com.alibaba.excel.annotation.write.style.HeadRowHeight;
 import lombok.Data;
-import org.springblade.core.secure.utils.AuthUtil;
 
 import java.math.BigDecimal;
 
@@ -11,238 +14,288 @@ import java.math.BigDecimal;
  * @date : 2024/1/26
  */
 @Data
+@ColumnWidth(25)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
 public class FinanceProfitDtoList {
 
 
 	/**
 	 * 业务类型
 	 */
+	@ExcelProperty(value = "业务类型")
 	private String billType;
 
 	/**
 	 * 业务编号
 	 */
+	@ExcelProperty(value = "业务编号")
 	private String billNo;
 
 	/**
 	 * hblno
 	 */
+	@ExcelProperty(value = "hblno")
 	private String hBlNo;
 
 	/**
 	 * mblno
 	 */
+	@ExcelProperty(value = "mblno")
 	private String mBlNo;
 
 	/**
 	 * 往来单位Id
 	 */
+	@ExcelIgnore
 	private Long corpId;
 
 	/**
 	 * 往来单位
 	 */
+	@ExcelProperty(value = "往来单位")
 	private String corpName;
 
 	/**
 	 * 统计日期
 	 */
+	@ExcelIgnore
 	private String statisticsDateStart;
 
 	/**
 	 * 统计日期
 	 */
+	@ExcelIgnore
 	private String statisticsDateEnd;
 
 	/**
 	 * 业务员
 	 */
+	@ExcelProperty(value = "业务员")
 	private String salesman;
 
 	/**
 	 * 起运港
 	 */
+	@ExcelProperty(value = "起运港")
 	private String pod;
 
 	/**
 	 * 目的港
 	 */
+	@ExcelProperty(value = "目的港")
 	private String pol;
 
 	/**
 	 * 中文船名
 	 */
+	@ExcelProperty(value = "船名")
 	private String vesselCnName;
 
 	/**
 	 * 中文船名
 	 */
+	@ExcelIgnore
 	private Long vesselId;
 
 	/**
 	 * 航次
 	 */
+	@ExcelProperty(value = "航次")
 	private String voyageNo;
 
 	/**
 	 * 航线 id
 	 */
+	@ExcelIgnore
 	private Long lineId;
 
 	/**
 	 * 核算部门
 	 */
+	@ExcelProperty(value = "核算部门")
 	private String accDeptName;
 
 	/**
 	 * 核算部门
 	 */
+	@ExcelIgnore
 	private Long accDeptId;
 
 	/**
 	 * 航线中文名称
 	 */
+	@ExcelProperty(value = "航线")
 	private String lineCnName;
 
 	/**
 	 * 船公司中文名称
 	 */
+	@ExcelProperty(value = "船公司")
 	private String carrierCnName;
 
 	/**
 	 * 船公司
 	 */
+	@ExcelIgnore
 	private Long carrierId;
 
 	/**
 	 * 操作员
 	 */
+	@ExcelProperty(value = "操作员")
 	private String operatorName;
 
 	/**
 	 * 应收(USD)
 	 */
+	@ExcelProperty(value = "应收美元")
 	private BigDecimal amountDrUsd;
 
 	/**
 	 * 实际实收(USD)
 	 */
+	@ExcelProperty(value = "实收美元")
 	private BigDecimal realAmountDrUsd;
 
 	/**
 	 * 应收(CNY)
 	 */
+	@ExcelProperty(value = "应收人民币")
 	private BigDecimal amountDr;
 
 	/**
 	 * 实际实收(CNY)
 	 */
+	@ExcelProperty(value = "实收人民币")
 	private BigDecimal realAmountDr;
 
 	/**
 	 * 合计应收
 	 */
+	@ExcelProperty(value = "合计应收")
 	private BigDecimal amountDrLoc;
 
 	/**
 	 * 实际合计应收
 	 */
+	@ExcelProperty(value = "实际合计应收")
 	private BigDecimal realAmountDrLoc;
 
 	/**
 	 * 应付(USD)
 	 */
+	@ExcelProperty(value = "应付美元")
 	private BigDecimal amountCrUsd;
 
 	/**
 	 * 实际应付(USD)
 	 */
+	@ExcelProperty(value = "实付美元")
 	private BigDecimal realAmountCrUsd;
 
 	/**
 	 * 应付(CNY)
 	 */
+	@ExcelProperty(value = "应付人民币")
 	private BigDecimal amountCr;
 
 	/**
 	 * 实际应付(CNY)
 	 */
+	@ExcelProperty(value = "实付人民币")
 	private BigDecimal realAmountCr;
 
 	/**
 	 * 合计应付
 	 */
+	@ExcelProperty(value = "合计应付")
 	private BigDecimal amountCrLoc;
 
 	/**
 	 * 实际合计应付
 	 */
+	@ExcelProperty(value = "实际合计应付")
 	private BigDecimal realAmountCrLoc;
 
 	/**
 	 * 单票利润
 	 */
+	@ExcelProperty(value = "单票利润")
 	private BigDecimal amountProfitLoc;
 
 	/**
 	 * 实际单票利润
 	 */
+	@ExcelProperty(value = "实际单票利润")
 	private BigDecimal realAmountProfitLoc;
 
 	/**
 	 * 委托人
 	 */
+	@ExcelIgnore
 	private String client;
 
 	/**
 	 * 业务来源
 	 */
+	@ExcelIgnore
 	private String srcType;
 
 	/**
 	 * 来源 id
 	 */
+	@ExcelIgnore
 	private Long srcId;
 
 	/**
 	 * 单票费用合并
 	 */
+	@ExcelIgnore
 	private String costMerge;
 
 	/**
 	 * 相同业务客户合并
 	 */
+	@ExcelIgnore
 	private String consistentCorpMerge;
 
 	/**
 	 * 不同业务客户合并
 	 */
+	@ExcelIgnore
 	private String inconsistentCorpMerge;
 
 	/**
 	 * 只显示整票审核业务
 	 */
+	@ExcelIgnore
 	private String examine;
 
 	/**
 	 * 合并amend费用
 	 */
+	@ExcelIgnore
 	private String mergeAmendFee;
 
 	/**
 	 * 按审核日期
 	 */
+	@ExcelIgnore
 	private String examineDate;
 
 
 	/**
 	 * 租户id
 	 */
+	@ExcelIgnore
 	private String tenantId;
 
+
 	/**
 	 * 分公司 Id
 	 */
+	@ExcelIgnore
 	private String branchId;
 
 }

+ 9 - 0
blade-service/blade-los/src/main/java/org/springblade/los/statisticAnalysis/controller/FinanceStatisticsController.java

@@ -56,6 +56,15 @@ public class FinanceStatisticsController {
 	}
 
 	/**
+	 * 分页 决策分析列表合计
+	 */
+	@GetMapping("/financeProfitExport")
+	public void financeProfitExport(FinanceProfitDtoList financeProfit, HttpServletResponse response) {
+		List<FinanceProfitDtoList> financeProfitList = statisticAnalysisService.financeProfitExport(financeProfit);
+		ExcelUtil.export(response, "业务利润", "业务利润", financeProfitList, FinanceProfitDtoList.class);
+	}
+
+	/**
 	 * 分页 应收(付)实收(付)汇总
 	 */
 	@GetMapping("/feeSummary")

+ 2 - 0
blade-service/blade-los/src/main/java/org/springblade/los/statisticAnalysis/service/IStatisticAnalysisService.java

@@ -72,4 +72,6 @@ public interface IStatisticAnalysisService {
 	List<AgingAnalysisRD> agingAnalysisExport(FeeSummaryQ feeSummaryQ);
 
 	R financeProfitSum(FinanceProfitDtoList financeProfit);
+
+	List<FinanceProfitDtoList> financeProfitExport(FinanceProfitDtoList financeProfit);
 }

+ 189 - 2
blade-service/blade-los/src/main/java/org/springblade/los/statisticAnalysis/service/impl/StatisticAnalysisServiceImpl.java

@@ -95,7 +95,7 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
 			}
 		}*/
 		financeProfit.setTenantId(AuthUtil.getTenantId());
-		financeProfit.setBranchId(deptUtils.getDeptPid()+"");
+		financeProfit.setBranchId(deptUtils.getDeptPid() + "");
 		List<FinanceProfitDtoList> financeProfitList = new ArrayList<>();
 		BigDecimal exrateC = bCurrencyService.getCnyExrate("USD", "C");
 		BigDecimal exrateD = bCurrencyService.getCnyExrate("USD", "D");
@@ -700,7 +700,7 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
 	@Override
 	public R financeProfitSum(FinanceProfitDtoList financeProfit) {
 		financeProfit.setTenantId(AuthUtil.getTenantId());
-		financeProfit.setBranchId(deptUtils.getDeptPid()+"");
+		financeProfit.setBranchId(deptUtils.getDeptPid() + "");
 		List<FinanceProfitDtoList> financeProfitList = new ArrayList<>();
 		BigDecimal exrateC = bCurrencyService.getCnyExrate("USD", "C");
 		BigDecimal exrateD = bCurrencyService.getCnyExrate("USD", "D");
@@ -898,4 +898,191 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
 		map.put("realAmountProfitLoc", financeProfitList.stream().map(FinanceProfitDtoList::getRealAmountProfitLoc).reduce(BigDecimal.ZERO, BigDecimal::add));
 		return R.data(map);
 	}
+
+	@Override
+	public List<FinanceProfitDtoList> financeProfitExport(FinanceProfitDtoList financeProfit) {
+		financeProfit.setTenantId(AuthUtil.getTenantId());
+		financeProfit.setBranchId(deptUtils.getDeptPid() + "");
+		List<FinanceProfitDtoList> financeProfitList = new ArrayList<>();
+		BigDecimal exrateC = bCurrencyService.getCnyExrate("USD", "C");
+		BigDecimal exrateD = bCurrencyService.getCnyExrate("USD", "D");
+		//是否合并amend费用  true 合并  false 不合并
+		if (ObjectUtils.isNotNull(financeProfit.getMergeAmendFee())) {
+			financeProfitList = financeProfitMapper.financeProfitSum(financeProfit);
+			String billNo = financeProfitList.stream().map(FinanceProfitDtoList::getBillNo).filter(Objects::nonNull).distinct().collect(Collectors.joining(","));
+			LambdaQueryWrapper<Amends> lambdaQueryWrapper = new LambdaQueryWrapper<Amends>()
+				.eq(Amends::getTenantId, AuthUtil.getTenantId())
+				.eq(Amends::getIsDeleted, 0)
+				.apply("find_in_set(orig_bill_no,'" + billNo + "')");
+			if (ObjectUtils.isNotNull(financeProfit.getExamine())) {
+				lambdaQueryWrapper.eq(Amends::getStatus, 3);
+			}
+			List<Amends> amendsList = amendsMapper.selectList(lambdaQueryWrapper);
+			List<FeeCenter> feeCenterList = new ArrayList<>();
+			if (!amendsList.isEmpty()) {
+				List<Long> pids = amendsList.stream().map(Amends::getId).collect(Collectors.toList());
+				if (!pids.isEmpty()) {
+					feeCenterList = feeCenterMapper.selectList(new LambdaQueryWrapper<FeeCenter>()
+						.eq(FeeCenter::getTenantId, AuthUtil.getTenantId())
+						.eq(FeeCenter::getIsDeleted, 0)
+						.in(FeeCenter::getPid, pids));
+				}
+			}
+			List<FinanceProfitDtoList> financeProfits = new ArrayList<>();
+			for (FinanceProfitDtoList item : financeProfitList) {
+				if (!amendsList.isEmpty() && !feeCenterList.isEmpty()) {
+					//获取当前业务类型所有amend
+					List<Amends> amends = amendsList.stream().filter(e -> e.getBillNo().equals(item.getBillNo())).collect(Collectors.toList());
+					for (Amends i : amends) {
+						//当前业务不属于当期业务,需新插入一条记录
+						FinanceProfitDtoList financeProfit1 = new FinanceProfitDtoList();
+						financeProfit1.setBillType(i.getBusinessType());
+						financeProfit1.setBillNo(i.getBillNo());
+						financeProfit1.setHBlNo(i.getHblno());
+						financeProfit1.setMBlNo(i.getMblno());
+						financeProfit1.setCorpName(i.getCorpCnName());
+						financeProfit1.setSalesman(i.getOperatorName());
+						financeProfit1.setPod(i.getPodCnName());
+						financeProfit1.setPol(i.getPolCnName());
+						financeProfit1.setVesselCnName(i.getVesselCnName());
+						financeProfit1.setVoyageNo(i.getVoyageNo());
+						financeProfit1.setLineCnName(i.getLineCnName());
+						financeProfit1.setCarrierCnName(i.getCarrierCnName());
+						financeProfit1.setOperatorName(i.getOperatorName());
+						Date statisticsDateStart;
+						Date statisticsDateEnd;
+						DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
+						//判断账期时间是否为空
+						if (ObjectUtils.isNotNull(financeProfit.getStatisticsDateStart()) &&
+							ObjectUtils.isNotNull(financeProfit.getStatisticsDateEnd())) {
+							try {
+								statisticsDateStart = dateFormat.parse(financeProfit.getStatisticsDateStart());
+								statisticsDateEnd = dateFormat.parse(financeProfit.getStatisticsDateEnd());
+								//人民币应收金额
+								BigDecimal feeCentersCD = feeCenterList.stream()
+									.filter(e -> i.getId().equals(e.getPid()) && "CNY".equals(e.getCurCode()) && "D".equals(e.getDc()))
+									.map(FeeCenter::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(2, RoundingMode.HALF_UP);
+								//人民币实收金额
+								BigDecimal feeCentersCDReal = feeCenterList.stream()
+									.filter(e -> i.getId().equals(e.getPid()) && "CNY".equals(e.getCurCode()) && "D".equals(e.getDc()))
+									.map(FeeCenter::getStlTtlAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(2, RoundingMode.HALF_UP);
+								//人民币应付金额
+								BigDecimal feeCentersCC = feeCenterList.stream()
+									.filter(e -> i.getId().equals(e.getPid()) && "CNY".equals(e.getCurCode()) && "C".equals(e.getDc()))
+									.map(FeeCenter::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(2, RoundingMode.HALF_UP);
+								//人民币实付金额
+								BigDecimal feeCentersCCReal = feeCenterList.stream()
+									.filter(e -> i.getId().equals(e.getPid()) && "CNY".equals(e.getCurCode()) && "C".equals(e.getDc()))
+									.map(FeeCenter::getStlTtlAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(2, RoundingMode.HALF_UP);
+								//美金应收金额
+								BigDecimal feeCentersUD = feeCenterList.stream()
+									.filter(e -> i.getId().equals(e.getPid()) && "USD".equals(e.getCurCode()) && "D".equals(e.getDc()))
+									.map(FeeCenter::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(2, RoundingMode.HALF_UP);
+								//美金实收金额
+								BigDecimal feeCentersUDReal = feeCenterList.stream()
+									.filter(e -> i.getId().equals(e.getPid()) && "USD".equals(e.getCurCode()) && "D".equals(e.getDc()))
+									.map(FeeCenter::getStlTtlAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(2, RoundingMode.HALF_UP);
+								//美金应付金额
+								BigDecimal feeCentersUC = feeCenterList.stream()
+									.filter(e -> i.getId().equals(e.getPid()) && "USD".equals(e.getCurCode()) && "C".equals(e.getDc()))
+									.map(FeeCenter::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(2, RoundingMode.HALF_UP);
+								//美金实付金额
+								BigDecimal feeCentersUCReal = feeCenterList.stream()
+									.filter(e -> i.getId().equals(e.getPid()) && "USD".equals(e.getCurCode()) && "C".equals(e.getDc()))
+									.map(FeeCenter::getStlTtlAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(2, RoundingMode.HALF_UP);
+								//是否按审核日期
+								if (ObjectUtils.isNotNull(financeProfit.getExamineDate())) {
+									//是否为本期  true 合并  false 不合并
+									if (i.getApprovedDate().compareTo(statisticsDateStart) >= 0 &&
+										i.getApprovedDate().compareTo(statisticsDateEnd) <= 0) {
+										item.setAmountCr(feeCentersCC);
+										item.setRealAmountCr(feeCentersCCReal);
+										item.setAmountCrUsd(feeCentersUC);
+										item.setRealAmountCrUsd(feeCentersUCReal);
+										item.setAmountCrLoc(feeCentersUC.multiply(exrateC).add(feeCentersCC).setScale(2, RoundingMode.HALF_UP));
+										item.setRealAmountCrLoc(feeCentersUCReal.multiply(exrateC).add(feeCentersCCReal).setScale(2, RoundingMode.HALF_UP));
+										item.setAmountDr(feeCentersCD);
+										item.setRealAmountDr(feeCentersCDReal);
+										item.setAmountDrUsd(feeCentersUD);
+										item.setRealAmountDrUsd(feeCentersUDReal);
+										item.setAmountDrLoc(feeCentersUD.multiply(exrateD).add(feeCentersCD).setScale(2, RoundingMode.HALF_UP));
+										item.setRealAmountDrLoc(feeCentersUDReal.multiply(exrateD).add(feeCentersCDReal).setScale(2, RoundingMode.HALF_UP));
+										item.setAmountProfitLoc(item.getAmountDrLoc().subtract(item.getAmountCrLoc()).setScale(2, RoundingMode.HALF_UP));
+										item.setRealAmountProfitLoc(item.getRealAmountDrLoc().subtract(item.getRealAmountCrLoc()).setScale(2, RoundingMode.HALF_UP));
+									} else {
+										financeProfit1.setAmountCr(feeCentersCC);
+										financeProfit1.setRealAmountCr(feeCentersCCReal);
+										financeProfit1.setAmountCrUsd(feeCentersUC);
+										financeProfit1.setRealAmountCrUsd(feeCentersUCReal);
+										financeProfit1.setAmountCrLoc(feeCentersUC.multiply(exrateC).add(feeCentersCC).setScale(2, RoundingMode.HALF_UP));
+										financeProfit1.setRealAmountCrLoc(feeCentersUCReal.multiply(exrateC).add(feeCentersCCReal).setScale(2, RoundingMode.HALF_UP));
+										financeProfit1.setAmountDr(feeCentersCD);
+										financeProfit1.setRealAmountDr(feeCentersCDReal);
+										financeProfit1.setAmountDrUsd(feeCentersUD);
+										financeProfit1.setRealAmountDrUsd(feeCentersUDReal);
+										financeProfit1.setAmountDrLoc(feeCentersUD.multiply(exrateD).add(feeCentersCD).setScale(2, RoundingMode.HALF_UP));
+										financeProfit1.setRealAmountDrLoc(feeCentersUDReal.multiply(exrateD).add(feeCentersCDReal).setScale(2, RoundingMode.HALF_UP));
+										financeProfit1.setAmountProfitLoc(item.getAmountDrLoc().subtract(item.getAmountCrLoc()).setScale(2, RoundingMode.HALF_UP));
+										financeProfit1.setRealAmountProfitLoc(item.getRealAmountDrLoc().subtract(item.getRealAmountCrLoc()).setScale(2, RoundingMode.HALF_UP));
+									}
+								} else {
+									//是否为本期  true 合并  false 不合并
+									if (i.getBillDate().compareTo(statisticsDateStart) >= 0 &&
+										i.getBillDate().compareTo(statisticsDateEnd) <= 0) {
+										item.setAmountCr(feeCentersCC);
+										item.setRealAmountCr(feeCentersCCReal);
+										item.setAmountCrUsd(feeCentersUC);
+										item.setRealAmountCrUsd(feeCentersUCReal);
+										item.setAmountCrLoc(feeCentersUC.multiply(exrateC).add(feeCentersCC).setScale(2, RoundingMode.HALF_UP));
+										item.setRealAmountCrLoc(feeCentersUCReal.multiply(exrateC).add(feeCentersCCReal).setScale(2, RoundingMode.HALF_UP));
+										item.setAmountDr(feeCentersCD);
+										item.setRealAmountDr(feeCentersCDReal);
+										item.setAmountDrUsd(feeCentersUD);
+										item.setRealAmountDrUsd(feeCentersUDReal);
+										item.setAmountDrLoc(feeCentersUD.multiply(exrateD).add(feeCentersCD).setScale(2, RoundingMode.HALF_UP));
+										item.setRealAmountDrLoc(feeCentersUDReal.multiply(exrateD).add(feeCentersCDReal).setScale(2, RoundingMode.HALF_UP));
+										item.setAmountProfitLoc(item.getAmountDrLoc().subtract(item.getAmountCrLoc()).setScale(2, RoundingMode.HALF_UP));
+										item.setRealAmountProfitLoc(item.getRealAmountDrLoc().subtract(item.getRealAmountCrLoc()).setScale(2, RoundingMode.HALF_UP));
+									} else {
+										financeProfit1.setAmountCr(feeCentersCC);
+										financeProfit1.setRealAmountCr(feeCentersCCReal);
+										financeProfit1.setAmountCrUsd(feeCentersUC);
+										financeProfit1.setRealAmountCrUsd(feeCentersUCReal);
+										financeProfit1.setAmountCrLoc(feeCentersUC.multiply(exrateC).add(feeCentersCC).setScale(2, RoundingMode.HALF_UP));
+										financeProfit1.setRealAmountCrLoc(feeCentersUCReal.multiply(exrateC).add(feeCentersCCReal).setScale(2, RoundingMode.HALF_UP));
+										financeProfit1.setAmountDr(feeCentersCD);
+										financeProfit1.setRealAmountDr(feeCentersCDReal);
+										financeProfit1.setAmountDrUsd(feeCentersUD);
+										financeProfit1.setRealAmountDrUsd(feeCentersUDReal);
+										financeProfit1.setAmountDrLoc(feeCentersUD.multiply(exrateD).add(feeCentersCD).setScale(2, RoundingMode.HALF_UP));
+										financeProfit1.setRealAmountDrLoc(feeCentersUDReal.multiply(exrateD).add(feeCentersCDReal).setScale(2, RoundingMode.HALF_UP));
+										financeProfit1.setAmountProfitLoc(item.getAmountDrLoc().subtract(item.getAmountCrLoc()).setScale(2, RoundingMode.HALF_UP));
+										financeProfit1.setRealAmountProfitLoc(item.getRealAmountDrLoc().subtract(item.getRealAmountCrLoc()).setScale(2, RoundingMode.HALF_UP));
+									}
+								}
+							} catch (ParseException e) {
+								throw new RuntimeException(e);
+							}
+							financeProfits.add(financeProfit1);
+						}
+					}
+				}
+			}
+			financeProfitList.addAll(financeProfits);
+		} else {
+			financeProfit.setBillType(financeProfit.getBillType() + ",SEA,SIA,AEA,AIA");
+			financeProfitList = financeProfitMapper.financeProfitSum(financeProfit);
+		}
+		for (FinanceProfitDtoList item : financeProfitList) {
+			if (null != item) {
+				item.setAmountCrLoc(item.getAmountCrUsd().multiply(exrateC).add(item.getAmountCr()).setScale(2, RoundingMode.HALF_UP));
+				item.setRealAmountCrLoc(item.getRealAmountCrUsd().multiply(exrateC).add(item.getRealAmountCr()).setScale(2, RoundingMode.HALF_UP));
+				item.setAmountDrLoc(item.getAmountDrUsd().multiply(exrateC).add(item.getAmountDr()).setScale(2, RoundingMode.HALF_UP));
+				item.setRealAmountDrLoc(item.getRealAmountDrUsd().multiply(exrateC).add(item.getRealAmountDr()).setScale(2, RoundingMode.HALF_UP));
+				item.setAmountProfitLoc(item.getAmountDrLoc().subtract(item.getAmountCrLoc()).setScale(2, RoundingMode.HALF_UP));
+				item.setRealAmountProfitLoc(item.getRealAmountDrLoc().subtract(item.getRealAmountCrLoc()).setScale(2, RoundingMode.HALF_UP));
+			}
+		}
+		return financeProfitList;
+	}
 }

+ 11 - 0
blade-service/blade-sales-part/pom.xml

@@ -13,6 +13,17 @@
 
 
     <dependencies>
+        <dependency>
+            <groupId>com.microsoft</groupId>
+            <artifactId>sqljdbc4</artifactId>
+            <version>3.0</version>
+        </dependency>
+        <!--动态数据源配置-->
+        <dependency>
+            <groupId>com.baomidou</groupId>
+            <artifactId>dynamic-datasource-spring-boot-starter</artifactId>
+            <version>3.1.1</version>
+        </dependency>
         <!--Job-->
         <dependency>
             <groupId>com.xuxueli</groupId>

+ 3 - 0
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/SalesPartApplication.java

@@ -1,13 +1,16 @@
 package org.springblade.salesPart;
 
+import com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure;
 import org.springblade.core.cloud.feign.EnableBladeFeign;
 import org.springblade.core.launch.BladeApplication;
 import org.springblade.core.transaction.annotation.SeataCloudApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.cloud.client.SpringCloudApplication;
 
 @EnableBladeFeign
 @SpringCloudApplication
 @SeataCloudApplication
+//@SpringBootApplication(exclude = DruidDataSourceAutoConfigure.class)
 public class SalesPartApplication {
 	public static void main(String[] args) {
 		BladeApplication.run("blade-sales-part", SalesPartApplication.class, args);

+ 1 - 1
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/accountManagement/controller/AccountManagementController.java

@@ -150,7 +150,7 @@ public class AccountManagementController extends BladeController {
 	@ApiOperation(value = "删除", notes = "传入ids")
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
 		List<Long> list = Func.toLongList(ids);
-		if (list.size() > 0) {
+		if (!list.isEmpty()) {
 			if (settlementService.count(new LambdaQueryWrapper<PjSettlement>()
 				.eq(PjSettlement::getTenantId, AuthUtil.getTenantId())
 				.eq(PjSettlement::getIsDeleted, 0)

+ 1 - 1
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/brand/controller/BrandDescController.java

@@ -195,7 +195,7 @@ public class BrandDescController extends BladeController {
 	@ApiOperation(value = "删除", notes = "传入ids")
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
 		List<Long> list = Func.toLongList(ids);
-		if (list.size() > 0) {
+		if (!list.isEmpty()) {
 			if (goodsDescService.count(new LambdaQueryWrapper<PjGoodsDesc>()
 				.eq(PjGoodsDesc::getTenantId, AuthUtil.getTenantId())
 				.eq(PjGoodsDesc::getIsDeleted, 0)

+ 0 - 61
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/config/MyBatisPlusConfig.java

@@ -1,61 +0,0 @@
-/*
-package org.springblade.salesPart.config;
-
-import com.baomidou.mybatisplus.annotation.DbType;
-import com.baomidou.mybatisplus.autoconfigure.ConfigurationCustomizer;
-import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
-import com.baomidou.mybatisplus.extension.plugins.handler.TenantLineHandler;
-import com.baomidou.mybatisplus.extension.plugins.inner.*;
-import net.sf.jsqlparser.expression.Expression;
-import net.sf.jsqlparser.expression.StringValue;
-import org.springblade.core.mp.config.MybatisPlusConfiguration;
-import org.springblade.core.mp.intercept.QueryInterceptor;
-import org.springblade.core.mp.plugins.BladePaginationInterceptor;
-import org.springblade.core.mp.props.MybatisPlusProperties;
-import org.springblade.core.secure.utils.AuthUtil;
-import org.springblade.core.tool.utils.Func;
-import org.springblade.core.tool.utils.ObjectUtil;
-import org.springframework.beans.factory.ObjectProvider;
-import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.core.annotation.AnnotationAwareOrderComparator;
-
-*/
-/**
- * @author :jixinyuan
- * @date : 2023/7/4
- *//*
-
-@Configuration
-public class MyBatisPlusConfig extends MybatisPlusConfiguration {
-
-
-	@Bean
-	public MybatisPlusProperties mybatisPlusProperties() {
-		return  new MybatisPlusProperties();
-	}
-
-	@Bean
-	@ConditionalOnMissingBean({MybatisPlusInterceptor.class})
-	public MybatisPlusInterceptor mybatisPlusInterceptor(ObjectProvider<QueryInterceptor[]> queryInterceptors, TenantLineInnerInterceptor tenantLineInnerInterceptor) {
-		MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
-		if (this.mybatisPlusProperties().getTenantMode()) {
-			interceptor.addInnerInterceptor(tenantLineInnerInterceptor);
-		}
-		interceptor.addInnerInterceptor(new OptimisticLockerInnerInterceptor());
-		BladePaginationInterceptor paginationInterceptor = new BladePaginationInterceptor();
-		QueryInterceptor[] queryInterceptorArray = (QueryInterceptor[]) queryInterceptors.getIfAvailable();
-		if (ObjectUtil.isNotEmpty(queryInterceptorArray)) {
-			AnnotationAwareOrderComparator.sort(queryInterceptorArray);
-			paginationInterceptor.setQueryInterceptors(queryInterceptorArray);
-		}
-
-		paginationInterceptor.setMaxLimit(this.mybatisPlusProperties().getPageLimit());
-		paginationInterceptor.setOverflow(this.mybatisPlusProperties().getOverflow());
-		paginationInterceptor.setOptimizeJoin(this.mybatisPlusProperties().getOptimizeJoin());
-		interceptor.addInnerInterceptor(paginationInterceptor);
-		return interceptor;
-	}
-}
-*/

+ 12 - 12
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/corps/controller/CorpsDescController.java

@@ -110,30 +110,30 @@ public class CorpsDescController extends BladeController {
 			List<PjCorpsTypeDesc> pjCorpsTypeDescList = corpsTypeDescService.list(new LambdaQueryWrapper<PjCorpsTypeDesc>()
 				.in(PjCorpsTypeDesc::getCorpId, corpsIds));
 			List<PjCorpsType> pjCorpsTypeList = new ArrayList<>();
-			if (pjCorpsTypeDescList.size() > 0) {
+			if (!pjCorpsTypeDescList.isEmpty()) {
 				List<Long> typeIdList = pjCorpsTypeDescList.stream().map(PjCorpsTypeDesc::getCorpTypeId).collect(Collectors.toList());
-				if (typeIdList.size() > 0) {
+				if (!typeIdList.isEmpty()) {
 					pjCorpsTypeList = corpsTypeService.list(new LambdaQueryWrapper<PjCorpsType>()
 						.in(PjCorpsType::getId, typeIdList)
 						.eq(PjCorpsType::getIsDeleted, 0));
 				}
 			}
 			List<PjStorageDesc> storageDescList = new ArrayList<>();
-			if (ids.size() > 0) {
+			if (!ids.isEmpty()) {
 				storageDescList = storageDescService.list(new LambdaQueryWrapper<PjStorageDesc>().in(PjStorageDesc::getId, ids));
 			}
 			for (CorpsDescVO item : pages.getRecords()) {
 				if (ObjectUtils.isNotNull(item.getDeliveryWarehouseId())) {
 					item.setDeliveryWarehouseName(storageDescList.stream().filter(e -> item.getDeliveryWarehouseId().equals(e.getId())).findFirst().orElse(new PjStorageDesc()).getCname());
 				}
-				if (pjCorpsTypeList.size() > 0) {
+				if (!pjCorpsTypeList.isEmpty()) {
 					List<Long> typeIds = pjCorpsTypeDescList.stream()
 						.filter(e -> e.getCorpId().equals(item.getId())).map(PjCorpsTypeDesc::getCorpTypeId)
 						.collect(Collectors.toList());
 					List<PjCorpsType> pjCorpsTypes = pjCorpsTypeList.stream()
 						.filter(e -> e.getCorpType().equals(item.getCorpType()) && typeIds.contains(e.getId()))
 						.collect(Collectors.toList());
-					if (pjCorpsTypes.size() > 0) {
+					if (!pjCorpsTypes.isEmpty()) {
 						String typeName = pjCorpsTypes.stream().map(PjCorpsType::getCname).collect(Collectors.joining(","));
 						item.setCorpsTypeName(typeName);
 					}
@@ -222,7 +222,7 @@ public class CorpsDescController extends BladeController {
 	@ApiOperation(value = "删除", notes = "传入ids")
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
 		List<Long> list = Func.toLongList(ids);
-		if (list.size() > 0) {
+		if (!list.isEmpty()) {
 			if (orderService.count(new LambdaQueryWrapper<PjOrder>()
 				.eq(PjOrder::getTenantId, AuthUtil.getTenantId())
 				.eq(PjOrder::getIsDeleted, 0)
@@ -247,7 +247,7 @@ public class CorpsDescController extends BladeController {
 		List<CorpsDescVO> list = corpsDescService.selectCorpsDescAll(corpsDesc);
 		List<Long> addId = list.stream().map(CorpsDescVO::getId).collect(Collectors.toList());
 		List<PjCorpsAddr> pjCorpsAddrList = new ArrayList<>();
-		if (addId.size() > 0) {
+		if (!addId.isEmpty()) {
 			pjCorpsAddrList = corpsAddrService.list(new LambdaQueryWrapper<PjCorpsAddr>()
 				.eq(PjCorpsAddr::getTenantId, AuthUtil.getTenantId())
 				.eq(PjCorpsAddr::getIsDeleted, 0)
@@ -260,9 +260,9 @@ public class CorpsDescController extends BladeController {
 		List<PjCorpsTypeDesc> pjCorpsTypeDescList = corpsTypeDescService.list(new LambdaQueryWrapper<PjCorpsTypeDesc>()
 			.in(PjCorpsTypeDesc::getCorpId, corpsIds));
 		List<PjCorpsType> pjCorpsTypeList = new ArrayList<>();
-		if (pjCorpsTypeDescList.size() > 0) {
+		if (!pjCorpsTypeDescList.isEmpty()) {
 			List<Long> typeIdList = pjCorpsTypeDescList.stream().map(PjCorpsTypeDesc::getCorpTypeId).collect(Collectors.toList());
-			if (typeIdList.size() > 0) {
+			if (!typeIdList.isEmpty()) {
 				pjCorpsTypeList = corpsTypeService.list(new LambdaQueryWrapper<PjCorpsType>()
 					.in(PjCorpsType::getId, typeIdList)
 					.eq(PjCorpsType::getIsDeleted, 0));
@@ -272,20 +272,20 @@ public class CorpsDescController extends BladeController {
 			List<PjCorpsAddr> finalPjCorpsAddrList = pjCorpsAddrList;
 			List<PjCorpsType> finalPjCorpsTypeList = pjCorpsTypeList;
 			list.forEach(item -> {
-				if (finalPjCorpsTypeList.size() > 0) {
+				if (!finalPjCorpsTypeList.isEmpty()) {
 					List<Long> typeIds = pjCorpsTypeDescList.stream()
 						.filter(e -> e.getCorpId().equals(item.getId())).map(PjCorpsTypeDesc::getCorpTypeId)
 						.collect(Collectors.toList());
 					List<PjCorpsType> pjCorpsTypes = finalPjCorpsTypeList.stream()
 						.filter(e -> e.getCorpType().equals(item.getCorpType()) && typeIds.contains(e.getId()))
 						.collect(Collectors.toList());
-					if (pjCorpsTypes.size() > 0) {
+					if (!pjCorpsTypes.isEmpty()) {
 						String typeName = pjCorpsTypes.stream().map(PjCorpsType::getCname).collect(Collectors.joining(","));
 						item.setCorpsTypeName(typeName);
 					}
 				}
 				List<PjCorpsAddr> pjCorpsAddr = finalPjCorpsAddrList.stream().filter(e -> e.getPid().equals(item.getId())).collect(Collectors.toList());
-				if (pjCorpsAddr.size() > 0) {
+				if (!pjCorpsAddr.isEmpty()) {
 					item.setContacts(pjCorpsAddr.stream().map(PjCorpsAddr::getContacts).collect(Collectors.joining(",")));
 					item.setContactsPhone(pjCorpsAddr.stream().map(PjCorpsAddr::getTel).collect(Collectors.joining(",")));
 					item.setAddress(pjCorpsAddr.stream().map(PjCorpsAddr::getDetailedAddress).collect(Collectors.joining(",")));

+ 1 - 1
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/corps/service/impl/CorpsAttnServiceImpl.java

@@ -109,7 +109,7 @@ public class CorpsAttnServiceImpl extends ServiceImpl<CorpsAttnMapper, PjCorpsAt
 
 		} else {
 			R<List<Dept>> res = sysClient.selectByDeptIds(AuthUtil.getDeptId());
-			if (res.isSuccess() && ObjectUtils.isNotNull(res.getData()) && res.getData().size() > 0) {
+			if (res.isSuccess() && ObjectUtils.isNotNull(res.getData()) && !res.getData().isEmpty()) {
 				user.setAppletsId(res.getData().get(0).getAppletsId());
 			}
 			user.setPassword(LandConstant.USER_PASSWORD);

+ 7 - 7
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/goods/controller/GoodsDescController.java

@@ -218,7 +218,7 @@ public class GoodsDescController extends BladeController {
 	@ApiOperation(value = "删除", notes = "传入ids")
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
 		List<Long> list = Func.toLongList(ids);
-		if (list.size() > 0) {
+		if (!list.isEmpty()) {
 			if (orderItemsService.count(new LambdaQueryWrapper<PjOrderItems>()
 				.eq(PjOrderItems::getTenantId, AuthUtil.getTenantId())
 				.eq(PjOrderItems::getIsDeleted, 0)
@@ -380,7 +380,7 @@ public class GoodsDescController extends BladeController {
 		if (ObjectUtil.isNotEmpty(goods.getCname())) {//商品名称
 			lambdaQueryWrapper.and(i -> i.like(PjGoodsDesc::getCname, goods.getCname()).or().like(PjGoodsDesc::getCnameInt, goods.getCname()));
 		}
-		if (ObjectUtils.isNotNull(ids) && ids.size() > 0) {
+		if (ObjectUtils.isNotNull(ids) && !ids.isEmpty()) {
 			lambdaQueryWrapper.in(PjGoodsDesc::getId, ids);
 		} else {
 			return R.data(new ArrayList<>());
@@ -436,14 +436,14 @@ public class GoodsDescController extends BladeController {
 
 			lambdaQueryWrapper.in(PjGoodsDesc::getGoodsTypeId, goodsIdList);
 		}
-		if (ObjectUtils.isNotNull(ids) && ids.size() > 0) {
+		if (ObjectUtils.isNotNull(ids) && !ids.isEmpty()) {
 			lambdaQueryWrapper.in(PjGoodsDesc::getId, ids);
 		} else {
 			return R.data(new Page<>());
 		}
 		IPage<PjGoodsDesc> list = goodsDescService.page(Condition.getPage(query), lambdaQueryWrapper);
 		for (PjGoodsDesc item : list.getRecords()) {
-			if (pjProductLaunchList.size() > 0) {
+			if (!pjProductLaunchList.isEmpty()) {
 				PjProductLaunch pjProductLaunch = pjProductLaunchList.stream().filter(e -> e.getGoodsId().equals(item.getId())).findFirst().orElse(new PjProductLaunch());
 				if ("售价1".equals(priceSystem)) {
 					item.setPrice(pjProductLaunch.getPriceOne());
@@ -523,14 +523,14 @@ public class GoodsDescController extends BladeController {
 
 			lambdaQueryWrapper.in(PjGoodsDesc::getGoodsTypeId, goodsIdList);
 		}
-		if (ObjectUtils.isNotNull(ids) && ids.size() > 0) {
+		if (ObjectUtils.isNotNull(ids) && !ids.isEmpty()) {
 			lambdaQueryWrapper.in(PjGoodsDesc::getId, ids);
 		} else {
 			return R.data(new Page<>());
 		}
 		IPage<PjGoodsDesc> list = goodsDescService.page(Condition.getPage(query), lambdaQueryWrapper);
 		for (PjGoodsDesc item : list.getRecords()) {
-			if (pjProductLaunchList.size() > 0) {
+			if (!pjProductLaunchList.isEmpty()) {
 				PjStockDesc pjProductLaunch = pjProductLaunchList.stream().filter(e -> e.getGoodsId().equals(item.getId())).findFirst().orElse(new PjStockDesc());
 				item.setSharedCompanyId(pjProductLaunch.getSalesCompanyId());
 				item.setSharedCompanyName(pjProductLaunch.getSalesCompanyName());
@@ -592,7 +592,7 @@ public class GoodsDescController extends BladeController {
 		if (ObjectUtils.isNotNull(pjCorpsDesc)) {
 			priceSystem = pjCorpsDesc.getPriceSystem();
 		}
-		if (pjProductLaunch.size() > 0) {
+		if (!pjProductLaunch.isEmpty()) {
 			if ("售价1".equals(priceSystem)) {
 				detail.setPrice(pjProductLaunch.get(0).getPriceOne());
 			} else if ("售价2".equals(priceSystem)) {

+ 2 - 2
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/maintenance/controller/MaintenanceController.java

@@ -91,11 +91,11 @@ public class MaintenanceController extends BladeController {
 			.eq(ObjectUtils.isNotNull(maintenance.getPaymentStatus()), Maintenance::getPaymentStatus, maintenance.getPaymentStatus())
 			.eq(ObjectUtils.isNotNull(maintenance.getDeviceId()), Maintenance::getDeviceId, maintenance.getDeviceId())
 			.eq(ObjectUtils.isNotNull(maintenance.getArchivesId()), Maintenance::getArchivesId, maintenance.getArchivesId());
-		if (ObjectUtils.isNotNull(maintenance.getCompleteDateList()) && maintenance.getCompleteDateList().size() > 0) {
+		if (ObjectUtils.isNotNull(maintenance.getCompleteDateList()) && !maintenance.getCompleteDateList().isEmpty()) {
 			lambdaQueryWrapper.gt(Maintenance::getCompleteDate, maintenance.getCompleteDateList().get(0));
 			lambdaQueryWrapper.lt(Maintenance::getCompleteDate, maintenance.getCompleteDateList().get(0));
 		}
-		if (ObjectUtils.isNotNull(maintenance.getRepairReportDateList()) && maintenance.getRepairReportDateList().size() > 0) {
+		if (ObjectUtils.isNotNull(maintenance.getRepairReportDateList()) && !maintenance.getRepairReportDateList().isEmpty()) {
 			lambdaQueryWrapper.gt(Maintenance::getRepairReportDate, maintenance.getRepairReportDateList().get(0));
 			lambdaQueryWrapper.lt(Maintenance::getRepairReportDate, maintenance.getRepairReportDateList().get(0));
 		}

+ 10 - 10
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/maintenance/service/impl/MaintenanceServiceImpl.java

@@ -202,7 +202,7 @@ public class MaintenanceServiceImpl extends ServiceImpl<MaintenanceMapper, Maint
 									e.printStackTrace();
 								}
 							}
-							if (data.size() > 0) {
+							if (!data.isEmpty()) {
 								WxMpTemplateDto wxMpTemplateDto = new WxMpTemplateDto();
 								wxMpTemplateDto.setOpenid(openIds.substring(0, openIds.length() - 1));
 								wxMpTemplateDto.setTenantId(AuthUtil.getTenantId());
@@ -224,7 +224,7 @@ public class MaintenanceServiceImpl extends ServiceImpl<MaintenanceMapper, Maint
 			maintenance.setUpdateUser(AuthUtil.getUserId());
 			baseMapper.updateById(maintenance);
 		}
-		if (ObjectUtils.isNotNull(maintenance.getMaintenanceFees()) && maintenance.getMaintenanceFees().size() > 0) {
+		if (ObjectUtils.isNotNull(maintenance.getMaintenanceFees()) && !maintenance.getMaintenanceFees().isEmpty()) {
 			BigDecimal amount = new BigDecimal("0.00");
 			for (MaintenanceFees item : maintenance.getMaintenanceFees()) {
 				if (item.getId() == null) {
@@ -242,7 +242,7 @@ public class MaintenanceServiceImpl extends ServiceImpl<MaintenanceMapper, Maint
 			baseMapper.updateById(maintenance);
 			maintenanceFeesService.saveOrUpdateBatch(maintenance.getMaintenanceFees());
 		}
-		if (ObjectUtils.isNotNull(maintenance.getMaintenanceFiles()) && maintenance.getMaintenanceFiles().size() > 0) {
+		if (ObjectUtils.isNotNull(maintenance.getMaintenanceFiles()) && !maintenance.getMaintenanceFiles().isEmpty()) {
 			for (MaintenanceFiles item : maintenance.getMaintenanceFiles()) {
 				if (item.getId() == null) {
 					item.setCreateTime(new Date());
@@ -359,7 +359,7 @@ public class MaintenanceServiceImpl extends ServiceImpl<MaintenanceMapper, Maint
 					e.printStackTrace();
 				}
 			}
-			if (data.size() > 0) {
+			if (!data.isEmpty()) {
 				WxMpTemplateDto wxMpTemplateDto = new WxMpTemplateDto();
 				wxMpTemplateDto.setOpenid(openIds.substring(0, openIds.length() - 1));
 				wxMpTemplateDto.setTenantId(AuthUtil.getTenantId());
@@ -432,7 +432,7 @@ public class MaintenanceServiceImpl extends ServiceImpl<MaintenanceMapper, Maint
 						e.printStackTrace();
 					}
 				}
-				if (data.size() > 0) {
+				if (!data.isEmpty()) {
 					WxMpTemplateDto wxMpTemplateDto = new WxMpTemplateDto();
 					wxMpTemplateDto.setOpenid(openIds.substring(0, openIds.length() - 1));
 					wxMpTemplateDto.setTenantId(AuthUtil.getTenantId());
@@ -563,7 +563,7 @@ public class MaintenanceServiceImpl extends ServiceImpl<MaintenanceMapper, Maint
 		maintenance.setStatus(1);
 		maintenance.setDispatchingWorkers("1");
 		baseMapper.insert(maintenance);
-		if (ObjectUtils.isNotNull(maintenance.getMaintenanceFiles()) && maintenance.getMaintenanceFiles().size() > 0) {
+		if (ObjectUtils.isNotNull(maintenance.getMaintenanceFiles()) && !maintenance.getMaintenanceFiles().isEmpty()) {
 			for (MaintenanceFiles item : maintenance.getMaintenanceFiles()) {
 				if (item.getId() == null) {
 					item.setCreateTime(new Date());
@@ -686,7 +686,7 @@ public class MaintenanceServiceImpl extends ServiceImpl<MaintenanceMapper, Maint
 		if (maintenance.getId() == null) {
 			throw new RuntimeException("缺少必要参数");
 		}
-		if (ObjectUtils.isNotNull(maintenance.getMaintenanceFees()) && maintenance.getMaintenanceFees().size() > 0) {
+		if (ObjectUtils.isNotNull(maintenance.getMaintenanceFees()) && !maintenance.getMaintenanceFees().isEmpty()) {
 			BigDecimal amount = new BigDecimal("0.00");
 			for (MaintenanceFees item : maintenance.getMaintenanceFees()) {
 				if (item.getId() == null) {
@@ -703,7 +703,7 @@ public class MaintenanceServiceImpl extends ServiceImpl<MaintenanceMapper, Maint
 			maintenance.setMaintenanceAmount(amount);
 			maintenanceFeesService.saveOrUpdateBatch(maintenance.getMaintenanceFees());
 		}
-		if (ObjectUtils.isNotNull(maintenance.getMaintenanceFiles()) && maintenance.getMaintenanceFiles().size() > 0) {
+		if (ObjectUtils.isNotNull(maintenance.getMaintenanceFiles()) && !maintenance.getMaintenanceFiles().isEmpty()) {
 			for (MaintenanceFiles item : maintenance.getMaintenanceFiles()) {
 				if (item.getId() == null) {
 					item.setCreateTime(new Date());
@@ -787,7 +787,7 @@ public class MaintenanceServiceImpl extends ServiceImpl<MaintenanceMapper, Maint
 						e.printStackTrace();
 					}
 				}
-				if (data.size() > 0) {
+				if (!data.isEmpty()) {
 					WxMpTemplateDto wxMpTemplateDto = new WxMpTemplateDto();
 					wxMpTemplateDto.setOpenid(openIds.substring(0, openIds.length() - 1));
 					wxMpTemplateDto.setTenantId(AuthUtil.getTenantId());
@@ -972,7 +972,7 @@ public class MaintenanceServiceImpl extends ServiceImpl<MaintenanceMapper, Maint
 						e.printStackTrace();
 					}
 				}
-				if (data.size() > 0) {
+				if (!data.isEmpty()) {
 					WxMpTemplateDto wxMpTemplateDto = new WxMpTemplateDto();
 					wxMpTemplateDto.setOpenid(openIds.substring(0, openIds.length() - 1));
 					wxMpTemplateDto.setTenantId(AuthUtil.getTenantId());

+ 2 - 0
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/michelinApi/service/impl/MichelinServiceImpl.java

@@ -1,6 +1,7 @@
 package org.springblade.salesPart.michelinApi.service.impl;
 
 import com.alibaba.fastjson.JSONObject;
+import com.baomidou.dynamic.datasource.annotation.DS;
 import lombok.AllArgsConstructor;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
@@ -25,6 +26,7 @@ import java.util.*;
  * @date : 2024/3/11
  */
 @Service
+@DS("slave_1")
 @AllArgsConstructor
 public class MichelinServiceImpl implements IMichelinService {
 

+ 3 - 3
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/order/controller/OrderController.java

@@ -624,7 +624,7 @@ public class OrderController extends BladeController {
 							.eq(PjGoodsFiles::getPid, item.getGoodsId())
 							.eq(PjGoodsFiles::getMainImage, 0));
 						item.setGoodsFilesList(pjGoodsFiles);
-						if (item.getGoodsFilesList().size() == 0 && ObjectUtils.isNotNull(item.getBrandId())) {
+						if (item.getGoodsFilesList().isEmpty() && ObjectUtils.isNotNull(item.getBrandId())) {
 							item.setGoodsFilesList(BeanUtil.copy(brandFilesService.list(new LambdaQueryWrapper<PjBrandFiles>()
 								.eq(PjBrandFiles::getMainImage, 0)
 								.eq(PjBrandFiles::getPid, item.getBrandId())
@@ -772,14 +772,14 @@ public class OrderController extends BladeController {
 		//平均客单价
 		BigDecimal averageAmount = new BigDecimal("0.00");
 
-		if (pjOrderListXS.size() > 0) {
+		if (!pjOrderListXS.isEmpty()) {
 			income = pjOrderListXS.stream().map(PjOrder::getTotalMoney).filter(ObjectUtils::isNotNull).reduce(BigDecimal.ZERO, BigDecimal::add);
 			cost = pjOrderListXS.stream().map(PjOrder::getCost).filter(ObjectUtils::isNotNull).reduce(BigDecimal.ZERO, BigDecimal::add);
 			profit = income.subtract(cost);
 			averageAmount = averageAmount.add(income.divide(new BigDecimal(pjOrderListXS.size()), MathContext.DECIMAL32).setScale(2, BigDecimal.ROUND_HALF_UP));
 
 		}
-		if (pjOrderListCG.size() > 0 && AuthUtil.getUserRole().contains("admin")) {
+		if (!pjOrderListCG.isEmpty() && AuthUtil.getUserRole().contains("admin")) {
 			expenditure = pjOrderListCG.stream().map(PjOrder::getTotalMoney).filter(ObjectUtils::isNotNull).reduce(BigDecimal.ZERO, BigDecimal::add);
 		}
 		map.put("income", income);

+ 31 - 41
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/order/service/impl/OrderServiceImpl.java

@@ -194,7 +194,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 			.eq(PjSettlementItems::getTenantId, AuthUtil.getTenantId());
 		List<PjSettlementItems> pjSettlementList = settlementItemsService.list(lambdaQueryWrapper);
 		String sysNo = "";
-		if (pjSettlementList.size() > 0) {
+		if (!pjSettlementList.isEmpty()) {
 			PjSettlement pjSettlement = settlementMapper.selectById(pjSettlementList.get(0).getPid());
 			if (ObjectUtils.isNotNull(pjSettlement)) {
 				sysNo = pjSettlement.getSysNo();
@@ -239,9 +239,6 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 	/**
 	 * 自定义分页
 	 *
-	 * @param page
-	 * @param order
-	 * @return
 	 */
 	@Override
 	public IPage<OrderVO> selectOrderPage(IPage<OrderVO> page, OrderVO order) {
@@ -251,9 +248,6 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 	/**
 	 * 自定义分页
 	 *
-	 * @param page
-	 * @param order
-	 * @return
 	 */
 	@Override
 	public IPage<OrderStatistics> collectionStatistics(IPage<OrderStatistics> page, OrderVO order) {
@@ -266,8 +260,6 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 	/**
 	 * 自定义分页
 	 *
-	 * @param order
-	 * @return
 	 */
 	@Override
 	public List<OrderStatistics> collectionStatisticsList(OrderVO order) {
@@ -337,7 +329,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 			.eq(PjOrder::getBsType, "XS")
 			.eq(PjOrder::getBusinesDate, dateS)
 			.apply("(( business_source = '外部销售' AND FIND_IN_SET( actual_payment_status, '2,3' ) ) OR (business_source = '内部销售' AND FIND_IN_SET( actual_payment_status, '0,1,2,3' )))"));
-		if (orderList.size() > 0) {
+		if (!orderList.isEmpty()) {
 			return R.data(orderList.stream().map(PjOrder::getTotalMoney).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
 		} else {
 			return R.data(0);
@@ -373,7 +365,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 			.eq(PjOrderItems::getTenantId, AuthUtil.getTenantId())
 			.eq(PjOrderItems::getIsDeleted, 0)
 			.eq(PjOrderItems::getPid, order.getId()));
-		if (pjOrderItemsList.size() > 0) {
+		if (!pjOrderItemsList.isEmpty()) {
 			List<Long> goodsIds = pjOrderItemsList.stream().map(PjOrderItems::getGoodsId).filter(Objects::nonNull).distinct().collect(Collectors.toList());
 			List<PjGoodsDesc> pjGoodsDescList = goodsDescMapper.selectList(new LambdaQueryWrapper<PjGoodsDesc>()
 				.eq(PjGoodsDesc::getTenantId, AuthUtil.getTenantId())
@@ -525,7 +517,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 			//总金额
 			totalMoney = order.getOrderItemsList().stream().reduce(BigDecimal.ZERO, (x, y) -> {
 				return x.add(y.getGoodsNum().multiply(y.getPrice()));
-			}, BigDecimal::add).setScale(2, BigDecimal.ROUND_HALF_UP);
+			}, BigDecimal::add).setScale(2, RoundingMode.HALF_UP);
 
 			if (totalMoney.compareTo(corpsDesc.getPointsBalance()) > 0) {
 				throw new RuntimeException("积分余额不足,兑换失败");
@@ -627,7 +619,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 			List<PjGoodsDesc> pjGoodsDescList = new ArrayList<>();
 			List<PjStockDesc> pjStockDescList = new ArrayList<>();
 			List<PjStockDesc> pjStockDescListAll = new ArrayList<>();
-			if (goodsIds.size() > 0) {
+			if (!goodsIds.isEmpty()) {
 				pjGoodsDescList = goodsDescMapper.selectList(new LambdaQueryWrapper<PjGoodsDesc>()
 					.eq(PjGoodsDesc::getTenantId, AuthUtil.getTenantId())
 					.eq(PjGoodsDesc::getIsDeleted, 0)
@@ -710,11 +702,11 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 					if (ObjectUtil.isEmpty(e.getDot())) {
 						throw new RuntimeException(goodsDesc.getCname() + "已开启批次号管理,请填写批次号");
 					}
-					if (finalPjStockDescList.size() > 0) {
+					if (!finalPjStockDescList.isEmpty()) {
 						stockOne = finalPjStockDescList.stream().filter(i -> i.getGoodsId().equals(goodsDesc.getId()) && ObjectUtils.isNotNull(i.getDot()) && i.getDot().equals(e.getDot())).findFirst().orElse(null);
 					}
 				} else {
-					if (finalPjStockDescList.size() > 0) {
+					if (!finalPjStockDescList.isEmpty()) {
 						stockOne = finalPjStockDescList.stream().filter(i -> i.getGoodsId().equals(goodsDesc.getId()) && "".equals(i.getDot()) || i.getDot() == null).findFirst().orElse(null);
 					}
 				}
@@ -747,12 +739,12 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 				if (!count) {
 					throw new RuntimeException(stockOne.getCname() + "该产品库存正在操作,请稍后刷新在进行操作!");
 				}
-				/** ----------------------修改上架库存---------------------- */
+				/* ----------------------修改上架库存---------------------- */
 				BigDecimal balanceQuantity = new BigDecimal("0.00");
-				if (finalPjStockDescListAll.size() > 0) {
+				if (!finalPjStockDescListAll.isEmpty()) {
 					//查询所有该商品的库存
 					List<PjStockDesc> stockDescList = finalPjStockDescListAll.stream().filter(i -> i.getGoodsId().equals(e.getGoodsId())).collect(Collectors.toList());
-					if (stockDescList.size() > 0) {
+					if (!stockDescList.isEmpty()) {
 						balanceQuantity = stockDescList.stream().map(PjStockDesc::getBalanceQuantity).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add);
 					}
 				}
@@ -771,7 +763,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 					});
 				}
 
-				/** ----------------------修改上架库存---------------------- */
+				/* ----------------------修改上架库存---------------------- */
 			});
 			R res = productLaunchService.updateBatchById(pjProductLaunchList);
 			if (!res.isSuccess()) {
@@ -906,7 +898,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 			List<PjGoodsDesc> pjGoodsDescList = new ArrayList<>();
 			List<PjStockDesc> pjStockDescList = new ArrayList<>();
 			List<PjProductLaunch> pjProductLaunchList = new ArrayList<>();
-			if (goodsIds.size() > 0) {
+			if (!goodsIds.isEmpty()) {
 				pjGoodsDescList = goodsDescMapper.selectList(new LambdaQueryWrapper<PjGoodsDesc>()
 					.eq(PjGoodsDesc::getTenantId, AuthUtil.getTenantId())
 					.eq(PjGoodsDesc::getIsDeleted, 0)
@@ -965,7 +957,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 			if (!res.isSuccess()) {
 				throw new RuntimeException(res.getMsg());
 			}
-			if (productLaunches.size() > 0) {
+			if (!productLaunches.isEmpty()) {
 				productLaunchService.saveOrUpdateBatch(productLaunches);
 			}
 		}
@@ -1042,8 +1034,6 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 	/**
 	 * 保存订单信息
 	 *
-	 * @param order
-	 * @return
 	 */
 	@Override
 	@Transactional(rollbackFor = Exception.class)
@@ -1127,7 +1117,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 				if (ObjectUtils.isNotNull(order.getStorageId())) {
 					if (goodsId.size() != pjStockDescList.size()) {
 						List<PjStockDesc> difference = pjStockDescList.stream().filter(e -> !goodsId.contains(e.getGoodsId())).collect(Collectors.toList());
-						if (difference.size() > 0) {
+						if (!difference.isEmpty()) {
 							String name = difference.stream().map(PjStockDesc::getCname).collect(Collectors.joining(","));
 							throw new RuntimeException(name + "未查到库存,请修改");
 						}
@@ -1137,7 +1127,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 					BigDecimal balanceQuantity = new BigDecimal("0.00");
 					BigDecimal inventoryAmount = new BigDecimal("0.00");
 					item.setSendNum(new BigDecimal("0.00"));
-					if (pjStockDescList.size() > 0) {
+					if (!pjStockDescList.isEmpty()) {
 						balanceQuantity = pjStockDescList.stream().filter(e -> e.getGoodsId().equals(item.getGoodsId())).map(PjStockDesc::getBalanceQuantity).filter(Objects::nonNull)
 							.reduce(BigDecimal.ZERO, BigDecimal::add);
 						inventoryAmount = pjStockDescList.stream().filter(e -> e.getGoodsId().equals(item.getGoodsId())).map(PjStockDesc::getInventoryAmount).filter(Objects::nonNull)
@@ -1148,7 +1138,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 						inventoryAmount.compareTo(new BigDecimal("0.00")) == 0) {
 						inventoryCostPrice = new BigDecimal("0.00");
 					} else {
-						inventoryCostPrice = inventoryAmount.divide(balanceQuantity, 2, BigDecimal.ROUND_HALF_UP);
+						inventoryCostPrice = inventoryAmount.divide(balanceQuantity, 2, RoundingMode.HALF_UP);
 					}
 					item.setBizType(order.getBsType());
 					item.setBillNo(order.getOrdNo());
@@ -1208,13 +1198,13 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 				BigDecimal totalMoney = BigDecimal.ZERO;
 				order.setNumberRows(order.getOrderItemsList().size());//行数
 				//总数量
-				order.setGoodsTotalNum(order.getOrderItemsList().stream().filter(e -> e.getGoodsNum() != null).map(PjOrderItems::getGoodsNum).reduce(BigDecimal.ZERO, BigDecimal::add));
+				order.setGoodsTotalNum(order.getOrderItemsList().stream().map(PjOrderItems::getGoodsNum).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
 				//总已发数量
-				order.setGoodsTotalShipNum(order.getOrderItemsList().stream().filter(e -> e.getSendNum() != null).map(PjOrderItems::getSendNum).reduce(BigDecimal.ZERO, BigDecimal::add));
+				order.setGoodsTotalShipNum(order.getOrderItemsList().stream().map(PjOrderItems::getSendNum).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
 				//总金额
 				totalMoney = order.getOrderItemsList().stream().reduce(BigDecimal.ZERO, (x, y) -> {
 					return x.add(y.getGoodsNum().multiply(y.getPrice()));
-				}, BigDecimal::add).setScale(2, BigDecimal.ROUND_HALF_UP);
+				}, BigDecimal::add).setScale(2, RoundingMode.HALF_UP);
 
 				order.setSalesAmount(totalMoney);
 				order.setTotalMoney(totalMoney);
@@ -1225,9 +1215,9 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 				}
 
 				//毛利
-				order.setGrossProfit(order.getOrderItemsList().stream().filter(e -> e.getGrossProfit() != null).map(PjOrderItems::getGrossProfit).reduce(BigDecimal.ZERO, BigDecimal::add));
+				order.setGrossProfit(order.getOrderItemsList().stream().map(PjOrderItems::getGrossProfit).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
 				//成本
-				order.setCost(order.getOrderItemsList().stream().filter(e -> e.getCostprie() != null).map(PjOrderItems::getCostprie).reduce(BigDecimal.ZERO, BigDecimal::add));
+				order.setCost(order.getOrderItemsList().stream().map(PjOrderItems::getCostprie).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
 			} else {
 				order.setNumberRows(0);//行数
 				//总数量
@@ -1287,11 +1277,11 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 				BigDecimal totalMoney = BigDecimal.ZERO;
 				order.setNumberRows(order.getOrderItemsList().size());//行数
 				//明细总数量
-				order.setGoodsTotalNum(order.getOrderItemsList().stream().filter(e -> e.getGoodsNum() != null).map(PjOrderItems::getGoodsNum).reduce(BigDecimal.ZERO, BigDecimal::add));
+				order.setGoodsTotalNum(order.getOrderItemsList().stream().map(PjOrderItems::getGoodsNum).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
 				//明细总金额
 				totalMoney = order.getOrderItemsList().stream().reduce(BigDecimal.ZERO, (x, y) -> {
 					return x.add(y.getGoodsNum().multiply(y.getPrice()));
-				}, BigDecimal::add).setScale(2, BigDecimal.ROUND_HALF_UP);
+				}, BigDecimal::add).setScale(2, RoundingMode.HALF_UP);
 
 				order.setSalesAmount(totalMoney);
 				order.setTotalMoney(totalMoney);
@@ -1473,7 +1463,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 								e.printStackTrace();
 							}
 						}
-						if (data.size() > 0) {
+						if (!data.isEmpty()) {
 							WxMpTemplateDto wxMpTemplateDto = new WxMpTemplateDto();
 							wxMpTemplateDto.setOpenid(openIds.toString());
 							wxMpTemplateDto.setTenantId(AuthUtil.getTenantId());
@@ -1694,7 +1684,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 				.eq(PjGoodsFiles::getPid, item.getGoodsId())
 				.eq(PjGoodsFiles::getMainImage, 0));
 			item.setGoodsFilesList(pjGoodsFiles);
-			if (item.getGoodsFilesList().size() == 0 && ObjectUtils.isNotNull(item.getBrandId())) {
+			if (item.getGoodsFilesList().isEmpty() && ObjectUtils.isNotNull(item.getBrandId())) {
 				item.setGoodsFilesList(BeanUtil.copy(brandFilesService.list(new LambdaQueryWrapper<PjBrandFiles>()
 					.eq(PjBrandFiles::getMainImage, 0)
 					.eq(PjBrandFiles::getPid, item.getBrandId())
@@ -1863,7 +1853,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 				order.setStatus("已取消");
 				order.setXcxStatus("已取消");
 				List<PjShip> shipList = shipMapper.selectList(new LambdaQueryWrapper<PjShip>().eq(PjShip::getOrdNo, order.getOrdNo()).eq(PjShip::getStatusName, "待出库"));
-				if (shipList.size() > 0) {
+				if (!shipList.isEmpty()) {
 					List<Long> ids = shipList.stream().map(PjShip::getId).collect(Collectors.toList());
 					shipMapper.deleteBatchIds(ids);
 				}
@@ -1939,7 +1929,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 				}
 
 				List<PjShip> shipList = shipMapper.selectList(new LambdaQueryWrapper<PjShip>().eq(PjShip::getOrdNo, order.getOrdNo()));
-				if (shipList.size() > 0) {
+				if (!shipList.isEmpty()) {
 					List<Long> ids = shipList.stream().map(PjShip::getId).collect(Collectors.toList());
 					shipMapper.deleteBatchIds(ids);
 				}
@@ -1966,7 +1956,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 							throw new RuntimeException("商品数据异常");
 						}
 
-						/** ----------------------修改上架库存---------------------- */
+						/* ----------------------修改上架库存---------------------- */
 						//查询所有该商品的库存
 						/*LambdaQueryWrapper<PjStockDesc> lambdaQueryWrapperList = new LambdaQueryWrapper<>();
 						lambdaQueryWrapperList.eq(PjStockDesc::getTenantId, AuthUtil.getTenantId())
@@ -1997,16 +1987,16 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 							});
 						}
 
-						/** ----------------------修改上架库存---------------------- */
+						/* ----------------------修改上架库存---------------------- */
 					});
 				}
 
 				//生成历史记录
 				saveHistory(order.getId(), "已退款");
 			}
-			/** ----------------------调用退款接口---------------------- */
+			/* ----------------------调用退款接口---------------------- */
 
-			/** ----------------------调用退款接口---------------------- */
+			/* ----------------------调用退款接口---------------------- */
 
 			if (ObjectUtils.isNull(order.getOldTrxId())) {
 				order.setStatus("已取消");

+ 5 - 5
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/productLaunch/controller/ProductLaunchController.java

@@ -125,14 +125,14 @@ public class ProductLaunchController extends BladeController {
 		String deptId = pages.getRecords().stream().map(PjProductLaunch::getSharedCompany).filter(ObjectUtils::isNotNull).distinct().collect(Collectors.joining(","));
 		R<List<Dept>> deptList = iSysClient.selectByDeptIds(deptId);
 		for (PjProductLaunch item : pages.getRecords()) {
-			if (ObjectUtils.isNotNull(deptList.getData()) && deptList.getData().size() > 0) {
+			if (ObjectUtils.isNotNull(deptList.getData()) && !deptList.getData().isEmpty()) {
 				String deptName = deptList.getData().stream()
 					.filter(e -> ObjectUtils.isNotNull(item.getSharedCompany()) && item.getSharedCompany().contains(e.getId() + ""))
 					.map(Dept::getFullName).collect(Collectors.joining(" | "));
 				item.setSharedCompany(deptName);
 			}
 			item.setFilesList(productLaunchFilesService.list(new QueryWrapper<PjProductLaunchFiles>().eq("pid", item.getId()).eq("is_deleted", 0).eq("main_image", 0)));
-			if (item.getFilesList().size() == 0 && ObjectUtils.isNotNull(item.getBrandId())) {
+			if (item.getFilesList().isEmpty() && ObjectUtils.isNotNull(item.getBrandId())) {
 				item.setFilesList(BeanUtil.copy(brandFilesService.list(new LambdaQueryWrapper<PjBrandFiles>()
 					.eq(PjBrandFiles::getMainImage, 0)
 					.eq(PjBrandFiles::getPid, item.getBrandId())
@@ -211,7 +211,7 @@ public class ProductLaunchController extends BladeController {
 			List<PjProductLaunch> productLaunches = productLaunchService.list(new LambdaQueryWrapper<PjProductLaunch>()
 				.eq(PjProductLaunch::getGoodsId, pjProductLaunch.getGoodsId())
 				.eq(PjProductLaunch::getSourceId, pjProductLaunch.getId()));
-			if (productLaunches.size() > 0) {
+			if (!productLaunches.isEmpty()) {
 				List<Long> idList = productLaunches.stream().map(PjProductLaunch::getId).collect(Collectors.toList());
 				productLaunchService.removeByIds(idList);
 			}
@@ -295,7 +295,7 @@ public class ProductLaunchController extends BladeController {
 		String deptId = pjProductLaunchList.stream().map(PjProductLaunch::getSharedCompany).filter(ObjectUtils::isNotNull).distinct().collect(Collectors.joining(","));
 		R<List<Dept>> deptList = iSysClient.selectByDeptIds(deptId);
 		for (PjProductLaunch item : pjProductLaunchList) {
-			if (ObjectUtils.isNotNull(deptList.getData()) && deptList.getData().size() > 0) {
+			if (ObjectUtils.isNotNull(deptList.getData()) && !deptList.getData().isEmpty()) {
 				String deptName = deptList.getData().stream()
 					.filter(e -> ObjectUtils.isNotNull(item.getSharedCompany()) && item.getSharedCompany().contains(e.getId() + ""))
 					.map(Dept::getFullName).collect(Collectors.joining(" | "));
@@ -381,7 +381,7 @@ public class ProductLaunchController extends BladeController {
 			pages.getRecords().stream().forEach(item -> {
 				item.setFilesList(productLaunchFilesService.list(new QueryWrapper<PjProductLaunchFiles>()
 					.eq("pid", item.getId()).eq("is_deleted", 0)));
-				if (ObjectUtils.isNull(item.getFilesList()) || item.getFilesList().size() == 0) {
+				if (ObjectUtils.isNull(item.getFilesList()) || item.getFilesList().isEmpty()) {
 					if (ObjectUtils.isNotNull(item.getBrandId())) {
 						item.setFilesList(BeanUtil.copy(brandFilesService.list(new QueryWrapper<PjBrandFiles>()
 							.eq("pid", item.getBrandId()).eq("is_deleted", 0)), PjProductLaunchFiles.class));

+ 1 - 1
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/productLaunch/service/impl/ProductLaunchServiceImpl.java

@@ -446,7 +446,7 @@ public class ProductLaunchServiceImpl extends ServiceImpl<ProductLaunchMapper, P
 		detail.setFilesList(productLaunchFilesService.list(new QueryWrapper<PjProductLaunchFiles>()
 			.eq("pid", productLaunch.getId())
 			.eq("is_deleted", 0)));
-		if (ObjectUtils.isNull(detail.getFilesList()) || detail.getFilesList().size() == 0) {
+		if (ObjectUtils.isNull(detail.getFilesList()) || detail.getFilesList().isEmpty()) {
 			if (ObjectUtils.isNotNull(detail.getBrandId())) {
 				detail.setFilesList(BeanUtil.copy(brandFilesService.list(new QueryWrapper<PjBrandFiles>()
 					.eq("pid", detail.getBrandId()).eq("is_deleted", 0)), PjProductLaunchFiles.class));

+ 1 - 1
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/project/service/impl/ProjectGoodsServiceImpl.java

@@ -77,7 +77,7 @@ public class ProjectGoodsServiceImpl extends ServiceImpl<ProjectGoodsMapper, Pro
 			projectGoods.setUpdateUser(AuthUtil.getUserId());
 			baseMapper.updateById(projectGoods);
 		}
-		if (ObjectUtils.isNotNull(projectGoods.getProjectGoodsFilesList()) && projectGoods.getProjectGoodsFilesList().size() > 0) {
+		if (ObjectUtils.isNotNull(projectGoods.getProjectGoodsFilesList()) && !projectGoods.getProjectGoodsFilesList().isEmpty()) {
 			for (ProjectGoodsFiles files : projectGoods.getProjectGoodsFilesList()) {
 				if (files.getId() == null) {
 					files.setPid(projectGoods.getId());

+ 2 - 2
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/project/service/impl/QbProjectItemServiceImpl.java

@@ -70,7 +70,7 @@ public class QbProjectItemServiceImpl extends ServiceImpl<QbProjectItemMapper, Q
 			qbProjectItem.setUpdateUser(AuthUtil.getUserId());
 			baseMapper.updateById(qbProjectItem);
 		}
-		if (ObjectUtils.isNotNull(qbProjectItem.getProjectGoodsList()) && qbProjectItem.getProjectGoodsList().size() > 0) {
+		if (ObjectUtils.isNotNull(qbProjectItem.getProjectGoodsList()) && !qbProjectItem.getProjectGoodsList().isEmpty()) {
 			List<ProjectGoodsFiles> projectGoodsFilesList = new ArrayList<>();
 			for (ProjectGoods item : qbProjectItem.getProjectGoodsList()) {
 				if (item.getId() == null) {
@@ -82,7 +82,7 @@ public class QbProjectItemServiceImpl extends ServiceImpl<QbProjectItemMapper, Q
 					item.setUpdateTime(new Date());
 					item.setUpdateUser(AuthUtil.getUserId());
 				}
-				if (ObjectUtils.isNotNull(item.getProjectGoodsFilesList()) && item.getProjectGoodsFilesList().size() > 0) {
+				if (ObjectUtils.isNotNull(item.getProjectGoodsFilesList()) && !item.getProjectGoodsFilesList().isEmpty()) {
 					for (ProjectGoodsFiles files : item.getProjectGoodsFilesList()) {
 						if (files.getId() == null) {
 							files.setPid(item.getId());

+ 1 - 1
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/settlement/controller/SettlementController.java

@@ -102,7 +102,7 @@ public class SettlementController extends BladeController {
 		lambdaQueryWrapper.eq(ObjectUtils.isNotNull(settlement.getSettlementDate()), PjSettlement::getSettlementDate, settlement.getSettlementDate());
 		lambdaQueryWrapper.eq(PjSettlement::getSalesCompanyId, AuthUtil.getDeptId());//公司
 		lambdaQueryWrapper.eq(ObjectUtils.isNotNull(settlement.getDc()), PjSettlement::getDc, settlement.getDc());
-		if (ObjectUtils.isNotNull(settlement.getSettlementDateList()) && settlement.getSettlementDateList().size() > 0) {
+		if (ObjectUtils.isNotNull(settlement.getSettlementDateList()) && !settlement.getSettlementDateList().isEmpty()) {
 			lambdaQueryWrapper.ge(PjSettlement::getSettlementDate, settlement.getSettlementDateList().get(0));
 			lambdaQueryWrapper.le(PjSettlement::getSettlementDate, settlement.getSettlementDateList().get(1));
 		}

+ 4 - 4
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/settlement/service/impl/SettlementServiceImpl.java

@@ -149,11 +149,11 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, PjSettl
 	public R collectionAndPayment(PjSettlement settlement) {
 		if (ObjectUtils.isNotNull(settlement.getSettlementItemsList())) {
 			List<Long> ids = settlement.getSettlementItemsList().stream().map(PjSettlementItems::getSrcParentId).collect(Collectors.toList());
-			if (ObjectUtils.isNull(ids) || ids.size() == 0) {
+			if (ObjectUtils.isNull(ids) || ids.isEmpty()) {
 				throw new RuntimeException("未找到订单");
 			}
 			List<PjOrder> pjOrderList = orderService.list(new LambdaQueryWrapper<PjOrder>().in(PjOrder::getId, ids));
-			if (ObjectUtils.isNull(pjOrderList) || pjOrderList.size() == 0) {
+			if (ObjectUtils.isNull(pjOrderList) || pjOrderList.isEmpty()) {
 				throw new RuntimeException("未找到订单信息");
 			}
 			List<PjOrder> orderArrayList = new ArrayList<>();
@@ -239,11 +239,11 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, PjSettl
 	public R revokeCollectionAndPayment(PjSettlement settlement) {
 		if (ObjectUtils.isNotNull(settlement.getSettlementItemsList())) {
 			List<Long> ids = settlement.getSettlementItemsList().stream().map(PjSettlementItems::getSrcParentId).collect(Collectors.toList());
-			if (ObjectUtils.isNull(ids) || ids.size() == 0) {
+			if (ObjectUtils.isNull(ids) || ids.isEmpty()) {
 				throw new RuntimeException("未找到订单");
 			}
 			List<PjOrder> pjOrderList = orderService.list(new LambdaQueryWrapper<PjOrder>().in(PjOrder::getId, ids));
-			if (ObjectUtils.isNull(pjOrderList) || pjOrderList.size() == 0) {
+			if (ObjectUtils.isNull(pjOrderList) || pjOrderList.isEmpty()) {
 				throw new RuntimeException("未找到订单信息");
 			}
 			List<PjOrder> orderArrayList = new ArrayList<>();

+ 1 - 1
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/ship/controller/ShipController.java

@@ -410,7 +410,7 @@ public class ShipController extends BladeController {
 				item.setAddSendTotalNum(new BigDecimal("0"));
 			}
 		}
-		if (pagesOrder.size() > 0) {
+		if (!pagesOrder.isEmpty()) {
 			pages.addAll(pagesOrder);
 		}
 		return R.data(pages);

+ 2 - 2
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/ship/service/impl/ShipServiceImpl.java

@@ -441,7 +441,7 @@ public class ShipServiceImpl extends ServiceImpl<ShipMapper, PjShip> implements
 							e.printStackTrace();
 						}
 					}
-					if (data.size() > 0) {
+					if (!data.isEmpty()) {
 						WxMpTemplateDto wxMpTemplateDto = new WxMpTemplateDto();
 						wxMpTemplateDto.setOpenid(openIds.substring(0, openIds.length() - 1));
 						wxMpTemplateDto.setTenantId(AuthUtil.getTenantId());
@@ -1656,7 +1656,7 @@ public class ShipServiceImpl extends ServiceImpl<ShipMapper, PjShip> implements
 			if (!res.isSuccess()) {
 				throw new RuntimeException(res.getMsg());
 			}
-			if (pjStockDescList.size() > 0) {
+			if (!pjStockDescList.isEmpty()) {
 				iStockDescService.saveOrUpdateBatch(pjStockDescList);
 			}
 		}

+ 8 - 14
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/shoppingCart/service/impl/ShoppingCartServiceImpl.java

@@ -34,7 +34,6 @@ import org.springblade.salesPart.entity.*;
 import org.springblade.salesPart.enums.OrderTypeEnum;
 import org.springblade.salesPart.goods.mapper.GoodsDescMapper;
 import org.springblade.salesPart.order.mapper.OrderItemsMapper;
-import org.springblade.salesPart.order.mapper.OrderMapper;
 import org.springblade.salesPart.order.service.IOrderService;
 import org.springblade.salesPart.payMethod.PayService;
 import org.springblade.salesPart.productLaunch.mapper.ProductLaunchMapper;
@@ -50,10 +49,8 @@ import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.interceptor.TransactionAspectSupport;
 
 import java.math.BigDecimal;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
+import java.math.RoundingMode;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -70,7 +67,6 @@ public class ShoppingCartServiceImpl extends ServiceImpl<ShoppingCartMapper, PjS
 	private final GoodsDescMapper goodsDescMapper;//商品
 	private final ICorpsAttnService corpsAttnService;//客户联系人
 	private final ICorpsDescService corpsDescService;//客户
-	private final OrderMapper orderMapper;
 	private final IOrderService orderService;
 	private final OrderItemsMapper orderItemsMapper;
 	private final ProductLaunchMapper productLaunchMapper;
@@ -81,9 +77,6 @@ public class ShoppingCartServiceImpl extends ServiceImpl<ShoppingCartMapper, PjS
 
 	/**
 	 * 保存修改购物车信息
-	 *
-	 * @param shoppingCart
-	 * @return
 	 */
 	@Override
 	@Transactional
@@ -215,7 +208,7 @@ public class ShoppingCartServiceImpl extends ServiceImpl<ShoppingCartMapper, PjS
 						order.setSalerName(finalCorpsDesc.getSalesmanName());
 					} else {
 						R<List<User>> res = userSearchClient.getWarehouseKeeper("业务员", AuthUtil.getDeptId());
-						if (res.isSuccess() && ObjectUtils.isNotNull(res.getData()) && res.getData().size() > 0) {
+						if (res.isSuccess() && ObjectUtils.isNotNull(res.getData()) && !res.getData().isEmpty()) {
 							order.setSalerId(res.getData().get(0).getId());
 							order.setSalerName(res.getData().get(0).getAccount());
 						}
@@ -250,7 +243,7 @@ public class ShoppingCartServiceImpl extends ServiceImpl<ShoppingCartMapper, PjS
 							orderItems.setBizType(order.getBsType());
 							orderItems.setInventory(e.getInventory());
 							orderItems.setTotalAmount(orderItems.getGoodsNum().multiply(orderItems.getPrice()));
-							orderItems.setUrl(ObjectUtils.isNotNull(e.getFilesList()) && e.getFilesList().size() > 0 ? e.getFilesList().get(0).getUrl() : "");
+							orderItems.setUrl(ObjectUtils.isNotNull(e.getFilesList()) && !e.getFilesList().isEmpty() ? e.getFilesList().get(0).getUrl() : "");
 							orderItems.setGoodsName(e.getGoodsName());
 							orderItemsMapper.insert(orderItems);
 							PjGoodsDesc goodsDesc = goodsDescMapper.selectById(orderItems.getGoodsId());
@@ -276,17 +269,18 @@ public class ShoppingCartServiceImpl extends ServiceImpl<ShoppingCartMapper, PjS
 						BigDecimal totalMoney = BigDecimal.ZERO;
 						order.setNumberRows(shoppingCartList.size());//行数
 						//明细总数量
-						order.setGoodsTotalNum(shoppingCartList.stream().filter(e -> e.getGoodsNum() != null).map(PjShoppingCart::getGoodsNum).reduce(BigDecimal.ZERO, BigDecimal::add));
+						order.setGoodsTotalNum(shoppingCartList.stream().map(PjShoppingCart::getGoodsNum).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
 
 						//明细总金额
 						totalMoney = shoppingCartList.stream().reduce(BigDecimal.ZERO, (x, y) -> {
 							return x.add(y.getGoodsNum().multiply(y.getPrice()));
-						}, BigDecimal::add).setScale(2, BigDecimal.ROUND_HALF_UP);
+						}, BigDecimal::add).setScale(2, RoundingMode.HALF_UP);
 
 						order.setSalesAmount(totalMoney);
 						order.setTotalMoney(totalMoney);
 
-						if (order.getGoodsTotalNum().compareTo(new BigDecimal(1)) == 0) {//只有一条明细加5元运费
+						if (order.getGoodsTotalNum().compareTo(new BigDecimal(1)) == 0) {
+							//只有一条明细加5元运费
 							totalMoney = totalMoney.add(new BigDecimal(5));
 							order.setTotalMoney(totalMoney);
 							order.setFreight(new BigDecimal(5));

+ 44 - 44
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/statistics/service/impl/StatisticsServiceImpl.java

@@ -76,14 +76,14 @@ public class StatisticsServiceImpl implements IStatisticsService {
 			.eq(PjOrder::getBsType, "XS")
 			.apply("(( business_source = '外部销售' AND FIND_IN_SET( actual_payment_status, '2,3' ) ) OR (business_source = '内部销售' AND FIND_IN_SET( actual_payment_status, '0,1,2,3' )))")
 			.apply("status = '已发货' and busines_date = CURDATE()"));
-		if (pjOrderListD.size() > 0) {
+		if (!pjOrderListD.isEmpty()) {
 			List<Long> orderIdsD = pjOrderListD.stream().map(PjOrder::getId).collect(Collectors.toList());
-			if (orderIdsD.size() > 0) {
+			if (!orderIdsD.isEmpty()) {
 				List<PjOrderItems> pjOrderItemsListD = orderItemsService.list(new LambdaQueryWrapper<PjOrderItems>()
 					.eq(PjOrderItems::getTenantId, AuthUtil.getTenantId())
 					.eq(PjOrderItems::getIsDeleted, 0)
 					.in(PjOrderItems::getPid, orderIdsD));
-				if (pjOrderItemsListD.size() > 0) {
+				if (!pjOrderItemsListD.isEmpty()) {
 					salesNumD = pjOrderItemsListD.stream().map(PjOrderItems::getSendNum).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add);
 				}
 			}
@@ -99,14 +99,14 @@ public class StatisticsServiceImpl implements IStatisticsService {
 			.eq(PjOrder::getBsType, "XS")
 			.apply("(( business_source = '外部销售' AND FIND_IN_SET( actual_payment_status, '2,3' ) ) OR (business_source = '内部销售' AND FIND_IN_SET( actual_payment_status, '0,1,2,3' )))")
 			.apply("status = '已发货' and DATE_FORMAT(busines_date, '%Y-%m') = DATE_FORMAT(CURRENT_DATE(), '%Y-%m')"));
-		if (pjOrderListM.size() > 0) {
+		if (!pjOrderListM.isEmpty()) {
 			List<Long> orderIdsM = pjOrderListM.stream().map(PjOrder::getId).collect(Collectors.toList());
-			if (orderIdsM.size() > 0) {
+			if (!orderIdsM.isEmpty()) {
 				List<PjOrderItems> pjOrderItemsListM = orderItemsService.list(new LambdaQueryWrapper<PjOrderItems>()
 					.eq(PjOrderItems::getTenantId, AuthUtil.getTenantId())
 					.eq(PjOrderItems::getIsDeleted, 0)
 					.in(PjOrderItems::getPid, orderIdsM));
-				if (pjOrderItemsListM.size() > 0) {
+				if (!pjOrderItemsListM.isEmpty()) {
 					salesNumM = pjOrderItemsListM.stream().map(PjOrderItems::getSendNum).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add);
 				}
 			}
@@ -139,8 +139,8 @@ public class StatisticsServiceImpl implements IStatisticsService {
 			.eq(PjOrder::getBsType, "XS")
 			.apply("find_in_set(status,'录入,待确认')")
 			.apply("(( business_source = '外部销售' AND FIND_IN_SET( actual_payment_status, '2,3' ) ) OR (business_source = '内部销售' AND FIND_IN_SET( actual_payment_status, '0,1,2,3' )))")
-			.ge(quer.getDateList().size() > 0, PjOrder::getBusinesDate, quer.getDateList().get(0))
-			.le(quer.getDateList().size() > 0, PjOrder::getBusinesDate, quer.getDateList().get(1)));
+			.ge(!quer.getDateList().isEmpty(), PjOrder::getBusinesDate, quer.getDateList().get(0))
+			.le(!quer.getDateList().isEmpty(), PjOrder::getBusinesDate, quer.getDateList().get(1)));
 		for (PjOrder item : pjOrderList) {
 			StayDoOrder stayDoOrder = new StayDoOrder();
 			stayDoOrder.setOrderNo(item.getOrdNo());
@@ -167,31 +167,31 @@ public class StatisticsServiceImpl implements IStatisticsService {
 			.eq(PjShip::getIsDeleted, 0)
 			.eq(PjShip::getBizTypeName, "FHRW")
 			.eq(PjShip::getStatusName, "待处理")
-			.ge(quer.getDateList().size() > 0, PjShip::getBusinesDate, quer.getDateList().get(0))
-			.le(quer.getDateList().size() > 0, PjShip::getBusinesDate, quer.getDateList().get(1)));
+			.ge(!quer.getDateList().isEmpty(), PjShip::getBusinesDate, quer.getDateList().get(0))
+			.le(!quer.getDateList().isEmpty(), PjShip::getBusinesDate, quer.getDateList().get(1)));
 		List<PjShip> pjShipListGD = shipService.list(new LambdaQueryWrapper<PjShip>()
 			.eq(PjShip::getTenantId, AuthUtil.getTenantId())
 			.eq(PjShip::getSalesCompanyId, AuthUtil.getDeptId())
 			.eq(PjShip::getIsDeleted, 0)
 			.eq(PjShip::getBizTypeName, "FHGD")
 			.eq(PjShip::getStatusName, "待出库")
-			.ge(quer.getDateList().size() > 0, PjShip::getBusinesDate, quer.getDateList().get(0))
-			.le(quer.getDateList().size() > 0, PjShip::getBusinesDate, quer.getDateList().get(1)));
+			.ge(!quer.getDateList().isEmpty(), PjShip::getBusinesDate, quer.getDateList().get(0))
+			.le(!quer.getDateList().isEmpty(), PjShip::getBusinesDate, quer.getDateList().get(1)));
 		List<Long> ids = new ArrayList<>();
-		if (pjShipListRW.size() > 0) {
+		if (!pjShipListRW.isEmpty()) {
 			List<Long> pjShipListId = pjShipListRW.stream().map(PjShip::getOrdId).filter(Objects::nonNull).collect(Collectors.toList());
-			if (pjShipListId.size() > 0) {
+			if (!pjShipListId.isEmpty()) {
 				ids.addAll(pjShipListId);
 			}
 		}
-		if (pjShipListGD.size() > 0) {
+		if (!pjShipListGD.isEmpty()) {
 			List<Long> pjShipListId = pjShipListGD.stream().map(PjShip::getOrdId).filter(Objects::nonNull).collect(Collectors.toList());
-			if (pjShipListId.size() > 0) {
+			if (!pjShipListId.isEmpty()) {
 				ids.addAll(pjShipListId);
 			}
 		}
 		List<PjOrder> orderList = new ArrayList<>();
-		if (ids.size() > 0) {
+		if (!ids.isEmpty()) {
 			orderList = orderService.list(new LambdaQueryWrapper<PjOrder>()
 				.eq(PjOrder::getTenantId, AuthUtil.getTenantId())
 				.eq(PjOrder::getSalesCompanyId, AuthUtil.getDeptId())
@@ -206,7 +206,7 @@ public class StatisticsServiceImpl implements IStatisticsService {
 			stayDoOrder.setDate(item.getBusinesDate());
 			stayDoOrder.setStatus(item.getStatusName());
 			stayDoOrder.setType(item.getBizTypeName());
-			if (orderList.size() > 0) {
+			if (!orderList.isEmpty()) {
 				PjOrder pjOrder = orderList.stream().filter(e -> e.getId().equals(item.getOrdId())).findFirst().orElse(null);
 				if (pjOrder != null) {
 					if (1 == pjOrder.getActualPaymentStatus()) {
@@ -231,7 +231,7 @@ public class StatisticsServiceImpl implements IStatisticsService {
 			stayDoOrder.setDate(item.getBusinesDate());
 			stayDoOrder.setStatus(item.getStatusName());
 			stayDoOrder.setType(item.getBizTypeName());
-			if (orderList.size() > 0) {
+			if (!orderList.isEmpty()) {
 				PjOrder pjOrder = orderList.stream().filter(e -> e.getId().equals(item.getOrdId())).findFirst().orElse(null);
 				if (pjOrder != null) {
 					if (1 == pjOrder.getActualPaymentStatus()) {
@@ -277,16 +277,16 @@ public class StatisticsServiceImpl implements IStatisticsService {
 			.eq(PjOrder::getBsType, "XS")
 			.apply("(( business_source = '外部销售' AND FIND_IN_SET( actual_payment_status, '2,3' ) ) OR (business_source = '内部销售' AND FIND_IN_SET( actual_payment_status, '0,1,2,3' )))")
 			.apply("status = '已发货' and busines_date = CURDATE()"));
-		if (pjOrderList.size() > 0) {
+		if (!pjOrderList.isEmpty()) {
 			List<Long> ids = pjOrderList.stream().map(PjOrder::getId).collect(Collectors.toList());
-			if (ids.size() > 0) {
+			if (!ids.isEmpty()) {
 				List<PjOrderItems> pjOrderItemsList = orderItemsService.list(new LambdaQueryWrapper<PjOrderItems>()
 					.in(PjOrderItems::getPid, ids)
 					.eq(PjOrderItems::getTenantId, AuthUtil.getTenantId())
 					.eq(PjOrderItems::getIsDeleted, 0));
 				BigDecimal number = pjOrderItemsList.stream().map(PjOrderItems::getSendNum)
 					.filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add)
-					.setScale(0, BigDecimal.ROUND_HALF_UP);
+					.setScale(0, RoundingMode.HALF_UP);
 				return R.data(number);
 			} else {
 				return R.data(0);
@@ -310,17 +310,17 @@ public class StatisticsServiceImpl implements IStatisticsService {
 			.apply("status = '已发货'"));
 		List<Map<String, Object>> list = new ArrayList<>();
 		List<Map<String, Object>> mapList = orderService.brandSalesVolume(statusDate, endDate, AuthUtil.getDeptId(), AuthUtil.getTenantId());
-		if (pjOrderList.size() > 0) {
+		if (!pjOrderList.isEmpty()) {
 			List<Long> ids = pjOrderList.stream().map(PjOrder::getId).collect(Collectors.toList());
 			BigDecimal sum = new BigDecimal("0");
-			if (ids.size() > 0) {
+			if (!ids.isEmpty()) {
 				List<PjOrderItems> pjOrderItemsList = orderItemsService.list(new LambdaQueryWrapper<PjOrderItems>()
 					.in(PjOrderItems::getPid, ids)
 					.eq(PjOrderItems::getTenantId, AuthUtil.getTenantId())
 					.eq(PjOrderItems::getIsDeleted, 0));
 				sum = pjOrderItemsList.stream().map(PjOrderItems::getSendNum)
 					.filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add)
-					.setScale(0, BigDecimal.ROUND_HALF_UP);
+					.setScale(0, RoundingMode.HALF_UP);
 			}
 			for (Map<String, Object> map : mapList) {
 				BigDecimal number = new BigDecimal(map.get("number").toString());
@@ -351,17 +351,17 @@ public class StatisticsServiceImpl implements IStatisticsService {
 			.apply("status = '已发货'"));
 		List<Map<String, Object>> list = new ArrayList<>();
 		List<Map<String, Object>> mapList = orderService.corpsSalesVolume(statusDate, endDate, AuthUtil.getDeptId(), AuthUtil.getTenantId());
-		if (pjOrderList.size() > 0) {
+		if (!pjOrderList.isEmpty()) {
 			List<Long> ids = pjOrderList.stream().map(PjOrder::getId).collect(Collectors.toList());
 			BigDecimal sum = new BigDecimal("0");
-			if (ids.size() > 0) {
+			if (!ids.isEmpty()) {
 				List<PjOrderItems> pjOrderItemsList = orderItemsService.list(new LambdaQueryWrapper<PjOrderItems>()
 					.in(PjOrderItems::getPid, ids)
 					.eq(PjOrderItems::getTenantId, AuthUtil.getTenantId())
 					.eq(PjOrderItems::getIsDeleted, 0));
 				sum = pjOrderItemsList.stream().map(PjOrderItems::getSendNum)
 					.filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add)
-					.setScale(0, BigDecimal.ROUND_HALF_UP);
+					.setScale(0, RoundingMode.HALF_UP);
 			}
 			for (Map<String, Object> map : mapList) {
 				BigDecimal number = new BigDecimal(map.get("number").toString());
@@ -391,17 +391,17 @@ public class StatisticsServiceImpl implements IStatisticsService {
 			.apply("(( business_source = '外部销售' AND FIND_IN_SET( actual_payment_status, '2,3' ) ) OR (business_source = '内部销售' AND FIND_IN_SET( actual_payment_status, '0,1,2,3' )))")
 			.apply("status = '已发货'"));
 		List<Map<String, Object>> mapList = new ArrayList<>();
-		if (pjOrderList.size() > 0) {
+		if (!pjOrderList.isEmpty()) {
 			List<Long> ids = pjOrderList.stream().map(PjOrder::getId).collect(Collectors.toList());
 			BigDecimal sum = new BigDecimal("0");
-			if (ids.size() > 0) {
+			if (!ids.isEmpty()) {
 				List<PjOrderItems> pjOrderItemsList = orderItemsService.list(new LambdaQueryWrapper<PjOrderItems>()
 					.in(PjOrderItems::getPid, ids)
 					.eq(PjOrderItems::getTenantId, AuthUtil.getTenantId())
 					.eq(PjOrderItems::getIsDeleted, 0));
 				sum = pjOrderItemsList.stream().map(PjOrderItems::getSendNum)
 					.filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add)
-					.setScale(0, BigDecimal.ROUND_HALF_UP);
+					.setScale(0, RoundingMode.HALF_UP);
 			}
 			List<String> goodsSize = new ArrayList<>();
 			goodsSize.add("<=15");
@@ -445,22 +445,22 @@ public class StatisticsServiceImpl implements IStatisticsService {
 		BigDecimal averageAmount = new BigDecimal("0.00");
 		//客户数量
 		BigDecimal corpsNumber = new BigDecimal("0.00");
-		if (pjOrderList.size() > 0) {
+		if (!pjOrderList.isEmpty()) {
 			List<Long> ids = pjOrderList.stream().map(PjOrder::getId).collect(Collectors.toList());
-			if (ids.size() > 0) {
+			if (!ids.isEmpty()) {
 				List<PjOrderItems> pjOrderItemsList = orderItemsService.list(new LambdaQueryWrapper<PjOrderItems>()
 					.in(PjOrderItems::getPid, ids)
 					.eq(PjOrderItems::getTenantId, AuthUtil.getTenantId())
 					.eq(PjOrderItems::getIsDeleted, 0));
 				income = pjOrderItemsList.stream().map(PjOrderItems::getSendNum)
 					.filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add)
-					.setScale(0, BigDecimal.ROUND_HALF_UP);
+					.setScale(0, RoundingMode.HALF_UP);
 				amount = pjOrderItemsList.stream().map(PjOrderItems::getTotalAmount)
 					.filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add)
-					.setScale(0, BigDecimal.ROUND_HALF_UP);
+					.setScale(0, RoundingMode.HALF_UP);
 				long sum = pjOrderList.stream().map(PjOrder::getCustomerId).filter(Objects::nonNull).distinct().count();
 				corpsNumber = corpsNumber.add(new BigDecimal(sum));
-				averageAmount = averageAmount.add(amount.divide(new BigDecimal(pjOrderList.size()), MathContext.DECIMAL32).setScale(2, BigDecimal.ROUND_HALF_UP));
+				averageAmount = averageAmount.add(amount.divide(new BigDecimal(pjOrderList.size()), MathContext.DECIMAL32).setScale(2, RoundingMode.HALF_UP));
 			}
 		}
 		map.put("income", income);
@@ -481,28 +481,28 @@ public class StatisticsServiceImpl implements IStatisticsService {
 		Map<String, Object> map = new HashMap<>();
 		List<SaleDetailDto> saleDetailDtoList = orderItemsService.saleDetailList(saleDetailDto);
 		if (!saleDetailDtoList.isEmpty()) {
-			map.put("goodsSum", saleDetailDtoList.stream().filter(e->!"已取消".equals(e.getStatus()))
+			map.put("goodsSum", saleDetailDtoList.stream().filter(e -> !"已取消".equals(e.getStatus()))
 				.map(SaleDetailDto::getGoodsNum).reduce(BigDecimal.ZERO, BigDecimal::add)
 				.setScale(0, RoundingMode.HALF_UP));
-			map.put("amount", saleDetailDtoList.stream().filter(e->!"已取消".equals(e.getStatus()))
+			map.put("amount", saleDetailDtoList.stream().filter(e -> !"已取消".equals(e.getStatus()))
 				.map(SaleDetailDto::getSubTotalMoney).reduce(BigDecimal.ZERO, BigDecimal::add)
 				.setScale(2, RoundingMode.HALF_UP));
-			map.put("costprie", saleDetailDtoList.stream().filter(e->!"已取消".equals(e.getStatus()))
+			map.put("costprie", saleDetailDtoList.stream().filter(e -> !"已取消".equals(e.getStatus()))
 				.map(SaleDetailDto::getCostprie).reduce(BigDecimal.ZERO, BigDecimal::add)
 				.setScale(2, RoundingMode.HALF_UP));
-			map.put("profit", saleDetailDtoList.stream().filter(e->!"已取消".equals(e.getStatus()))
+			map.put("profit", saleDetailDtoList.stream().filter(e -> !"已取消".equals(e.getStatus()))
 				.map(SaleDetailDto::getProfit).reduce(BigDecimal.ZERO, BigDecimal::add)
 				.setScale(2, RoundingMode.HALF_UP));
-			map.put("goodsSumCancellation", saleDetailDtoList.stream().filter(e->"已取消".equals(e.getStatus()))
+			map.put("goodsSumCancellation", saleDetailDtoList.stream().filter(e -> "已取消".equals(e.getStatus()))
 				.map(SaleDetailDto::getGoodsNum).reduce(BigDecimal.ZERO, BigDecimal::add)
 				.setScale(0, RoundingMode.HALF_UP));
-			map.put("amountCancellation", saleDetailDtoList.stream().filter(e->"已取消".equals(e.getStatus()))
+			map.put("amountCancellation", saleDetailDtoList.stream().filter(e -> "已取消".equals(e.getStatus()))
 				.map(SaleDetailDto::getSubTotalMoney).reduce(BigDecimal.ZERO, BigDecimal::add)
 				.setScale(2, RoundingMode.HALF_UP));
-			map.put("costprieCancellation", saleDetailDtoList.stream().filter(e->"已取消".equals(e.getStatus()))
+			map.put("costprieCancellation", saleDetailDtoList.stream().filter(e -> "已取消".equals(e.getStatus()))
 				.map(SaleDetailDto::getCostprie).reduce(BigDecimal.ZERO, BigDecimal::add)
 				.setScale(2, RoundingMode.HALF_UP));
-			map.put("profitCancellation", saleDetailDtoList.stream().filter(e->"已取消".equals(e.getStatus()))
+			map.put("profitCancellation", saleDetailDtoList.stream().filter(e -> "已取消".equals(e.getStatus()))
 				.map(SaleDetailDto::getProfit).reduce(BigDecimal.ZERO, BigDecimal::add)
 				.setScale(2, RoundingMode.HALF_UP));
 		} else {

+ 5 - 5
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/stock/controller/StockDescController.java

@@ -103,7 +103,7 @@ public class StockDescController extends BladeController {
 				.eq(PjGoodsDesc::getTenantId, AuthUtil.getTenantId())
 				.eq(PjGoodsDesc::getIsDeleted, 0)
 				.like(PjGoodsDesc::getCnameInt, stockDesc.getCname()));
-			if (pjGoodsDescs.size() > 0) {
+			if (!pjGoodsDescs.isEmpty()) {
 				List<Long> ids = pjGoodsDescs.stream().map(PjGoodsDesc::getId).collect(Collectors.toList());
 				lambdaQueryWrapper.and(i -> i.like(PjStockDesc::getCname, stockDesc.getCname())
 					.or().in(PjStockDesc::getGoodsId, ids));
@@ -119,7 +119,7 @@ public class StockDescController extends BladeController {
 				.eq(PjGoodsFiles::getPid, item.getId())
 				.eq(PjGoodsFiles::getTenantId, AuthUtil.getTenantId())
 				.eq(PjGoodsFiles::getIsDeleted, 0));
-			if (goodsFilesList.size() == 0 && ObjectUtils.isNotNull(item.getBrandId())) {
+			if (goodsFilesList.isEmpty() && ObjectUtils.isNotNull(item.getBrandId())) {
 				goodsFilesList = BeanUtil.copy(brandFilesService.list(new LambdaQueryWrapper<PjBrandFiles>()
 					.eq(PjBrandFiles::getMainImage, 0)
 					.eq(PjBrandFiles::getPid, item.getBrandId())
@@ -157,7 +157,7 @@ public class StockDescController extends BladeController {
 				.eq(PjGoodsDesc::getTenantId, AuthUtil.getTenantId())
 				.eq(PjGoodsDesc::getIsDeleted, 0)
 				.like(PjGoodsDesc::getCnameInt, stockDesc.getCname()));
-			if (pjGoodsDescs.size() > 0) {
+			if (!pjGoodsDescs.isEmpty()) {
 				List<Long> ids = pjGoodsDescs.stream().map(PjGoodsDesc::getId).collect(Collectors.toList());
 				lambdaQueryWrapper.and(i -> i.like(PjStockDesc::getCname, stockDesc.getCname())
 					.or().in(PjStockDesc::getGoodsId, ids));
@@ -182,7 +182,7 @@ public class StockDescController extends BladeController {
 			.eq(PjProductLaunch::getBillType, 0)
 			.eq(PjProductLaunch::getSalesCompanyId, AuthUtil.getDeptId()));
 		List<Long> ids = pjProductLaunchList.stream().map(PjProductLaunch::getGoodsId).distinct().collect(Collectors.toList());
-		if (ObjectUtils.isNotNull(ids) && ids.size() > 0) {
+		if (ObjectUtils.isNotNull(ids) && !ids.isEmpty()) {
 			stockDesc.setGoodsIds(ids);
 		}
 		stockDesc.setSalesCompanyIds(AuthUtil.getDeptId());
@@ -268,7 +268,7 @@ public class StockDescController extends BladeController {
 				.eq(PjGoodsDesc::getTenantId, AuthUtil.getTenantId())
 				.eq(PjGoodsDesc::getIsDeleted, 0)
 				.like(PjGoodsDesc::getCnameInt, stockDesc.getCname()));
-			if (pjGoodsDescs.size() > 0) {
+			if (!pjGoodsDescs.isEmpty()) {
 				List<Long> ids = pjGoodsDescs.stream().map(PjGoodsDesc::getId).collect(Collectors.toList());
 				lambdaQueryWrapper.and(i -> i.like(PjStockDesc::getCname, stockDesc.getCname())
 					.or().in(PjStockDesc::getGoodsId, ids));

+ 1 - 1
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/storage/controller/StorageDescController.java

@@ -154,7 +154,7 @@ public class StorageDescController extends BladeController {
 	@ApiOperation(value = "删除", notes = "传入ids")
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
 		List<Long> list = Func.toLongList(ids);
-		if (list.size() > 0) {
+		if (!list.isEmpty()) {
 			if (orderService.count(new LambdaQueryWrapper<PjOrder>()
 				.eq(PjOrder::getTenantId, AuthUtil.getTenantId())
 				.eq(PjOrder::getIsDeleted, 0)

+ 6 - 0
blade-service/blade-sales-part/src/main/resources/application-dev.yml

@@ -7,6 +7,12 @@ spring:
     url: ${blade.datasource.dev.url}
     username: ${blade.datasource.dev.username}
     password: ${blade.datasource.dev.password}
+    #    url: jdbc:sqlserver://27.223.90.210:1402;DatabaseName=MichelinRTM2023
+    #    # 数据库用户名
+    #    username: sa
+    #    # 数据库密码
+    #    password: yn@123
+    #    driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
 #mybatis-plus:
 #  mapper-locations: classpath:com/yh/project/mapper/*Mapper.xml
 #  type-aliases-package: com.yh.project.*.entity