wfg 1 year ago
parent
commit
7a1c9a0034

+ 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
+ 420 - 1357
blade-service/blade-los/src/main/java/org/springblade/los/Util/RegularUtils.java


+ 55 - 56
blade-service/blade-los/src/main/java/org/springblade/los/edi/dto/InttraSoDto.java

@@ -1,5 +1,6 @@
 package org.springblade.los.edi.dto;
 
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import lombok.Data;
 import org.hibernate.validator.constraints.Length;
 import org.springblade.los.Util.LosNotNull;
@@ -10,6 +11,8 @@ import java.math.BigDecimal;
 import java.util.List;
 import java.util.Map;
 
+// 定义
+
 /**
  * @author :jixinyuan
  * @date : 2023/12/20
@@ -22,11 +25,11 @@ public class InttraSoDto {
 	/**
 	 * 发送方标识
 	 */
-	private String identifying;
+	private String senderIdentifying;
 	/**
 	 * 日期  (日期(yymmdd):时间(hhmm))
 	 */
-	private String date;
+	private String messageDate;
 	/**
 	 * 文件交换编号
 	 */
@@ -52,7 +55,7 @@ public class InttraSoDto {
 	/**
 	 * 文件建立时间  (ccyymmddhhmm)
 	 */
-	private String filesDate;
+	private String fileDate;
 
 	/*   TSR+   */
 	/**
@@ -71,6 +74,12 @@ public class InttraSoDto {
 	 */
 	private String bookingRemarks;
 
+	/*   FTX+AAI+++   */
+	/**
+	 * 备注
+	 */
+	private String siRemarks;
+
 	/*   FTX+BLC+++   */
 	/**
 	 * 提单备注
@@ -97,9 +106,14 @@ public class InttraSoDto {
 
 	/*   CNT+16:   */
 	/**
-	 * 总箱数
+	 * 预配总箱数
 	 */
-	private int totalBoxNumber;
+	private int totalPreCntrQty;
+
+	/**
+	 * 已配总箱数
+	 */
+	private int totalCntrQty;
 
 	/*   LOC+57+   */
 	/**
@@ -282,20 +296,7 @@ public class InttraSoDto {
 	/**
 	 * 地址 1
 	 */
-	private String inttraToDoorAddrOne;
-	/**
-	 * 地址 2
-	 */
-	private String inttraToDoorAddrTwo;
-	/**
-	 * 地址 3
-	 */
-	private String inttraToDoorAddrThree;
-	/**
-	 * 地址 4
-	 */
-	private String inttraToDoorAddrFour;
-
+	private String inttraToDoorAddr;
 	/*   CTA+IC+:  */
 	/**
 	 * TO DOOR 联系人
@@ -316,19 +317,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 +346,6 @@ public class InttraSoDto {
 	 * 发送方代码
 	 */
 	private String senderCode;
-	private String senderCodeS;
 	/**
 	 * 发送方称呼
 	 */
@@ -494,37 +482,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 String ventilation;
-
-	/*    TMP+2+   */
-	/**
-	 * 温度
-	 */
-	private Integer temperature;
+	private List<Map<String, Object>> preCntrs;
 	/**
-	 * 温度单位
+	 * 已装箱
 	 */
-	private String temperatureUnit;
+	private List<Map<String, Object>> loadedCntrs;
 
 	/*    UNT+   */
 	/**
@@ -559,4 +528,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()));
+		}
+	}
 }

+ 21 - 3
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,7 +30,23 @@ public interface IEDISenderService {
 	 * @param inttraSiDto 数据
 	 * @return 结果
 	 */
-	FilesCenter sendingInttraSI(InttraSiDto inttraSiDto);
+	FilesCenter sendingInttraSI(InttraSoDto inttraSiDto, JsonNode ediParamCarrier);
+
+	/**
+	 * apl so
+	 * @param aplSoDto
+	 * @param ediParamCarrier
+	 * @return
+	 */
+	FilesCenter sendingAplSo(InttraSoDto aplSoDto, JsonNode ediParamCarrier);
+
+	/**
+	 * apl si
+	 * @param aplSoDto
+	 * @param ediParamCarrier
+	 * @return
+	 */
+	FilesCenter sendingAplSi(InttraSoDto aplSoDto, JsonNode ediParamCarrier);
 
 	/**
 	 * edi  SI-提单
@@ -44,6 +62,6 @@ public interface IEDISenderService {
 	 * @param aplSoDto 数据
 	 * @return 结果
 	 */
-	FilesCenter sendingAplSo(APLSoDto aplSoDto);
+	FilesCenter sendingAplSo_bak(APLSoDto aplSoDto);
 
 }

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


File diff suppressed because it is too large
+ 331 - 796
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