Browse Source

Merge remote-tracking branch 'origin/dev' into dev

liyuan 6 months ago
parent
commit
98d260fcee

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

@@ -306,9 +306,10 @@ public class Bills implements Serializable {
 	@ApiModelProperty(value = "船公司约号")
 	private String carrierArgreementNo;
 	/**
-	 * 订舱号
+	 * 订舱号,conversion=true 转大写
 	 */
 	@ApiModelProperty(value = "订舱号")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String bookingNo;
 	/**
 	 * 订舱日期 (预计到港)
@@ -353,6 +354,7 @@ public class Bills implements Serializable {
 	 * 航次
 	 */
 	@ApiModelProperty(value = "航次")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String voyageNo;
 	/**
 	 * MB/L NO
@@ -758,6 +760,7 @@ public class Bills implements Serializable {
 	 */
 	@ApiModelProperty(value = "MB/L 付款地点")
 	@TableField("m_payplace")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String mpayplace;
 	/**
 	 * MB/L 发货人 id
@@ -1169,31 +1172,37 @@ public class Bills implements Serializable {
 	 * IEIEC
 	 */
 	@TableField(exist = false)
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String ediIeiec;
 	/**
 	 * IEGSTIN
 	 */
 	@TableField(exist = false)
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String ediIegstin;
 	/**
 	 * IEMAIL
 	 */
 	@TableField(exist = false)
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String ediIemail;
 	/**
 	 * TACNO
 	 */
 	@TableField(exist = false)
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String ediTacno;
 	/**
 	 * ERNNO
 	 */
 	@TableField(exist = false)
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String ediErnno;
 	/**
 	 * VAENO
 	 */
 	@TableField(exist = false)
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String ediVaeno;
 	/**
 	 * DOOR TO 客户名称
@@ -1514,6 +1523,7 @@ public class Bills implements Serializable {
 	 * SI 备注
 	 */
 	@ApiModelProperty(value = "SI 备注")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String siRemarks;
 
 	/**

+ 7 - 6
blade-service/blade-los/src/main/java/org/springblade/los/business/sea/service/impl/TemplateImportServiceImpl.java

@@ -1280,7 +1280,7 @@ public class TemplateImportServiceImpl implements ITemplateImportService {
 				}
 				BigDecimal sumQty = new BigDecimal(0L);
 				BigDecimal sumGw = new BigDecimal(0L);
-				BigDecimal sumVol = new BigDecimal(BigInteger.ZERO);
+				BigDecimal sumVol = BigDecimal.ZERO;
 
 				for(int cr=r+1; cr<=lastRow; cr++) {
 					String cntrType = getSheetCellValueAsString(sheet, cr, 0);
@@ -1323,8 +1323,8 @@ public class TemplateImportServiceImpl implements ITemplateImportService {
 				bills.setGrossWeight(sumGw);
 				bills.setCfsGrossWeight(sumGw);
 				sumVol.setScale(3, BigDecimal.ROUND_HALF_UP);
-				bills.setMeasurement(sumVol);
-				bills.setCfsMeasurement(sumVol);
+				bills.setMeasurement(containersList.stream().map(Containers::getMeasurement).reduce(BigDecimal.ZERO,BigDecimal::add).setScale(2, RoundingMode.HALF_UP));
+				bills.setCfsMeasurement(bills.getMeasurement());
 			}
 		}
 
@@ -1391,8 +1391,7 @@ public class TemplateImportServiceImpl implements ITemplateImportService {
 			cntr.setId(null);
 		}
 
-		// containersService.removeByPid(bills.getId(), "");
-		/*
+		containersService.removeByPid(bills.getId(), "");
 		if(containersList.size()>0) {
 			// 保存配箱箱号明细
 			containersService.submitList(containersList);
@@ -1403,7 +1402,6 @@ public class TemplateImportServiceImpl implements ITemplateImportService {
 				.eq(Containers::getTenantId, AuthUtil.getTenantId())
 				.eq(Containers::getIsDeleted, 0));
 		}
-        */
 
 		bills.setContainersList(containersList);
 		bills.setPreContainersList(preContainers);
@@ -1415,6 +1413,9 @@ public class TemplateImportServiceImpl implements ITemplateImportService {
 		bills.setDetail(seaBillsDetail);
 		resetBillsNullValuesAsEmptyString(bills);
 
+		// billsService.updateById(bills);
+		billsService.submit(bills);
+
 		return R.data(bills);
 	}
 

+ 26 - 13
blade-service/blade-los/src/main/java/org/springblade/los/finance/fee/mapper/FinAccBillsMapper.xml

@@ -449,12 +449,15 @@
         acc.bill_no billNo,
         acc.mblno mblNo,
         acc.business_type businessType,
-        CASE
-        acc.business_type
         WHEN 'SI' THEN
         acc.eta
+        WHEN 'SIA' THEN
+        acc.eta
         WHEN 'SE' THEN
-        acc.etd ELSE ''
+        acc.etd
+        WHEN 'SEA' THEN
+        acc.etd
+        ELSE ''
         END AS etdDate,
         SUM(( CASE acc.account_dc WHEN 'D' THEN acc.amount_dr WHEN 'C' THEN acc.amount_cr ELSE 0 END ) ) AS amount,
         SUM(( CASE acc.account_dc WHEN 'D' THEN acc.amount_dr_usd WHEN 'C' THEN acc.amount_cr_usd ELSE 0 END ) ) AS amountUsd,
@@ -528,7 +531,7 @@
         <if test='fee.sortType == null or fee.sortType == ""'>
             GROUP BY acc.mblno
         </if>
-        ORDER BY acc.corp_id
+        ORDER BY acc.mblno,acc.corp_id
     </select>
     <select id="feeSummaryDetailNot" resultType="org.springblade.los.statisticAnalysis.FeeSummaryDetailNotRD">
         SELECT
@@ -553,8 +556,13 @@
             acc.business_type
             WHEN 'SI' THEN
             acc.eta
+            WHEN 'SIA' THEN
+            acc.eta
             WHEN 'SE' THEN
-            acc.etd ELSE ''
+            acc.etd
+            WHEN 'SEA' THEN
+            acc.etd
+            ELSE ''
             END AS etd,
             acc.pod_en_name pod,
             acc.pol_en_name pol,
@@ -624,15 +632,15 @@
             </if>
         </if>
         <if test='fee.sortType != null and fee.sortType != "" and fee.sortType == "1"'>
-            GROUP BY acc.corp_id
+            GROUP BY acc.corp_id,acc.mblno
         </if>
         <if test='fee.sortType != null and fee.sortType != "" and fee.sortType == "3"'>
-            GROUP BY acc.mblno
+            GROUP BY acc.corp_id,acc.mblno
         </if>
         <if test='fee.sortType == null or fee.sortType == ""'>
-            GROUP BY acc.mblno
+            GROUP BY  acc.corp_id,acc.mblno
         </if>
-        ORDER BY acc.corp_id
+        ORDER BY acc.mblno,acc.corp_id
     </select>
     <select id="feeSummaryDetailExportNot"
             resultType="org.springblade.los.statisticAnalysis.FeeSummaryDetailNotRD">
@@ -658,8 +666,13 @@
         acc.business_type
         WHEN 'SI' THEN
         acc.eta
+        WHEN 'SIA' THEN
+        acc.eta
         WHEN 'SE' THEN
-        acc.etd ELSE ''
+        acc.etd
+        WHEN 'SEA' THEN
+        acc.etd
+        ELSE ''
         END AS etd,
         acc.pod_en_name pod,
         acc.pol_en_name pol,
@@ -729,13 +742,13 @@
             </if>
         </if>
         <if test='fee.sortType != null and fee.sortType != "" and fee.sortType == "1"'>
-            GROUP BY acc.corp_id
+            GROUP BY acc.corp_id,acc.mblno
         </if>
         <if test='fee.sortType != null and fee.sortType != "" and fee.sortType == "3"'>
-            GROUP BY acc.mblno
+            GROUP BY acc.corp_id,acc.mblno
         </if>
         <if test='fee.sortType == null or fee.sortType == ""'>
-            GROUP BY acc.mblno
+            GROUP BY acc.corp_id,acc.mblno
         </if>
         ORDER BY acc.corp_id
     </select>

+ 3 - 1
blade-service/blade-los/src/main/java/org/springblade/los/statisticAnalysis/service/IStatisticAnalysisService.java

@@ -17,11 +17,13 @@
 package org.springblade.los.statisticAnalysis.service;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.tool.api.R;
 import org.springblade.los.business.sea.entity.Bills;
 import org.springblade.los.excel.BoxNumberProfitExcel;
 import org.springblade.los.statisticAnalysis.*;
+import org.springblade.los.view.entity.FinanceProfit;
 
 import java.util.List;
 import java.util.Map;
@@ -32,7 +34,7 @@ import java.util.Map;
  * @author BladeX
  * @since 2023-10-10
  */
-public interface IStatisticAnalysisService {
+public interface IStatisticAnalysisService extends IService<FinanceProfit> {
 
 
 	/**

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

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.AllArgsConstructor;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
@@ -54,7 +55,7 @@ import java.util.stream.Collectors;
  */
 @Service
 @AllArgsConstructor
-public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
+public class StatisticAnalysisServiceImpl extends ServiceImpl<FinanceProfitMapper, FinanceProfit> implements IStatisticAnalysisService {
 
 	private final BillsMapper billsMapper;
 	private final AeaBillsMapper aeaBillsMapper;
@@ -132,7 +133,7 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
 		List<FinanceProfitDtoList> financeProfitList;
 		//是否合并amend费用  true 合并  false 不合并
 		if ("1".equals(financeProfit.getMergeAmendFee())) {
-			financeProfitList = financeProfitMapper.financeProfit(financeProfit, page);
+			financeProfitList = baseMapper.financeProfitList(financeProfit, page);
 			String mblno = financeProfitList.stream().map(FinanceProfitDtoList::getMblNo).filter(Objects::nonNull).distinct().collect(Collectors.joining(","));
 			LambdaQueryWrapper<Amends> lambdaQueryWrapper = new LambdaQueryWrapper<Amends>()
 				.eq(Amends::getTenantId, AuthUtil.getTenantId())
@@ -240,12 +241,12 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
 			if (ObjectUtils.isNotNull(financeProfit.getBillType())) {
 				financeProfit.setBillType(financeProfit.getBillType() + ",SEA,SIA,AEA,AIA");
 			}
-			financeProfitList = financeProfitMapper.financeProfit(financeProfit, page);
+			financeProfitList = baseMapper.financeProfitList(financeProfit, page);
 		}
 		List<FinanceProfit> financeProfitDataList = new ArrayList<>();
 		if (!financeProfitList.isEmpty()) {
 			String mblNo = financeProfitList.stream().map(FinanceProfitDtoList::getMblNo).distinct().collect(Collectors.joining(","));
-			financeProfitDataList = financeProfitMapper.selectList(new LambdaQueryWrapper<FinanceProfit>()
+			financeProfitDataList = baseMapper.selectList(new LambdaQueryWrapper<FinanceProfit>()
 				.apply("find_in_set(mblno,'" + mblNo + "')")
 				.apply("find_in_set(business_type,'SE,SI,AE,AI')")
 			);
@@ -1029,7 +1030,7 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
 		List<FinanceProfitDtoList> financeProfitList;
 		//是否合并amend费用  true 合并  false 不合并
 		if ("1".equals(financeProfit.getMergeAmendFee())) {
-			financeProfitList = financeProfitMapper.financeProfitSum(financeProfit);
+			financeProfitList = baseMapper.financeProfitSumList(financeProfit);
 			String mblno = financeProfitList.stream().map(FinanceProfitDtoList::getMblNo).filter(Objects::nonNull).distinct().collect(Collectors.joining(","));
 			LambdaQueryWrapper<Amends> lambdaQueryWrapper = new LambdaQueryWrapper<Amends>()
 				.eq(Amends::getTenantId, AuthUtil.getTenantId())
@@ -1138,7 +1139,7 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
 			if (ObjectUtils.isNotNull(financeProfit.getBillType())) {
 				financeProfit.setBillType(financeProfit.getBillType() + ",SEA,SIA,AEA,AIA");
 			}
-			financeProfitList = financeProfitMapper.financeProfitSum(financeProfit);
+			financeProfitList = baseMapper.financeProfitSumList(financeProfit);
 			for (FinanceProfitDtoList item : financeProfitList) {
 				item.setRealAmountProfitLoc(item.getRealAmountDrLoc().subtract(item.getRealAmountCrLoc()).setScale(2, RoundingMode.HALF_UP));
 			}
@@ -1209,7 +1210,7 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
 		List<FinanceProfitDtoList> financeProfitList = new ArrayList<>();
 		//是否合并amend费用  true 合并  false 不合并
 		if (ObjectUtils.isNotNull(financeProfit.getMergeAmendFee())) {
-			financeProfitList = financeProfitMapper.financeProfitSum(financeProfit);
+			financeProfitList = baseMapper.financeProfitSumList(financeProfit);
 			String mblno = financeProfitList.stream().map(FinanceProfitDtoList::getMblNo).filter(Objects::nonNull).distinct().collect(Collectors.joining(","));
 			LambdaQueryWrapper<Amends> lambdaQueryWrapper = new LambdaQueryWrapper<Amends>()
 				.eq(Amends::getTenantId, AuthUtil.getTenantId())
@@ -1316,12 +1317,12 @@ public class StatisticAnalysisServiceImpl implements IStatisticAnalysisService {
 			}
 		} else {
 			financeProfit.setBillType(financeProfit.getBillType() + ",SEA,SIA,AEA,AIA");
-			financeProfitList = financeProfitMapper.financeProfitSum(financeProfit);
+			financeProfitList = baseMapper.financeProfitSumList(financeProfit);
 		}
 		List<FinanceProfit> financeProfitDataList = new ArrayList<>();
 		if (!financeProfitList.isEmpty()) {
 			String mblNo = financeProfitList.stream().map(FinanceProfitDtoList::getMblNo).distinct().collect(Collectors.joining(","));
-			financeProfitDataList = financeProfitMapper.selectList(new LambdaQueryWrapper<FinanceProfit>()
+			financeProfitDataList = baseMapper.selectList(new LambdaQueryWrapper<FinanceProfit>()
 				.apply("find_in_set(mblno,'" + mblNo + "')")
 				.apply("find_in_set(business_type,'SE,SI,AE,AI')")
 			);

+ 8 - 4
blade-service/blade-los/src/main/java/org/springblade/los/view/mapper/FinanceProfitMapper.java

@@ -16,12 +16,13 @@
  */
 package org.springblade.los.view.mapper;
 
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.apache.ibatis.annotations.Param;
 import org.springblade.los.statisticAnalysis.FinanceProfitDtoList;
 import org.springblade.los.view.entity.FinanceProfit;
 import org.springblade.los.view.vo.FinanceProfitVO;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
+
 import java.util.List;
 
 /**
@@ -39,9 +40,12 @@ public interface FinanceProfitMapper extends BaseMapper<FinanceProfit> {
 	 * @param financeProfit
 	 * @return
 	 */
+
 	List<FinanceProfitVO> selectFinanceProfitPage(IPage page, FinanceProfitVO financeProfit);
 
-	List<FinanceProfitDtoList> financeProfit(@Param("data")FinanceProfitDtoList financeProfit, IPage<FinanceProfitDtoList> page);
 
-	List<FinanceProfitDtoList> financeProfitSum(@Param("data")FinanceProfitDtoList financeProfit);
+	List<FinanceProfitDtoList> financeProfitList(@Param("data")FinanceProfitDtoList financeProfit, IPage<FinanceProfitDtoList> page);
+
+
+	List<FinanceProfitDtoList> financeProfitSumList(@Param("data")FinanceProfitDtoList financeProfit);
 }

+ 2 - 2
blade-service/blade-los/src/main/java/org/springblade/los/view/mapper/FinanceProfitMapper.xml

@@ -45,7 +45,7 @@
     <select id="selectFinanceProfitPage" resultMap="financeProfitResultMap">
         select * from los_finance_profit where is_deleted = 0
     </select>
-    <select id="financeProfit" resultType="org.springblade.los.statisticAnalysis.FinanceProfitDtoList">
+    <select id="financeProfitList" resultType="org.springblade.los.statisticAnalysis.FinanceProfitDtoList">
     select
         seb.business_type AS billType,
         seb.bill_no AS billNo,
@@ -167,7 +167,7 @@
         ORDER BY
         seb.create_time
     </select>
-    <select id="financeProfitSum" resultType="org.springblade.los.statisticAnalysis.FinanceProfitDtoList">
+    <select id="financeProfitSumList" resultType="org.springblade.los.statisticAnalysis.FinanceProfitDtoList">
         select
         seb.business_type AS billType,
         seb.bill_no AS billNo,