Browse Source

2025年2月21日13:34:21

纪新园 10 months ago
parent
commit
4bc7369cd0

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

@@ -1960,6 +1960,16 @@ public class Bills implements Serializable {
 	 */
 	@TableField(exist = false)
 	private String printDate;
+	/**
+	 * 应收(USD折合人民币)
+	 */
+	@TableField(exist = false)
+	private BigDecimal equivalentToRmbDr;
+	/**
+	 * 应付(USD折合人民币)
+	 */
+	@TableField(exist = false)
+	private BigDecimal equivalentToRmbCr;
 
 
 }

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

@@ -40,6 +40,7 @@ public class SeaBillsDetail implements Serializable {
 	private static final long serialVersionUID = 1L;
 
 	private Long id;
+	@ApiModelProperty(value = "pid")
 	private Long pid;
 	/**
 	 * 分公司 Id

+ 11 - 0
blade-service-api/blade-los-api/src/main/java/org/springblade/los/trade/entity/Agent.java

@@ -691,6 +691,17 @@ public class Agent implements Serializable {
 	private BigDecimal amountLoc;
 
 	/**
+	 * 应收(USD折合人民币)
+	 */
+	@TableField(exist = false)
+	private BigDecimal equivalentToRmbDr;
+	/**
+	 * 应付(USD折合人民币)
+	 */
+	@TableField(exist = false)
+	private BigDecimal equivalentToRmbCr;
+
+	/**
 	 * 待收预付
 	 */
 	@ApiModelProperty(value = "待收预付")

+ 38 - 0
blade-service/blade-los/src/main/java/org/springblade/los/Util/StringTools.java

@@ -10,6 +10,7 @@ import org.springblade.los.business.aea.entity.AeaBills;
 import org.springblade.los.business.customsDeclaration.entity.CustomsDeclaration;
 import org.springblade.los.business.release.entity.SeaReleaseBill;
 import org.springblade.los.business.sea.entity.Bills;
+import org.springblade.los.business.sea.entity.SeaBillsDetail;
 import org.springblade.los.utils.LosSpecialHandle;
 
 import java.lang.annotation.Annotation;
@@ -139,6 +140,43 @@ public class StringTools {
 			}
 			return bVessels;
 		}
+		else if ("SeaBillsDetail".equals(type)) {
+			Class<?> inttraSoDtoClass = SeaBillsDetail.class;
+			Field[] fileds = inttraSoDtoClass.getDeclaredFields();
+			SeaBillsDetail bVessels = JSONObject.parseObject(JSONObject.toJSONString(data), SeaBillsDetail.class);
+			for (Field field : fileds) {
+				String name = field.getName();
+				System.out.println("字段名:" + name);
+				// 设置访问权限为true,否则无法获取private字段的值
+				field.setAccessible(true);
+				Object value = field.get(bVessels);
+				System.out.println("字段值:" + value);
+				Class<SeaBillsDetail> clazz = SeaBillsDetail.class;
+				Field field1 = clazz.getDeclaredField(name);
+				Annotation[] annotations = field1.getAnnotations(); // 获取字段上的所有注解
+				for (Annotation annotation : annotations) {
+					if (annotation instanceof LosSpecialHandle) {
+						LosSpecialHandle myAnnotation = (LosSpecialHandle) annotation;
+						boolean conversion = myAnnotation.conversion();
+						boolean space = myAnnotation.space();
+						if (conversion) {
+							if (ObjectUtils.isNotNull(value)) {
+								value = value.toString().toUpperCase();
+							}
+						}
+						if (space) {
+							if (ObjectUtils.isNotNull(value)) {
+								value = value.toString().trim();
+							}
+						}
+						field.set(bVessels, value);
+						System.out.println("注解值:" + myAnnotation.conversion());
+						System.out.println("注解值:" + myAnnotation.space());
+					}
+				}
+			}
+			return bVessels;
+		}
 		else if ("AeaBills".equals(type)) {
 			Class<?> inttraSoDtoClass = AeaBills.class;
 			Field[] fileds = inttraSoDtoClass.getDeclaredFields();

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

@@ -786,20 +786,22 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 		bills.setMeasurement(measurement);
 
 		if (ObjectUtils.isNotNull(bills.getDetail())) {
-			if (ObjectUtils.isNotNull(bills.getDetail().getId())) {
-				bills.getDetail().setUpdateUser(AuthUtil.getUserId());
-				bills.getDetail().setUpdateUserName(AuthUtil.getUserName());
-				bills.getDetail().setUpdateTime(new Date());
+			Object seaBillsDetailObject = StringTools.handle(bills.getDetail(), "SeaBillsDetail");
+			SeaBillsDetail seaBillsDetail = JSONObject.parseObject(JSONObject.toJSONString(seaBillsDetailObject), SeaBillsDetail.class);
+			if (ObjectUtils.isNotNull(seaBillsDetail.getId())) {
+				seaBillsDetail.setUpdateUser(AuthUtil.getUserId());
+				seaBillsDetail.setUpdateUserName(AuthUtil.getUserName());
+				seaBillsDetail.setUpdateTime(new Date());
 			} else {
-				bills.getDetail().setPid(bills.getId());
-				bills.getDetail().setBranchId(bills.getBranchId());
-				bills.getDetail().setCreateUser(AuthUtil.getUserId());
-				bills.getDetail().setCreateUserName(AuthUtil.getUserName());
-				bills.getDetail().setCreateDept(bills.getCreateDept());
-				bills.getDetail().setCreateDeptName(bills.getCreateDeptName());
-				bills.getDetail().setCreateTime(new Date());
-			}
-			seaBillsDetailService.saveOrUpdate(bills.getDetail());
+				seaBillsDetail.setPid(bills.getId());
+				seaBillsDetail.setBranchId(bills.getBranchId());
+				seaBillsDetail.setCreateUser(AuthUtil.getUserId());
+				seaBillsDetail.setCreateUserName(AuthUtil.getUserName());
+				seaBillsDetail.setCreateDept(bills.getCreateDept());
+				seaBillsDetail.setCreateDeptName(bills.getCreateDeptName());
+				seaBillsDetail.setCreateTime(new Date());
+			}
+			seaBillsDetailService.saveOrUpdate(seaBillsDetail);
 		}
 		if (ObjectUtils.isNotNull(bills.getHmmEdi())) {
 			if (bills.getHmmEdi().getId() != null) {

+ 4 - 3
blade-service/blade-los/src/main/java/org/springblade/los/trade/controller/AgentViewController.java

@@ -130,8 +130,8 @@ public class AgentViewController extends BladeController {
 			List<AgentView> pageList = new ArrayList<>();
 			for (AgentView item : pages.getRecords()) {
 				if (!pageList.isEmpty()) {
-					List<Long> ids = pageList.stream().map(AgentView::getId).distinct().collect(Collectors.toList());
-					if (ids.contains(item.getId())) {
+					List<Long> ids = pageList.stream().map(AgentView::getItemId).distinct().collect(Collectors.toList());
+					if (ids.contains(item.getItemId())) {
 						item.setSumAmount(null);
 						item.setGoodsValue(null);
 						item.setAdvanceRatio(null);
@@ -150,8 +150,9 @@ public class AgentViewController extends BladeController {
 						item.setFinalPaymentInFullDate(null);
 						item.setProfit(null);
 					}
+				}else{
+					pageList.add(item);
 				}
-				pageList.add(item);
 			}
 		}
 		return R.data(pages);

+ 154 - 46
blade-service/blade-los/src/main/java/org/springblade/los/trade/service/impl/AgentServiceImpl.java

@@ -28,7 +28,6 @@ import org.springblade.client.feign.IMessageClient;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.BeanUtil;
-import org.springblade.los.Util.BigDecimalUtils;
 import org.springblade.los.Util.IDeptUtils;
 import org.springblade.los.Util.MagicValues;
 import org.springblade.los.basic.business.entity.BusinessType;
@@ -38,20 +37,16 @@ import org.springblade.los.basic.corps.entity.BCorpsBank;
 import org.springblade.los.basic.corps.service.IBCorpsBankService;
 import org.springblade.los.basic.corps.service.IBCorpsService;
 import org.springblade.los.basic.cur.entity.BCurExrate;
-import org.springblade.los.basic.cur.entity.BCurrency;
 import org.springblade.los.basic.cur.mapper.CurExrateMapper;
 import org.springblade.los.basic.cur.service.IBCurrencyService;
 import org.springblade.los.basic.fees.entity.BFees;
 import org.springblade.los.basic.fees.service.IBFeesService;
 import org.springblade.los.billno.entity.BusinessBillNo;
 import org.springblade.los.billno.service.IBusinessBillNoService;
-import org.springblade.los.business.amends.entity.Amends;
 import org.springblade.los.business.amends.service.IAmendsService;
 import org.springblade.los.business.files.entity.FilesCenter;
 import org.springblade.los.business.files.service.IFilesCenterService;
-import org.springblade.los.business.sea.dto.ContainersReports;
 import org.springblade.los.business.sea.entity.Bills;
-import org.springblade.los.business.sea.entity.Containers;
 import org.springblade.los.business.sea.entity.PreContainers;
 import org.springblade.los.business.sea.entity.SeaBillsDetail;
 import org.springblade.los.business.sea.service.IBillsService;
@@ -64,8 +59,6 @@ import org.springblade.los.check.entity.LosAuditPathsLevels;
 import org.springblade.los.check.service.IAuditPathsActsService;
 import org.springblade.los.check.service.IAuditPathsLevelsService;
 import org.springblade.los.check.service.IAuditProecessService;
-import org.springblade.los.finance.agreement.entity.AgreementPrice;
-import org.springblade.los.finance.agreement.entity.AgreementPriceItems;
 import org.springblade.los.finance.agreement.service.IAgreementPriceItemsService;
 import org.springblade.los.finance.agreement.service.IAgreementPriceService;
 import org.springblade.los.finance.fee.dto.FeeCenterReports;
@@ -77,7 +70,6 @@ import org.springblade.los.finance.invoices.entity.FinInvoices;
 import org.springblade.los.finance.invoices.entity.FinInvoicesItems;
 import org.springblade.los.finance.invoices.service.IFinInvoicesItemsService;
 import org.springblade.los.finance.invoices.service.IFinInvoicesService;
-import org.springblade.los.finance.stl.dto.FinStlBillsItemsReports;
 import org.springblade.los.finance.stl.entity.FinStlBills;
 import org.springblade.los.finance.stl.entity.FinStlBillsItems;
 import org.springblade.los.finance.stl.service.IFinStlBillsItemsService;
@@ -89,7 +81,6 @@ import org.springblade.los.trade.report.*;
 import org.springblade.los.trade.service.*;
 import org.springblade.los.trade.vo.AgentVO;
 import org.springblade.system.entity.Dept;
-import org.springblade.system.entity.DictBiz;
 import org.springblade.system.feign.IDictBizClient;
 import org.springblade.system.feign.ISysClient;
 import org.springblade.system.user.entity.User;
@@ -107,9 +98,6 @@ import java.time.LocalDateTime;
 import java.time.ZoneId;
 import java.time.format.DateTimeFormatter;
 import java.util.*;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.function.Function;
-import java.util.function.Predicate;
 import java.util.stream.Collectors;
 
 /**
@@ -1762,7 +1750,9 @@ public class AgentServiceImpl extends ServiceImpl<AgentMapper, Agent> implements
 		List<Long> agentIdList = agentList.stream().map(Agent::getId).distinct().collect(Collectors.toList());
 		BigDecimal amountD = feeCenterListD.stream().map(FeeCenter::getStlTtlAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
 		BigDecimal amount = feeCenterListD.stream().map(FeeCenter::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
-		List<FeeCenter> feeCenterList = feeCenters.stream().filter(e -> "C".equals(e.getDc()) && 0 == e.getStlStatus()).collect(Collectors.toList());
+		List<Long> feeCenterIds = feeCentersList.stream().map(FeeCenter::getId).collect(Collectors.toList());
+		List<FeeCenter> feeCenterList = feeCenters.stream().filter(e -> "C".equals(e.getDc()) && 0 == e.getStlStatus()
+			&& feeCenterIds.contains(e.getId())).collect(Collectors.toList());
 		if (feeCenterList.isEmpty()) {
 			throw new RuntimeException("未找到应付费用明细");
 		}
@@ -2145,7 +2135,6 @@ public class AgentServiceImpl extends ServiceImpl<AgentMapper, Agent> implements
 		finStlBillsItemsService.saveBatch(stlBillsItemsList);
 		agent.setOrderStatus("已确认");
 		agent.setGoodsValue(feeCenters1.stream().filter(e -> "SFK,WK".contains(e.getFeeCode())).map(FeeCenter::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add));
-		agent.setPostElectricFee(feeCenters1.stream().filter(e -> "YDF".equals(e.getFeeCode())).map(FeeCenter::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add));
 		String serviceCharge = sysClient.getParamServiceByDept("service.charge", AuthUtil.getTenantId(), AuthUtil.getDeptId());
 		if (ObjectUtils.isNotNull(serviceCharge)) {
 			BigDecimal serviceChargeAmount = new BigDecimal("1").divide(new BigDecimal(serviceCharge), serviceCharge.length(), RoundingMode.HALF_UP);
@@ -2177,10 +2166,21 @@ public class AgentServiceImpl extends ServiceImpl<AgentMapper, Agent> implements
 				item.setStlExrate(new BigDecimal("1"));
 				item.setDiscountExrate(new BigDecimal("1"));
 				item.setExrate(new BigDecimal("1"));
+				item.setProfit(new BigDecimal("0"));
+			}
+			if ("YDF".equals(item.getFeeCode())) {
+				item.setProfit(new BigDecimal("0"));
 			}
 		}
 		feeCenterService.saveOrUpdateBatch(feeCenters1);
+		for (Agent item : agentList) {
+			List<FeeCenter> feeCenters2 = feeCenters1.stream().filter(e -> e.getPid().equals(item.getId())).collect(Collectors.toList());
+			if (!feeCenters2.isEmpty()) {
+				item.setProfit(item.getProfit().add(feeCenters2.stream().map(FeeCenter::getProfit).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add)));
+			}
+		}
 		this.updateBatchById(agentList);
+		agent.setPostElectricFee(feeCenters1.stream().filter(e -> "YDF".equals(e.getFeeCode())).map(FeeCenter::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add));
 		agent.setServiceCharge(feeCenters1.stream().filter(e -> "SXF".equals(e.getFeeCode())).map(FeeCenter::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add));
 		agent.setActualAmount(agent.getGoodsValue().add(agent.getPostElectricFee()).add(agent.getServiceCharge()));
 		updateById(agent);
@@ -3941,24 +3941,64 @@ public class AgentServiceImpl extends ServiceImpl<AgentMapper, Agent> implements
 				}
 				List<FeeCenter> feeCenterList = feeCenterService.list(lambdaQueryWrapper);
 				BigDecimal amountDr = new BigDecimal(MagicValues.ZERO);
+				BigDecimal amountCr = new BigDecimal(MagicValues.ZERO);
 				BigDecimal amountDrUsd = new BigDecimal(MagicValues.ZERO);
-				BigDecimal amountDrLoc = new BigDecimal(MagicValues.ZERO);
+				BigDecimal amountCrUsd = new BigDecimal(MagicValues.ZERO);
 				List<FeeCenterReports> feeCenterReportsList = new ArrayList<>();
+				List<BCorps> corpsList = new ArrayList<>();
+				List<Long> corpIdList = new ArrayList<>();
+				if (!feeCenterList.isEmpty()) {
+					List<Long> corpId = feeCenterList.stream().map(FeeCenter::getCorpId).distinct().collect(Collectors.toList());
+					if (!corpId.isEmpty()) {
+						corpIdList.addAll(corpId);
+					}
+					List<Long> corpBillId = feeCenterList.stream().map(FeeCenter::getBillCorpId).distinct().collect(Collectors.toList());
+					if (!corpBillId.isEmpty()) {
+						corpIdList.addAll(corpBillId);
+					}
+				}
+				if (!corpIdList.isEmpty()) {
+					corpsList = bCorpsService.list(new LambdaQueryWrapper<BCorps>()
+						.eq(BCorps::getTenantId, AuthUtil.getTenantId())
+						.eq(BCorps::getIsDeleted, 0)
+						.in(BCorps::getId, corpIdList));
+				}
 				for (FeeCenter item : feeCenterList) {
-					if (ObjectUtils.isNotNull(item.getShortName())) {
-						item.setCorpCnName(item.getShortName());
+					if (!corpsList.isEmpty()) {
+						BCorps corps = corpsList.stream().filter(e -> e.getId().equals(item.getCorpId())).findFirst().orElse(null);
+						if (corps != null) {
+							item.setCorpCnName(corps.getShortName());
+						} else {
+							item.setCorpCnName("无");
+						}
+						BCorps corpBill = corpsList.stream().filter(e -> e.getId().equals(item.getBillCorpId())).findFirst().orElse(null);
+						if (corpBill != null) {
+							item.setBillCorpCnName(corpBill.getShortName());
+						} else {
+							item.setBillCorpCnName("无");
+						}
 					} else {
 						item.setCorpCnName("无");
+						item.setBillCorpCnName("无");
 					}
 					if (MagicValues.D.equals(item.getDc())) {
 						if (MagicValues.USD.equals(item.getCurCode())) {
-							amountDrUsd = amountDrUsd.add(item.getAmountLoc());
+							amountDrUsd = amountDrUsd.add(item.getAmount());
 						} else if (MagicValues.CNY.equals(item.getCurCode())) {
 							amountDr = amountDr.add(item.getAmount());
 						} else {
 							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(), "1");
 							amountDrUsd = amountDrUsd.add(usd);
 						}
+					} else {
+						if (MagicValues.USD.equals(item.getCurCode())) {
+							amountCrUsd = amountCrUsd.add(item.getAmount());
+						} else if (MagicValues.CNY.equals(item.getCurCode())) {
+							amountCr = amountCr.add(item.getAmount());
+						} else {
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(), "1");
+							amountCrUsd = amountCrUsd.add(usd);
+						}
 					}
 					FeeCenterReports feeCenterReports = new FeeCenterReports();
 					feeCenterReports.setStorageDate(item.getStorageDate());
@@ -3966,20 +4006,31 @@ public class AgentServiceImpl extends ServiceImpl<AgentMapper, Agent> implements
 					feeCenterReports.setRemarks(item.getRemarks());
 					feeCenterReports.setPid(item.getPid());
 					feeCenterReports.setCorpCnName(item.getCorpCnName());
+					feeCenterReports.setBillCorpCnName(item.getBillCorpCnName());
 					feeCenterReports.setFeeCnName(item.getFeeCnName());
-					feeCenterReports.setAmountD(item.getAmount());
-					feeCenterReports.setAmountUsdD(item.getAmountLoc());
-					feeCenterReports.setHblno(item.getMblno());
-					feeCenterReports.setAmount(item.getQuantity() + "*" + item.getPrice());
-					feeCenterReports.setCntrNo(item.getCntrNo());
-					feeCenterReports.setExrate(item.getStlExrate());
+					if (MagicValues.CNY.equals(item.getCurCode())) {
+						feeCenterReports.setAmountD(item.getAmount());
+					} else {
+						feeCenterReports.setAmountUsdD(item.getAmount());
+					}
+					feeCenterReports.setAmountLocD(item.getAmountLoc());
+					feeCenterReports.setHblno(item.getHblno());
+					feeCenterReports.setAmount(item.getAmount() + "");
+					if ("CCF".equals(item.getFeeCode())) {
+						feeCenterReports.setQuantity(item.getQuantity().multiply(new BigDecimal(item.getDays())));
+					} else {
+						feeCenterReports.setQuantity(item.getQuantity());
+					}
+					feeCenterReports.setPrice(item.getPrice().setScale(2, RoundingMode.HALF_UP));
+					feeCenterReports.setExrate(item.getExrate());
+					feeCenterReports.setCurCode(item.getCurCode());
 					feeCenterReportsList.add(feeCenterReports);
 				}
 				agent.setFeeCenterReportsList(feeCenterReportsList);
-				amountDrLoc = amountDrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D, "1")).add(amountDr);
-				agent.setAmount(amountDr);
-				agent.setAmountUsd(amountDrUsd);
-				agent.setAmountLoc(amountDrLoc);
+				BigDecimal equivalentToRmbDr = ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D, "1");
+				agent.setAmount(amountDr.setScale(2,RoundingMode.HALF_UP));
+				agent.setAmountUsd(amountDrUsd.setScale(2,RoundingMode.HALF_UP));
+				agent.setEquivalentToRmbDr(equivalentToRmbDr.setScale(2,RoundingMode.HALF_UP));
 				List<BCorpsBank> bCorpsBanks = bCorpsBankService.list(new LambdaQueryWrapper<BCorpsBank>()
 					.eq(BCorpsBank::getTenantId, AuthUtil.getTenantId())
 					.eq(BCorpsBank::getIsDeleted, 0)
@@ -4027,19 +4078,59 @@ public class AgentServiceImpl extends ServiceImpl<AgentMapper, Agent> implements
 					}
 				}
 				List<FeeCenter> feeCenterList = feeCenterService.list(lambdaQueryWrapper);
+				BigDecimal amountDr = new BigDecimal(MagicValues.ZERO);
 				BigDecimal amountCr = new BigDecimal(MagicValues.ZERO);
+				BigDecimal amountDrUsd = new BigDecimal(MagicValues.ZERO);
 				BigDecimal amountCrUsd = new BigDecimal(MagicValues.ZERO);
-				BigDecimal amountCrLoc = new BigDecimal(MagicValues.ZERO);
 				List<FeeCenterReports> feeCenterReportsList = new ArrayList<>();
+				List<BCorps> corpsList = new ArrayList<>();
+				List<Long> corpIdList = new ArrayList<>();
+				if (!feeCenterList.isEmpty()) {
+					List<Long> corpId = feeCenterList.stream().map(FeeCenter::getCorpId).distinct().collect(Collectors.toList());
+					if (!corpId.isEmpty()) {
+						corpIdList.addAll(corpId);
+					}
+					List<Long> corpBillId = feeCenterList.stream().map(FeeCenter::getBillCorpId).distinct().collect(Collectors.toList());
+					if (!corpBillId.isEmpty()) {
+						corpIdList.addAll(corpBillId);
+					}
+				}
+				if (!corpIdList.isEmpty()) {
+					corpsList = bCorpsService.list(new LambdaQueryWrapper<BCorps>()
+						.eq(BCorps::getTenantId, AuthUtil.getTenantId())
+						.eq(BCorps::getIsDeleted, 0)
+						.in(BCorps::getId, corpIdList));
+				}
 				for (FeeCenter item : feeCenterList) {
-					if (ObjectUtils.isNotNull(item.getShortName())) {
-						item.setCorpCnName(item.getShortName());
+					if (!corpsList.isEmpty()) {
+						BCorps corps = corpsList.stream().filter(e -> e.getId().equals(item.getCorpId())).findFirst().orElse(null);
+						if (corps != null) {
+							item.setCorpCnName(corps.getShortName());
+						} else {
+							item.setCorpCnName("无");
+						}
+						BCorps corpBill = corpsList.stream().filter(e -> e.getId().equals(item.getBillCorpId())).findFirst().orElse(null);
+						if (corpBill != null) {
+							item.setBillCorpCnName(corpBill.getShortName());
+						} else {
+							item.setBillCorpCnName("无");
+						}
 					} else {
 						item.setCorpCnName("无");
+						item.setBillCorpCnName("无");
 					}
-					if (MagicValues.C.equals(item.getDc())) {
+					if (MagicValues.D.equals(item.getDc())) {
 						if (MagicValues.USD.equals(item.getCurCode())) {
-							amountCrUsd = amountCrUsd.add(item.getAmountLoc());
+							amountDrUsd = amountDrUsd.add(item.getAmount());
+						} else if (MagicValues.CNY.equals(item.getCurCode())) {
+							amountDr = amountDr.add(item.getAmount());
+						} else {
+							BigDecimal usd = ibCurrencyService.converter(item.getCurCode(), item.getAmount(), item.getDc(), "1");
+							amountDrUsd = amountDrUsd.add(usd);
+						}
+					} else {
+						if (MagicValues.USD.equals(item.getCurCode())) {
+							amountCrUsd = amountCrUsd.add(item.getAmount());
 						} else if (MagicValues.CNY.equals(item.getCurCode())) {
 							amountCr = amountCr.add(item.getAmount());
 						} else {
@@ -4053,20 +4144,31 @@ public class AgentServiceImpl extends ServiceImpl<AgentMapper, Agent> implements
 					feeCenterReports.setRemarks(item.getRemarks());
 					feeCenterReports.setPid(item.getPid());
 					feeCenterReports.setCorpCnName(item.getCorpCnName());
+					feeCenterReports.setBillCorpCnName(item.getBillCorpCnName());
 					feeCenterReports.setFeeCnName(item.getFeeCnName());
-					feeCenterReports.setAmountC(item.getAmount());
-					feeCenterReports.setAmountUsdC(item.getAmountLoc());
-					feeCenterReports.setHblno(item.getMblno());
-					feeCenterReports.setAmount(item.getQuantity() + "*" + item.getPrice());
-					feeCenterReports.setCntrNo(item.getCntrNo());
-					feeCenterReports.setExrate(item.getStlExrate());
+					if (MagicValues.CNY.equals(item.getCurCode())) {
+						feeCenterReports.setAmountD(item.getAmount());
+					} else {
+						feeCenterReports.setAmountUsdD(item.getAmount());
+					}
+					feeCenterReports.setAmountLocD(item.getAmountLoc());
+					feeCenterReports.setHblno(item.getHblno());
+					feeCenterReports.setAmount(item.getAmount() + "");
+					if ("CCF".equals(item.getFeeCode())) {
+						feeCenterReports.setQuantity(item.getQuantity().multiply(new BigDecimal(item.getDays())));
+					} else {
+						feeCenterReports.setQuantity(item.getQuantity());
+					}
+					feeCenterReports.setPrice(item.getPrice().setScale(2, RoundingMode.HALF_UP));
+					feeCenterReports.setExrate(item.getExrate());
+					feeCenterReports.setCurCode(item.getCurCode());
 					feeCenterReportsList.add(feeCenterReports);
 				}
 				agent.setFeeCenterReportsList(feeCenterReportsList);
-				amountCrLoc = amountCrLoc.add(ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C, "1")).add(amountCr);
-				agent.setAmount(amountCr);
-				agent.setAmountUsd(amountCrUsd);
-				agent.setAmountLoc(amountCrLoc);
+				BigDecimal equivalentToRmbCr = ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C, "1");
+				agent.setAmount(amountCr.setScale(2,RoundingMode.HALF_UP));
+				agent.setAmountUsd(amountCrUsd.setScale(2,RoundingMode.HALF_UP));
+				agent.setEquivalentToRmbCr(equivalentToRmbCr.setScale(2,RoundingMode.HALF_UP));
 				agent.setDept(dept);
 				map.put(MagicValues.DATA, agent);
 			} else {
@@ -4287,7 +4389,9 @@ public class AgentServiceImpl extends ServiceImpl<AgentMapper, Agent> implements
 		List<Long> agentIdList = agentList.stream().map(Agent::getId).distinct().collect(Collectors.toList());
 		BigDecimal amountD = feeCenterListD.stream().map(FeeCenter::getStlTtlAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
 		BigDecimal amount = feeCenterListD.stream().map(FeeCenter::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
-		List<FeeCenter> feeCenterList = feeCenters.stream().filter(e -> "C".equals(e.getDc()) && 1 == e.getStlStatus()).collect(Collectors.toList());
+		List<Long> feeCenterIds = feeCentersList.stream().map(FeeCenter::getId).collect(Collectors.toList());
+		List<FeeCenter> feeCenterList = feeCenters.stream().filter(e -> "C".equals(e.getDc()) && 1 == e.getStlStatus()
+			&& feeCenterIds.contains(e.getId())).collect(Collectors.toList());
 		if (feeCenterList.isEmpty()) {
 			throw new RuntimeException("未找到应付费用明细");
 		}
@@ -4379,8 +4483,6 @@ public class AgentServiceImpl extends ServiceImpl<AgentMapper, Agent> implements
 			.eq(AgentItems::getIsDeleted, 0)
 			.in(AgentItems::getPid, agentIdList));
 		if (!agentItemsList.isEmpty()) {
-			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-			Date now = new Date();
 			for (AgentItems items : agentItemsList) {
 				if (ObjectUtils.isNotNull(items.getPaymentRecord())) {
 					String[] arr = items.getPaymentRecord().split(",");
@@ -4444,6 +4546,12 @@ public class AgentServiceImpl extends ServiceImpl<AgentMapper, Agent> implements
 			feeCenters1.add(item);
 		}
 		feeCenterService.saveOrUpdateBatch(feeCenters1);
+		for (Agent item : agentList) {
+			List<FeeCenter> feeCenters2 = feeCenters1.stream().filter(e -> e.getPid().equals(item.getId())).collect(Collectors.toList());
+			if (!feeCenters2.isEmpty()) {
+				item.setProfit(item.getProfit().subtract(feeCenters2.stream().map(FeeCenter::getProfit).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add)));
+			}
+		}
 		this.updateBatchById(agentList);
 		agent.setOrderStatus("审核通过");
 		updateById(agent);

+ 70 - 53
blade-service/blade-los/src/main/java/org/springblade/los/trade/service/impl/ReportDataTradeServiceImpl.java

@@ -348,7 +348,8 @@ public class ReportDataTradeServiceImpl implements IReportDataTradeService {
 						throw new RuntimeException("请先维护费用");
 					}
 					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())
@@ -501,16 +502,8 @@ public class ReportDataTradeServiceImpl implements IReportDataTradeService {
 					for (Bills item : list) {
 						List<FeeCenterReports> feeCenterList = item.getFeeCenterList().stream().sorted(Comparator.comparing(FeeCenterReports::getDc)).collect(Collectors.toList());
 						item.setFeeCenterList(feeCenterList);
-						if (ObjectUtils.isNotNull(item.getAmountProfitLoc()) && ObjectUtils.isNotNull(item.getAmountDrLoc())) {
-							if (item.getAmountProfitLoc().compareTo(new BigDecimal(MagicValues.ZERO)) == 0 ||
-								item.getAmountDrLoc().compareTo(new BigDecimal(MagicValues.ZERO)) == 0) {
-								item.setGrossMargin(new BigDecimal(MagicValues.ZERO));
-							} else {
-								item.setGrossMargin(item.getAmountProfitLoc().divide(item.getAmountDrLoc(), 4, RoundingMode.HALF_UP));
-							}
-						} else {
-							item.setGrossMargin(new BigDecimal(MagicValues.ZERO));
-						}
+						item.setEquivalentToRmbDr(bCurrency.getExrate().multiply(item.getAmountDrUsd()).setScale(2,RoundingMode.HALF_UP));
+						item.setEquivalentToRmbCr(bCurrency.getExrate().multiply(item.getAmountCrUsd()).setScale(2,RoundingMode.HALF_UP));
 						item.setDept(dept1);
 					}
 				}
@@ -627,7 +620,8 @@ public class ReportDataTradeServiceImpl implements IReportDataTradeService {
 			} else {
 				map.put(MagicValues.DATA, null);
 			}
-		} else if (MagicValues.DOCUMENT.equals(reportCode) && (MagicValues.BILLS_DETAIL.equals(groupCode) || MagicValues.BILLS_DETAIL_M.equals(groupCode)) && (MagicValues.HYCK.equals(type) || MagicValues.HYJK.equals(type))) {
+		}
+		else if (MagicValues.DOCUMENT.equals(reportCode) && (MagicValues.BILLS_DETAIL.equals(groupCode) || MagicValues.BILLS_DETAIL_M.equals(groupCode)) && (MagicValues.HYCK.equals(type) || MagicValues.HYJK.equals(type))) {
 			Bills bills = billsService.getById(billId);
 			if (bills != null) {
 				R<String> biz = dictBizClient.getOneValue("src_type_los", bills.getSrcType(), AuthUtil.getTenantId());
@@ -732,7 +726,8 @@ public class ReportDataTradeServiceImpl implements IReportDataTradeService {
 			} else {
 				map.put(MagicValues.DATA, null);
 			}
-		} else if (MagicValues.DOCUMENT.equals(reportCode) && MagicValues.DISPATCH_NOTICE.equals(groupCode) && (MagicValues.HYCK.equals(type) || MagicValues.HYJK.equals(type))) {
+		}
+		else if (MagicValues.DOCUMENT.equals(reportCode) && MagicValues.DISPATCH_NOTICE.equals(groupCode) && (MagicValues.HYCK.equals(type) || MagicValues.HYJK.equals(type))) {
 			Bills bills = billsService.getById(billId);
 			if (bills != null) {
 				R<String> biz = dictBizClient.getOneValue("src_type_los", bills.getSrcType(), AuthUtil.getTenantId());
@@ -810,7 +805,8 @@ public class ReportDataTradeServiceImpl implements IReportDataTradeService {
 			} else {
 				map.put(MagicValues.DATA, null);
 			}
-		} else if (MagicValues.DOCUMENT.equals(reportCode) && MagicValues.INCOMING_NOTIFICATION.equals(groupCode) && (MagicValues.HYCK.equals(type) || MagicValues.HYJK.equals(type))) {
+		}
+		else if (MagicValues.DOCUMENT.equals(reportCode) && MagicValues.INCOMING_NOTIFICATION.equals(groupCode) && (MagicValues.HYCK.equals(type) || MagicValues.HYJK.equals(type))) {
 			Bills bills = billsService.getById(billId);
 			if (bills != null) {
 				R<String> biz = dictBizClient.getOneValue("src_type_los", bills.getSrcType(), AuthUtil.getTenantId());
@@ -878,7 +874,8 @@ public class ReportDataTradeServiceImpl implements IReportDataTradeService {
 			} else {
 				map.put(MagicValues.DATA, null);
 			}
-		} else if (MagicValues.COST.equals(reportCode) && MagicValues.RECEIVABLE.equals(groupCode) && (MagicValues.HYCK.equals(type) || MagicValues.HYJK.equals(type))) {
+		}
+		else if (MagicValues.COST.equals(reportCode) && MagicValues.RECEIVABLE.equals(groupCode) && (MagicValues.HYCK.equals(type) || MagicValues.HYJK.equals(type))) {
 			Bills bills = billsService.getById(billId);
 			if (bills != null) {
 				R<String> biz = dictBizClient.getOneValue("src_type_los", bills.getSrcType(), AuthUtil.getTenantId());
@@ -1075,7 +1072,8 @@ public class ReportDataTradeServiceImpl implements IReportDataTradeService {
 			} else {
 				map.put(MagicValues.DATA, null);
 			}
-		} else if (MagicValues.COST.equals(reportCode) && MagicValues.RECEIVABLE_BILL.equals(groupCode) && (MagicValues.HYCK.equals(type) || MagicValues.HYJK.equals(type))) {
+		}
+		else if (MagicValues.COST.equals(reportCode) && MagicValues.RECEIVABLE_BILL.equals(groupCode) && (MagicValues.HYCK.equals(type) || MagicValues.HYJK.equals(type))) {
 			Bills bills = billsService.getById(billId);
 			if (bills != null) {
 				R<String> biz = dictBizClient.getOneValue("src_type_los", bills.getSrcType(), AuthUtil.getTenantId());
@@ -1100,7 +1098,6 @@ public class ReportDataTradeServiceImpl implements IReportDataTradeService {
 				LambdaQueryWrapper<FeeCenter> lambdaQueryWrapper = new LambdaQueryWrapper<FeeCenter>()
 					.eq(FeeCenter::getTenantId, AuthUtil.getTenantId())
 					.eq(FeeCenter::getDc, MagicValues.D)
-					.eq(FeeCenter::getAccStatus, 1)
 					.eq(FeeCenter::getIsDeleted, 0);
 				lambdaQueryWrapper.in(FeeCenter::getPid, ids);
 				if (ObjectUtils.isNotNull(corpIds)) {
@@ -1212,18 +1209,22 @@ public class ReportDataTradeServiceImpl implements IReportDataTradeService {
 				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);
+				BigDecimal equivalentToRmbDr = ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D, "1");
+				BigDecimal equivalentToRmbCr = ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C, "1");
+				amountDrLoc = amountDrLoc.add(equivalentToRmbDr).add(amountDr);
+				amountCrLoc = amountCrLoc.add(equivalentToRmbCr).add(amountCr);
 				amountProfitLoc = amountDrLoc.subtract(amountCrLoc);
-				bills.setAmountDr(amountDr);
-				bills.setAmountCr(amountCr);
-				bills.setAmountProfit(amountProfit);
-				bills.setAmountDrUsd(amountDrUsd);
-				bills.setAmountCrUsd(amountCrUsd);
-				bills.setAmountProfitUsd(amountProfitUsd);
-				bills.setAmountDrLoc(amountDrLoc);
-				bills.setAmountCrLoc(amountCrLoc);
-				bills.setAmountProfitLoc(amountProfitLoc);
+				bills.setAmountDr(amountDr.setScale(2,RoundingMode.HALF_UP));
+				bills.setAmountCr(amountCr.setScale(2,RoundingMode.HALF_UP));
+				bills.setAmountProfit(amountProfit.setScale(2,RoundingMode.HALF_UP));
+				bills.setAmountDrUsd(amountDrUsd.setScale(2,RoundingMode.HALF_UP));
+				bills.setEquivalentToRmbDr(equivalentToRmbDr.setScale(2,RoundingMode.HALF_UP));
+				bills.setAmountCrUsd(amountCrUsd.setScale(2,RoundingMode.HALF_UP));
+				bills.setEquivalentToRmbCr(equivalentToRmbCr.setScale(2,RoundingMode.HALF_UP));
+				bills.setAmountProfitUsd(amountProfitUsd.setScale(2,RoundingMode.HALF_UP));
+				bills.setAmountDrLoc(amountDrLoc.setScale(2,RoundingMode.HALF_UP));
+				bills.setAmountCrLoc(amountCrLoc.setScale(2,RoundingMode.HALF_UP));
+				bills.setAmountProfitLoc(amountProfitLoc.setScale(2,RoundingMode.HALF_UP));
 				List<BCorpsBank> bCorpsBanks = bCorpsBankService.list(new LambdaQueryWrapper<BCorpsBank>()
 					.eq(BCorpsBank::getTenantId, AuthUtil.getTenantId())
 					.eq(BCorpsBank::getIsDeleted, 0)
@@ -1242,7 +1243,8 @@ public class ReportDataTradeServiceImpl implements IReportDataTradeService {
 			} else {
 				map.put(MagicValues.DATA, null);
 			}
-		} else if (MagicValues.COST.equals(reportCode) && MagicValues.MEET.equals(groupCode) && (MagicValues.HYCK.equals(type) || MagicValues.HYJK.equals(type))) {
+		}
+		else if (MagicValues.COST.equals(reportCode) && MagicValues.MEET.equals(groupCode) && (MagicValues.HYCK.equals(type) || MagicValues.HYJK.equals(type))) {
 			Bills bills = billsService.getById(billId);
 			if (bills != null) {
 				R<String> biz = dictBizClient.getOneValue("src_type_los", bills.getSrcType(), AuthUtil.getTenantId());
@@ -1429,7 +1431,8 @@ public class ReportDataTradeServiceImpl implements IReportDataTradeService {
 			} else {
 				map.put(MagicValues.DATA, null);
 			}
-		} else if (MagicValues.COST.equals(reportCode) && MagicValues.MEET_BILL.equals(groupCode) && (MagicValues.HYCK.equals(type) || MagicValues.HYJK.equals(type))) {
+		}
+		else if (MagicValues.COST.equals(reportCode) && MagicValues.MEET_BILL.equals(groupCode) && (MagicValues.HYCK.equals(type) || MagicValues.HYJK.equals(type))) {
 			Bills bills = billsService.getById(billId);
 			if (bills != null) {
 				R<String> biz = dictBizClient.getOneValue("src_type_los", bills.getSrcType(), AuthUtil.getTenantId());
@@ -1454,7 +1457,6 @@ public class ReportDataTradeServiceImpl implements IReportDataTradeService {
 				LambdaQueryWrapper<FeeCenter> lambdaQueryWrapper = new LambdaQueryWrapper<FeeCenter>()
 					.eq(FeeCenter::getTenantId, AuthUtil.getTenantId())
 					.eq(FeeCenter::getDc, MagicValues.C)
-					.eq(FeeCenter::getAccStatus, 1)
 					.eq(FeeCenter::getIsDeleted, 0);
 				lambdaQueryWrapper.in(FeeCenter::getPid, ids);
 				if (ObjectUtils.isNotNull(corpIds)) {
@@ -1566,18 +1568,22 @@ public class ReportDataTradeServiceImpl implements IReportDataTradeService {
 				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);
+				BigDecimal equivalentToRmbDr = ibCurrencyService.converterCny(MagicValues.USD, amountDrUsd, MagicValues.D, "1");
+				BigDecimal equivalentToRmbCr = ibCurrencyService.converterCny(MagicValues.USD, amountCrUsd, MagicValues.C, "1");
+				amountDrLoc = amountDrLoc.add(equivalentToRmbDr).add(amountDr);
+				amountCrLoc = amountCrLoc.add(equivalentToRmbCr).add(amountCr);
 				amountProfitLoc = amountDrLoc.subtract(amountCrLoc);
-				bills.setAmountDr(amountDr);
-				bills.setAmountCr(amountCr);
-				bills.setAmountProfit(amountProfit);
-				bills.setAmountDrUsd(amountDrUsd);
-				bills.setAmountCrUsd(amountCrUsd);
-				bills.setAmountProfitUsd(amountProfitUsd);
-				bills.setAmountDrLoc(amountDrLoc);
-				bills.setAmountCrLoc(amountCrLoc);
-				bills.setAmountProfitLoc(amountProfitLoc);
+				bills.setAmountDr(amountDr.setScale(2,RoundingMode.HALF_UP));
+				bills.setAmountCr(amountCr.setScale(2,RoundingMode.HALF_UP));
+				bills.setAmountProfit(amountProfit.setScale(2,RoundingMode.HALF_UP));
+				bills.setAmountDrUsd(amountDrUsd.setScale(2,RoundingMode.HALF_UP));
+				bills.setEquivalentToRmbDr(equivalentToRmbDr.setScale(2,RoundingMode.HALF_UP));
+				bills.setAmountCrUsd(amountCrUsd.setScale(2,RoundingMode.HALF_UP));
+				bills.setEquivalentToRmbCr(equivalentToRmbCr.setScale(2,RoundingMode.HALF_UP));
+				bills.setAmountProfitUsd(amountProfitUsd.setScale(2,RoundingMode.HALF_UP));
+				bills.setAmountDrLoc(amountDrLoc.setScale(2,RoundingMode.HALF_UP));
+				bills.setAmountCrLoc(amountCrLoc.setScale(2,RoundingMode.HALF_UP));
+				bills.setAmountProfitLoc(amountProfitLoc.setScale(2,RoundingMode.HALF_UP));
 				bills.setDept(dept1);
 				Date date = new Date();
 				SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
@@ -1586,7 +1592,8 @@ public class ReportDataTradeServiceImpl implements IReportDataTradeService {
 			} else {
 				map.put(MagicValues.DATA, null);
 			}
-		} else if (MagicValues.PAID_APPLICATION.equals(reportCode) && MagicValues.PAID_APPLICATION.equals(groupCode)) {
+		}
+		else if (MagicValues.PAID_APPLICATION.equals(reportCode) && MagicValues.PAID_APPLICATION.equals(groupCode)) {
 			FinStlBills finStlBills = finStlBillsService.getById(billId);
 			if (finStlBills != null) {
 				finStlBills.setBankAccountBank(finStlBills.getBankAccountBank() + "/" + finStlBills.getBankAccountNo());
@@ -1743,7 +1750,8 @@ public class ReportDataTradeServiceImpl implements IReportDataTradeService {
 			} else {
 				map.put(MagicValues.DATA, null);
 			}
-		} else if ((MagicValues.SETTLEMENT_CENTER.equals(reportCode) || MagicValues.RECONCILIATION_CENTER.equals(reportCode)
+		}
+		else if ((MagicValues.SETTLEMENT_CENTER.equals(reportCode) || MagicValues.RECONCILIATION_CENTER.equals(reportCode)
 			|| MagicValues.PAID_APPLICATION.equals(reportCode))
 			&& MagicValues.CHARGE_PAID_OFFSET.equals(groupCode)) {
 			FinStlBills finStlBills = finStlBillsService.getById(billId);
@@ -1803,7 +1811,8 @@ public class ReportDataTradeServiceImpl implements IReportDataTradeService {
 			} else {
 				map.put(MagicValues.DATA, null);
 			}
-		} else if ((MagicValues.SETTLEMENT_CENTER.equals(reportCode) || MagicValues.RECONCILIATION_CENTER.equals(reportCode)
+		}
+		else if ((MagicValues.SETTLEMENT_CENTER.equals(reportCode) || MagicValues.RECONCILIATION_CENTER.equals(reportCode)
 			|| MagicValues.PAID_APPLICATION.equals(reportCode))
 			&& (MagicValues.CHARGE_SETTLEMENT.equals(groupCode) || MagicValues.CHARGE.equals(groupCode))) {
 			FinStlBills finStlBills = finStlBillsService.getById(billId);
@@ -1868,7 +1877,8 @@ public class ReportDataTradeServiceImpl implements IReportDataTradeService {
 			} else {
 				map.put(MagicValues.DATA, null);
 			}
-		} else if ((MagicValues.SETTLEMENT_CENTER.equals(reportCode) || MagicValues.RECONCILIATION_CENTER.equals(reportCode) || MagicValues.PAID_APPLICATION.equals(reportCode))
+		}
+		else if ((MagicValues.SETTLEMENT_CENTER.equals(reportCode) || MagicValues.RECONCILIATION_CENTER.equals(reportCode) || MagicValues.PAID_APPLICATION.equals(reportCode))
 			&& (MagicValues.PAID_SETTLEMENT.equals(groupCode) || MagicValues.PAID.equals(groupCode))) {
 			FinStlBills finStlBills = finStlBillsService.getById(billId);
 			if (finStlBills != null) {
@@ -1932,7 +1942,8 @@ public class ReportDataTradeServiceImpl implements IReportDataTradeService {
 			} else {
 				map.put(MagicValues.DATA, null);
 			}
-		} else if (MagicValues.INVOICE_APPLICATION.equals(reportCode) && MagicValues.CHARGE_PAID_OFFSET.equals(groupCode)) {
+		}
+		else if (MagicValues.INVOICE_APPLICATION.equals(reportCode) && MagicValues.CHARGE_PAID_OFFSET.equals(groupCode)) {
 			FinInvoices finStlBills = finInvoicesService.getById(billId);
 			if (finStlBills != null) {
 				if (ObjectUtils.isNotNull(finStlBills.getCorpId())) {
@@ -1991,7 +2002,8 @@ public class ReportDataTradeServiceImpl implements IReportDataTradeService {
 			} else {
 				map.put(MagicValues.DATA, null);
 			}
-		} else if (MagicValues.INVOICE_APPLICATION.equals(reportCode) && MagicValues.CHARGE.equals(groupCode)) {
+		}
+		else if (MagicValues.INVOICE_APPLICATION.equals(reportCode) && MagicValues.CHARGE.equals(groupCode)) {
 			FinInvoices finStlBills = finInvoicesService.getById(billId);
 			if (finStlBills != null) {
 				if (ObjectUtils.isNotNull(finStlBills.getCorpId())) {
@@ -2053,7 +2065,8 @@ public class ReportDataTradeServiceImpl implements IReportDataTradeService {
 			} else {
 				map.put(MagicValues.DATA, null);
 			}
-		} else if (MagicValues.COST.equals(reportCode) && MagicValues.MEET.equals(groupCode) && MagicValues.AMEND.equals(type)) {
+		}
+		else if (MagicValues.COST.equals(reportCode) && MagicValues.MEET.equals(groupCode) && MagicValues.AMEND.equals(type)) {
 			Bills bills;
 			Amends amends = amendsService.getById(billId);
 			LambdaQueryWrapper<FeeCenter> lambdaQueryWrapper = new LambdaQueryWrapper<FeeCenter>()
@@ -2165,7 +2178,8 @@ public class ReportDataTradeServiceImpl implements IReportDataTradeService {
 			} else {
 				map.put(MagicValues.DATA, null);
 			}
-		} else if (MagicValues.COST.equals(reportCode) && MagicValues.MEET_BILL.equals(groupCode) && MagicValues.AMEND.equals(type)) {
+		}
+		else if (MagicValues.COST.equals(reportCode) && MagicValues.MEET_BILL.equals(groupCode) && MagicValues.AMEND.equals(type)) {
 			Bills bills;
 			Amends amends = amendsService.getById(billId);
 			LambdaQueryWrapper<FeeCenter> lambdaQueryWrapper = new LambdaQueryWrapper<FeeCenter>()
@@ -2278,7 +2292,8 @@ public class ReportDataTradeServiceImpl implements IReportDataTradeService {
 			} else {
 				map.put(MagicValues.DATA, null);
 			}
-		} else if (MagicValues.COST.equals(reportCode) && MagicValues.RECEIVABLE.equals(groupCode) && MagicValues.AMEND.equals(type)) {
+		}
+		else if (MagicValues.COST.equals(reportCode) && MagicValues.RECEIVABLE.equals(groupCode) && MagicValues.AMEND.equals(type)) {
 			Bills bills;
 			Amends amends = amendsService.getById(billId);
 			LambdaQueryWrapper<FeeCenter> lambdaQueryWrapper = new LambdaQueryWrapper<FeeCenter>()
@@ -2390,7 +2405,8 @@ public class ReportDataTradeServiceImpl implements IReportDataTradeService {
 			} else {
 				map.put(MagicValues.DATA, null);
 			}
-		} else if (MagicValues.COST.equals(reportCode) && MagicValues.RECEIVABLE_BILL.equals(groupCode) && MagicValues.AMEND.equals(type)) {
+		}
+		else if (MagicValues.COST.equals(reportCode) && MagicValues.RECEIVABLE_BILL.equals(groupCode) && MagicValues.AMEND.equals(type)) {
 			Bills bills;
 			Amends amends = amendsService.getById(billId);
 			LambdaQueryWrapper<FeeCenter> lambdaQueryWrapper = new LambdaQueryWrapper<FeeCenter>()
@@ -2503,7 +2519,8 @@ public class ReportDataTradeServiceImpl implements IReportDataTradeService {
 			} else {
 				map.put(MagicValues.DATA, null);
 			}
-		} else if ((MagicValues.AMEND_SI.equals(reportCode) || MagicValues.AMEND_SE.equals(reportCode)) && MagicValues.AMEND.equals(type)
+		}
+		else if ((MagicValues.AMEND_SI.equals(reportCode) || MagicValues.AMEND_SE.equals(reportCode)) && MagicValues.AMEND.equals(type)
 			&& (MagicValues.SE.equals(groupCode) || MagicValues.SI.equals(groupCode))) {
 			List<Bills> list = new ArrayList<>();
 			Amends amends = amendsService.getById(billId);