Browse Source

2024年6月26日17:33:51

纪新园 1 year ago
parent
commit
d6bed5b881
35 changed files with 384 additions and 160 deletions
  1. 5 0
      blade-service-api/blade-los-api/src/main/java/org/springblade/los/business/sea/entity/Bills.java
  2. 16 0
      blade-service-api/blade-los-api/src/main/java/org/springblade/los/feign/ILosClient.java
  3. 1 0
      blade-service-api/blade-los-api/src/main/java/org/springblade/los/view/entity/BoxNumberProfit.java
  4. 4 0
      blade-service/blade-los/src/main/java/org/springblade/los/basic/business/mapper/BusinessTypeMapper.java
  5. 3 0
      blade-service/blade-los/src/main/java/org/springblade/los/basic/business/mapper/BusinessTypeMapper.xml
  6. 2 0
      blade-service/blade-los/src/main/java/org/springblade/los/basic/business/service/IBusinessTypeService.java
  7. 5 0
      blade-service/blade-los/src/main/java/org/springblade/los/basic/business/service/impl/BusinessTypeServiceImpl.java
  8. 6 0
      blade-service/blade-los/src/main/java/org/springblade/los/basic/reports/mapper/ReportsMapper.java
  9. 4 0
      blade-service/blade-los/src/main/java/org/springblade/los/basic/reports/mapper/ReportsMapper.xml
  10. 4 0
      blade-service/blade-los/src/main/java/org/springblade/los/basic/reports/service/IReportsService.java
  11. 68 64
      blade-service/blade-los/src/main/java/org/springblade/los/basic/reports/service/impl/ReportsServiceImpl.java
  12. 4 0
      blade-service/blade-los/src/main/java/org/springblade/los/billno/mapper/BusinessBillNoMapper.java
  13. 5 0
      blade-service/blade-los/src/main/java/org/springblade/los/billno/mapper/BusinessBillNoMapper.xml
  14. 4 0
      blade-service/blade-los/src/main/java/org/springblade/los/billno/service/IBusinessBillNoService.java
  15. 5 0
      blade-service/blade-los/src/main/java/org/springblade/los/billno/service/impl/BusinessBillNoServiceImpl.java
  16. 26 22
      blade-service/blade-los/src/main/java/org/springblade/los/business/sea/service/impl/BillsServiceImpl.java
  17. 3 0
      blade-service/blade-los/src/main/java/org/springblade/los/check/mapper/AuditPathsActsMapper.java
  18. 5 0
      blade-service/blade-los/src/main/java/org/springblade/los/check/mapper/AuditPathsActsMapper.xml
  19. 4 0
      blade-service/blade-los/src/main/java/org/springblade/los/check/mapper/AuditPathsMapper.java
  20. 4 0
      blade-service/blade-los/src/main/java/org/springblade/los/check/mapper/AuditPathsMapper.xml
  21. 2 0
      blade-service/blade-los/src/main/java/org/springblade/los/check/service/IAuditPathsActsService.java
  22. 3 0
      blade-service/blade-los/src/main/java/org/springblade/los/check/service/IAuditPathsService.java
  23. 5 0
      blade-service/blade-los/src/main/java/org/springblade/los/check/service/impl/AuditPathsActsServiceImpl.java
  24. 5 0
      blade-service/blade-los/src/main/java/org/springblade/los/check/service/impl/AuditPathsServiceImpl.java
  25. 15 5
      blade-service/blade-los/src/main/java/org/springblade/los/excel/BoxNumberProfitExcel.java
  26. 18 12
      blade-service/blade-los/src/main/java/org/springblade/los/feign/LosClient.java
  27. 44 20
      blade-service/blade-los/src/main/java/org/springblade/los/finance/genleg/service/impl/FinPeriodServiceImpl.java
  28. 4 2
      blade-service/blade-los/src/main/java/org/springblade/los/finance/vouchers/service/impl/FinVouchersServiceImpl.java
  29. 26 15
      blade-service/blade-los/src/main/java/org/springblade/los/statisticAnalysis/service/impl/StatisticAnalysisServiceImpl.java
  30. 1 0
      blade-service/blade-los/src/main/java/org/springblade/los/view/mapper/BoxNumberProfitMapper.xml
  31. 2 0
      blade-service/blade-system/src/main/java/org/springblade/system/mapper/DeptMapper.java
  32. 6 0
      blade-service/blade-system/src/main/java/org/springblade/system/mapper/DeptMapper.xml
  33. 2 0
      blade-service/blade-system/src/main/java/org/springblade/system/service/IDeptService.java
  34. 5 0
      blade-service/blade-system/src/main/java/org/springblade/system/service/impl/DeptServiceImpl.java
  35. 68 20
      blade-service/blade-system/src/main/java/org/springblade/system/service/impl/TenantServiceImpl.java

+ 5 - 0
blade-service-api/blade-los-api/src/main/java/org/springblade/los/business/sea/entity/Bills.java

@@ -1723,6 +1723,11 @@ public class Bills implements Serializable {
 	@ApiModelProperty(value = "teu箱数")
 	private Integer teu;
 	/**
+	 * 其他集装箱箱数
+	 */
+	@ApiModelProperty(value = "其他集装箱箱数")
+	private Integer quantityOther;
+	/**
 	 * 审核日期
 	 */
 	@ApiModelProperty(value = "审核日期")

+ 16 - 0
blade-service-api/blade-los-api/src/main/java/org/springblade/los/feign/ILosClient.java

@@ -2,6 +2,7 @@ package org.springblade.los.feign;
 
 import org.springblade.core.tool.api.R;
 import org.springblade.los.basic.business.entity.BusinessType;
+import org.springblade.los.basic.reports.entity.Reports;
 import org.springblade.los.billno.entity.BusinessBillNo;
 import org.springblade.los.check.entity.LosAuditPaths;
 import org.springblade.los.check.entity.LosAuditPathsActs;
@@ -29,6 +30,9 @@ public interface ILosClient {
 	String ADD_BUSINESS_TYPE = API_PREFIX + "/addBusinessTypeList";
 	String ADD_BUSINESS_BILL_NO = API_PREFIX + "/addBusinessBillNoList";
 
+	String ADD_REPORTS = API_PREFIX + "/addReports";
+	String GET_REPORTS = API_PREFIX + "/getReportsList";
+
 
 	/**
 	 * 审批流配置主表实体类
@@ -77,4 +81,16 @@ public interface ILosClient {
 	 */
 	@PostMapping(ADD_BUSINESS_BILL_NO)
 	R addBusinessBillNoList(@RequestBody List<BusinessBillNo> businessBillNoList);
+
+	/**
+	 * 获取报表数据
+	 */
+	@PostMapping(GET_REPORTS)
+	List<Reports> getReports(@RequestBody Reports reports);
+
+	/**
+	 * 保存报表数据
+	 */
+	@PostMapping(ADD_REPORTS)
+	R addReportsList(@RequestBody List<Reports> reportsList);
 }

+ 1 - 0
blade-service-api/blade-los-api/src/main/java/org/springblade/los/view/entity/BoxNumberProfit.java

@@ -64,6 +64,7 @@ public class BoxNumberProfit implements Serializable {
 	private Integer quantityV45;
 	private Integer quantityV48;
 	private Integer quantityV40hc;
+	private Integer quantityOther;
 	private BigDecimal quantity;
 	private BigDecimal grossWeight;
 	private BigDecimal measurement;

+ 4 - 0
blade-service/blade-los/src/main/java/org/springblade/los/basic/business/mapper/BusinessTypeMapper.java

@@ -16,6 +16,8 @@
  */
 package org.springblade.los.basic.business.mapper;
 
+import org.apache.ibatis.annotations.Param;
+import org.springblade.core.tenant.annotation.TenantIgnore;
 import org.springblade.los.basic.business.entity.BusinessType;
 import org.springblade.los.basic.business.vo.BusinessTypeVO;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@@ -39,4 +41,6 @@ public interface BusinessTypeMapper extends BaseMapper<BusinessType> {
 	 */
 	List<BusinessTypeVO> selectBBusinessTypePage(IPage page, BusinessTypeVO bBusinessType);
 
+	@TenantIgnore
+    List<BusinessType> getBusinessType(@Param("data") BusinessType businessType);
 }

+ 3 - 0
blade-service/blade-los/src/main/java/org/springblade/los/basic/business/mapper/BusinessTypeMapper.xml

@@ -27,5 +27,8 @@
     <select id="selectBBusinessTypePage" resultMap="bBusinessTypeResultMap">
         select * from los_b_business_type where is_deleted = 0
     </select>
+    <select id="getBusinessType" resultMap="bBusinessTypeResultMap">
+        select * from los_b_business_type where is_deleted = 0 and  tenant_id = #{data.tenantId}
+    </select>
 
 </mapper>

+ 2 - 0
blade-service/blade-los/src/main/java/org/springblade/los/basic/business/service/IBusinessTypeService.java

@@ -55,4 +55,6 @@ public interface IBusinessTypeService extends IService<BusinessType> {
 	 * @return
 	 */
 	R<List<BusinessType>> importBBusinessType(List<BBusinessTypeExcel> excelList);
+
+    List<BusinessType> getBusinessType(BusinessType businessType);
 }

+ 5 - 0
blade-service/blade-los/src/main/java/org/springblade/los/basic/business/service/impl/BusinessTypeServiceImpl.java

@@ -120,4 +120,9 @@ public class BusinessTypeServiceImpl extends ServiceImpl<BusinessTypeMapper, Bus
 		return R.data(businessTypeList);
 	}
 
+	@Override
+	public List<BusinessType> getBusinessType(BusinessType businessType) {
+		return baseMapper.getBusinessType(businessType);
+	}
+
 }

+ 6 - 0
blade-service/blade-los/src/main/java/org/springblade/los/basic/reports/mapper/ReportsMapper.java

@@ -16,6 +16,9 @@
  */
 package org.springblade.los.basic.reports.mapper;
 
+import org.apache.ibatis.annotations.Param;
+import org.springblade.core.tenant.annotation.TenantIgnore;
+import org.springblade.los.basic.business.entity.BusinessType;
 import org.springblade.los.basic.reports.entity.Reports;
 import org.springblade.los.basic.reports.vo.ReportsVO;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@@ -39,4 +42,7 @@ public interface ReportsMapper extends BaseMapper<Reports> {
 	 */
 	List<ReportsVO> selectReportsPage(IPage page, ReportsVO reports);
 
+	@TenantIgnore
+	List<Reports> getReports(@Param("data") Reports reports);
+
 }

+ 4 - 0
blade-service/blade-los/src/main/java/org/springblade/los/basic/reports/mapper/ReportsMapper.xml

@@ -32,5 +32,9 @@
     <select id="selectReportsPage" resultMap="reportsResultMap">
         select * from los_b_reports where is_deleted = 0
     </select>
+    <select id="getReports" resultMap="reportsResultMap">
+        select * from los_b_reports where is_deleted = 0 and  tenant_id = #{data.tenantId}
+                                      and branch_id = #{data.salesCompanyId}
+    </select>
 
 </mapper>

+ 4 - 0
blade-service/blade-los/src/main/java/org/springblade/los/basic/reports/service/IReportsService.java

@@ -22,6 +22,8 @@ import org.springblade.los.basic.reports.vo.ReportsVO;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 
+import java.util.List;
+
 /**
  * 基础资料-报表管理 服务类
  *
@@ -51,4 +53,6 @@ public interface IReportsService extends IService<Reports> {
 	 */
     R getReportData(String billId, String reportCode, String groupCode,String corpIds,
 					String itemIds,String type);
+
+    List<Reports> getReports(Reports reports);
 }

+ 68 - 64
blade-service/blade-los/src/main/java/org/springblade/los/basic/reports/service/impl/ReportsServiceImpl.java

@@ -232,7 +232,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 							for (Bills item : billsList) {
 								List<FeeCenter> feeCenterList = feeCenterListMh.stream()
 									.collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(
-										Comparator.comparing(f -> f.getFeeId() + f.getCorpId() + f.getCurCode()+f.getDc()))), ArrayList::new));
+										Comparator.comparing(f -> f.getFeeId() + f.getCorpId() + f.getCurCode() + f.getDc()))), ArrayList::new));
 								List<FeeCenterReports> feeCenterReportList = new ArrayList<>();
 								for (FeeCenter fee : feeCenterList) {
 									FeeCenterReports feeCenterReports = new FeeCenterReports();
@@ -312,7 +312,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 					if (!feeCenterList.isEmpty()) {
 						List<FeeCenter> feeCenters = feeCenterList.stream()
 							.collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(
-								Comparator.comparing(f -> f.getFeeId() + f.getCorpId() + f.getCurCode()+f.getDc()))), ArrayList::new));
+								Comparator.comparing(f -> f.getFeeId() + f.getCorpId() + f.getCurCode() + f.getDc()))), ArrayList::new));
 						List<FeeCenterReports> feeCenterReportList = new ArrayList<>();
 						for (FeeCenter fee : feeCenters) {
 							FeeCenterReports feeCenterReports = new FeeCenterReports();
@@ -373,8 +373,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 						bills.setFeeCenterList(feeCenterReportList);
 					}
 					list.add(0, bills);
-				}
-				else if (MagicValues.MH.equals(bills.getBillType())) {
+				} else if (MagicValues.MH.equals(bills.getBillType())) {
 					Bills details = billsService.getOne(new LambdaQueryWrapper<Bills>()
 						.eq(Bills::getId, bills.getMasterId())
 						.eq(Bills::getTenantId, AuthUtil.getTenantId())
@@ -397,7 +396,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 							}
 							List<FeeCenter> feeCenters = feeCenterList.stream()
 								.collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(
-									Comparator.comparing(f -> f.getFeeId() + f.getCorpId() + f.getCurCode()+f.getDc()))), ArrayList::new));
+									Comparator.comparing(f -> f.getFeeId() + f.getCorpId() + f.getCurCode() + f.getDc()))), ArrayList::new));
 							List<FeeCenterReports> feeCenterReportList = new ArrayList<>();
 							for (FeeCenter fee : feeCenters) {
 								FeeCenterReports feeCenterReports = new FeeCenterReports();
@@ -474,7 +473,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 						}
 						List<FeeCenter> feeCenterList1 = feeCenterListMh.stream()
 							.collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(
-								Comparator.comparing(f -> f.getFeeId() + f.getCorpId() + f.getCurCode()+f.getDc()))), ArrayList::new));
+								Comparator.comparing(f -> f.getFeeId() + f.getCorpId() + f.getCurCode() + f.getDc()))), ArrayList::new));
 						List<FeeCenterReports> feeCenterReportList = new ArrayList<>();
 						for (FeeCenter fee : feeCenterList1) {
 							FeeCenterReports feeCenterReports = new FeeCenterReports();
@@ -755,7 +754,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 						} else if (MagicValues.CNY.equals(item.getCurCode())) {
 							amountDr = amountDr.add(item.getAmount());
 						} else {
-							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(), "1");
 							amountDrUsd = amountDrUsd.add(usd);
 						}
 					} else {
@@ -764,7 +763,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 						} else if (MagicValues.CNY.equals(item.getCurCode())) {
 							amountCr = amountCr.add(item.getAmount());
 						} else {
-							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(), "1");
 							amountCrUsd = amountCrUsd.add(usd);
 						}
 					}
@@ -787,8 +786,8 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 				bills.setFeeCenterList(feeCenterReportsList);
 				amountProfit = amountDr.subtract(amountCr);
 				amountProfitUsd = amountDrUsd.subtract(amountCrUsd);
-				amountDrLoc = amountDrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D,"1")).add(amountDr);
-				amountCrLoc = amountCrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C,"1")).add(amountCr);
+				amountDrLoc = amountDrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D, "1")).add(amountDr);
+				amountCrLoc = amountCrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C, "1")).add(amountCr);
 				amountProfitLoc = amountDrLoc.subtract(amountCrLoc);
 				bills.setAmountDr(amountDr);
 				bills.setAmountCr(amountCr);
@@ -870,7 +869,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 						} else if (MagicValues.CNY.equals(item.getCurCode())) {
 							amountDr = amountDr.add(item.getAmount());
 						} else {
-							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(), "1");
 							amountDrUsd = amountDrUsd.add(usd);
 						}
 					} else {
@@ -879,7 +878,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 						} else if (MagicValues.CNY.equals(item.getCurCode())) {
 							amountCr = amountCr.add(item.getAmount());
 						} else {
-							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(), "1");
 							amountCrUsd = amountCrUsd.add(usd);
 						}
 					}
@@ -902,8 +901,8 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 				bills.setFeeCenterList(feeCenterReportsList);
 				amountProfit = amountDr.subtract(amountCr);
 				amountProfitUsd = amountDrUsd.subtract(amountCrUsd);
-				amountDrLoc = amountDrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D,"1")).add(amountDr);
-				amountCrLoc = amountCrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C,"1")).add(amountCr);
+				amountDrLoc = amountDrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D, "1")).add(amountDr);
+				amountCrLoc = amountCrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C, "1")).add(amountCr);
 				amountProfitLoc = amountDrLoc.subtract(amountCrLoc);
 				bills.setAmountDr(amountDr);
 				bills.setAmountCr(amountCr);
@@ -1020,7 +1019,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 							finStlBills.setBillCorpName(billCorpName.toString());
 							finStlBills.setBillCorpNameAgreement(billCorpNameAgreement.toString());
 						}
-						 feeCenterListAll = feeCenterService.list(new LambdaQueryWrapper<FeeCenter>()
+						feeCenterListAll = feeCenterService.list(new LambdaQueryWrapper<FeeCenter>()
 							.eq(FeeCenter::getTenantId, AuthUtil.getTenantId())
 							.eq(FeeCenter::getIsDeleted, 0)
 							.eq(FeeCenter::getDc, "D")
@@ -1034,15 +1033,15 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 						}
 						finStlBillsItemsReports.setMblno(item.getMblno());
 						finStlBillsItemsReports.setBillNo(item.getBillNo());
-						if (!feeCenterListAll.isEmpty()){
-							BigDecimal amountDSum = feeCenterListAll.stream().filter(e-> e.getCurCode().equals("CNY"))
-								.map(FeeCenter::getAmount).reduce(BigDecimal.ZERO,BigDecimal::add);
-							BigDecimal amountDStl = feeCenterListAll.stream().filter(e-> e.getCurCode().equals("CNY"))
-								.map(FeeCenter::getStlTtlAmount).reduce(BigDecimal.ZERO,BigDecimal::add);
-							BigDecimal amountDSumUsd = feeCenterListAll.stream().filter(e-> e.getCurCode().equals("USD"))
-								.map(FeeCenter::getAmount).reduce(BigDecimal.ZERO,BigDecimal::add);
-							BigDecimal amountDStlUsd = feeCenterListAll.stream().filter(e-> e.getCurCode().equals("USD"))
-								.map(FeeCenter::getStlTtlAmount).reduce(BigDecimal.ZERO,BigDecimal::add);
+						if (!feeCenterListAll.isEmpty()) {
+							BigDecimal amountDSum = feeCenterListAll.stream().filter(e -> e.getCurCode().equals("CNY"))
+								.map(FeeCenter::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
+							BigDecimal amountDStl = feeCenterListAll.stream().filter(e -> e.getCurCode().equals("CNY"))
+								.map(FeeCenter::getStlTtlAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
+							BigDecimal amountDSumUsd = feeCenterListAll.stream().filter(e -> e.getCurCode().equals("USD"))
+								.map(FeeCenter::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
+							BigDecimal amountDStlUsd = feeCenterListAll.stream().filter(e -> e.getCurCode().equals("USD"))
+								.map(FeeCenter::getStlTtlAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
 							finStlBillsItemsReports.setAmountD(amountDSum.subtract(amountDStl));
 							finStlBillsItemsReports.setAmountUsdD(amountDSumUsd.subtract(amountDStlUsd));
 						}
@@ -1451,7 +1450,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 						} else if (MagicValues.CNY.equals(item.getCurCode())) {
 							amountDr = amountDr.add(item.getAmount());
 						} else {
-							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(), "1");
 							amountDrUsd = amountDrUsd.add(usd);
 						}
 					} else {
@@ -1460,7 +1459,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 						} else if (MagicValues.CNY.equals(item.getCurCode())) {
 							amountCr = amountCr.add(item.getAmount());
 						} else {
-							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(), "1");
 							amountCrUsd = amountCrUsd.add(usd);
 						}
 					}
@@ -1483,8 +1482,8 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 				bills.setFeeCenterList(feeCenterReportsList);
 				amountProfit = amountDr.subtract(amountCr);
 				amountProfitUsd = amountDrUsd.subtract(amountCrUsd);
-				amountDrLoc = amountDrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D,"1")).add(amountDr);
-				amountCrLoc = amountCrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C,"1")).add(amountCr);
+				amountDrLoc = amountDrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D, "1")).add(amountDr);
+				amountCrLoc = amountCrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C, "1")).add(amountCr);
 				amountProfitLoc = amountDrLoc.subtract(amountCrLoc);
 				bills.setAmountDr(amountDr);
 				bills.setAmountCr(amountCr);
@@ -1550,7 +1549,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 						} else if (MagicValues.CNY.equals(item.getCurCode())) {
 							amountDr = amountDr.add(item.getAmount());
 						} else {
-							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(), "1");
 							amountDrUsd = amountDrUsd.add(usd);
 						}
 					} else {
@@ -1559,7 +1558,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 						} else if (MagicValues.CNY.equals(item.getCurCode())) {
 							amountCr = amountCr.add(item.getAmount());
 						} else {
-							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(), "1");
 							amountCrUsd = amountCrUsd.add(usd);
 						}
 					}
@@ -1582,8 +1581,8 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 				bills.setFeeCenterList(feeCenterReportsList);
 				amountProfit = amountDr.subtract(amountCr);
 				amountProfitUsd = amountDrUsd.subtract(amountCrUsd);
-				amountDrLoc = amountDrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D,"1")).add(amountDr);
-				amountCrLoc = amountCrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C,"1")).add(amountCr);
+				amountDrLoc = amountDrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D, "1")).add(amountDr);
+				amountCrLoc = amountCrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C, "1")).add(amountCr);
 				amountProfitLoc = amountDrLoc.subtract(amountCrLoc);
 				bills.setAmountDr(amountDr);
 				bills.setAmountCr(amountCr);
@@ -2395,8 +2394,8 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 							}
 							item.setAmountProfit(amountDr.subtract(amountCr));
 							item.setAmountProfitUsd(amountDrUsd.subtract(amountCrUsd));
-							BigDecimal amountDrCny = ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D,"1");
-							BigDecimal amountCrCny = ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C,"1");
+							BigDecimal amountDrCny = ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D, "1");
+							BigDecimal amountCrCny = ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C, "1");
 							item.setAmountProfitLoc(amountDr.subtract(amountCr).add(amountDrCny.subtract(amountCrCny)));
 							for (FeeCenterReports fee : feeCenters1) {
 								FeeCenterReports feeReports = feeCenterReportsList1.stream()
@@ -2438,12 +2437,12 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 							item.setAmountCr(amountCr);
 							item.setAmountDrUsd(amountDrUsd);
 							item.setAmountDrUsd(amountCrUsd);
-							item.setAmountDrLoc(amountDr.add(ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D,"1")));
-							item.setAmountCrLoc(amountCr.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C,"1")));
+							item.setAmountDrLoc(amountDr.add(ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D, "1")));
+							item.setAmountCrLoc(amountCr.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C, "1")));
 							item.setAmountProfitUpdate(amountDr.subtract(amountCr));
 							item.setAmountProfitUsdUpdate(amountDrUsd.subtract(amountCrUsd));
-							BigDecimal amountDrCnyUpdate = ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D,"1");
-							BigDecimal amountCrCnyUpdate = ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C,"1");
+							BigDecimal amountDrCnyUpdate = ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D, "1");
+							BigDecimal amountCrCnyUpdate = ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C, "1");
 							item.setAmountProfitLocUpdate(amountDr.subtract(amountCr).add(amountDrCnyUpdate.subtract(amountCrCnyUpdate)));
 							item.setAmountProfitLocUpdate(item.getAmountProfitLocUpdate().setScale(2, RoundingMode.HALF_UP));
 							item.setAmountProfitLoc(item.getAmountProfitLoc().setScale(2, RoundingMode.HALF_UP));
@@ -3273,8 +3272,8 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 							}
 							item.setAmountProfit(amountDr.subtract(amountCr));
 							item.setAmountProfitUsd(amountDrUsd.subtract(amountCrUsd));
-							BigDecimal amountDrCny = ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D,"1");
-							BigDecimal amountCrCny = ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C,"1");
+							BigDecimal amountDrCny = ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D, "1");
+							BigDecimal amountCrCny = ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C, "1");
 							item.setAmountProfitLoc(amountDr.subtract(amountCr).add(amountDrCny.subtract(amountCrCny)));
 							for (FeeCenterReports fee : feeCenters1) {
 								FeeCenterReports feeReports = feeCenterReportsList1.stream()
@@ -3316,12 +3315,12 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 							item.setAmountCr(amountCr);
 							item.setAmountDrUsd(amountDrUsd);
 							item.setAmountDrUsd(amountCrUsd);
-							item.setAmountDrLoc(amountDr.add(ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D,"1")));
-							item.setAmountCrLoc(amountCr.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C,"1")));
+							item.setAmountDrLoc(amountDr.add(ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D, "1")));
+							item.setAmountCrLoc(amountCr.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C, "1")));
 							item.setAmountProfitUpdate(amountDr.subtract(amountCr));
 							item.setAmountProfitUsdUpdate(amountDrUsd.subtract(amountCrUsd));
-							BigDecimal amountDrCnyUpdate = ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D,"1");
-							BigDecimal amountCrCnyUpdate = ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C,"1");
+							BigDecimal amountDrCnyUpdate = ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D, "1");
+							BigDecimal amountCrCnyUpdate = ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C, "1");
 							item.setAmountProfitLocUpdate(amountDr.subtract(amountCr).add(amountDrCnyUpdate.subtract(amountCrCnyUpdate)));
 							item.setAmountProfitLocUpdate(item.getAmountProfitLocUpdate().setScale(2, RoundingMode.HALF_UP));
 							item.setAmountProfitLoc(item.getAmountProfitLoc().setScale(2, RoundingMode.HALF_UP));
@@ -3399,7 +3398,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 								}
 								List<FeeCenter> feeCenterList = feeCenterListMh.stream()
 									.collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(
-										Comparator.comparing(f -> f.getFeeId() + f.getCorpId() + f.getCurCode()+f.getDc()))), ArrayList::new));
+										Comparator.comparing(f -> f.getFeeId() + f.getCorpId() + f.getCurCode() + f.getDc()))), ArrayList::new));
 								List<FeeCenterReports> feeCenterReportList = new ArrayList<>();
 								for (FeeCenter fee : feeCenterList) {
 									FeeCenterReports feeCenterReports = new FeeCenterReports();
@@ -3479,7 +3478,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 						}
 						List<FeeCenter> feeCenters = feeCenterList.stream()
 							.collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(
-								Comparator.comparing(f -> f.getFeeId() + f.getCorpId() + f.getCurCode()+f.getDc()))), ArrayList::new));
+								Comparator.comparing(f -> f.getFeeId() + f.getCorpId() + f.getCurCode() + f.getDc()))), ArrayList::new));
 						List<FeeCenterReports> feeCenterReportList = new ArrayList<>();
 						for (FeeCenter fee : feeCenters) {
 							FeeCenterReports feeCenterReports = new FeeCenterReports();
@@ -3563,7 +3562,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 							}
 							List<FeeCenter> feeCenters = feeCenterList.stream()
 								.collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(
-									Comparator.comparing(f -> f.getFeeId() + f.getCorpId() + f.getCurCode()+f.getDc()))), ArrayList::new));
+									Comparator.comparing(f -> f.getFeeId() + f.getCorpId() + f.getCurCode() + f.getDc()))), ArrayList::new));
 							List<FeeCenterReports> feeCenterReportList = new ArrayList<>();
 							for (FeeCenter fee : feeCenters) {
 								FeeCenterReports feeCenterReports = new FeeCenterReports();
@@ -3640,7 +3639,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 						}
 						List<FeeCenter> feeCenterList1 = feeCenterListMh.stream()
 							.collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(
-								Comparator.comparing(f -> f.getFeeId() + f.getCorpId() + f.getCurCode()+f.getDc()))), ArrayList::new));
+								Comparator.comparing(f -> f.getFeeId() + f.getCorpId() + f.getCurCode() + f.getDc()))), ArrayList::new));
 						List<FeeCenterReports> feeCenterReportList = new ArrayList<>();
 						for (FeeCenter fee : feeCenterList1) {
 							FeeCenterReports feeCenterReports = new FeeCenterReports();
@@ -3881,7 +3880,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 						} else if (MagicValues.CNY.equals(item.getCurCode())) {
 							amountDr = amountDr.add(item.getAmount());
 						} else {
-							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(), "1");
 							amountDrUsd = amountDrUsd.add(usd);
 						}
 					} else {
@@ -3890,7 +3889,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 						} else if (MagicValues.CNY.equals(item.getCurCode())) {
 							amountCr = amountCr.add(item.getAmount());
 						} else {
-							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(), "1");
 							amountCrUsd = amountCrUsd.add(usd);
 						}
 					}
@@ -3913,8 +3912,8 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 				bills.setFeeCenterList(feeCenterReportsList);
 				amountProfit = amountDr.subtract(amountCr);
 				amountProfitUsd = amountDrUsd.subtract(amountCrUsd);
-				amountDrLoc = amountDrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D,"1")).add(amountDr);
-				amountCrLoc = amountCrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C,"1")).add(amountCr);
+				amountDrLoc = amountDrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D, "1")).add(amountDr);
+				amountCrLoc = amountCrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C, "1")).add(amountCr);
 				amountProfitLoc = amountDrLoc.subtract(amountCrLoc);
 				bills.setAmountDr(amountDr);
 				bills.setAmountCr(amountCr);
@@ -3996,7 +3995,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 						} else if (MagicValues.CNY.equals(item.getCurCode())) {
 							amountDr = amountDr.add(item.getAmount());
 						} else {
-							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(), "1");
 							amountDrUsd = amountDrUsd.add(usd);
 						}
 					} else {
@@ -4005,7 +4004,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 						} else if (MagicValues.CNY.equals(item.getCurCode())) {
 							amountCr = amountCr.add(item.getAmount());
 						} else {
-							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(), "1");
 							amountCrUsd = amountCrUsd.add(usd);
 						}
 					}
@@ -4028,8 +4027,8 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 				bills.setFeeCenterList(feeCenterReportsList);
 				amountProfit = amountDr.subtract(amountCr);
 				amountProfitUsd = amountDrUsd.subtract(amountCrUsd);
-				amountDrLoc = amountDrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D,"1")).add(amountDr);
-				amountCrLoc = amountCrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C,"1")).add(amountCr);
+				amountDrLoc = amountDrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D, "1")).add(amountDr);
+				amountCrLoc = amountCrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C, "1")).add(amountCr);
 				amountProfitLoc = amountDrLoc.subtract(amountCrLoc);
 				bills.setAmountDr(amountDr);
 				bills.setAmountCr(amountCr);
@@ -4244,7 +4243,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 						} else if (MagicValues.CNY.equals(item.getCurCode())) {
 							amountDr = amountDr.add(item.getAmount());
 						} else {
-							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(), "1");
 							amountDrUsd = amountDrUsd.add(usd);
 						}
 					} else {
@@ -4253,7 +4252,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 						} else if (MagicValues.CNY.equals(item.getCurCode())) {
 							amountCr = amountCr.add(item.getAmount());
 						} else {
-							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(), "1");
 							amountCrUsd = amountCrUsd.add(usd);
 						}
 					}
@@ -4276,8 +4275,8 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 				bills.setFeeCenterList(feeCenterReportsList);
 				amountProfit = amountDr.subtract(amountCr);
 				amountProfitUsd = amountDrUsd.subtract(amountCrUsd);
-				amountDrLoc = amountDrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D,"1")).add(amountDr);
-				amountCrLoc = amountCrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C,"1")).add(amountCr);
+				amountDrLoc = amountDrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D, "1")).add(amountDr);
+				amountCrLoc = amountCrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C, "1")).add(amountCr);
 				amountProfitLoc = amountDrLoc.subtract(amountCrLoc);
 				bills.setAmountDr(amountDr);
 				bills.setAmountCr(amountCr);
@@ -4348,7 +4347,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 						} else if (MagicValues.CNY.equals(item.getCurCode())) {
 							amountDr = amountDr.add(item.getAmount());
 						} else {
-							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(), "1");
 							amountDrUsd = amountDrUsd.add(usd);
 						}
 					} else {
@@ -4357,7 +4356,7 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 						} else if (MagicValues.CNY.equals(item.getCurCode())) {
 							amountCr = amountCr.add(item.getAmount());
 						} else {
-							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(), "1");
 							amountCrUsd = amountCrUsd.add(usd);
 						}
 					}
@@ -4380,8 +4379,8 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 				bills.setFeeCenterList(feeCenterReportsList);
 				amountProfit = amountDr.subtract(amountCr);
 				amountProfitUsd = amountDrUsd.subtract(amountCrUsd);
-				amountDrLoc = amountDrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D,"1")).add(amountDr);
-				amountCrLoc = amountCrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C,"1")).add(amountCr);
+				amountDrLoc = amountDrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D, "1")).add(amountDr);
+				amountCrLoc = amountCrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C, "1")).add(amountCr);
 				amountProfitLoc = amountDrLoc.subtract(amountCrLoc);
 				bills.setAmountDr(amountDr);
 				bills.setAmountCr(amountCr);
@@ -4401,6 +4400,11 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 		return R.data(map);
 	}
 
+	@Override
+	public List<Reports> getReports(Reports reports) {
+		return baseMapper.getReports(reports);
+	}
+
 
 	private static <T> Predicate<T> distinctByKey(Function<? super T, ?> keyExtractor) {
 		Set<Object> seen = ConcurrentHashMap.newKeySet();

+ 4 - 0
blade-service/blade-los/src/main/java/org/springblade/los/billno/mapper/BusinessBillNoMapper.java

@@ -16,6 +16,8 @@
  */
 package org.springblade.los.billno.mapper;
 
+import org.apache.ibatis.annotations.Param;
+import org.springblade.core.tenant.annotation.TenantIgnore;
 import org.springblade.los.billno.entity.BusinessBillNo;
 import org.springblade.los.billno.vo.BusinessBillNoVO;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@@ -39,4 +41,6 @@ public interface BusinessBillNoMapper extends BaseMapper<BusinessBillNo> {
 	 */
 	List<BusinessBillNoVO> selectBusinessBillNoPage(IPage page, BusinessBillNoVO businessBillNo);
 
+	@TenantIgnore
+    List<BusinessBillNo> getBusinessBillNo(@Param("data") BusinessBillNo businessBillNo);
 }

+ 5 - 0
blade-service/blade-los/src/main/java/org/springblade/los/billno/mapper/BusinessBillNoMapper.xml

@@ -33,5 +33,10 @@
     <select id="selectBusinessBillNoPage" resultMap="businessBillNoResultMap">
         select * from los_b_business_bill_no where is_deleted = 0
     </select>
+    <select id="getBusinessBillNo" resultMap="businessBillNoResultMap">
+        select * from los_b_business_bill_no where is_deleted = 0
+                                               and  tenant_id = #{data.tenantId}
+                                               and branch_id = #{data.salesCompanyId}
+    </select>
 
 </mapper>

+ 4 - 0
blade-service/blade-los/src/main/java/org/springblade/los/billno/service/IBusinessBillNoService.java

@@ -25,6 +25,8 @@ import org.springblade.los.business.aea.entity.AeaBills;
 import org.springblade.los.business.sea.entity.Bills;
 import org.springblade.los.finance.vouchers.entity.FinVouchers;
 
+import java.util.List;
+
 /**
  * 基础资料-业务类型编号格式 服务类
  *
@@ -78,4 +80,6 @@ public interface IBusinessBillNoService extends IService<BusinessBillNo> {
 	BusinessBillNo detail(BusinessBillNo businessBillNo);
 
 	void deteleFinVouchers(FinVouchers item);
+
+    List<BusinessBillNo> getBusinessBillNo(BusinessBillNo businessBillNo);
 }

+ 5 - 0
blade-service/blade-los/src/main/java/org/springblade/los/billno/service/impl/BusinessBillNoServiceImpl.java

@@ -626,4 +626,9 @@ public class BusinessBillNoServiceImpl extends ServiceImpl<BusinessBillNoMapper,
 		}
 	}
 
+	@Override
+	public List<BusinessBillNo> getBusinessBillNo(BusinessBillNo businessBillNo) {
+		return baseMapper.getBusinessBillNo(businessBillNo);
+	}
+
 }

+ 26 - 22
blade-service/blade-los/src/main/java/org/springblade/los/business/sea/service/impl/BillsServiceImpl.java

@@ -394,34 +394,36 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 
 
 		/**-------------箱型箱量计算---------*/
-		Integer GP20 = 0;
-		Integer GP40 = 0;
-		Integer HC40 = 0;
-		Integer GP45 = 0;
-		Integer GP48 = 0;
+		Integer V20 = 0;
+		Integer V40 = 0;
+		Integer V40HC = 0;
+		Integer V45 = 0;
+		Integer V48 = 0;
+		Integer other = 0;
+		BigDecimal teu = new BigDecimal("0.00");
 		StringBuilder boxTypeSum = new StringBuilder();
 		if (ObjectUtils.isNull(bills.getCfsQuantity()) || bills.getCfsQuantity().compareTo(new BigDecimal("0.00")) == 0) {
 			if (ObjectUtils.isNotNull(bills.getPreContainersList())) {
-				BigDecimal teu = new BigDecimal("0.00");
 				for (PreContainers item : bills.getPreContainersList()) {
 					item.setPid(bills.getId());
-					if ("20GP".equals(item.getCntrTypeCode())) {
-						GP20 += item.getQuantity();
-					} else if ("40GP".equals(item.getCntrTypeCode())) {
-						GP40 += item.getQuantity();
-					} else if ("40HC".equals(item.getCntrTypeCode())) {
-						HC40 += item.getQuantity();
-					} else if ("45GP".equals(item.getCntrTypeCode())) {
-						GP45 += item.getQuantity();
-					} else if ("48GP".equals(item.getCntrTypeCode())) {
-						GP48 += item.getQuantity();
+					if (item.getCntrTypeCode().contains("20")){
+						V20+=item.getQuantity();
+					}else if (item.getCntrTypeCode().contains("45")){
+						V45+=item.getQuantity();
+					}else if (item.getCntrTypeCode().contains("48")){
+						V48+=item.getQuantity();
+					}else if (item.getCntrTypeCode().contains("40") && (!item.getCntrTypeCode().contains("HQ")) && !item.getCntrTypeCode().contains("HC")){
+						V40+=item.getQuantity();
+					}else if (item.getCntrTypeCode().contains("40") && (item.getCntrTypeCode().contains("HQ")) && item.getCntrTypeCode().contains("HC")){
+						V40HC+=item.getQuantity();
+					}else{
+						other+=item.getQuantity();
 					}
 					boxTypeSum.append(item.getCntrTypeCode()).append("*").append(item.getQuantity()).append(",");
 					if (ObjectUtils.isNotNull(item.getQuantity()) && ObjectUtils.isNotNull(item.getTeu())) {
 						teu = teu.add(new BigDecimal(item.getQuantity()).multiply(item.getTeu()));
 					}
 				}
-				bills.setTeu(teu.intValue());
 				R res = preContainersService.submitList(bills.getPreContainersList());
 				if (!res.isSuccess()) {
 					throw new RuntimeException("保存失败");
@@ -432,11 +434,13 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 				}
 			}
 		}
-		bills.setQuantityV20(GP20);
-		bills.setQuantityV40(GP40);
-		bills.setQuantityV40hc(HC40);
-		bills.setQuantityV45(GP45);
-		bills.setQuantityV48(GP48);
+		bills.setQuantityV20(V20);
+		bills.setQuantityV40(V40);
+		bills.setQuantityV40hc(V40HC);
+		bills.setQuantityV45(V45);
+		bills.setQuantityV48(V48);
+		bills.setQuantityOther(other);
+		bills.setTeu(teu.intValue());
 		/**-------------箱型箱量计算---------*/
 		/**-------------费用计算---------*/
 		BigDecimal amountDr = new BigDecimal("0.00");

+ 3 - 0
blade-service/blade-los/src/main/java/org/springblade/los/check/mapper/AuditPathsActsMapper.java

@@ -20,6 +20,7 @@ import com.baomidou.mybatisplus.annotation.SqlParser;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.apache.ibatis.annotations.Param;
+import org.springblade.core.tenant.annotation.TenantIgnore;
 import org.springblade.los.check.entity.LosAuditPathsActs;
 import org.springblade.los.check.vo.LosAuditPathsActsVO;
 
@@ -55,4 +56,6 @@ public interface AuditPathsActsMapper extends BaseMapper<LosAuditPathsActs> {
 									  @Param("fidStatus") String fidStatus,
 									  @Param("tenantId") String tenantId);
 
+	@TenantIgnore
+    List<LosAuditPathsActs> getLosAuditPathsActs(@Param("data")LosAuditPathsActs losAuditPathsActs);
 }

+ 5 - 0
blade-service/blade-los/src/main/java/org/springblade/los/check/mapper/AuditPathsActsMapper.xml

@@ -27,5 +27,10 @@
 	AND fid_status = #{fidStatus}
 	AND tenant_id = #{tenantId}
     </select>
+    <select id="getLosAuditPathsActs" resultMap="auditPathsActsResultMap">
+        select * from los_audit_paths_acts where is_deleted = 0
+                                             and  tenant_id = #{data.tenantId}
+                                             and path_id = #{data.pathId}
+    </select>
 
 </mapper>

+ 4 - 0
blade-service/blade-los/src/main/java/org/springblade/los/check/mapper/AuditPathsMapper.java

@@ -18,6 +18,8 @@ package org.springblade.los.check.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import org.springblade.core.tenant.annotation.TenantIgnore;
 import org.springblade.los.check.entity.LosAuditPaths;
 import org.springblade.los.check.vo.LosAuditPathsVO;
 
@@ -40,4 +42,6 @@ public interface AuditPathsMapper extends BaseMapper<LosAuditPaths> {
 	 */
 	List<LosAuditPathsVO> selectAuditPathsPage(IPage page, LosAuditPathsVO auditPaths);
 
+	@TenantIgnore
+    List<LosAuditPaths> getLosAuditPaths(@Param("data") LosAuditPaths losAuditPaths);
 }

+ 4 - 0
blade-service/blade-los/src/main/java/org/springblade/los/check/mapper/AuditPathsMapper.xml

@@ -19,5 +19,9 @@
     <select id="selectAuditPathsPage" resultMap="auditPathsResultMap">
         select * from los_audit_paths where is_deleted = 0
     </select>
+    <select id="getLosAuditPaths" resultMap="auditPathsResultMap">
+        select * from los_audit_paths where is_deleted = 0 and  tenant_id = #{data.tenantId}
+         and sales_company_id = #{data.salesCompanyId}
+    </select>
 
 </mapper>

+ 2 - 0
blade-service/blade-los/src/main/java/org/springblade/los/check/service/IAuditPathsActsService.java

@@ -63,4 +63,6 @@ public interface IAuditPathsActsService extends IService<LosAuditPathsActs> {
 	 * @return
 	 */
 	LosAuditPathsActs getApprovalActId(int actId, String fidStatus, String tenantId);
+
+    List<LosAuditPathsActs> getLosAuditPathsActs(LosAuditPathsActs losAuditPathsActs);
 }

+ 3 - 0
blade-service/blade-los/src/main/java/org/springblade/los/check/service/IAuditPathsService.java

@@ -21,6 +21,8 @@ import com.baomidou.mybatisplus.extension.service.IService;
 import org.springblade.los.check.entity.LosAuditPaths;
 import org.springblade.los.check.vo.LosAuditPathsVO;
 
+import java.util.List;
+
 /**
  * 审批流配置主表 服务类
  *
@@ -41,4 +43,5 @@ public interface IAuditPathsService extends IService<LosAuditPaths> {
 
 	LosAuditPaths modify(LosAuditPaths auditPaths);
 
+    List<LosAuditPaths> getLosAuditPaths(LosAuditPaths losAuditPaths);
 }

+ 5 - 0
blade-service/blade-los/src/main/java/org/springblade/los/check/service/impl/AuditPathsActsServiceImpl.java

@@ -75,4 +75,9 @@ public class AuditPathsActsServiceImpl extends ServiceImpl<AuditPathsActsMapper,
 		return baseMapper.getApprovalActId(actId,fidStatus,tenantId);
 	}
 
+	@Override
+	public List<LosAuditPathsActs> getLosAuditPathsActs(LosAuditPathsActs losAuditPathsActs) {
+		return baseMapper.getLosAuditPathsActs(losAuditPathsActs);
+	}
+
 }

+ 5 - 0
blade-service/blade-los/src/main/java/org/springblade/los/check/service/impl/AuditPathsServiceImpl.java

@@ -115,4 +115,9 @@ public class AuditPathsServiceImpl extends ServiceImpl<AuditPathsMapper, LosAudi
 		return auditPaths;
 	}
 
+	@Override
+	public List<LosAuditPaths> getLosAuditPaths(LosAuditPaths losAuditPaths) {
+		return baseMapper.getLosAuditPaths(losAuditPaths);
+	}
+
 }

+ 15 - 5
blade-service/blade-los/src/main/java/org/springblade/los/excel/BoxNumberProfitExcel.java

@@ -23,6 +23,11 @@ public class BoxNumberProfitExcel {
 	/**
 	 * 业务类型
 	 */
+	@ExcelIgnore
+	private Long id;
+	/**
+	 * 业务类型
+	 */
 	@ExcelProperty(value = "业务类型")
 	private String businessType;
 	/**
@@ -93,29 +98,34 @@ public class BoxNumberProfitExcel {
 	/**
 	 * 20
 	 */
-	@ExcelProperty(value = "20")
+	@ExcelProperty(value = "V20")
 	private Integer quantityV20;
 	/**
 	 * 40
 	 */
-	@ExcelProperty(value = "40")
+	@ExcelProperty(value = "V40")
 	private Integer quantityV40;
 	/**
 	 * 45
 	 */
-	@ExcelProperty(value = "45")
+	@ExcelProperty(value = "V45")
 	private Integer quantityV45;
 	/**
 	 * 48
 	 */
-	@ExcelProperty(value = "48")
+	@ExcelProperty(value = "V48")
 	private Integer quantityV48;
 	/**
 	 * 40Hc
 	 */
-	@ExcelProperty(value = "40Hc")
+	@ExcelProperty(value = "V40HC")
 	private Integer quantityV40hc;
 	/**
+	 * 其他
+	 */
+	@ExcelProperty(value = "其他")
+	private Integer quantityOther;
+	/**
 	 * 件数
 	 */
 	@ExcelProperty(value = "件数")

+ 18 - 12
blade-service/blade-los/src/main/java/org/springblade/los/feign/LosClient.java

@@ -7,6 +7,8 @@ import org.springblade.core.tenant.annotation.TenantIgnore;
 import org.springblade.core.tool.api.R;
 import org.springblade.los.basic.business.entity.BusinessType;
 import org.springblade.los.basic.business.service.IBusinessTypeService;
+import org.springblade.los.basic.reports.entity.Reports;
+import org.springblade.los.basic.reports.service.IReportsService;
 import org.springblade.los.billno.entity.BusinessBillNo;
 import org.springblade.los.billno.service.IBusinessBillNoService;
 import org.springblade.los.check.entity.LosAuditPaths;
@@ -33,23 +35,21 @@ public class LosClient implements ILosClient {
 
 	private final IBusinessBillNoService businessBillNoService;
 
+	private final IReportsService reportsService;
+
 
 	@Override
 	@TenantIgnore
 	@PostMapping(GET_LOS_AUDIT_PATHS)
 	public List<LosAuditPaths> getLosAuditPaths(LosAuditPaths losAuditPaths) {
-		return auditPathsService.list(new LambdaQueryWrapper<LosAuditPaths>()
-			.eq(LosAuditPaths::getTenantId, losAuditPaths.getTenantId())
-			.eq(LosAuditPaths::getSalesCompanyId, losAuditPaths.getSalesCompanyId())
-		);
+		return auditPathsService.getLosAuditPaths(losAuditPaths);
 	}
 
 	@Override
 	@TenantIgnore
 	@PostMapping(GET_LOS_AUDIT_PATHS_ACTS)
 	public List<LosAuditPathsActs> getLosAuditPathsActs(LosAuditPathsActs losAuditPathsActs) {
-		return auditPathsActsService.list(new LambdaQueryWrapper<LosAuditPathsActs>()
-			.eq(LosAuditPathsActs::getTenantId, losAuditPathsActs.getTenantId()));
+		return auditPathsActsService.getLosAuditPathsActs(losAuditPathsActs);
 	}
 
 	@Override
@@ -70,18 +70,14 @@ public class LosClient implements ILosClient {
 	@TenantIgnore
 	@PostMapping(GET_BUSINESS_TYPE)
 	public List<BusinessType> getBusinessType(BusinessType businessType) {
-		return bBusinessTypeService.list(new LambdaQueryWrapper<BusinessType>()
-			.eq(BusinessType::getTenantId, businessType.getTenantId()));
+		return bBusinessTypeService.getBusinessType(businessType);
 	}
 
 	@Override
 	@TenantIgnore
 	@PostMapping(GET_BUSINESS_BILL_NO)
 	public List<BusinessBillNo> getBusinessBillNo(BusinessBillNo businessBillNo) {
-		return businessBillNoService.list(new LambdaQueryWrapper<BusinessBillNo>()
-			.eq(BusinessBillNo::getTenantId, businessBillNo.getTenantId())
-			.eq(BusinessBillNo::getBranchId, businessBillNo.getBranchId())
-		);
+		return businessBillNoService.getBusinessBillNo(businessBillNo);
 	}
 
 	@Override
@@ -97,4 +93,14 @@ public class LosClient implements ILosClient {
 	public R addBusinessBillNoList(List<BusinessBillNo> businessBillNoList) {
 		return R.data(businessBillNoService.saveOrUpdateBatch(businessBillNoList));
 	}
+
+	@Override
+	public List<Reports> getReports(Reports reports) {
+		return reportsService.getReports(reports);
+	}
+
+	@Override
+	public R addReportsList(List<Reports> reportsList) {
+		return R.data(reportsService.saveOrUpdateBatch(reportsList));
+	}
 }

+ 44 - 20
blade-service/blade-los/src/main/java/org/springblade/los/finance/genleg/service/impl/FinPeriodServiceImpl.java

@@ -64,6 +64,7 @@ import org.springframework.transaction.annotation.Transactional;
 import javax.servlet.http.HttpServletResponse;
 import java.math.BigDecimal;
 import java.math.RoundingMode;
+import java.text.ParseException;
 import java.text.SimpleDateFormat;
 import java.time.LocalDate;
 import java.time.ZoneId;
@@ -902,6 +903,7 @@ public class FinPeriodServiceImpl extends ServiceImpl<FinPeriodMapper, FinPeriod
 		this.updateById(finPeriod);
 		return R.data(finPeriod);
 	}
+
 	public FinPeriod detail(FinPeriod finPeriod) {
 		FinPeriod detail = baseMapper.selectById(finPeriod.getId());
 		if (detail != null) {
@@ -974,11 +976,16 @@ public class FinPeriodServiceImpl extends ServiceImpl<FinPeriodMapper, FinPeriod
 		}
 		finVouchers.setVoucherType("转");
 		finVouchers.setVoucherSource(periodVouchersTemplate.getBsType());
-		finVouchers.setVoucherDate(new Date());
-		LocalDate currentDate = LocalDate.now();
-		finVouchers.setAccountYear(currentDate.getYear());
-		finVouchers.setAccountMonth(currentDate.getMonthValue());
-		finVouchers.setAccountDay(currentDate.getDayOfMonth());
+		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+		try {
+			finVouchers.setVoucherDate(sdf.parse(periodVouchersTemplate.getDate() + "-01"));
+			LocalDate date = finVouchers.getVoucherDate().toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
+			finVouchers.setAccountYear(date.getYear());
+			finVouchers.setAccountMonth(date.getMonthValue());
+			finVouchers.setAccountDay(date.getDayOfMonth());
+		} catch (ParseException e) {
+			e.printStackTrace();
+		}
 		finVouchers.setCreateTime(new Date());
 		finVouchers.setCreateUser(AuthUtil.getUserId());
 		finVouchers.setCreateUserName(AuthUtil.getUserName());
@@ -1088,8 +1095,8 @@ public class FinPeriodServiceImpl extends ServiceImpl<FinPeriodMapper, FinPeriod
 							if (!"CNY".equals(item.getCurCode())) {
 								finVouchersItems.setExrate(periodExchangeRate.getExrate());
 								if ("D".equals(item.getDc())) {
-									BigDecimal amountDrUsdNew = periodExchangeRate.getExrate().multiply(calc.getAmountDrUsd());
-									BigDecimal amountDrUsdSubtract = calc.getAmountDr().subtract(amountDrUsdNew);
+									BigDecimal amountDrUsdNew = periodExchangeRate.getExrate().multiply(calc.getAmountDrUsd()).setScale(2, RoundingMode.HALF_UP);
+									BigDecimal amountDrUsdSubtract = amountDrUsdNew.subtract(calc.getAmountDr());
 									if (new BigDecimal("0.00").compareTo(amountDrUsdSubtract) != 0) {
 										finVouchersItems.setAmountDrUsd(amountDrUsdSubtract.divide(periodExchangeRate.getExrate(), RoundingMode.HALF_UP).setScale(2, RoundingMode.HALF_UP));
 										finVouchersItems.setAmountDr(amountDrUsdSubtract);
@@ -1101,8 +1108,8 @@ public class FinPeriodServiceImpl extends ServiceImpl<FinPeriodMapper, FinPeriod
 										continue;
 									}
 								} else {
-									BigDecimal amountCrUsdNew = periodExchangeRate.getExrate().multiply(calc.getAmountCrUsd());
-									BigDecimal amountCrUsdSubtract = calc.getAmountCr().subtract(amountCrUsdNew);
+									BigDecimal amountCrUsdNew = periodExchangeRate.getExrate().multiply(calc.getAmountCrUsd()).setScale(2, RoundingMode.HALF_UP);
+									BigDecimal amountCrUsdSubtract = amountCrUsdNew.subtract(calc.getAmountCr());
 									if (new BigDecimal("0.00").compareTo(amountCrUsdSubtract) != 0) {
 										finVouchersItems.setAmountCrUsd(amountCrUsdSubtract.divide(periodExchangeRate.getExrate(), RoundingMode.HALF_UP).setScale(2, RoundingMode.HALF_UP));
 										finVouchersItems.setAmountCr(amountCrUsdSubtract);
@@ -1232,8 +1239,8 @@ public class FinPeriodServiceImpl extends ServiceImpl<FinPeriodMapper, FinPeriod
 						if (!"CNY".equals(item.getCurCode())) {
 							finVouchersItems.setExrate(periodExchangeRate.getExrate());
 							if ("D".equals(item.getDc())) {
-								BigDecimal amountDrUsdNew = periodExchangeRate.getExrate().multiply(finGenleg.getAmountDrUsd());
-								BigDecimal amountDrUsdSubtract = finGenleg.getAmountDr().subtract(amountDrUsdNew);
+								BigDecimal amountDrUsdNew = periodExchangeRate.getExrate().multiply(finGenleg.getAmountDrUsd()).setScale(2, RoundingMode.HALF_UP);
+								BigDecimal amountDrUsdSubtract = amountDrUsdNew.subtract(finGenleg.getAmountDr());
 								if (new BigDecimal("0.00").compareTo(amountDrUsdSubtract) != 0) {
 									finVouchersItems.setAmountDrUsd(amountDrUsdSubtract.divide(periodExchangeRate.getExrate(), RoundingMode.HALF_UP).setScale(2, RoundingMode.HALF_UP));
 									finVouchersItems.setAmountDr(amountDrUsdSubtract);
@@ -1245,8 +1252,8 @@ public class FinPeriodServiceImpl extends ServiceImpl<FinPeriodMapper, FinPeriod
 									continue;
 								}
 							} else {
-								BigDecimal amountCrUsdNew = periodExchangeRate.getExrate().multiply(finGenleg.getAmountCrUsd());
-								BigDecimal amountCrUsdSubtract = finGenleg.getAmountCr().subtract(amountCrUsdNew);
+								BigDecimal amountCrUsdNew = periodExchangeRate.getExrate().multiply(finGenleg.getAmountCrUsd()).setScale(2, RoundingMode.HALF_UP);
+								BigDecimal amountCrUsdSubtract = amountCrUsdNew.subtract(finGenleg.getAmountCr());
 								if (new BigDecimal("0.00").compareTo(amountCrUsdSubtract) != 0) {
 									finVouchersItems.setAmountCrUsd(amountCrUsdSubtract.divide(periodExchangeRate.getExrate(), RoundingMode.HALF_UP).setScale(2, RoundingMode.HALF_UP));
 									finVouchersItems.setAmountCr(amountCrUsdSubtract);
@@ -1397,22 +1404,39 @@ public class FinPeriodServiceImpl extends ServiceImpl<FinPeriodMapper, FinPeriod
 		if (!"CNY".equals(accounts.getCurCode())) {
 			throw new RuntimeException("科目:" + periodVouchersTemplate.getPlAccCnm() + "币别不是CNY");
 		}
-		BigDecimal subtract = amountDrLoc.subtract(amountCrLoc);
-		if ("D".equals(accounts.getDc())) {
-			finVouchersItems.setAmountDr(subtract.abs());
-			finVouchersItems.setAmountDrLoc(subtract.abs());
+		if ("FM-CURRENCY-PL-TRANSFER".equals(periodVouchersTemplate.getBsType())) {
+			BigDecimal subtract = new BigDecimal("0.00").subtract(amountDrLoc).add(amountCrLoc);
+			finVouchersItems.setAmountDr(subtract);
+			finVouchersItems.setAmountDrLoc(subtract);
 			finVouchersItems.setAmountCr(new BigDecimal("0.00"));
 			finVouchersItems.setAmountDrUsd(new BigDecimal("0.00"));
 			finVouchersItems.setAmountCrUsd(new BigDecimal("0.00"));
 			finVouchersItems.setAmountCrLoc(new BigDecimal("0.00"));
-		} else {
-			finVouchersItems.setAmountCr(subtract.abs());
-			finVouchersItems.setAmountCrLoc(subtract.abs());
+			finVouchersItems.setAmountCr(new BigDecimal("0.00"));
+			finVouchersItems.setAmountCrLoc(new BigDecimal("0.00"));
 			finVouchersItems.setAmountCrUsd(new BigDecimal("0.00"));
 			finVouchersItems.setAmountDr(new BigDecimal("0.00"));
 			finVouchersItems.setAmountDrUsd(new BigDecimal("0.00"));
 			finVouchersItems.setAmountDrLoc(new BigDecimal("0.00"));
+		}else{
+			BigDecimal subtract = amountDrLoc.subtract(amountCrLoc);
+			if ("D".equals(accounts.getDc())){
+				finVouchersItems.setAmountDr(subtract);
+				finVouchersItems.setAmountDrLoc(subtract);
+				finVouchersItems.setAmountCr(new BigDecimal("0.00"));
+				finVouchersItems.setAmountDrUsd(new BigDecimal("0.00"));
+				finVouchersItems.setAmountCrUsd(new BigDecimal("0.00"));
+				finVouchersItems.setAmountCrLoc(new BigDecimal("0.00"));
+			}else{
+				finVouchersItems.setAmountCr(subtract);
+				finVouchersItems.setAmountCrLoc(subtract);
+				finVouchersItems.setAmountCrUsd(new BigDecimal("0.00"));
+				finVouchersItems.setAmountDr(new BigDecimal("0.00"));
+				finVouchersItems.setAmountDrUsd(new BigDecimal("0.00"));
+				finVouchersItems.setAmountDrLoc(new BigDecimal("0.00"));
+			}
 		}
+
 		/*} else {
 			BigDecimal subtract = amountDrLoc.subtract(amountCrLoc);
 			if ("D".equals(accounts.getDc())) {

+ 4 - 2
blade-service/blade-los/src/main/java/org/springblade/los/finance/vouchers/service/impl/FinVouchersServiceImpl.java

@@ -193,6 +193,10 @@ public class FinVouchersServiceImpl extends ServiceImpl<FinVouchersMapper, FinVo
 				finVouchers.setCreateDeptName(deptName);
 			}
 		} else {
+			LocalDate date = finVouchers.getVoucherDate().toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
+			finVouchers.setAccountYear(date.getYear());
+			finVouchers.setAccountMonth(date.getMonthValue());
+			finVouchers.setAccountDay(date.getDayOfMonth());
 			finVouchers.setUpdateUser(AuthUtil.getUserId());
 			finVouchers.setUpdateTime(new Date());
 			finVouchers.setUpdateUserName(AuthUtil.getUserName());
@@ -1699,7 +1703,6 @@ public class FinVouchersServiceImpl extends ServiceImpl<FinVouchersMapper, FinVo
 			throw new RuntimeException("生成凭证号失败");
 		}
 		finVouchers.setVoucherNo((String) voucherNo.getData());
-		finVouchers.setVoucherDate(new Date());
 		finVouchers.setStatus(3);
 		finVouchers.setVoucherStatus(1);
 		finVouchers.setPostUserId(AuthUtil.getUserId());
@@ -1707,7 +1710,6 @@ public class FinVouchersServiceImpl extends ServiceImpl<FinVouchersMapper, FinVo
 		finVouchers.setPostTime(new Date());
 		this.saveOrUpdate(finVouchers);
 		if (ObjectUtils.isNotNull(finVouchers.getFinVouchersItemsList())) {
-
 			FinPeriod detail = finPeriodMapper.selectOne(new LambdaQueryWrapper<FinPeriod>()
 				.eq(FinPeriod::getTenantId,AuthUtil.getTenantId())
 				.eq(FinPeriod::getIsDeleted,0)

+ 26 - 15
blade-service/blade-los/src/main/java/org/springblade/los/statisticAnalysis/service/impl/StatisticAnalysisServiceImpl.java

@@ -1196,6 +1196,7 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
 			map.put("quantityV45", boxNumberProfitExcelList.stream().map(BoxNumberProfitExcel::getQuantityV45).filter(Objects::nonNull).reduce(0, Integer::sum));
 			map.put("quantityV48", boxNumberProfitExcelList.stream().map(BoxNumberProfitExcel::getQuantityV48).filter(Objects::nonNull).reduce(0, Integer::sum));
 			map.put("quantityV40hc", boxNumberProfitExcelList.stream().map(BoxNumberProfitExcel::getQuantityV40hc).filter(Objects::nonNull).reduce(0, Integer::sum));
+			map.put("quantityOther", boxNumberProfitExcelList.stream().map(BoxNumberProfitExcel::getQuantityOther).filter(Objects::nonNull).reduce(0, Integer::sum));
 			map.put("amountDr", boxNumberProfitExcelList.stream().map(BoxNumberProfitExcel::getAmountDr).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
 			map.put("amountCr", boxNumberProfitExcelList.stream().map(BoxNumberProfitExcel::getAmountCr).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
 			map.put("amountProfit", boxNumberProfitExcelList.stream().map(BoxNumberProfitExcel::getAmountProfit).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
@@ -1212,6 +1213,7 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
 			map.put("quantityV45", 0);
 			map.put("quantityV48", 0);
 			map.put("quantityV40hc", 0);
+			map.put("quantityOther", 0);
 			map.put("amountDr", new BigDecimal("0.00"));
 			map.put("amountCr", new BigDecimal("0.00"));
 			map.put("amountProfit", new BigDecimal("0.00"));
@@ -1321,7 +1323,7 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
 					.filter(Objects::nonNull).distinct().collect(Collectors.toList());
 				int teuSum = 0;
 				BigDecimal amountProfitSum = new BigDecimal("0.00");
-				BigDecimal profitMarginSum = new BigDecimal("0.00");
+				BigDecimal amountDrLocSum = new BigDecimal("0.00");
 				for (Long item : carrierId) {
 					Map<String, Object> map = new HashMap<>();
 					List<BoxNumberProfit> profitList = boxNumberProfitList.stream().filter(e -> e.getCarrierId().equals(item)).collect(Collectors.toList());
@@ -1337,13 +1339,12 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
 					BigDecimal amountProfitLoc = boxNumberProfitList.stream().filter(e -> e.getCarrierId().equals(item)).map(BoxNumberProfit::getAmountProfitLoc).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add);
 					map.put("amountProfitLoc", amountProfitLoc);
 					amountProfitSum = amountProfitSum.add(amountProfitLoc);
-					if (new BigDecimal("0.00").compareTo(amountProfitLoc) != 0 ){
+					amountDrLocSum = amountDrLocSum.add(amountDrLoc);
+					if (new BigDecimal("0.00").compareTo(amountProfitLoc) != 0 && new BigDecimal("0.00").compareTo(amountDrLoc) != 0){
 						BigDecimal profitMargin = amountProfitLoc.divide(amountDrLoc, MathContext.DECIMAL32).setScale(2, RoundingMode.HALF_UP).multiply(new BigDecimal("100"));
 						map.put("profitMargin", profitMargin);
-						profitMarginSum = profitMarginSum.add(profitMargin);
 					}else{
 						map.put("profitMargin", new BigDecimal("0.00"));
-						profitMarginSum = profitMarginSum.add(new BigDecimal("0.00"));
 					}
 					mapList.add(map);
 				}
@@ -1351,14 +1352,18 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
 				mapSum.put("corpName", "总计");
 				mapSum.put("teu", teuSum);
 				mapSum.put("amountProfitLoc", amountProfitSum);
-				mapSum.put("profitMargin", profitMarginSum);
+				if (new BigDecimal("0.00").compareTo(amountProfitSum) != 0 && new BigDecimal("0.00").compareTo(amountDrLocSum) != 0){
+					mapSum.put("profitMargin", amountProfitSum.divide(amountDrLocSum, MathContext.DECIMAL32).setScale(2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
+				}else{
+					mapSum.put("profitMargin", new BigDecimal("0.00"));
+				}
 				mapList.add(0, mapSum);
 			} else if ("2".equals(boxNumberProfit.getType())) {
 				List<Long> corpId = boxNumberProfitList.stream().map(BoxNumberProfit::getCorpId)
 					.filter(Objects::nonNull).distinct().collect(Collectors.toList());
 				int teuSum = 0;
 				BigDecimal amountProfitSum = new BigDecimal("0.00");
-				BigDecimal profitMarginSum = new BigDecimal("0.00");
+				BigDecimal amountDrLocSum = new BigDecimal("0.00");
 				for (Long item : corpId) {
 					Map<String, Object> map = new HashMap<>();
 					List<BoxNumberProfit> profitList = boxNumberProfitList.stream().filter(e -> e.getCorpId().equals(item)).collect(Collectors.toList());
@@ -1374,13 +1379,12 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
 					BigDecimal amountProfitLoc = boxNumberProfitList.stream().filter(e -> e.getCorpId().equals(item)).map(BoxNumberProfit::getAmountProfitLoc).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add);
 					map.put("amountProfitLoc", amountProfitLoc);
 					amountProfitSum = amountProfitSum.add(amountProfitLoc);
-					if (new BigDecimal("0.00").compareTo(amountProfitLoc) != 0){
+					amountDrLocSum = amountDrLocSum.add(amountDrLoc);
+					if (new BigDecimal("0.00").compareTo(amountProfitLoc) != 0 && new BigDecimal("0.00").compareTo(amountDrLoc) != 0){
 						BigDecimal profitMargin = amountProfitLoc.divide(amountDrLoc, MathContext.DECIMAL32).setScale(2, RoundingMode.HALF_UP).multiply(new BigDecimal("100"));
 						map.put("profitMargin", profitMargin);
-						profitMarginSum = profitMarginSum.add(profitMargin);
 					}else{
 						map.put("profitMargin", new BigDecimal("0.00"));
-						profitMarginSum = profitMarginSum.add(new BigDecimal("0.00"));
 					}
 					mapList.add(map);
 				}
@@ -1388,14 +1392,18 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
 				mapSum.put("corpName", "总计");
 				mapSum.put("teu", teuSum);
 				mapSum.put("amountProfitLoc", amountProfitSum);
-				mapSum.put("profitMargin", profitMarginSum);
+				if (new BigDecimal("0.00").compareTo(amountProfitSum) != 0 && new BigDecimal("0.00").compareTo(amountDrLocSum) != 0){
+					mapSum.put("profitMargin", amountProfitSum.divide(amountDrLocSum, MathContext.DECIMAL32).setScale(2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
+				}else{
+					mapSum.put("profitMargin", new BigDecimal("0.00"));
+				}
 				mapList.add(0, mapSum);
 			} else if ("3".equals(boxNumberProfit.getType())) {
 				List<Long> srcId = boxNumberProfitList.stream().filter(e -> e.getSrcType().equals("SALES")).map(BoxNumberProfit::getSrcId)
 					.filter(Objects::nonNull).distinct().collect(Collectors.toList());
 				int teuSum = 0;
 				BigDecimal amountProfitSum = new BigDecimal("0.00");
-				BigDecimal profitMarginSum = new BigDecimal("0.00");
+				BigDecimal amountDrLocSum = new BigDecimal("0.00");
 				for (Long item : srcId) {
 					Map<String, Object> map = new HashMap<>();
 					List<BoxNumberProfit> profitList = boxNumberProfitList.stream().filter(e -> e.getSrcId().equals(item) && e.getSrcType().equals("SALES")).collect(Collectors.toList());
@@ -1411,13 +1419,12 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
 					BigDecimal amountProfitLoc = boxNumberProfitList.stream().filter(e -> e.getSrcId().equals(item) && e.getSrcType().equals("SALES")).map(BoxNumberProfit::getAmountProfitLoc).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add);
 					map.put("amountProfitLoc", amountProfitLoc);
 					amountProfitSum = amountProfitSum.add(amountProfitLoc);
-					if (new BigDecimal("0.00").compareTo(amountProfitLoc) != 0){
+					amountDrLocSum = amountDrLocSum.add(amountDrLoc);
+					if (new BigDecimal("0.00").compareTo(amountProfitLoc) != 0 && new BigDecimal("0.00").compareTo(amountDrLoc) != 0){
 						BigDecimal profitMargin = amountProfitLoc.divide(amountDrLoc, MathContext.DECIMAL32).setScale(2, RoundingMode.HALF_UP).multiply(new BigDecimal("100"));
 						map.put("profitMargin", profitMargin);
-						profitMarginSum = profitMarginSum.add(profitMargin);
 					}else{
 						map.put("profitMargin", new BigDecimal("0.00"));
-						profitMarginSum = profitMarginSum.add(new BigDecimal("0.00"));
 					}
 					mapList.add(map);
 				}
@@ -1425,7 +1432,11 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
 				mapSum.put("corpName", "总计");
 				mapSum.put("teu", teuSum);
 				mapSum.put("amountProfitLoc", amountProfitSum);
-				mapSum.put("profitMargin", profitMarginSum);
+				if (new BigDecimal("0.00").compareTo(amountProfitSum) != 0 && new BigDecimal("0.00").compareTo(amountDrLocSum) != 0){
+					mapSum.put("profitMargin", amountProfitSum.divide(amountDrLocSum, MathContext.DECIMAL32).setScale(2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
+				}else{
+					mapSum.put("profitMargin", new BigDecimal("0.00"));
+				}
 				mapList.add(0, mapSum);
 			}
 		}

+ 1 - 0
blade-service/blade-los/src/main/java/org/springblade/los/view/mapper/BoxNumberProfitMapper.xml

@@ -30,6 +30,7 @@
         <result column="quantity_v45" property="quantityV45"/>
         <result column="quantity_v48" property="quantityV48"/>
         <result column="quantity_v40hc" property="quantityV40hc"/>
+        <result column="quantity_other" property="quantityOther"/>
         <result column="quantity" property="quantity"/>
         <result column="gross_weight" property="grossWeight"/>
         <result column="measurement" property="measurement"/>

+ 2 - 0
blade-service/blade-system/src/main/java/org/springblade/system/mapper/DeptMapper.java

@@ -81,4 +81,6 @@ public interface DeptMapper extends BaseMapper<Dept> {
 	 * @return
 	 */
 	List<Dept> selectByDeptIds(@Param("ids") List<Long> ids);
+
+    Dept selectDept(@Param("tenantId") String tenantIdCopy);
 }

+ 6 - 0
blade-service/blade-system/src/main/java/org/springblade/system/mapper/DeptMapper.xml

@@ -146,4 +146,10 @@
             #{id}
         </foreach>
     </select>
+    <select id="selectDept" resultMap="deptResultMap">
+        select
+        *
+        from blade_dept
+        where is_deleted = 0 and tenant_id = #{tenantId} limit 1
+    </select>
 </mapper>

+ 2 - 0
blade-service/blade-system/src/main/java/org/springblade/system/service/IDeptService.java

@@ -150,4 +150,6 @@ public interface IDeptService extends IService<Dept> {
 	 * 获取装货港
 	 */
     Dept getDetailPol(Dept dept);
+
+    Dept selectDept(String tenantIdCopy);
 }

+ 5 - 0
blade-service/blade-system/src/main/java/org/springblade/system/service/impl/DeptServiceImpl.java

@@ -271,6 +271,11 @@ public class DeptServiceImpl extends ServiceImpl<DeptMapper, Dept> implements ID
 		return deptPol;
 	}
 
+	@Override
+	public Dept selectDept(String tenantIdCopy) {
+		return baseMapper.selectDept(tenantIdCopy);
+	}
+
 	private Dept getParentId(Long parentId) {
 		Dept detail = baseMapper.selectById(parentId);
 		if (0 == detail.getParentId()) {

+ 68 - 20
blade-service/blade-system/src/main/java/org/springblade/system/service/impl/TenantServiceImpl.java

@@ -23,6 +23,7 @@ import lombok.AllArgsConstructor;
 import org.springblade.core.cache.utils.CacheUtil;
 import org.springblade.core.log.exception.ServiceException;
 import org.springblade.core.mp.base.BaseServiceImpl;
+import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tenant.TenantId;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.constant.BladeConstant;
@@ -32,6 +33,7 @@ import org.springblade.core.tool.utils.DesUtil;
 import org.springblade.core.tool.utils.Func;
 import org.springblade.core.tool.utils.StringUtil;
 import org.springblade.los.basic.business.entity.BusinessType;
+import org.springblade.los.basic.reports.entity.Reports;
 import org.springblade.los.billno.entity.BusinessBillNo;
 import org.springblade.los.check.entity.LosAuditPaths;
 import org.springblade.los.check.entity.LosAuditPathsActs;
@@ -44,7 +46,6 @@ import org.springblade.system.service.*;
 import org.springblade.system.user.entity.User;
 import org.springblade.system.user.enums.UserEnum;
 import org.springblade.system.user.feign.IUserClient;
-import org.springblade.system.vo.DeptVO;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -212,6 +213,7 @@ public class TenantServiceImpl extends BaseServiceImpl<TenantMapper, Tenant> imp
 	@Override
 	@Transactional(rollbackFor = Exception.class)
 	public R copyData(String tenantId, String tenantIdCopy, String type) {
+		Dept dept = deptService.selectDept(tenantIdCopy);
 		if (type.contains("1")) {
 			// 业务字典
 			LinkedList<DictBiz> dictBizs = new LinkedList<>();
@@ -220,10 +222,10 @@ public class TenantServiceImpl extends BaseServiceImpl<TenantMapper, Tenant> imp
 		} else if (type.contains("2")) {
 			// 角色
 			List<Role> roleLinkedList = new ArrayList<>();
-			List<Role> roleList = roleService.selectList(tenantIdCopy);
+			List<Role> roleList = roleService.selectList(tenantId);
 			for (Role item : roleList) {
 				item.setId(null);
-				item.setTenantId(tenantId);
+				item.setTenantId(tenantIdCopy);
 				roleLinkedList.add(item);
 			}
 			roleService.saveBatch(roleLinkedList);
@@ -231,28 +233,43 @@ public class TenantServiceImpl extends BaseServiceImpl<TenantMapper, Tenant> imp
 			// 审批流程
 			List<LosAuditPaths> losAuditPaths = new ArrayList<>();
 			LosAuditPaths losAuditPath = new LosAuditPaths();
-			losAuditPath.setTenantId(tenantIdCopy);
+			losAuditPath.setTenantId(tenantId);
 			losAuditPath.setSalesCompanyId(1703929959275413506L);
 			List<LosAuditPaths> losAuditPathsList = losClient.getLosAuditPaths(losAuditPath);
 			for (LosAuditPaths item : losAuditPathsList) {
 				Long oldParentId = item.getId();
 				Long newParentId = IdWorker.getId();
 				item.setId(newParentId);
-				item.setTenantId(tenantId);
+				item.setTenantId(tenantIdCopy);
+				if (dept != null) {
+					item.setSalesCompanyId(dept.getId());
+					item.setSalesCompanyName(dept.getDeptName());
+				} else {
+					item.setSalesCompanyId(0L);
+					item.setSalesCompanyName("");
+				}
 				losAuditPaths.add(item);
-				recursionLosAuditPathsActs(tenantId, tenantIdCopy, oldParentId, newParentId);
+				recursionLosAuditPathsActs(tenantId, tenantIdCopy, oldParentId, newParentId, dept);
 			}
 			losClient.addLosAuditPathsList(losAuditPaths);
 		} else if (type.contains("4")) {
 			// 编号配置
 			List<BusinessBillNo> businessBillNos = new ArrayList<>();
 			BusinessBillNo businessBillNo = new BusinessBillNo();
-			businessBillNo.setTenantId(tenantIdCopy);
+			businessBillNo.setTenantId(tenantId);
 			businessBillNo.setBranchId("1703929959275413506");
 			List<BusinessBillNo> businessBillNoList = losClient.getBusinessBillNo(businessBillNo);
 			for (BusinessBillNo item : businessBillNoList) {
 				item.setId(null);
-				item.setTenantId(tenantId);
+				item.setTenantId(tenantIdCopy);
+				if (dept != null) {
+					item.setBranchId(dept.getId() + "");
+				} else {
+					item.setBranchId("");
+				}
+				item.setCreateTime(new Date());
+				item.setCreateUser(AuthUtil.getUserId());
+				item.setCreateUserName(AuthUtil.getUserName());
 				businessBillNos.add(item);
 			}
 			losClient.addBusinessBillNoList(businessBillNos);
@@ -260,29 +277,60 @@ public class TenantServiceImpl extends BaseServiceImpl<TenantMapper, Tenant> imp
 			// 业务类型
 			List<BusinessType> businessTypes = new ArrayList<>();
 			BusinessType businessType = new BusinessType();
-			businessType.setTenantId(tenantIdCopy);
+			businessType.setTenantId(tenantId);
 			List<BusinessType> businessTypeList = losClient.getBusinessType(businessType);
 			for (BusinessType item : businessTypeList) {
 				item.setId(null);
-				item.setTenantId(tenantId);
+				item.setTenantId(tenantIdCopy);
+				item.setCreateTime(new Date());
+				item.setCreateUser(AuthUtil.getUserId());
+				item.setCreateUserName(AuthUtil.getUserName());
 				businessTypes.add(item);
 			}
 			losClient.addBusinessTypeList(businessTypes);
+		} else if (type.contains("6")) {
+			// 报表
+			List<Reports> reportsList = new ArrayList<>();
+			Reports reports = new Reports();
+			reports.setTenantId(tenantId);
+			reports.setBranchId("1703929959275413506");
+			List<Reports> losReportsList = losClient.getReports(reports);
+			for (Reports item : losReportsList) {
+				Long newParentId = IdWorker.getId();
+				item.setCreateTime(new Date());
+				item.setCreateUser(AuthUtil.getUserId());
+				item.setCreateUserName(AuthUtil.getUserName());
+				item.setId(newParentId);
+				item.setTenantId(tenantIdCopy);
+				if (dept != null) {
+					item.setBranchId(dept.getId() + "");
+				} else {
+					item.setBranchId("");
+				}
+				reportsList.add(item);
+			}
+			losClient.addReportsList(reportsList);
 		}
 		return R.data("操作成功");
 	}
 
-	private void recursionLosAuditPathsActs(String tenantId, String tenantIdCopy, Long oldParentId, Long newParentId) {
+	private void recursionLosAuditPathsActs(String tenantId, String tenantIdCopy, Long oldParentId, Long newParentId, Dept dept) {
 		LosAuditPathsActs losAuditPathsActs = new LosAuditPathsActs();
-		losAuditPathsActs.setTenantId(tenantIdCopy);
+		losAuditPathsActs.setTenantId(tenantId);
 		losAuditPathsActs.setPathId(oldParentId);
-		losAuditPathsActs.setSalesCompanyId(1703929959275413506L);
 		List<LosAuditPathsActs> losAuditPathsActsList = new ArrayList<>();
 		List<LosAuditPathsActs> list = losClient.getLosAuditPathsActs(losAuditPathsActs);
 		for (LosAuditPathsActs item : list) {
 			item.setId(IdWorker.getId());
-			item.setTenantId(tenantId);
+			item.setTenantId(tenantIdCopy);
 			item.setPathId(newParentId);
+			if (dept != null) {
+				item.setSalesCompanyId(dept.getId());
+				item.setSalesCompanyName(dept.getDeptName());
+			} else {
+				item.setSalesCompanyId(0L);
+				item.setSalesCompanyName("");
+			}
 			losAuditPathsActsList.add(item);
 		}
 		losClient.addLosAuditPathsActsList(losAuditPathsActsList);
@@ -340,12 +388,12 @@ public class TenantServiceImpl extends BaseServiceImpl<TenantMapper, Tenant> imp
 	}
 
 	private List<DictBiz> getDictBizsV0(String tenantId, String tenantIdCopy, LinkedList<DictBiz> dictBizs) {
-		List<DictBiz> dictBizList = dictBizService.selectList(BladeConstant.TOP_PARENT_ID, tenantIdCopy);
+		List<DictBiz> dictBizList = dictBizService.selectList(BladeConstant.TOP_PARENT_ID, tenantId);
 		dictBizList.forEach(dictBiz -> {
 			Long oldParentId = dictBiz.getId();
 			Long newParentId = IdWorker.getId();
 			dictBiz.setId(newParentId);
-			dictBiz.setTenantId(tenantId);
+			dictBiz.setTenantId(tenantIdCopy);
 			dictBizs.add(dictBiz);
 			recursionDictBizV0(tenantId, tenantIdCopy, oldParentId, newParentId, dictBizs);
 		});
@@ -353,15 +401,15 @@ public class TenantServiceImpl extends BaseServiceImpl<TenantMapper, Tenant> imp
 	}
 
 	private void recursionDictBizV0(String tenantId, String tenantIdCopy, Long oldParentId, Long newParentId, LinkedList<DictBiz> dictBizs) {
-		List<DictBiz> dictBizList = dictBizService.selectList(oldParentId, tenantIdCopy);
+		List<DictBiz> dictBizList = dictBizService.selectList(oldParentId, tenantId);
 		dictBizList.forEach(dictBiz -> {
-			Long oldSubParentId = dictBiz.getId();
+//			Long oldSubParentId = dictBiz.getId();
 			Long newSubParentId = IdWorker.getId();
 			dictBiz.setId(newSubParentId);
-			dictBiz.setTenantId(tenantId);
+			dictBiz.setTenantId(tenantIdCopy);
 			dictBiz.setParentId(newParentId);
 			dictBizs.add(dictBiz);
-			recursionDictBizV0(tenantId, tenantIdCopy, oldSubParentId, newSubParentId, dictBizs);
+//			recursionDictBizV0(tenantId, tenantIdCopy, oldSubParentId, newSubParentId, dictBizs);
 		});
 	}