Browse Source

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

纪新园 1 year ago
parent
commit
f2cb06360a

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

@@ -146,5 +146,10 @@ public class BusinessType implements Serializable {
 	@ApiModelProperty(value = "是否启用凭证模版")
 	private String enableVoucher;
 
+	/**
+	 * 排序
+	 */
+	@ApiModelProperty(value = "排序")
+	private Integer zorder;
 
 }

+ 13 - 0
blade-service-api/blade-los-api/src/main/java/org/springblade/los/edi/entity/EdiTypeParams.java

@@ -0,0 +1,13 @@
+package org.springblade.los.edi.entity;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+public class EdiTypeParams  implements Serializable {
+	/**
+	 *
+	 */
+	private String A;
+}

+ 5 - 0
blade-service-api/blade-los-api/src/main/java/org/springblade/los/edi/entity/EdiTypes.java

@@ -126,6 +126,11 @@ public class EdiTypes implements Serializable {
 	@ApiModelProperty(value = "JSON 对象数组,权限用户")
 	private String userlist;
 	/**
+	 * JSON 对象,参数
+	 */
+	@ApiModelProperty(value = "JSON 对象,参数")
+	private String params;
+	/**
 	 * 版本
 	 */
 	@ApiModelProperty(value = "版本")

File diff suppressed because it is too large
+ 480 - 1170
blade-service/blade-los/src/main/java/org/springblade/los/Util/RegularUtils.java


+ 2 - 1
blade-service/blade-los/src/main/java/org/springblade/los/basic/business/controller/BusinessTypeController.java

@@ -88,7 +88,8 @@ public class BusinessTypeController extends BladeController {
 			.like(ObjectUtils.isNotNull(businessType.getStatus()), BusinessType::getStatus, businessType.getStatus())
 			.eq(ObjectUtils.isNotNull(businessType.getEnableFee()), BusinessType::getEnableFee, businessType.getEnableFee())
 			.eq(ObjectUtils.isNotNull(businessType.getEnableVoucher()), BusinessType::getEnableVoucher, businessType.getEnableVoucher())
-			.orderByDesc(BusinessType::getCreateTime);
+			 // .orderByDesc(BusinessType::getCreateTime)
+			.orderBy(true, true, BusinessType::getZorder);
 		IPage<BusinessType> pages = bBusinessTypeService.page(Condition.getPage(query), lambdaQueryWrapper);
 		return R.data(pages);
 	}

+ 106 - 65
blade-service/blade-los/src/main/java/org/springblade/los/edi/dto/InttraSoDto.java

@@ -1,5 +1,7 @@
 package org.springblade.los.edi.dto;
 
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import org.hibernate.validator.constraints.Length;
 import org.springblade.los.Util.LosNotNull;
@@ -10,6 +12,8 @@ import java.math.BigDecimal;
 import java.util.List;
 import java.util.Map;
 
+// 定义
+
 /**
  * @author :jixinyuan
  * @date : 2023/12/20
@@ -22,11 +26,11 @@ public class InttraSoDto {
 	/**
 	 * 发送方标识
 	 */
-	private String identifying;
+	private String senderIdentifying;
 	/**
 	 * 日期  (日期(yymmdd):时间(hhmm))
 	 */
-	private String date;
+	private String messageDate;
 	/**
 	 * 文件交换编号
 	 */
@@ -52,7 +56,7 @@ public class InttraSoDto {
 	/**
 	 * 文件建立时间  (ccyymmddhhmm)
 	 */
-	private String filesDate;
+	private String fileDate;
 
 	/*   TSR+   */
 	/**
@@ -64,6 +68,10 @@ public class InttraSoDto {
 	 * 拼箱类型
 	 */
 	private String lclType;
+	/**
+	 * 装箱方式
+	 */
+	private String loadType;
 
 	/*   FTX+AAI+++   */
 	/**
@@ -71,6 +79,12 @@ public class InttraSoDto {
 	 */
 	private String bookingRemarks;
 
+	/*   FTX+AAI+++   */
+	/**
+	 * 备注
+	 */
+	private String siRemarks;
+
 	/*   FTX+BLC+++   */
 	/**
 	 * 提单备注
@@ -97,9 +111,14 @@ public class InttraSoDto {
 
 	/*   CNT+16:   */
 	/**
-	 * 总箱数
+	 * 预配总箱数
 	 */
-	private int totalBoxNumber;
+	private int totalPreCntrQty;
+
+	/**
+	 * 已配总箱数
+	 */
+	private int totalCntrQty;
 
 	/*   LOC+57+   */
 	/**
@@ -135,9 +154,14 @@ public class InttraSoDto {
 
 	/*   RFF+BM:   */
 	/**
-	 * 提单号
+	 * 主单号
+	 */
+	private String mblNo;
+
+	/**
+	 * 分单号
 	 */
-	private String billNo;
+	private String hblNo;
 
 	/*   RFF+CT:   */
 	/**
@@ -171,6 +195,18 @@ public class InttraSoDto {
 
 	/*   TDT+20+   */
 	/**
+	 * 船名Id
+	 */
+	private Long vesselId;
+	/**
+	 * 船名
+	 */
+	private String vesselName;
+	/**
+	 * 船名代码
+	 */
+	private String vesselCode;
+	/**
 	 * 航次
 	 */
 	private String voyageNo;
@@ -178,10 +214,6 @@ public class InttraSoDto {
 	 * 船司代码
 	 */
 	private String vesselCarrierCode;
-	/**
-	 * 船名
-	 */
-	private String vesselName;
 
 	/*   LOC+9+   */
 	/**
@@ -229,6 +261,14 @@ public class InttraSoDto {
 	 */
 	private String placeDeliveryName;
 
+	/**
+	 * 目的地代码
+	 */
+	private String placeDestinationCode;
+	/**
+	 * 目的地
+	 */
+	private String placeDestinationName;
 	/*   NAD+CZ+++   */
 	/**
 	 * 发货人
@@ -246,6 +286,10 @@ public class InttraSoDto {
 	 * 通知人
 	 */
 	private String hNotify;
+	/**
+	 * 第二通知人
+	 */
+	private String hNotify2;
 	/*    NAD+CA+   */
 	/**
 	 * 船司代码
@@ -274,28 +318,32 @@ public class InttraSoDto {
 	 */
 	private String attnEmail;
 
-	/*   NAD+ST+++   */
 	/**
-	 * TO DOOR 联系信息
+	 * 场站 id
 	 */
-	private String inttraToDoorName;
+	private Long cyId;
 	/**
-	 * 地址 1
+	 * 场站代码
 	 */
-	private String inttraToDoorAddrOne;
+	private String cyCode;
 	/**
-	 * 地址 2
+	 * 场站中文名称
 	 */
-	private String inttraToDoorAddrTwo;
+	private String cyCnName;
 	/**
-	 * 地址 3
+	 * 场站英文名称
 	 */
-	private String inttraToDoorAddrThree;
+	private String cyEnName;
+
+	/*   NAD+ST+++   */
 	/**
-	 * 地址 4
+	 * TO DOOR 联系信息
 	 */
-	private String inttraToDoorAddrFour;
-
+	private String inttraToDoorName;
+	/**
+	 * 地址 1
+	 */
+	private String inttraToDoorAddr;
 	/*   CTA+IC+:  */
 	/**
 	 * TO DOOR 联系人
@@ -316,19 +364,7 @@ public class InttraSoDto {
 	/**
 	 * 地址 1
 	 */
-	private String inttraDoorToAddrOne;
-	/**
-	 * 地址 2
-	 */
-	private String inttraDoorToAddrTwo;
-	/**
-	 * 地址 3
-	 */
-	private String inttraDoorToAddrThree;
-	/**
-	 * 地址 4
-	 */
-	private String inttraDoorToAddrFour;
+	private String inttraDoorToAddr;
 
 	/*   CTA+IC+:  */
 	/**
@@ -357,7 +393,6 @@ public class InttraSoDto {
 	 * 发送方代码
 	 */
 	private String senderCode;
-	private String senderCodeS;
 	/**
 	 * 发送方称呼
 	 */
@@ -395,11 +430,6 @@ public class InttraSoDto {
 	 */
 	private int billLadingNumber;
 
-	/*     GID+1+   */
-	/**
-	 * 包装件数
-	 */
-	private BigDecimal packagesNumbers;
 	/**
 	 * 包装代码
 	 */
@@ -494,37 +524,18 @@ public class InttraSoDto {
 
 	/*    EQD+CN++   */
 	/**
-	 * 箱型代码
-	 */
-	private String boxCode;
-	/**
 	 * 货主箱标识
 	 */
 	private String shipperBoxIdentification;
 
-	private List<Map<String,Object>> box;
-
-	/*    EQN+   */
 	/**
-	 * 箱
+	 * 预配箱
 	 */
-	private BigDecimal boxNumber;
-
-	/*    MEA+AAE+AAS+CBM:   */
+	private List<Map<String, Object>> preCntrs;
 	/**
-	 * 冷藏通风量
+	 * 已装箱
 	 */
-	private String ventilation;
-
-	/*    TMP+2+   */
-	/**
-	 * 温度
-	 */
-	private Integer temperature;
-	/**
-	 * 温度单位
-	 */
-	private String temperatureUnit;
+	private List<Map<String, Object>> loadedCntrs;
 
 	/*    UNT+   */
 	/**
@@ -559,4 +570,34 @@ public class InttraSoDto {
 	public Boolean isToDoorServiceTerm (){
 		return this.transportTermCode.equals("27") || this.transportTermCode.equals("29");
 	}
+
+	public Boolean ediTypeIsHYCK_INTTRA_SO (){
+		if(ObjectUtils.isNull(this.ediTypes)){
+			return false;
+		}else {
+			return ("HYCK".equals(this.ediTypes.getType()) && "INTTRA-SO".equals(ediTypes.getCode()));
+		}
+	}
+
+	public Boolean ediTypeIsHYCK_INTTRA_SI (){
+		if(ObjectUtils.isNull(this.ediTypes)){
+			return false;
+		}else {
+			return ("HYCK".equals(this.ediTypes.getType()) && "INTTRA-SI".equals(ediTypes.getCode()));
+		}
+	}
+	public Boolean ediTypeIsHYCK_APL_SO (){
+		if(ObjectUtils.isNull(this.ediTypes)){
+			return false;
+		}else {
+			return ("HYCK".equals(this.ediTypes.getType()) && "APL-SO".equals(ediTypes.getCode()));
+		}
+	}
+	public Boolean ediTypeIsHYCK_APL_SI (){
+		if(ObjectUtils.isNull(this.ediTypes)){
+			return false;
+		}else {
+			return ("HYCK".equals(this.ediTypes.getType()) && "APL-SI".equals(ediTypes.getCode()));
+		}
+	}
 }

+ 15 - 12
blade-service/blade-los/src/main/java/org/springblade/los/edi/service/IEDISenderService.java

@@ -1,10 +1,12 @@
 package org.springblade.los.edi.service;
 
+import com.fasterxml.jackson.databind.JsonNode;
 import org.springblade.los.business.files.entity.FilesCenter;
 import org.springblade.los.edi.dto.APLSoDto;
 import org.springblade.los.edi.dto.InttraSiBillDto;
 import org.springblade.los.edi.dto.InttraSiDto;
 import org.springblade.los.edi.dto.InttraSoDto;
+import org.springframework.validation.annotation.Validated;
 
 /**
  * @author :jixinyuan
@@ -20,7 +22,7 @@ public interface IEDISenderService {
 	 * @return 结果
 	 */
 
-	FilesCenter sendingInttraSo(InttraSoDto inttraSoDto);
+	FilesCenter sendingInttraSo(InttraSoDto inttraSoDto, JsonNode ediParamCarrier);
 
 	/**
 	 * edi  SI
@@ -28,22 +30,23 @@ public interface IEDISenderService {
 	 * @param inttraSiDto 数据
 	 * @return 结果
 	 */
-	FilesCenter sendingInttraSI(InttraSiDto inttraSiDto);
+	FilesCenter sendingInttraSI(InttraSoDto inttraSiDto, JsonNode ediParamCarrier);
 
 	/**
-	 * edi  SI-提单
-	 *
-	 * @param inttraSiBillDto 数据
-	 * @return 结果
+	 * apl so
+	 * @param aplSoDto
+	 * @param ediParamCarrier
+	 * @return
 	 */
-	FilesCenter sendingInttraSiBill(InttraSiBillDto inttraSiBillDto);
+	FilesCenter sendingAplSo(InttraSoDto aplSoDto, JsonNode ediParamCarrier);
 
 	/**
-	 * edi  Apl  so
-	 *
-	 * @param aplSoDto 数据
-	 * @return 结果
+	 * apl si
+	 * @param aplSoDto
+	 * @param ediParamCarrier
+	 * @return
 	 */
-	FilesCenter sendingAplSo(APLSoDto aplSoDto);
+	FilesCenter sendingAplSi(InttraSoDto aplSoDto, JsonNode ediParamCarrier);
+
 
 }

File diff suppressed because it is too large
+ 372 - 400
blade-service/blade-los/src/main/java/org/springblade/los/edi/service/impl/EDISenderServiceImpl.java


File diff suppressed because it is too large
+ 388 - 788
blade-service/blade-los/src/main/java/org/springblade/los/edi/service/impl/EdiTypesServiceImpl.java


Some files were not shown because too many files changed in this diff