Jelajahi Sumber

2024年4月28日17:36:46

纪新园 1 tahun lalu
induk
melakukan
2458126774
20 mengubah file dengan 283 tambahan dan 192 penghapusan
  1. 1 1
      blade-service-api/blade-los-api/src/main/java/org/springblade/los/business/sea/entity/Bills.java
  2. 1 1
      blade-service/blade-los/src/main/java/org/springblade/los/basic/acc/controller/AccountsController.java
  3. 1 0
      blade-service/blade-los/src/main/java/org/springblade/los/basic/cur/controller/BCurExrateController.java
  4. 3 3
      blade-service/blade-los/src/main/java/org/springblade/los/basic/cur/service/IBCurrencyService.java
  5. 83 36
      blade-service/blade-los/src/main/java/org/springblade/los/basic/cur/service/impl/BCurrencyServiceImpl.java
  6. 3 3
      blade-service/blade-los/src/main/java/org/springblade/los/basic/fees/controller/BFeesController.java
  7. 44 44
      blade-service/blade-los/src/main/java/org/springblade/los/basic/reports/service/impl/ReportsServiceImpl.java
  8. 9 9
      blade-service/blade-los/src/main/java/org/springblade/los/business/aea/service/impl/AeaBillsServiceImpl.java
  9. 1 1
      blade-service/blade-los/src/main/java/org/springblade/los/business/amends/service/impl/AmendsServiceImpl.java
  10. 5 5
      blade-service/blade-los/src/main/java/org/springblade/los/business/customsDeclaration/service/impl/CustomsDeclarationServiceImpl.java
  11. 13 13
      blade-service/blade-los/src/main/java/org/springblade/los/business/sea/service/impl/BillsServiceImpl.java
  12. 4 4
      blade-service/blade-los/src/main/java/org/springblade/los/check/service/impl/AuditProecessServiceImpl.java
  13. 62 28
      blade-service/blade-los/src/main/java/org/springblade/los/finance/fee/service/impl/FeeCenterServiceImpl.java
  14. 2 2
      blade-service/blade-los/src/main/java/org/springblade/los/finance/invoices/service/impl/FinInvoicesServiceImpl.java
  15. 14 14
      blade-service/blade-los/src/main/java/org/springblade/los/finance/stl/service/impl/FinStlBillsServiceImpl.java
  16. 2 2
      blade-service/blade-los/src/main/java/org/springblade/los/finance/vouchers/service/impl/FinVouchersServiceImpl.java
  17. 6 6
      blade-service/blade-los/src/main/java/org/springblade/los/statisticAnalysis/service/impl/StatisticAnalysisServiceImpl.java
  18. 15 10
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/goods/controller/GoodsDescController.java
  19. 6 3
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/goods/service/impl/GoodsDescServiceImpl.java
  20. 8 7
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/ship/service/impl/ShipServiceImpl.java

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

@@ -1512,7 +1512,7 @@ public class Bills implements Serializable {
 	 * 订舱代理 id
 	 */
 	@ApiModelProperty(value = "订舱代理 id")
-	private String bookingAgentId;
+	private Long bookingAgentId;
 
 	/**
 	 * 订舱代理中文名称

+ 1 - 1
blade-service/blade-los/src/main/java/org/springblade/los/basic/acc/controller/AccountsController.java

@@ -83,7 +83,7 @@ public class AccountsController extends BladeController {
 		lambdaQueryWrapper.eq(Accounts::getTenantId, AuthUtil.getTenantId())
 			.eq(Accounts::getBranchId, deptUtils.getDeptPid())
 			.eq(ObjectUtils.isNotNull(accounts.getProperty()), Accounts::getProperty, accounts.getProperty())
-			.eq(ObjectUtils.isNotNull(accounts.getCode()), Accounts::getCode, accounts.getCode())
+			.like(ObjectUtils.isNotNull(accounts.getCode()), Accounts::getCode, accounts.getCode())
 			.eq(ObjectUtils.isNotNull(accounts.getCnName()), Accounts::getCnName, accounts.getCnName())
 			.eq(ObjectUtils.isNotNull(accounts.getCurCode()), Accounts::getCurCode, accounts.getCurCode())
 			.eq(ObjectUtils.isNotNull(accounts.getDc()), Accounts::getDc, accounts.getDc())

+ 1 - 0
blade-service/blade-los/src/main/java/org/springblade/los/basic/cur/controller/BCurExrateController.java

@@ -77,6 +77,7 @@ public class BCurExrateController extends BladeController {
 			.eq(ObjectUtils.isNotNull(bCurExrate.getCode()), BCurExrate::getCode, bCurExrate.getCode())
 			.eq(ObjectUtils.isNotNull(bCurExrate.getExrateYear()), BCurExrate::getExrateYear, bCurExrate.getExrateYear())
 			.eq(ObjectUtils.isNotNull(bCurExrate.getExrateMonth()), BCurExrate::getExrateMonth, bCurExrate.getExrateMonth())
+			.eq(ObjectUtils.isNotNull(bCurExrate.getExrateDay()), BCurExrate::getExrateDay, bCurExrate.getExrateDay())
 			.eq(ObjectUtils.isNotNull(bCurExrate.getType()), BCurExrate::getType, bCurExrate.getType())
 			.orderByAsc(BCurExrate::getExrateMonth);
 		IPage<BCurExrate> pages = bCurExrateService.page(Condition.getPage(query), lambdaQueryWrapper);

+ 3 - 3
blade-service/blade-los/src/main/java/org/springblade/los/basic/cur/service/IBCurrencyService.java

@@ -70,7 +70,7 @@ public interface IBCurrencyService extends IService<BCurrency> {
 	 * @param amount 金额
 	 * @return 结果
 	 */
-	BigDecimal converter(String curCode, BigDecimal amount,String dc);
+	BigDecimal converter(String curCode, BigDecimal amount,String dc,String type);
 
 	/**
 	 * 非本币金额汇率转换本币
@@ -78,14 +78,14 @@ public interface IBCurrencyService extends IService<BCurrency> {
 	 * @param amount 金额
 	 * @return 结果
 	 */
-	BigDecimal converterCny(String curCode, BigDecimal amount,String dc);
+	BigDecimal converterCny(String curCode, BigDecimal amount,String dc,String type);
 
 	/**
 	 * 非本币金额汇率
 	 * @param curCode 币别
 	 * @return 结果
 	 */
-	BigDecimal getCnyExrate(String curCode, String dc);
+	BigDecimal getCnyExrate(String curCode, String dc,String type);
 
 	List<BCurrency> getExrate(BCurrency bCurrency);
 }

+ 83 - 36
blade-service/blade-los/src/main/java/org/springblade/los/basic/cur/service/impl/BCurrencyServiceImpl.java

@@ -72,9 +72,9 @@ public class BCurrencyServiceImpl extends ServiceImpl<CurrencyMapper, BCurrency>
 		String deptId = "";
 		String deptName = "";
 		//获取部门ids对应中文名
-		if (ObjectUtils.isNotNull(deptUtils.getDeptPid()+"")) {
-			deptId = deptUtils.getDeptPid()+"";
-			R<List<String>> res = sysClient.getDeptNames(deptUtils.getDeptPid()+"");
+		if (ObjectUtils.isNotNull(deptUtils.getDeptPid() + "")) {
+			deptId = deptUtils.getDeptPid() + "";
+			R<List<String>> res = sysClient.getDeptNames(deptUtils.getDeptPid() + "");
 			if (res.isSuccess() && ObjectUtils.isNotNull(res.getData())) {
 				deptName = String.join(",", res.getData());
 			}
@@ -89,7 +89,7 @@ public class BCurrencyServiceImpl extends ServiceImpl<CurrencyMapper, BCurrency>
 				.eq(BCurrency::getCnName, bCurrency.getCnName())) > 0) {
 				throw new RuntimeException("名称已存在");
 			}
-			if (ObjectUtils.isNotNull(deptUtils.getDeptPid()+"")) {
+			if (ObjectUtils.isNotNull(deptUtils.getDeptPid() + "")) {
 				bCurrency.setCreateDept(deptId);
 				bCurrency.setCreateDeptName(deptName);
 			}
@@ -106,7 +106,7 @@ public class BCurrencyServiceImpl extends ServiceImpl<CurrencyMapper, BCurrency>
 					item.setCreateTime(new Date());
 					item.setCreateUser(AuthUtil.getUserId());
 					item.setCreateUserName(AuthUtil.getUserName());
-					if (ObjectUtils.isNotNull(deptUtils.getDeptPid()+"")) {
+					if (ObjectUtils.isNotNull(deptUtils.getDeptPid() + "")) {
 						item.setCreateDept(deptId);
 						item.setCreateDeptName(deptName);
 					}
@@ -153,9 +153,9 @@ public class BCurrencyServiceImpl extends ServiceImpl<CurrencyMapper, BCurrency>
 				bCurrency.setCreateUser(AuthUtil.getUserId());
 				bCurrency.setCreateUserName(AuthUtil.getUserName());
 				//获取部门ids对应中文名
-				if (ObjectUtils.isNotNull(deptUtils.getDeptPid()+"")) {
-					bCurrency.setCreateDept(deptUtils.getDeptPid()+"");
-					R<List<String>> res = sysClient.getDeptNames(deptUtils.getDeptPid()+"");
+				if (ObjectUtils.isNotNull(deptUtils.getDeptPid() + "")) {
+					bCurrency.setCreateDept(deptUtils.getDeptPid() + "");
+					R<List<String>> res = sysClient.getDeptNames(deptUtils.getDeptPid() + "");
 					if (res.isSuccess() && ObjectUtils.isNotNull(res.getData())) {
 						bCurrency.setCreateDeptName(String.join(",", res.getData()));
 					}
@@ -172,12 +172,13 @@ public class BCurrencyServiceImpl extends ServiceImpl<CurrencyMapper, BCurrency>
 	}
 
 	@Override
-	public BigDecimal converter(String curCode, BigDecimal amount, String dc) {
+	public BigDecimal converter(String curCode, BigDecimal amount, String dc, String type) {
 		BigDecimal USD = new BigDecimal("0.00");
 		// 创建 Calendar 对象并设置为当前时间
 		Calendar calendar = Calendar.getInstance();
 		int year = calendar.get(Calendar.YEAR); // 获取年份
 		int month = calendar.get(Calendar.MONTH) + 1; // 获取月份(注意需加上1,因为月份从0开始计数)
+		int day = calendar.get(Calendar.DATE); // 获取月份(注意需加上1,因为月份从0开始计数)
 		BCurrency bCurrency = baseMapper.selectOne(new LambdaQueryWrapper<BCurrency>()
 			.eq(BCurrency::getTenantId, AuthUtil.getTenantId())
 			.eq(BCurrency::getIsDeleted, 0)
@@ -189,30 +190,44 @@ public class BCurrencyServiceImpl extends ServiceImpl<CurrencyMapper, BCurrency>
 				.eq(BCurExrate::getTenantId, AuthUtil.getTenantId())
 				.eq(BCurExrate::getIsDeleted, 0)
 				.eq(BCurExrate::getExrateYear, year)
-				.eq(BCurExrate::getType, bCurrency.getParitiesType())
-				;
-			if ("月汇率".equals(bCurrency.getParitiesType())) {
-				lambdaQueryWrapper.eq(BCurExrate::getExrateMonth, month);
+				.eq(BCurExrate::getType, bCurrency.getParitiesType());
+			if ("1".equals(type)) {
+				String status = sysClient.getParamServiceNew("business.exchange.rate");
+				if (ObjectUtils.isNotNull(status)) {
+					if ("月".equals(status)) {
+						lambdaQueryWrapper.eq(BCurExrate::getExrateMonth, month);
+					} else if ("日".equals(status)) {
+						lambdaQueryWrapper.eq(BCurExrate::getExrateMonth, month);
+						lambdaQueryWrapper.eq(BCurExrate::getExrateDay, day);
+					}
+				}
+			}else{
+				if ("月汇率".equals(bCurrency.getParitiesType())) {
+					lambdaQueryWrapper.eq(BCurExrate::getExrateMonth, month);
+				}else if ("日汇率".equals(bCurrency.getParitiesType())){
+					lambdaQueryWrapper.eq(BCurExrate::getExrateMonth, month);
+					lambdaQueryWrapper.eq(BCurExrate::getExrateDay, day);
+				}
 			}
 			BCurExrate bCurExrate = bCurExrateService.getOne(lambdaQueryWrapper);
 			BigDecimal CNY;
 			if ("D".equals(dc)) {
 				if (ObjectUtils.isNull(bCurExrate)) {
-					throw new RuntimeException("未找到" + year + "年" + month + "月,币别为" + curCode + "汇率信息");
+					throw new RuntimeException("未找到" + year + "年,币别为" + curCode + "汇率信息");
 				}
 				if (ObjectUtils.isNull(bCurExrate.getExrateReceipts()) &&
 					new BigDecimal("0.00").compareTo(bCurExrate.getExrateReceipts()) == 0) {
-					throw new RuntimeException("未找到" + year + "年" + month + "月,币别为" + curCode + "实收汇率信息");
+					throw new RuntimeException("未找到" + year + "年,币别为" + curCode + "实收汇率信息");
 				} else {
 					CNY = amount.multiply(bCurExrate.getExrateReceipts());
 				}
 			} else if ("C".equals(dc)) {
 				if (ObjectUtils.isNull(bCurExrate)) {
-					throw new RuntimeException("未找到" + year + "年" + month + "月,币别为" + curCode + "汇率信息");
+					throw new RuntimeException("未找到" + year + "年,币别为" + curCode + "汇率信息");
 				}
 				if (ObjectUtils.isNull(bCurExrate.getExratePayment()) &&
 					new BigDecimal("0.00").compareTo(bCurExrate.getExratePayment()) == 0) {
-					throw new RuntimeException("未找到" + year + "年" + month + "月,币别为" + curCode + "实付汇率信息");
+					throw new RuntimeException("未找到" + year + "年,币别为" + curCode + "实付汇率信息");
 				} else {
 					CNY = amount.multiply(bCurExrate.getExratePayment());
 				}
@@ -229,29 +244,28 @@ public class BCurrencyServiceImpl extends ServiceImpl<CurrencyMapper, BCurrency>
 					.eq(BCurExrate::getCode, curCode)
 					.eq(BCurExrate::getTenantId, AuthUtil.getTenantId())
 					.eq(BCurExrate::getIsDeleted, 0).eq(BCurExrate::getExrateYear, year)
-					.eq(BCurExrate::getType, bCurrency.getParitiesType())
-					;
+					.eq(BCurExrate::getType, bCurrency.getParitiesType());
 				if ("月汇率".equals(bCurrency.getParitiesType())) {
 					lambdaQueryWrapperUsd.eq(BCurExrate::getExrateMonth, month);
 				}
 				BCurExrate bCurExrateUsd = bCurExrateService.getOne(lambdaQueryWrapperUsd);
 				if ("D".equals(dc)) {
 					if (ObjectUtils.isNull(bCurExrateUsd)) {
-						throw new RuntimeException("未找到" + year + "年" + month + "月,币别为USD汇率信息");
+						throw new RuntimeException("未找到" + year + "年,币别为USD汇率信息");
 					}
 					if (ObjectUtils.isNull(bCurExrateUsd.getExrateReceipts()) &&
 						new BigDecimal("0.00").compareTo(bCurExrateUsd.getExrateReceipts()) == 0) {
-						throw new RuntimeException("未找到" + year + "年" + month + "月,币别为" + curCode + "实收汇率信息");
+						throw new RuntimeException("未找到" + year + "年,币别为" + curCode + "实收汇率信息");
 					} else {
 						USD = CNY.divide(bCurExrateUsd.getExrateReceipts(), RoundingMode.HALF_UP).setScale(2, RoundingMode.HALF_UP);
 					}
 				} else if ("C".equals(dc)) {
 					if (ObjectUtils.isNull(bCurExrateUsd)) {
-						throw new RuntimeException("未找到" + year + "年" + month + "月,币别为USD汇率信息");
+						throw new RuntimeException("未找到" + year + "年,币别为USD汇率信息");
 					}
 					if (ObjectUtils.isNull(bCurExrateUsd.getExratePayment()) &&
 						new BigDecimal("0.00").compareTo(bCurExrateUsd.getExratePayment()) == 0) {
-						throw new RuntimeException("未找到" + year + "年" + month + "月,币别为" + curCode + "实付汇率信息");
+						throw new RuntimeException("未找到" + year + "年,币别为" + curCode + "实付汇率信息");
 					} else {
 						USD = CNY.divide(bCurExrateUsd.getExratePayment(), RoundingMode.HALF_UP).setScale(2, RoundingMode.HALF_UP);
 					}
@@ -268,12 +282,13 @@ public class BCurrencyServiceImpl extends ServiceImpl<CurrencyMapper, BCurrency>
 	}
 
 	@Override
-	public BigDecimal converterCny(String curCode, BigDecimal amount, String dc) {
+	public BigDecimal converterCny(String curCode, BigDecimal amount, String dc, String type) {
 		BigDecimal CNY = new BigDecimal("0.00");
 		// 创建 Calendar 对象并设置为当前时间
 		Calendar calendar = Calendar.getInstance();
 		int year = calendar.get(Calendar.YEAR); // 获取年份
 		int month = calendar.get(Calendar.MONTH) + 1; // 获取月份(注意需加上1,因为月份从0开始计数)
+		int day = calendar.get(Calendar.DATE);
 		BCurrency bCurrency = baseMapper.selectOne(new LambdaQueryWrapper<BCurrency>()
 			.eq(BCurrency::getTenantId, AuthUtil.getTenantId())
 			.eq(BCurrency::getIsDeleted, 0)
@@ -285,10 +300,24 @@ public class BCurrencyServiceImpl extends ServiceImpl<CurrencyMapper, BCurrency>
 				.eq(BCurExrate::getTenantId, AuthUtil.getTenantId())
 				.eq(BCurExrate::getIsDeleted, 0)
 				.eq(BCurExrate::getExrateYear, year)
-				.eq(BCurExrate::getType, bCurrency.getParitiesType())
-				;
-			if ("月汇率".equals(bCurrency.getParitiesType())) {
-				lambdaQueryWrapper.eq(BCurExrate::getExrateMonth, month);
+				.eq(BCurExrate::getType, bCurrency.getParitiesType());
+			if ("1".equals(type)) {
+				String status = sysClient.getParamServiceNew("business.exchange.rate");
+				if (ObjectUtils.isNotNull(status)) {
+					if ("月".equals(status)) {
+						lambdaQueryWrapper.eq(BCurExrate::getExrateMonth, month);
+					} else if ("日".equals(status)) {
+						lambdaQueryWrapper.eq(BCurExrate::getExrateMonth, month);
+						lambdaQueryWrapper.eq(BCurExrate::getExrateDay, day);
+					}
+				}
+			}else{
+				if ("月汇率".equals(bCurrency.getParitiesType())) {
+					lambdaQueryWrapper.eq(BCurExrate::getExrateMonth, month);
+				}else if ("日汇率".equals(bCurrency.getParitiesType())){
+					lambdaQueryWrapper.eq(BCurExrate::getExrateMonth, month);
+					lambdaQueryWrapper.eq(BCurExrate::getExrateDay, day);
+				}
 			}
 			BCurExrate bCurExrate = bCurExrateService.getOne(lambdaQueryWrapper);
 			if ("D".equals(dc)) {
@@ -322,12 +351,13 @@ public class BCurrencyServiceImpl extends ServiceImpl<CurrencyMapper, BCurrency>
 	}
 
 	@Override
-	public BigDecimal getCnyExrate(String curCode, String dc) {
+	public BigDecimal getCnyExrate(String curCode, String dc, String type) {
 		BigDecimal CNY = new BigDecimal("0.00");
 		// 创建 Calendar 对象并设置为当前时间
 		Calendar calendar = Calendar.getInstance();
 		int year = calendar.get(Calendar.YEAR); // 获取年份
 		int month = calendar.get(Calendar.MONTH) + 1; // 获取月份(注意需加上1,因为月份从0开始计数)
+		int day = calendar.get(Calendar.DATE);
 		BCurrency bCurrency = baseMapper.selectOne(new LambdaQueryWrapper<BCurrency>()
 			.eq(BCurrency::getTenantId, AuthUtil.getTenantId())
 			.eq(BCurrency::getIsDeleted, 0)
@@ -339,10 +369,24 @@ public class BCurrencyServiceImpl extends ServiceImpl<CurrencyMapper, BCurrency>
 				.eq(BCurExrate::getTenantId, AuthUtil.getTenantId())
 				.eq(BCurExrate::getIsDeleted, 0)
 				.eq(BCurExrate::getExrateYear, year)
-				.eq(BCurExrate::getType, bCurrency.getParitiesType())
-				;
-			if ("月汇率".equals(bCurrency.getParitiesType())) {
-				lambdaQueryWrapper.eq(BCurExrate::getExrateMonth, month);
+				.eq(BCurExrate::getType, bCurrency.getParitiesType());
+			if ("1".equals(type)) {
+				String status = sysClient.getParamServiceNew("business.exchange.rate");
+				if (ObjectUtils.isNotNull(status)) {
+					if ("月".equals(status)) {
+						lambdaQueryWrapper.eq(BCurExrate::getExrateMonth, month);
+					} else if ("日".equals(status)) {
+						lambdaQueryWrapper.eq(BCurExrate::getExrateMonth, month);
+						lambdaQueryWrapper.eq(BCurExrate::getExrateDay, day);
+					}
+				}
+			}else{
+				if ("月汇率".equals(bCurrency.getParitiesType())) {
+					lambdaQueryWrapper.eq(BCurExrate::getExrateMonth, month);
+				}else if ("日汇率".equals(bCurrency.getParitiesType())){
+					lambdaQueryWrapper.eq(BCurExrate::getExrateMonth, month);
+					lambdaQueryWrapper.eq(BCurExrate::getExrateDay, day);
+				}
 			}
 			BCurExrate bCurExrate = bCurExrateService.getOne(lambdaQueryWrapper);
 			if ("D".equals(dc)) {
@@ -385,11 +429,12 @@ public class BCurrencyServiceImpl extends ServiceImpl<CurrencyMapper, BCurrency>
 		calendar.setTime(bCurrency.getDate());
 		int year = calendar.get(Calendar.YEAR); // 获取年份
 		int month = calendar.get(Calendar.MONTH) + 1; // 获取月份(注意需加上1,因为月份从0开始计数)
+		int day = calendar.get(Calendar.DATE) + 1;
 		List<BCurrency> bCurrencyList = baseMapper.selectList(new LambdaQueryWrapper<BCurrency>()
 			.eq(BCurrency::getTenantId, AuthUtil.getTenantId())
 			.eq(BCurrency::getIsDeleted, 0)
 			.eq(BCurrency::getStatus, 0));
-		for (BCurrency details :bCurrencyList){
+		for (BCurrency details : bCurrencyList) {
 			if (ObjectUtils.isNotNull(details) && ObjectUtils.isNotNull(details.getExrate()) &&
 				new BigDecimal("0.00").compareTo(details.getExrate()) != 0) {
 				LambdaQueryWrapper<BCurExrate> lambdaQueryWrapper = new LambdaQueryWrapper<BCurExrate>()
@@ -397,10 +442,12 @@ public class BCurrencyServiceImpl extends ServiceImpl<CurrencyMapper, BCurrency>
 					.eq(BCurExrate::getTenantId, AuthUtil.getTenantId())
 					.eq(BCurExrate::getIsDeleted, 0)
 					.eq(BCurExrate::getExrateYear, year)
-					.eq(BCurExrate::getType, details.getParitiesType())
-					;
+					.eq(BCurExrate::getType, details.getParitiesType());
 				if ("月汇率".equals(details.getParitiesType())) {
 					lambdaQueryWrapper.eq(BCurExrate::getExrateMonth, month);
+				}else if ("日汇率".equals(details.getParitiesType())){
+					lambdaQueryWrapper.eq(BCurExrate::getExrateDay, day);
+					lambdaQueryWrapper.eq(BCurExrate::getExrateMonth, month);
 				}
 				BCurExrate bCurExrate = bCurExrateService.getOne(lambdaQueryWrapper);
 				if ("D".equals(bCurrency.getDc())) {

+ 3 - 3
blade-service/blade-los/src/main/java/org/springblade/los/basic/fees/controller/BFeesController.java

@@ -35,6 +35,7 @@ import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.BeanUtil;
 import org.springblade.core.tool.utils.Func;
+import org.springblade.los.basic.corps.entity.BCorps;
 import org.springblade.los.basic.fees.dto.BFeesExcel;
 import org.springframework.web.bind.annotation.*;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -82,9 +83,8 @@ public class BFeesController extends BladeController {
 		LambdaQueryWrapper<BFees> lambdaQueryWrapper = new LambdaQueryWrapper<>();
 		lambdaQueryWrapper.eq(BFees::getTenantId, AuthUtil.getTenantId())
 			.eq(BFees::getIsDeleted, 0)
-			.like(ObjectUtils.isNotNull(bFees.getCode()), BFees::getCode, bFees.getCode())
-			.like(ObjectUtils.isNotNull(bFees.getCnName()), BFees::getCnName, bFees.getCnName())
-			.like(ObjectUtils.isNotNull(bFees.getEnName()), BFees::getEnName, bFees.getEnName())
+			.and(ObjectUtils.isNotNull(bFees.getCnName()), i -> i.like(BFees::getCnName, bFees.getCnName()).or()
+				.like(BFees::getEnName, bFees.getCnName()).or().like(BFees::getCode, bFees.getCnName()))
 			.like(ObjectUtils.isNotNull(bFees.getStatus()), BFees::getStatus, bFees.getStatus())
 			.like(ObjectUtils.isNotNull(bFees.getFeesTypeId()), BFees::getFeesTypeId, bFees.getFeesTypeId())
 			.orderByDesc(BFees::getCreateTime);

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

@@ -748,7 +748,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());
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 							amountDrUsd = amountDrUsd.add(usd);
 						}
 					} else {
@@ -757,7 +757,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());
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 							amountCrUsd = amountCrUsd.add(usd);
 						}
 					}
@@ -780,8 +780,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)).add(amountDr);
-				amountCrLoc = amountCrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C)).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);
@@ -863,7 +863,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());
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 							amountDrUsd = amountDrUsd.add(usd);
 						}
 					} else {
@@ -872,7 +872,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());
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 							amountCrUsd = amountCrUsd.add(usd);
 						}
 					}
@@ -895,8 +895,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)).add(amountDr);
-				amountCrLoc = amountCrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C)).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);
@@ -1444,7 +1444,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());
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 							amountDrUsd = amountDrUsd.add(usd);
 						}
 					} else {
@@ -1453,7 +1453,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());
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 							amountCrUsd = amountCrUsd.add(usd);
 						}
 					}
@@ -1476,8 +1476,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)).add(amountDr);
-				amountCrLoc = amountCrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C)).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);
@@ -1543,7 +1543,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());
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 							amountDrUsd = amountDrUsd.add(usd);
 						}
 					} else {
@@ -1552,7 +1552,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());
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 							amountCrUsd = amountCrUsd.add(usd);
 						}
 					}
@@ -1575,8 +1575,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)).add(amountDr);
-				amountCrLoc = amountCrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C)).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);
@@ -2388,8 +2388,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);
-							BigDecimal amountCrCny = ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C);
+							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()
@@ -2431,12 +2431,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)));
-							item.setAmountCrLoc(amountCr.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C)));
+							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);
-							BigDecimal amountCrCnyUpdate = ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C);
+							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));
@@ -3266,8 +3266,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);
-							BigDecimal amountCrCny = ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C);
+							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()
@@ -3309,12 +3309,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)));
-							item.setAmountCrLoc(amountCr.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C)));
+							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);
-							BigDecimal amountCrCnyUpdate = ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C);
+							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));
@@ -3871,7 +3871,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());
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 							amountDrUsd = amountDrUsd.add(usd);
 						}
 					} else {
@@ -3880,7 +3880,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());
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 							amountCrUsd = amountCrUsd.add(usd);
 						}
 					}
@@ -3903,8 +3903,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)).add(amountDr);
-				amountCrLoc = amountCrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C)).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);
@@ -3986,7 +3986,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());
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 							amountDrUsd = amountDrUsd.add(usd);
 						}
 					} else {
@@ -3995,7 +3995,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());
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 							amountCrUsd = amountCrUsd.add(usd);
 						}
 					}
@@ -4018,8 +4018,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)).add(amountDr);
-				amountCrLoc = amountCrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C)).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);
@@ -4234,7 +4234,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());
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 							amountDrUsd = amountDrUsd.add(usd);
 						}
 					} else {
@@ -4243,7 +4243,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());
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 							amountCrUsd = amountCrUsd.add(usd);
 						}
 					}
@@ -4266,8 +4266,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)).add(amountDr);
-				amountCrLoc = amountCrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C)).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);
@@ -4338,7 +4338,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());
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 							amountDrUsd = amountDrUsd.add(usd);
 						}
 					} else {
@@ -4347,7 +4347,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());
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 							amountCrUsd = amountCrUsd.add(usd);
 						}
 					}
@@ -4370,8 +4370,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)).add(amountDr);
-				amountCrLoc = amountCrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C)).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);

+ 9 - 9
blade-service/blade-los/src/main/java/org/springblade/los/business/aea/service/impl/AeaBillsServiceImpl.java

@@ -321,7 +321,7 @@ public class AeaBillsServiceImpl extends ServiceImpl<AeaBillsMapper, AeaBills> i
 				} else if ("CNY".equals(item.getCurCode())) {
 					amountCr = amountCr.add(item.getAmount());
 				} else {
-					BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc());
+					BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 					amountCrUsd = amountCrUsd.add(usd);
 				}
 			}
@@ -364,7 +364,7 @@ public class AeaBillsServiceImpl extends ServiceImpl<AeaBillsMapper, AeaBills> i
 				} else if ("CNY".equals(item.getCurCode())) {
 					amountDr = amountDr.add(item.getAmount());
 				} else {
-					BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc());
+					BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 					amountDrUsd = amountDrUsd.add(usd);
 				}
 			}
@@ -418,7 +418,7 @@ public class AeaBillsServiceImpl extends ServiceImpl<AeaBillsMapper, AeaBills> i
 						} else if ("CNY".equals(item.getCurCode())) {
 							amountCrM = amountCrM.add(item.getAmount());
 						} else {
-							BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc());
+							BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 							amountCrUsdM = amountCrUsdM.add(usd);
 						}
 					} else {
@@ -427,7 +427,7 @@ public class AeaBillsServiceImpl extends ServiceImpl<AeaBillsMapper, AeaBills> i
 						} else if ("CNY".equals(item.getCurCode())) {
 							amountDrM = amountDrM.add(item.getAmount());
 						} else {
-							BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc());
+							BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 							amountDrUsdM = amountDrUsdM.add(usd);
 						}
 					}
@@ -457,8 +457,8 @@ public class AeaBillsServiceImpl extends ServiceImpl<AeaBillsMapper, AeaBills> i
 				//利润 = 收 - 付
 				amountProfitM = amountDrM.subtract(amountCrM);
 				amountProfitUsdM = amountDrUsdM.subtract(amountCrUsdM);
-				amountDrLocM = amountDrLocM.add(bCurrencyService.converterCny("USD", amountDrUsdM, "D")).add(amountDrM);
-				amountCrLocM = amountCrLocM.add(bCurrencyService.converterCny("USD", amountCrUsdM, "C")).add(amountCrM);
+				amountDrLocM = amountDrLocM.add(bCurrencyService.converterCny("USD", amountDrUsdM, "D","1")).add(amountDrM);
+				amountCrLocM = amountCrLocM.add(bCurrencyService.converterCny("USD", amountCrUsdM, "C","1")).add(amountCrM);
 				amountProfitLocM = amountDrLocM.subtract(amountCrLocM);
 				details.setAmountDr(amountDrM);
 				details.setAmountCr(amountCrM);
@@ -478,8 +478,8 @@ public class AeaBillsServiceImpl extends ServiceImpl<AeaBillsMapper, AeaBills> i
 		//利润 = 收 - 付
 		amountProfit = amountDr.subtract(amountCr);
 		amountProfitUsd = amountDrUsd.subtract(amountCrUsd);
-		amountDrLoc = amountDrLoc.add(bCurrencyService.converterCny("USD", amountDrUsd, "D")).add(amountDr);
-		amountCrLoc = amountCrLoc.add(bCurrencyService.converterCny("USD", amountCrUsd, "C")).add(amountCr);
+		amountDrLoc = amountDrLoc.add(bCurrencyService.converterCny("USD", amountDrUsd, "D","1")).add(amountDr);
+		amountCrLoc = amountCrLoc.add(bCurrencyService.converterCny("USD", amountCrUsd, "C","1")).add(amountCr);
 		amountProfitLoc = amountDrLoc.subtract(amountCrLoc);
 		aeaBills.setAmountDr(amountDr);
 		aeaBills.setAmountCr(amountCr);
@@ -855,7 +855,7 @@ public class AeaBillsServiceImpl extends ServiceImpl<AeaBillsMapper, AeaBills> i
 
 			auditProecessDTO.setGrossProfit(amountCnyD.subtract(amountCnyC));
 			auditProecessDTO.setGrossProfitUsd(amountUsdD.subtract(amountUsdC));
-			auditProecessDTO.setGrossProfitLoc(auditProecessDTO.getGrossProfit().add(bCurrencyService.converterCny("USD", auditProecessDTO.getGrossProfitUsd(), "")));
+			auditProecessDTO.setGrossProfitLoc(auditProecessDTO.getGrossProfit().add(bCurrencyService.converterCny("USD", auditProecessDTO.getGrossProfitUsd(), "","1")));
 
 			auditProecessDTO.setSalesCompanyName(declare.getCreateDeptName());
 			R financeProcess = auditProecessService.createFinanceProcess(auditProecessDTO);

+ 1 - 1
blade-service/blade-los/src/main/java/org/springblade/los/business/amends/service/impl/AmendsServiceImpl.java

@@ -300,7 +300,7 @@ public class AmendsServiceImpl extends ServiceImpl<AmendsMapper, Amends> impleme
 
 			auditProecessDTO.setGrossProfit(amountCnyD.subtract(amountCnyC));
 			auditProecessDTO.setGrossProfitUsd(amountUsdD.subtract(amountUsdC));
-			auditProecessDTO.setGrossProfitLoc(auditProecessDTO.getGrossProfit().add(bCurrencyService.converterCny("USD", auditProecessDTO.getGrossProfitUsd(), "")));
+			auditProecessDTO.setGrossProfitLoc(auditProecessDTO.getGrossProfit().add(bCurrencyService.converterCny("USD", auditProecessDTO.getGrossProfitUsd(), "","1")));
 
 			auditProecessDTO.setSalesCompanyName(declare.getCreateDeptName());
 			List<FeeCenter> feeCenterBills = feeCenterService.list(new LambdaQueryWrapper<FeeCenter>()

+ 5 - 5
blade-service/blade-los/src/main/java/org/springblade/los/business/customsDeclaration/service/impl/CustomsDeclarationServiceImpl.java

@@ -243,7 +243,7 @@ public class CustomsDeclarationServiceImpl extends ServiceImpl<CustomsDeclaratio
 				} else if ("CNY".equals(item.getCurCode())) {
 					amountCr = amountCr.add(item.getAmount());
 				} else {
-					BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc());
+					BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 					amountCrUsd = amountCrUsd.add(usd);
 				}
 			}
@@ -272,7 +272,7 @@ public class CustomsDeclarationServiceImpl extends ServiceImpl<CustomsDeclaratio
 				} else if ("CNY".equals(item.getCurCode())) {
 					amountDr = amountDr.add(item.getAmount());
 				} else {
-					BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc());
+					BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 					amountDrUsd = amountDrUsd.add(usd);
 				}
 			}
@@ -281,8 +281,8 @@ public class CustomsDeclarationServiceImpl extends ServiceImpl<CustomsDeclaratio
 		//利润 = 收 - 付
 		amountProfit = amountDr.subtract(amountCr);
 		amountProfitUsd = amountDrUsd.subtract(amountCrUsd);
-		amountDrLoc = amountDrLoc.add(bCurrencyService.converterCny("USD", amountDrUsd, "D")).add(amountDr);
-		amountCrLoc = amountCrLoc.add(bCurrencyService.converterCny("USD", amountCrUsd, "C")).add(amountCr);
+		amountDrLoc = amountDrLoc.add(bCurrencyService.converterCny("USD", amountDrUsd, "D","1")).add(amountDr);
+		amountCrLoc = amountCrLoc.add(bCurrencyService.converterCny("USD", amountCrUsd, "C","1")).add(amountCr);
 		amountProfitLoc = amountDrLoc.subtract(amountCrLoc);
 		customsDeclaration.setAmountDr(amountDr);
 		customsDeclaration.setAmountCr(amountCr);
@@ -405,7 +405,7 @@ public class CustomsDeclarationServiceImpl extends ServiceImpl<CustomsDeclaratio
 
 			auditProecessDTO.setGrossProfit(amountCnyD.subtract(amountCnyC));
 			auditProecessDTO.setGrossProfitUsd(amountUsdD.subtract(amountUsdC));
-			auditProecessDTO.setGrossProfitLoc(auditProecessDTO.getGrossProfit().add(bCurrencyService.converterCny("USD", auditProecessDTO.getGrossProfitUsd(), "")));
+			auditProecessDTO.setGrossProfitLoc(auditProecessDTO.getGrossProfit().add(bCurrencyService.converterCny("USD", auditProecessDTO.getGrossProfitUsd(), "","1")));
 
 			auditProecessDTO.setSalesCompanyName(declare.getCreateDeptName());
 			R financeProcess = auditProecessService.createFinanceProcess(auditProecessDTO);

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

@@ -181,6 +181,7 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 			bills.setCreateTime(new Date());
 			bills.setCreateUser(AuthUtil.getUserId());
 			bills.setCreateUserName(AuthUtil.getUserName());
+			bills.setTenantId(AuthUtil.getTenantId());
 			if (ObjectUtils.isNotNull(deptUtils.getDeptPid()+"")) {
 				bills.setBranchId(branchId);
 				bills.setCreateDept(deptId);
@@ -202,7 +203,7 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 			//主单信息同步分单
 			if ("MM".equals(bills.getBillType())) {
 				Bills details = baseMapper.selectOne(new LambdaQueryWrapper<Bills>()
-					.select(Bills::getId, Bills::getVesselId, Bills::getVoyageNo, Bills::getEtd)
+					.select(Bills::getId, Bills::getVesselId, Bills::getVoyageNo, Bills::getEtd,Bills::getEta)
 					.eq(Bills::getId, bills.getId()));
 				boolean status = false;
 				if ("SE".equals(bills.getBillType())) {
@@ -358,7 +359,7 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 			DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
 			String formatted = now.format(formatter);
 			System.out.println("起1 " + formatted);
-			this.saveOrUpdate(bills);
+			this.save(bills);
 			LocalDateTime now2 = LocalDateTime.now();
 			String formatted2 = now2.format(formatter);
 			System.out.println("止1 " + formatted2);
@@ -464,7 +465,7 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 				} else if ("CNY".equals(item.getCurCode())) {
 					amountCr = amountCr.add(item.getAmount());
 				} else {
-					BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc());
+					BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 					amountCrUsd = amountCrUsd.add(usd);
 				}
 			}
@@ -556,7 +557,7 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 				} else if ("CNY".equals(item.getCurCode())) {
 					amountDr = amountDr.add(item.getAmount());
 				} else {
-					BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc());
+					BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 					amountDrUsd = amountDrUsd.add(usd);
 				}
 			}
@@ -622,7 +623,7 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 						} else if ("CNY".equals(item.getCurCode())) {
 							amountCrM = amountCrM.add(item.getAmount());
 						} else {
-							BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc());
+							BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 							amountCrUsdM = amountCrUsdM.add(usd);
 						}
 					} else {
@@ -631,7 +632,7 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 						} else if ("CNY".equals(item.getCurCode())) {
 							amountDrM = amountDrM.add(item.getAmount());
 						} else {
-							BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc());
+							BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 							amountDrUsdM = amountDrUsdM.add(usd);
 						}
 					}
@@ -663,8 +664,8 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 				//利润 = 收 - 付
 				amountProfitM = amountDrM.subtract(amountCrM);
 				amountProfitUsdM = amountDrUsdM.subtract(amountCrUsdM);
-				amountDrLocM = amountDrLocM.add(bCurrencyService.converterCny("USD", amountDrUsdM, "D")).add(amountDrM);
-				amountCrLocM = amountCrLocM.add(bCurrencyService.converterCny("USD", amountCrUsdM, "C")).add(amountCrM);
+				amountDrLocM = amountDrLocM.add(bCurrencyService.converterCny("USD", amountDrUsdM, "D","1")).add(amountDrM);
+				amountCrLocM = amountCrLocM.add(bCurrencyService.converterCny("USD", amountCrUsdM, "C","1")).add(amountCrM);
 				amountProfitLocM = amountDrLocM.subtract(amountCrLocM);
 				details.setAmountDr(amountDrM);
 				details.setAmountCr(amountCrM);
@@ -684,8 +685,8 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 		//利润 = 收 - 付
 		amountProfit = amountDr.subtract(amountCr);
 		amountProfitUsd = amountDrUsd.subtract(amountCrUsd);
-		amountDrLoc = amountDrLoc.add(bCurrencyService.converterCny("USD", amountDrUsd, "D")).add(amountDr);
-		amountCrLoc = amountCrLoc.add(bCurrencyService.converterCny("USD", amountCrUsd, "C")).add(amountCr);
+		amountDrLoc = amountDrLoc.add(bCurrencyService.converterCny("USD", amountDrUsd, "D","1")).add(amountDr);
+		amountCrLoc = amountCrLoc.add(bCurrencyService.converterCny("USD", amountCrUsd, "C","1")).add(amountCr);
 		amountProfitLoc = amountDrLoc.subtract(amountCrLoc);
 		bills.setAmountDr(amountDr);
 		bills.setAmountCr(amountCr);
@@ -705,11 +706,10 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 		DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
 		String formatted = now.format(formatter);
 		System.out.println("起2 " + formatted);
-		this.saveOrUpdate(bills);
+		this.updateById(bills);
 		LocalDateTime now2 = LocalDateTime.now();
 		String formatted2 = now2.format(formatter);
 		System.out.println("止2 " + formatted2);
-		/*-------------费用计算---------*/
 		return R.data(bills);
 	}
 
@@ -1209,7 +1209,7 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 
 			auditProecessDTO.setGrossProfit(amountCnyD.subtract(amountCnyC));
 			auditProecessDTO.setGrossProfitUsd(amountUsdD.subtract(amountUsdC));
-			auditProecessDTO.setGrossProfitLoc(auditProecessDTO.getGrossProfit().add(bCurrencyService.converterCny("USD", auditProecessDTO.getGrossProfitUsd(), "")));
+			auditProecessDTO.setGrossProfitLoc(auditProecessDTO.getGrossProfit().add(bCurrencyService.converterCny("USD", auditProecessDTO.getGrossProfitUsd(), "","1")));
 			auditProecessDTO.setSalesCompanyName(declare.getCreateDeptName());
 			R financeProcess = auditProecessService.createFinanceProcess(auditProecessDTO);
 			if (!financeProcess.isSuccess()) {

+ 4 - 4
blade-service/blade-los/src/main/java/org/springblade/los/check/service/impl/AuditProecessServiceImpl.java

@@ -1622,9 +1622,9 @@ public class AuditProecessServiceImpl extends ServiceImpl<AuditProecessMapper, L
 				}
 				//计算借,贷人民币与美金合计人民币金额
 				finVouchersItems.setAmountDrLoc(ObjectUtils.isNull(finVouchersItems.getAmountDr()) ? new BigDecimal("0") : finVouchersItems.getAmountDr()
-					.add(bCurrencyService.converterCny("USD", ObjectUtils.isNull(finVouchersItems.getAmountDrUsd()) ? new BigDecimal("0") : finVouchersItems.getAmountDrUsd(), "D")));
+					.add(bCurrencyService.converterCny("USD", ObjectUtils.isNull(finVouchersItems.getAmountDrUsd()) ? new BigDecimal("0") : finVouchersItems.getAmountDrUsd(), "D","1")));
 				finVouchersItems.setAmountCrLoc(ObjectUtils.isNull(finVouchersItems.getAmountCr()) ? new BigDecimal("0") : finVouchersItems.getAmountCr()
-					.add(bCurrencyService.converterCny("USD", ObjectUtils.isNull(finVouchersItems.getAmountCrUsd()) ? new BigDecimal("0") : finVouchersItems.getAmountCrUsd(), "C")));
+					.add(bCurrencyService.converterCny("USD", ObjectUtils.isNull(finVouchersItems.getAmountCrUsd()) ? new BigDecimal("0") : finVouchersItems.getAmountCrUsd(), "C","1")));
 				finVouchersItems.setIsCorp(accounts.getIsCorp());
 				//判断是否核算客户 true 向明细中客户字段复制
 				if (1 == finVouchersItems.getIsCorp()) {
@@ -1752,8 +1752,8 @@ public class AuditProecessServiceImpl extends ServiceImpl<AuditProecessMapper, L
 			.filter(e -> "USD".equals(e.getCurCode()) && "C".equals(e.getDc())).map(FinVouchersItems::getAmountCrUsd)
 			.filter(ObjectUtils::isNotNull).reduce(BigDecimal.ZERO, BigDecimal::add));
 		finVouchers.setAmountCrUsd(amountCrUSD);
-		finVouchers.setAmountDrLoc(amountDrCNY.add(bCurrencyService.converterCny("USD", amountDrUSD, "D")));
-		finVouchers.setAmountCrLoc(amountCrCNY.add(bCurrencyService.converterCny("USD", amountCrUSD, "C")));
+		finVouchers.setAmountDrLoc(amountDrCNY.add(bCurrencyService.converterCny("USD", amountDrUSD, "D","1")));
+		finVouchers.setAmountCrLoc(amountCrCNY.add(bCurrencyService.converterCny("USD", amountCrUSD, "C","1")));
 		finVouchers.setDescr(finVouchersItemsList.get(0).getDescr());
 		if (finVouchersItemsList.stream().anyMatch(e -> "USD".equals(e.getCurCode()))) {
 			finVouchers.setIsForeign(1);

+ 62 - 28
blade-service/blade-los/src/main/java/org/springblade/los/finance/fee/service/impl/FeeCenterServiceImpl.java

@@ -95,7 +95,7 @@ public class FeeCenterServiceImpl extends ServiceImpl<FeeCenterMapper, FeeCenter
 		String deptName = "";
 		String branchId = deptUtils.getDeptPid() + "";
 		//获取部门ids对应中文名
-		if (ObjectUtils.isNotNull(deptUtils.getDeptPid()+"")) {
+		if (ObjectUtils.isNotNull(deptUtils.getDeptPid() + "")) {
 			deptId = AuthUtil.getDeptId();
 			R<List<String>> res = sysClient.getDeptNames(AuthUtil.getDeptId());
 			if (res.isSuccess() && ObjectUtils.isNotNull(res.getData())) {
@@ -151,10 +151,10 @@ public class FeeCenterServiceImpl extends ServiceImpl<FeeCenterMapper, FeeCenter
 			feeCenter.setAmountLoc(amount);
 			feeCenter.setAmountDiscountLoc(amount);
 		} else {
-			feeCenter.setAmountNetLoc(bCurrencyService.converterCny(feeCenter.getCurCode(), amountNet, ""));
-			feeCenter.setAmountTaxLoc(bCurrencyService.converterCny(feeCenter.getCurCode(), amountTax, ""));
-			feeCenter.setAmountLoc(bCurrencyService.converterCny(feeCenter.getCurCode(), amount, ""));
-			feeCenter.setAmountDiscountLoc(bCurrencyService.converterCny(feeCenter.getCurCode(), amount, ""));
+			feeCenter.setAmountNetLoc(bCurrencyService.converterCny(feeCenter.getCurCode(), amountNet, "","1"));
+			feeCenter.setAmountTaxLoc(bCurrencyService.converterCny(feeCenter.getCurCode(), amountTax, "","1"));
+			feeCenter.setAmountLoc(bCurrencyService.converterCny(feeCenter.getCurCode(), amount, "","1"));
+			feeCenter.setAmountDiscountLoc(bCurrencyService.converterCny(feeCenter.getCurCode(), amount, "","1"));
 		}
 		feeCenter.setAmountNet(amountNet);
 		feeCenter.setAmountTax(amountTax);
@@ -229,9 +229,41 @@ public class FeeCenterServiceImpl extends ServiceImpl<FeeCenterMapper, FeeCenter
 					feeCenter.setPaymode(bills.getMpaymode());
 					feeCenter.setSort(count);
 					count++;
-					feeCenter.setCorpId(items.getCorpId());
-					feeCenter.setCorpCnName(items.getCorpCnName());
-					feeCenter.setCorpEnName(items.getCorpEnName());
+					if ("客户".equals(items.getCorpType())) {
+						feeCenter.setCorpId(items.getCorpId());
+						feeCenter.setCorpCnName(items.getCorpCnName());
+						feeCenter.setCorpEnName(items.getCorpEnName());
+					} else if ("船公司".equals(items.getCorpType())) {
+						feeCenter.setCorpId(bills.getCarrierId());
+						feeCenter.setCorpCnName(bills.getCarrierCnName());
+						feeCenter.setCorpEnName(bills.getCarrierEnName());
+					}/*else if ("工厂".equals(items.getCorpType())){
+
+					}*/ else if ("场站".equals(items.getCorpType())) {
+						feeCenter.setCorpId(bills.getCyId());
+						feeCenter.setCorpCnName(bills.getCyCnName());
+						feeCenter.setCorpEnName(bills.getCyEnName());
+					} else if ("订舱代理".equals(items.getCorpType())) {
+						feeCenter.setCorpId(bills.getBookingAgentId());
+						feeCenter.setCorpCnName(bills.getBookingAgentCnName());
+						feeCenter.setCorpEnName(bills.getBookingAgentEnName());
+					}/*else if ("BGH".equals(items.getCorpType())){
+
+					}else if ("LYGS".equals(items.getCorpType())){
+
+					}*/ else if ("收货代理".equals(items.getCorpType())) {
+						feeCenter.setCorpId(bills.getMconsigneeId());
+						feeCenter.setCorpCnName(bills.getMconsigneeCnName());
+						feeCenter.setCorpEnName(bills.getMconsigneeEnName());
+					} else if ("MBL通知人".equals(items.getCorpType())) {
+						feeCenter.setCorpId(bills.getMnotifyId());
+						feeCenter.setCorpCnName(bills.getMnotifyCnName());
+						feeCenter.setCorpEnName(bills.getMnotifyEnName());
+					} else {
+						feeCenter.setCorpId(items.getCorpId());
+						feeCenter.setCorpCnName(items.getCorpCnName());
+						feeCenter.setCorpEnName(items.getCorpEnName());
+					}
 					feeCenter.setFeeId(items.getFeeId());
 					feeCenter.setFeeCode(items.getFeeCode());
 					feeCenter.setFeeCnName(items.getFeeCnName());
@@ -528,10 +560,10 @@ public class FeeCenterServiceImpl extends ServiceImpl<FeeCenterMapper, FeeCenter
 					feeCenter.setAmountLoc(amount);
 					feeCenter.setAmountDiscountLoc(amount);
 				} else {
-					feeCenter.setAmountNetLoc(bCurrencyService.converterCny(feeCenter.getCurCode(), amountNet, ""));
-					feeCenter.setAmountTaxLoc(bCurrencyService.converterCny(feeCenter.getCurCode(), amountTax, ""));
-					feeCenter.setAmountLoc(bCurrencyService.converterCny(feeCenter.getCurCode(), amount, ""));
-					feeCenter.setAmountDiscountLoc(bCurrencyService.converterCny(feeCenter.getCurCode(), amount, ""));
+					feeCenter.setAmountNetLoc(bCurrencyService.converterCny(feeCenter.getCurCode(), amountNet, "","1"));
+					feeCenter.setAmountTaxLoc(bCurrencyService.converterCny(feeCenter.getCurCode(), amountTax, "","1"));
+					feeCenter.setAmountLoc(bCurrencyService.converterCny(feeCenter.getCurCode(), amount, "","1"));
+					feeCenter.setAmountDiscountLoc(bCurrencyService.converterCny(feeCenter.getCurCode(), amount, "","1"));
 				}
 				feeCenter.setAmountNet(amountNet);
 				feeCenter.setAmountTax(amountTax);
@@ -599,7 +631,7 @@ public class FeeCenterServiceImpl extends ServiceImpl<FeeCenterMapper, FeeCenter
 								} else if ("CNY".equals(item.getCurCode())) {
 									amountCrM = amountCrM.add(item.getAmount());
 								} else {
-									BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc());
+									BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 									amountCrUsdM = amountCrUsdM.add(usd);
 								}
 							} else {
@@ -608,7 +640,7 @@ public class FeeCenterServiceImpl extends ServiceImpl<FeeCenterMapper, FeeCenter
 								} else if ("CNY".equals(item.getCurCode())) {
 									amountDrM = amountDrM.add(item.getAmount());
 								} else {
-									BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc());
+									BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 									amountDrUsdM = amountDrUsdM.add(usd);
 								}
 							}
@@ -638,8 +670,8 @@ public class FeeCenterServiceImpl extends ServiceImpl<FeeCenterMapper, FeeCenter
 						//利润 = 收 - 付
 						amountProfitM = amountDrM.subtract(amountCrM);
 						amountProfitUsdM = amountDrUsdM.subtract(amountCrUsdM);
-						amountDrLocM = amountDrLocM.add(bCurrencyService.converterCny("USD", amountDrUsdM, "D")).add(amountDrM);
-						amountCrLocM = amountCrLocM.add(bCurrencyService.converterCny("USD", amountCrUsdM, "C")).add(amountCrM);
+						amountDrLocM = amountDrLocM.add(bCurrencyService.converterCny("USD", amountDrUsdM, "D","1")).add(amountDrM);
+						amountCrLocM = amountCrLocM.add(bCurrencyService.converterCny("USD", amountCrUsdM, "C","1")).add(amountCrM);
 						amountProfitLocM = amountDrLocM.subtract(amountCrLocM);
 						details.setAmountDr(amountDrM);
 						details.setAmountCr(amountCrM);
@@ -659,8 +691,8 @@ public class FeeCenterServiceImpl extends ServiceImpl<FeeCenterMapper, FeeCenter
 				//利润 = 收 - 付
 				amountProfit = amountDr.subtract(amountCr);
 				amountProfitUsd = amountDrUsd.subtract(amountCrUsd);
-				amountDrLoc = amountDrLoc.add(bCurrencyService.converterCny("USD", amountDrUsd, "D")).add(amountDr);
-				amountCrLoc = amountCrLoc.add(bCurrencyService.converterCny("USD", amountCrUsd, "C")).add(amountCr);
+				amountDrLoc = amountDrLoc.add(bCurrencyService.converterCny("USD", amountDrUsd, "D","1")).add(amountDr);
+				amountCrLoc = amountCrLoc.add(bCurrencyService.converterCny("USD", amountCrUsd, "C","1")).add(amountCr);
 				amountProfitLoc = amountDrLoc.subtract(amountCrLoc);
 				bills.setAmountDr(amountDr);
 				bills.setAmountCr(amountCr);
@@ -716,7 +748,7 @@ public class FeeCenterServiceImpl extends ServiceImpl<FeeCenterMapper, FeeCenter
 								} else if ("CNY".equals(item.getCurCode())) {
 									amountCrM = amountCrM.add(item.getAmount());
 								} else {
-									BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc());
+									BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 									amountCrUsdM = amountCrUsdM.add(usd);
 								}
 							} else {
@@ -725,7 +757,7 @@ public class FeeCenterServiceImpl extends ServiceImpl<FeeCenterMapper, FeeCenter
 								} else if ("CNY".equals(item.getCurCode())) {
 									amountDrM = amountDrM.add(item.getAmount());
 								} else {
-									BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc());
+									BigDecimal usd = bCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(),"1");
 									amountDrUsdM = amountDrUsdM.add(usd);
 								}
 							}
@@ -755,8 +787,8 @@ public class FeeCenterServiceImpl extends ServiceImpl<FeeCenterMapper, FeeCenter
 						//利润 = 收 - 付
 						amountProfitM = amountDrM.subtract(amountCrM);
 						amountProfitUsdM = amountDrUsdM.subtract(amountCrUsdM);
-						amountDrLocM = amountDrLocM.add(bCurrencyService.converterCny("USD", amountDrUsdM, "D")).add(amountDrM);
-						amountCrLocM = amountCrLocM.add(bCurrencyService.converterCny("USD", amountCrUsdM, "C")).add(amountCrM);
+						amountDrLocM = amountDrLocM.add(bCurrencyService.converterCny("USD", amountDrUsdM, "D","1")).add(amountDrM);
+						amountCrLocM = amountCrLocM.add(bCurrencyService.converterCny("USD", amountCrUsdM, "C","1")).add(amountCrM);
 						amountProfitLocM = amountDrLocM.subtract(amountCrLocM);
 						details.setAmountDr(amountDrM);
 						details.setAmountCr(amountCrM);
@@ -776,8 +808,8 @@ public class FeeCenterServiceImpl extends ServiceImpl<FeeCenterMapper, FeeCenter
 				//利润 = 收 - 付
 				amountProfit = amountDr.subtract(amountCr);
 				amountProfitUsd = amountDrUsd.subtract(amountCrUsd);
-				amountDrLoc = amountDrLoc.add(bCurrencyService.converterCny("USD", amountDrUsd, "D")).add(amountDr);
-				amountCrLoc = amountCrLoc.add(bCurrencyService.converterCny("USD", amountCrUsd, "C")).add(amountCr);
+				amountDrLoc = amountDrLoc.add(bCurrencyService.converterCny("USD", amountDrUsd, "D","1")).add(amountDr);
+				amountCrLoc = amountCrLoc.add(bCurrencyService.converterCny("USD", amountCrUsd, "C","1")).add(amountCr);
 				amountProfitLoc = amountDrLoc.subtract(amountCrLoc);
 				aeaBills.setAmountDr(amountDr);
 				aeaBills.setAmountCr(amountCr);
@@ -795,8 +827,8 @@ public class FeeCenterServiceImpl extends ServiceImpl<FeeCenterMapper, FeeCenter
 				//利润 = 收 - 付
 				amountProfit = amountDr.subtract(amountCr);
 				amountProfitUsd = amountDrUsd.subtract(amountCrUsd);
-				amountDrLoc = amountDrLoc.add(bCurrencyService.converterCny("USD", amountDrUsd, "D")).add(amountDr);
-				amountCrLoc = amountCrLoc.add(bCurrencyService.converterCny("USD", amountCrUsd, "C")).add(amountCr);
+				amountDrLoc = amountDrLoc.add(bCurrencyService.converterCny("USD", amountDrUsd, "D","1")).add(amountDr);
+				amountCrLoc = amountCrLoc.add(bCurrencyService.converterCny("USD", amountCrUsd, "C","1")).add(amountCr);
 				amountProfitLoc = amountDrLoc.subtract(amountCrLoc);
 				customsDeclaration.setAmountDr(amountDr);
 				customsDeclaration.setAmountCr(amountCr);
@@ -845,7 +877,8 @@ public class FeeCenterServiceImpl extends ServiceImpl<FeeCenterMapper, FeeCenter
 							corpIds = feeCenterList.stream().map(FeeCenter::getCorpId).filter(Objects::nonNull).distinct().collect(Collectors.toList());
 						}
 					}
-				}List<FeeCenter> feeCenterList = baseMapper.selectList(new LambdaQueryWrapper<FeeCenter>()
+				}
+				List<FeeCenter> feeCenterList = baseMapper.selectList(new LambdaQueryWrapper<FeeCenter>()
 					.eq(FeeCenter::getTenantId, AuthUtil.getTenantId())
 					.eq(FeeCenter::getIsDeleted, 0)
 					.eq(FeeCenter::getDc, dc)
@@ -881,7 +914,8 @@ public class FeeCenterServiceImpl extends ServiceImpl<FeeCenterMapper, FeeCenter
 							corpIds = feeCenterList.stream().map(FeeCenter::getCorpId).filter(Objects::nonNull).distinct().collect(Collectors.toList());
 						}
 					}
-				} List<FeeCenter> feeCenterList = baseMapper.selectList(new LambdaQueryWrapper<FeeCenter>()
+				}
+				List<FeeCenter> feeCenterList = baseMapper.selectList(new LambdaQueryWrapper<FeeCenter>()
 					.eq(FeeCenter::getTenantId, AuthUtil.getTenantId())
 					.eq(FeeCenter::getIsDeleted, 0)
 					.eq(FeeCenter::getDc, dc)

+ 2 - 2
blade-service/blade-los/src/main/java/org/springblade/los/finance/invoices/service/impl/FinInvoicesServiceImpl.java

@@ -147,7 +147,7 @@ public class FinInvoicesServiceImpl extends ServiceImpl<FinInvoicesMapper, FinIn
 					item.setCurrentAmountLoc(item.getCurrentAmount());
 					item.setCurrentAmountEx(item.getCurrentAmount());
 				} else {
-					item.setCurrentAmountLoc(bCurrencyService.converterCny(item.getCurrentCurCode(), item.getCurrentAmount(), ""));
+					item.setCurrentAmountLoc(bCurrencyService.converterCny(item.getCurrentCurCode(), item.getCurrentAmount(), "","2"));
 					if (1 == finInvoices.getIsExchangeToCny()) {
 						item.setCurrentAmountEx(item.getCurrentAmount().multiply(finInvoices.getExrate()));
 					} else {
@@ -212,7 +212,7 @@ public class FinInvoicesServiceImpl extends ServiceImpl<FinInvoicesMapper, FinIn
 			finInvoices.setAmountUsd(amountUsdD.subtract(amountUsdC));
 			finInvoices.setAmountTax(amountTaxD.subtract(amountTaxC).abs());
 			finInvoices.setAmountSub(amountCnyD.subtract(amountCnyC));
-			finInvoices.setAmountLoc(finInvoices.getAmountCny().add(bCurrencyService.converterCny("USD", finInvoices.getAmountUsd(), "")));
+			finInvoices.setAmountLoc(finInvoices.getAmountCny().add(bCurrencyService.converterCny("USD", finInvoices.getAmountUsd(), "","2")));
 			finInvoices.setAmountSubLocNet(finInvoices.getAmountLoc());
 			finInvoices.setAmountSubUsd(amountUsdD.subtract(amountUsdC));
 		} else {

+ 14 - 14
blade-service/blade-los/src/main/java/org/springblade/los/finance/stl/service/impl/FinStlBillsServiceImpl.java

@@ -221,7 +221,7 @@ public class FinStlBillsServiceImpl extends ServiceImpl<FinStlBillsMapper, FinSt
 				if ("CNY".equals(item.getCurrentStlCurCode())) {
 					item.setCurrentStlAmountLoc(item.getCurrentStlAmount());
 				} else {
-					item.setCurrentStlAmountLoc(bCurrencyService.converterCny(item.getCurrentStlCurCode(), item.getCurrentStlAmount(), ""));
+					item.setCurrentStlAmountLoc(bCurrencyService.converterCny(item.getCurrentStlCurCode(), item.getCurrentStlAmount(), "","2"));
 				}
 				// 去税金额 = 本次结算金额currentStlAmount - 税额amountTax
 				BigDecimal amountNet = new BigDecimal("0.00");
@@ -292,11 +292,11 @@ public class FinStlBillsServiceImpl extends ServiceImpl<FinStlBillsMapper, FinSt
 			finStlBills.setAmountCrUsdNet(amountCrUSDTax);
 			finStlBills.setAmountSub(finStlBills.getAmountCr().subtract(finStlBills.getAmountDr()));
 			finStlBills.setAmountSubUsd(finStlBills.getAmountCrUsd().subtract(finStlBills.getAmountDrUsd()));
-			finStlBills.setAmountDrLoc(amountDrCNY.add(bCurrencyService.converterCny("USD", amountDrUSD, "D")));
-			finStlBills.setAmountCrLoc(amountCrCNY.add(bCurrencyService.converterCny("USD", amountCrUSD, "C")));
+			finStlBills.setAmountDrLoc(amountDrCNY.add(bCurrencyService.converterCny("USD", amountDrUSD, "D","2")));
+			finStlBills.setAmountCrLoc(amountCrCNY.add(bCurrencyService.converterCny("USD", amountCrUSD, "C","2")));
 			finStlBills.setAmountSubLoc(finStlBills.getAmountCrLoc().subtract(finStlBills.getAmountDrLoc()));
-			finStlBills.setAmountDrLocNet(amountDrCNYTax.add(bCurrencyService.converterCny("USD", amountDrUSDTax, "D")));
-			finStlBills.setAmountCrLocNet(amountCrCNYTax.add(bCurrencyService.converterCny("USD", amountCrUSDTax, "C")));
+			finStlBills.setAmountDrLocNet(amountDrCNYTax.add(bCurrencyService.converterCny("USD", amountDrUSDTax, "D","2")));
+			finStlBills.setAmountCrLocNet(amountCrCNYTax.add(bCurrencyService.converterCny("USD", amountCrUSDTax, "C","2")));
 			finStlBills.setAmountSubLocNet(finStlBills.getAmountCrLocNet().subtract(finStlBills.getAmountDrLocNet()));
 
 		} else {
@@ -742,7 +742,7 @@ public class FinStlBillsServiceImpl extends ServiceImpl<FinStlBillsMapper, FinSt
 						}
 					} else {
 						finAccBills.setStlAmountDrUsd(finAccBills.getStlAmountDrUsd().add(item.getCurrentStlAmount().add(item.getCurrentStlDiscount())));
-						BigDecimal cny = bCurrencyService.converterCny(item.getCurCode(), item.getCurrentStlAmount().add(item.getCurrentStlDiscount()), "D");
+						BigDecimal cny = bCurrencyService.converterCny(item.getCurCode(), item.getCurrentStlAmount().add(item.getCurrentStlDiscount()), "D","2");
 						finAccBills.setStlAmountDrLoc(finAccBills.getStlAmountDrLoc().add(cny));
 						if (!ids.isEmpty()) {
 							finAccBills.setAppliedAmountStlUsd(finAccBills.getAppliedAmountStl().add(item.getCurrentStlAmount()));
@@ -764,7 +764,7 @@ public class FinStlBillsServiceImpl extends ServiceImpl<FinStlBillsMapper, FinSt
 						}
 					} else {
 						finAccBills.setStlAmountCrUsd(finAccBills.getStlAmountCrUsd().add(item.getCurrentStlAmount()));
-						BigDecimal cny = bCurrencyService.converterCny(item.getCurCode(), item.getCurrentStlAmount(), "C");
+						BigDecimal cny = bCurrencyService.converterCny(item.getCurCode(), item.getCurrentStlAmount(), "C","2");
 						finAccBills.setStlAmountCrLoc(finAccBills.getStlAmountCrLoc().add(cny));
 						if (!ids.isEmpty()) {
 							finAccBills.setAppliedAmountStlUsd(finAccBills.getAppliedAmountStlUsd().add(item.getCurrentStlDiscount()));
@@ -822,7 +822,7 @@ public class FinStlBillsServiceImpl extends ServiceImpl<FinStlBillsMapper, FinSt
 						e.setStlBillId(detail.getId());
 						e.setStlBillNo(detail.getBillNo());
 						e.setStlDate(detail.getBillDate());
-						e.setStlOrgAmount(bCurrencyService.converterCny(item.getCurCode(), item.getCurrentStlAmount(), e.getDc()));
+						e.setStlOrgAmount(bCurrencyService.converterCny(item.getCurCode(), item.getCurrentStlAmount(), e.getDc(),"2"));
 						e.setStlCurCode(item.getCurrentStlCurCode());
 						e.setStlExrate(item.getExrate());
 						e.setStlExrateLoc(item.getCurrentStlExrate());
@@ -1011,7 +1011,7 @@ public class FinStlBillsServiceImpl extends ServiceImpl<FinStlBillsMapper, FinSt
 						finAccBills.setStlAmountDrLoc(finAccBills.getStlAmountDrLoc().subtract(item.getCurrentStlAmount().subtract(item.getCurrentStlDiscount())));
 					} else {
 						finAccBills.setStlAmountDrUsd(finAccBills.getStlAmountDrUsd().subtract(item.getCurrentStlAmount().subtract(item.getCurrentStlDiscount())));
-						BigDecimal cny = bCurrencyService.converterCny(item.getCurCode(), item.getCurrentStlAmount().subtract(item.getCurrentStlDiscount()), "D");
+						BigDecimal cny = bCurrencyService.converterCny(item.getCurCode(), item.getCurrentStlAmount().subtract(item.getCurrentStlDiscount()), "D","2");
 						finAccBills.setStlAmountDrLoc(finAccBills.getStlAmountDrLoc().subtract(cny));
 					}
 					if (finAccBills.getAmountDr().compareTo(new BigDecimal("0.00")) == 0 &&
@@ -1044,7 +1044,7 @@ public class FinStlBillsServiceImpl extends ServiceImpl<FinStlBillsMapper, FinSt
 						}
 					} else {
 						finAccBills.setStlAmountCrUsd(finAccBills.getStlAmountCrUsd().subtract(item.getCurrentStlAmount().subtract(item.getCurrentStlDiscount())));
-						BigDecimal cny = bCurrencyService.converterCny(item.getCurCode(), item.getCurrentStlAmount().subtract(item.getCurrentStlDiscount()), "C");
+						BigDecimal cny = bCurrencyService.converterCny(item.getCurCode(), item.getCurrentStlAmount().subtract(item.getCurrentStlDiscount()), "C","2");
 						finAccBills.setStlAmountCrLoc(finAccBills.getStlAmountCrLoc().subtract(cny));
 						if (!ids.isEmpty()) {
 							finAccBills.setAppliedAmountStlUsd(finAccBills.getAppliedAmountStlUsd().subtract(item.getCurrentStlDiscount()));
@@ -2074,9 +2074,9 @@ public class FinStlBillsServiceImpl extends ServiceImpl<FinStlBillsMapper, FinSt
 				}
 				//计算借,贷人民币与美金合计人民币金额
 				finVouchersItems.setAmountDrLoc(ObjectUtils.isNull(finVouchersItems.getAmountDr()) ? new BigDecimal("0") : finVouchersItems.getAmountDr()
-					.add(bCurrencyService.converterCny("USD", ObjectUtils.isNull(finVouchersItems.getAmountDrUsd()) ? new BigDecimal("0") : finVouchersItems.getAmountDrUsd(), "D")));
+					.add(bCurrencyService.converterCny("USD", ObjectUtils.isNull(finVouchersItems.getAmountDrUsd()) ? new BigDecimal("0") : finVouchersItems.getAmountDrUsd(), "D","2")));
 				finVouchersItems.setAmountCrLoc(ObjectUtils.isNull(finVouchersItems.getAmountCr()) ? new BigDecimal("0") : finVouchersItems.getAmountCr()
-					.add(bCurrencyService.converterCny("USD", ObjectUtils.isNull(finVouchersItems.getAmountCrUsd()) ? new BigDecimal("0") : finVouchersItems.getAmountCrUsd(), "C")));
+					.add(bCurrencyService.converterCny("USD", ObjectUtils.isNull(finVouchersItems.getAmountCrUsd()) ? new BigDecimal("0") : finVouchersItems.getAmountCrUsd(), "C","2")));
 				finVouchersItems.setIsCorp(accounts.getIsCorp());
 				//判断是否核算客户 true 向明细中客户字段复制
 				if (1 == finVouchersItems.getIsCorp()) {
@@ -2150,8 +2150,8 @@ public class FinStlBillsServiceImpl extends ServiceImpl<FinStlBillsMapper, FinSt
 			.filter(e -> "USD".equals(e.getCurCode()) && "C".equals(e.getDc())).map(FinVouchersItems::getAmountCrUsd)
 			.filter(ObjectUtils::isNotNull).reduce(BigDecimal.ZERO, BigDecimal::add));
 		finVouchers.setAmountCrUsd(amountCrUSD);
-		finVouchers.setAmountDrLoc(amountDrCNY.add(bCurrencyService.converterCny("USD", amountDrUSD, "D")));
-		finVouchers.setAmountCrLoc(amountCrCNY.add(bCurrencyService.converterCny("USD", amountCrUSD, "C")));
+		finVouchers.setAmountDrLoc(amountDrCNY.add(bCurrencyService.converterCny("USD", amountDrUSD, "D","2")));
+		finVouchers.setAmountCrLoc(amountCrCNY.add(bCurrencyService.converterCny("USD", amountCrUSD, "C","2")));
 		finVouchers.setDescr(finVouchersItemsList.get(0).getDescr());
 		if (finVouchersItemsList.stream().anyMatch(e -> "USD".equals(e.getCurCode()))) {
 			finVouchers.setIsForeign(1);

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

@@ -229,8 +229,8 @@ public class FinVouchersServiceImpl extends ServiceImpl<FinVouchersMapper, FinVo
 				.filter(e -> "USD".equals(e.getCurCode()) && "C".equals(e.getDc())).map(FinVouchersItems::getAmountCrUsd)
 				.filter(ObjectUtils::isNotNull).reduce(BigDecimal.ZERO, BigDecimal::add));
 			finVouchers.setAmountCrUsd(amountCrUSD);
-			finVouchers.setAmountDrLoc(amountDrCNY.add(bCurrencyService.converterCny("USD", amountDrUSD, "D")));
-			finVouchers.setAmountCrLoc(amountCrCNY.add(bCurrencyService.converterCny("USD", amountCrUSD, "C")));
+			finVouchers.setAmountDrLoc(amountDrCNY.add(bCurrencyService.converterCny("USD", amountDrUSD, "D","2")));
+			finVouchers.setAmountCrLoc(amountCrCNY.add(bCurrencyService.converterCny("USD", amountCrUSD, "C","2")));
 		}
 		this.saveOrUpdate(finVouchers);
 		return R.data(finVouchers);

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

@@ -97,8 +97,8 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
 		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");
+		BigDecimal exrateC = bCurrencyService.getCnyExrate("USD", "C","2");
+		BigDecimal exrateD = bCurrencyService.getCnyExrate("USD", "D","2");
 		//是否合并amend费用  true 合并  false 不合并
 		if ("1".equals(financeProfit.getMergeAmendFee())) {
 			financeProfitList = financeProfitMapper.financeProfit(financeProfit, page);
@@ -704,8 +704,8 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
 		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");
+		BigDecimal exrateC = bCurrencyService.getCnyExrate("USD", "C","2");
+		BigDecimal exrateD = bCurrencyService.getCnyExrate("USD", "D","2");
 		//是否合并amend费用  true 合并  false 不合并
 		if ("1".equals(financeProfit.getMergeAmendFee())) {
 			financeProfitList = financeProfitMapper.financeProfitSum(financeProfit);
@@ -908,8 +908,8 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
 		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");
+		BigDecimal exrateC = bCurrencyService.getCnyExrate("USD", "C","2");
+		BigDecimal exrateD = bCurrencyService.getCnyExrate("USD", "D","2");
 		//是否合并amend费用  true 合并  false 不合并
 		if (ObjectUtils.isNotNull(financeProfit.getMergeAmendFee())) {
 			financeProfitList = financeProfitMapper.financeProfitSum(financeProfit);

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

@@ -300,28 +300,33 @@ public class GoodsDescController extends BladeController {
 
 		lambdaQueryWrapper.eq(PjGoodsDesc::getTenantId, AuthUtil.getTenantId())
 			.eq(PjGoodsDesc::getIsDeleted, 0)
+			.eq(PjGoodsDesc::getSalesCompanyId, AuthUtil.getDeptId())//公司
 			.like(StringUtils.isNotBlank(goods.getSpecificationAndModel()), PjGoodsDesc::getSpecificationAndModel, goods.getSpecificationAndModel())//规格型号
 			.like(StringUtils.isNotBlank(goods.getBrandItem()), PjGoodsDesc::getBrandItem, goods.getBrandItem())//花纹
 			.eq(ObjectUtils.isNotEmpty(goods.getBrandId()), PjGoodsDesc::getBrandId, goods.getBrandId())//品牌
 			.like(ObjectUtils.isNotEmpty(goods.getBrandName()), PjGoodsDesc::getBrandName, goods.getBrandName())
-//			.eq(ObjectUtils.isNotEmpty(goods.getSalesCompanyId()), PjGoodsDesc::getSalesCompanyId, goods.getSalesCompanyId())//所属公司
-			.eq(ObjectUtils.isNotEmpty(goods.getWhether()), PjGoodsDesc::getWhether, goods.getWhether())//是否管理到批次号
+			.like(ObjectUtils.isNotEmpty(goods.getCnameInt()), PjGoodsDesc::getCnameInt, goods.getCnameInt())
+			.like(ObjectUtils.isNotEmpty(goods.getCode()), PjGoodsDesc::getCode, goods.getCode())//编码
 			.eq(ObjectUtils.isNotNull(goods.getEnableOrNot()), PjGoodsDesc::getEnableOrNot, goods.getEnableOrNot())//状态
+			.eq(ObjectUtils.isNotEmpty(goods.getWhether()), PjGoodsDesc::getWhether, goods.getWhether())//是否管理到批次号
 			.eq(ObjectUtils.isNotEmpty(goods.getExplosionProof()), PjGoodsDesc::getExplosionProof, goods.getExplosionProof());//是否防爆
 		if (ObjectUtil.isNotEmpty(goods.getCname())) {
 			lambdaQueryWrapper.and(i -> i.like(PjGoodsDesc::getCname, goods.getCname()).or().like(PjGoodsDesc::getCnameInt, goods.getCname()));
 		}
+		lambdaQueryWrapper.orderByDesc(PjGoodsDesc::getCreateTime);
 		List<PjGoodsDesc> list = goodsDescService.list(lambdaQueryWrapper);
 		list.forEach(e -> {
 			String typeId = e.getGoodsTypeId();
-			String[] split = typeId.split(",");
-			List<String> stringList = Arrays.asList(split);
-			LambdaQueryWrapper<PjGoodsType> goodsTypeLambdaQueryWrapper = new LambdaQueryWrapper<>();
-			goodsTypeLambdaQueryWrapper.in(PjGoodsType::getId, stringList);
-			List<PjGoodsType> types = goodsDescType.list(goodsTypeLambdaQueryWrapper);
-			if (CollectionUtils.isNotEmpty(types)) {
-				List<String> typeStr = types.stream().map(PjGoodsType::getCname).collect(Collectors.toList());
-				e.setGoodsTypeName(typeStr.toString().replace("[", "").replace("]", ""));
+			if (ObjectUtils.isNotNull(typeId)){
+				String[] split = typeId.split(",");
+				List<String> stringList = Arrays.asList(split);
+				LambdaQueryWrapper<PjGoodsType> goodsTypeLambdaQueryWrapper = new LambdaQueryWrapper<>();
+				goodsTypeLambdaQueryWrapper.in(PjGoodsType::getId, stringList);
+				List<PjGoodsType> types = goodsDescType.list(goodsTypeLambdaQueryWrapper);
+				if (CollectionUtils.isNotEmpty(types)) {
+					List<String> typeStr = types.stream().map(PjGoodsType::getCname).collect(Collectors.toList());
+					e.setGoodsTypeName(typeStr.toString().replace("[", "").replace("]", ""));
+				}
 			}
 		});
 		ExcelUtil.export(response, "商品信息", "商品信息", BeanUtil.copy(list, GoodsDescExportExcel.class), GoodsDescExportExcel.class);

+ 6 - 3
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/goods/service/impl/GoodsDescServiceImpl.java

@@ -330,14 +330,14 @@ public class GoodsDescServiceImpl extends ServiceImpl<GoodsDescMapper, PjGoodsDe
 		}
 		List<Dept> finalDeptList = deptList;
 		List<String> cnameList = data.stream().map(GoodsExcel::getCname).distinct().filter(Objects::nonNull).collect(Collectors.toList());
-		if (cnameList.size() != data.size()){
+		if (cnameList.size() != data.size()) {
 			throw new RuntimeException("商品名称存在重复");
 		}
 		List<String> codeList = data.stream().map(GoodsExcel::getCode).distinct().filter(Objects::nonNull).collect(Collectors.toList());
-		if (codeList.size() != data.size()){
+		if (codeList.size() != data.size()) {
 			throw new RuntimeException("商品编号存在重复");
 		}
-		String cnames = String.join(",",cnameList);
+		String cnames = String.join(",", cnameList);
 		List<PjStockDesc> stockDescList = stockDescService.list(new LambdaQueryWrapper<PjStockDesc>()
 			.eq(PjStockDesc::getIsDeleted, 0)
 			.eq(PjStockDesc::getTenantId, AuthUtil.getTenantId())
@@ -519,6 +519,8 @@ public class GoodsDescServiceImpl extends ServiceImpl<GoodsDescMapper, PjGoodsDe
 	}
 
 	@Override
+	@Transactional(rollbackFor = Exception.class)
+	@GlobalTransactional(rollbackFor = Exception.class, timeoutMills = 12000000)
 	public R synchronization() {
 		List<PjGoodsDesc> goodsDescList = baseMapper.selectList(new LambdaQueryWrapper<PjGoodsDesc>()
 			.eq(PjGoodsDesc::getTenantId, AuthUtil.getTenantId())
@@ -539,6 +541,7 @@ public class GoodsDescServiceImpl extends ServiceImpl<GoodsDescMapper, PjGoodsDe
 				.eq(PjStockDesc::getIsDeleted, 0)
 				.in(PjStockDesc::getGoodsId, goodsId));
 			for (PjGoodsDesc item : goodsDescList) {
+				item.setCnameInt(getCnameInt(item.getCname()));
 				if (!pjProductLaunchList.isEmpty()) {
 					PjProductLaunch productLaunch = pjProductLaunchList.stream().filter(e -> e.getGoodsId().equals(item.getId())).findFirst().orElse(null);
 					if (productLaunch != null) {

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

@@ -631,7 +631,8 @@ public class ShipServiceImpl extends ServiceImpl<ShipMapper, PjShip> implements
 					}*/
 					pjStockDescArrayList.add(stockOne);
 				} else {
-					throw new RuntimeException("未查到库存账");
+					System.err.println("商品:" + goodsDesc.getCname());
+					throw new RuntimeException("商品:" + goodsDesc.getCname() + "未查到库存账");
 				}
 			}
 			if (!msg.isEmpty()) {
@@ -1072,9 +1073,9 @@ public class ShipServiceImpl extends ServiceImpl<ShipMapper, PjShip> implements
 
 				PjOrderItems orderItems = pjOrderItems.stream().filter(e -> e.getId().equals(item.getSrcItemId())).findFirst().orElse(null);
 				if (orderItems != null) {
-					if(ship.getBillno().contains("TK")){
+					if (ship.getBillno().contains("TK")) {
 						orderItems.setSendNum(orderItems.getSendNum().subtract(item.getSendNum()));
-					}else{
+					} else {
 						orderItems.setSendNum(orderItems.getSendNum().add(item.getSendNum()));
 					}
 					pjOrderItemsList.add(orderItems);
@@ -1274,10 +1275,10 @@ public class ShipServiceImpl extends ServiceImpl<ShipMapper, PjShip> implements
 		List<PjOrderItems> list = new ArrayList<>();
 		List<String> goodsNameList = excelList.stream().map(ShipItemImportExcel::getGoodsName).distinct()
 			.filter(Objects::nonNull).collect(Collectors.toList());
-		if (excelList.size() != goodsNameList.size()){
+		if (excelList.size() != goodsNameList.size()) {
 			throw new RuntimeException("导入数据存在重复商品名称,请处理后再导入");
 		}
-		String goodsNames = String.join(",",goodsNameList);
+		String goodsNames = String.join(",", goodsNameList);
 		LambdaQueryWrapper<PjGoodsDesc> lambdaQueryWrapper = new LambdaQueryWrapper<>();
 		lambdaQueryWrapper.eq(PjGoodsDesc::getTenantId, AuthUtil.getTenantId())
 			.eq(PjGoodsDesc::getIsDeleted, 0)
@@ -1935,10 +1936,10 @@ public class ShipServiceImpl extends ServiceImpl<ShipMapper, PjShip> implements
 		List<PjOrderItems> list = new ArrayList<>();
 		List<String> codesList = excelList.stream().map(ShipItemImportCodeExcel::getCode).distinct()
 			.filter(Objects::nonNull).collect(Collectors.toList());
-		if (excelList.size() != codesList.size()){
+		if (excelList.size() != codesList.size()) {
 			throw new RuntimeException("导入数据存在重复商品编码,请处理后再导入");
 		}
-		String codes = String.join(",",codesList);
+		String codes = String.join(",", codesList);
 		LambdaQueryWrapper<PjGoodsDesc> lambdaQueryWrapper = new LambdaQueryWrapper<>();
 		lambdaQueryWrapper.eq(PjGoodsDesc::getTenantId, AuthUtil.getTenantId())
 			.eq(PjGoodsDesc::getIsDeleted, 0)