Browse Source

2024年4月1日17:34:47

纪新园 1 year ago
parent
commit
c0534f35d6
29 changed files with 457 additions and 61 deletions
  1. 5 0
      blade-service-api/blade-los-api/src/main/java/org/springblade/los/basic/cntr/entity/BCntrTypes.java
  2. 7 0
      blade-service-api/blade-los-api/src/main/java/org/springblade/los/basic/corps/entity/BCorps.java
  3. 7 0
      blade-service-api/blade-los-api/src/main/java/org/springblade/los/basic/ports/entity/BPorts.java
  4. 13 1
      blade-service-api/blade-los-api/src/main/java/org/springblade/los/basic/vessels/entity/BVessels.java
  5. 33 0
      blade-service-api/blade-los-api/src/main/java/org/springblade/los/business/aea/entity/AeaBills.java
  6. 5 0
      blade-service-api/blade-los-api/src/main/java/org/springblade/los/business/customsDeclaration/entity/CustomsDeclaration.java
  7. 57 0
      blade-service-api/blade-los-api/src/main/java/org/springblade/los/business/sea/entity/Bills.java
  8. 264 28
      blade-service/blade-los/src/main/java/org/springblade/los/Util/StringTools.java
  9. 1 1
      blade-service/blade-los/src/main/java/org/springblade/los/basic/cntr/controller/BCntrTypesController.java
  10. 1 1
      blade-service/blade-los/src/main/java/org/springblade/los/basic/cntr/service/IBCntrTypesService.java
  11. 6 1
      blade-service/blade-los/src/main/java/org/springblade/los/basic/cntr/service/impl/BCntrTypesServiceImpl.java
  12. 1 1
      blade-service/blade-los/src/main/java/org/springblade/los/basic/corps/controller/BCorpsController.java
  13. 1 1
      blade-service/blade-los/src/main/java/org/springblade/los/basic/corps/service/IBCorpsService.java
  14. 6 1
      blade-service/blade-los/src/main/java/org/springblade/los/basic/corps/service/impl/BCorpsServiceImpl.java
  15. 1 1
      blade-service/blade-los/src/main/java/org/springblade/los/basic/ports/controller/BPortsController.java
  16. 1 1
      blade-service/blade-los/src/main/java/org/springblade/los/basic/ports/service/IBPortsService.java
  17. 6 1
      blade-service/blade-los/src/main/java/org/springblade/los/basic/ports/service/impl/BPortsServiceImpl.java
  18. 5 5
      blade-service/blade-los/src/main/java/org/springblade/los/basic/vessels/service/impl/BVesselsServiceImpl.java
  19. 1 1
      blade-service/blade-los/src/main/java/org/springblade/los/business/aea/controller/AeaBillsController.java
  20. 1 1
      blade-service/blade-los/src/main/java/org/springblade/los/business/aea/service/IAeaBillsService.java
  21. 5 1
      blade-service/blade-los/src/main/java/org/springblade/los/business/aea/service/impl/AeaBillsServiceImpl.java
  22. 1 1
      blade-service/blade-los/src/main/java/org/springblade/los/business/customsDeclaration/controller/CustomsDeclarationController.java
  23. 1 1
      blade-service/blade-los/src/main/java/org/springblade/los/business/customsDeclaration/service/ICustomsDeclarationService.java
  24. 6 1
      blade-service/blade-los/src/main/java/org/springblade/los/business/customsDeclaration/service/impl/CustomsDeclarationServiceImpl.java
  25. 2 2
      blade-service/blade-los/src/main/java/org/springblade/los/business/sea/controller/BillsController.java
  26. 2 2
      blade-service/blade-los/src/main/java/org/springblade/los/business/sea/service/IBillsService.java
  27. 9 2
      blade-service/blade-los/src/main/java/org/springblade/los/business/sea/service/impl/BillsServiceImpl.java
  28. 8 6
      blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/mapper/OrderMapper.xml
  29. 1 0
      blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/productLaunch/controller/ProductLaunchController.java

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

@@ -23,6 +23,7 @@ import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import org.springblade.los.basic.utils.ExtendedData;
+import org.springblade.los.utils.LosSpecialHandle;
 
 import javax.validation.constraints.NotEmpty;
 import java.io.Serializable;
@@ -93,6 +94,7 @@ public class BCntrTypes implements Serializable {
 	 * 箱型 ISO 代码,20GP,40HC etc.
 	 */
 	@ApiModelProperty(value = "箱型 ISO 代码,20GP,40HC etc.")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String code;
 	/**
 	 * 箱型 95 码,22G1, 45R1 etc.
@@ -109,11 +111,13 @@ public class BCntrTypes implements Serializable {
 	 * 箱型 GP, HC, COLOAD etc.
 	 */
 	@ApiModelProperty(value = "箱型 GP, HC, COLOAD etc.")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String cntrType;
 	/**
 	 * 尺码 V20, V40, COLOAD etc.
 	 */
 	@ApiModelProperty(value = "尺码 V20, V40, COLOAD etc.")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String cntrSize;
 	/**
 	 * 中文名称
@@ -126,6 +130,7 @@ public class BCntrTypes implements Serializable {
 	 */
 	@ApiModelProperty(value = "英文名称")
 	@NotEmpty(message = "英文名称不能为空")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String enName;
 	/**
 	 * 皮重 KGS

+ 7 - 0
blade-service-api/blade-los-api/src/main/java/org/springblade/los/basic/corps/entity/BCorps.java

@@ -23,6 +23,7 @@ import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import org.springblade.los.basic.utils.ExtendedData;
+import org.springblade.los.utils.LosSpecialHandle;
 
 import javax.validation.constraints.NotEmpty;
 import java.io.Serializable;
@@ -99,6 +100,7 @@ public class BCorps implements Serializable {
 	 */
 	@ApiModelProperty(value = "单位编码")
 	@NotEmpty(message = "单位编码不能为空")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String code;
 	/**
 	 * 统一社会信用代码
@@ -115,17 +117,20 @@ public class BCorps implements Serializable {
 	 * 简称
 	 */
 	@ApiModelProperty(value = "简称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String shortName;
 	/**
 	 * 中文名称
 	 */
 	@ApiModelProperty(value = "中文名称")
 	@NotEmpty(message = "中文名称不能为空")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String cnName;
 	/**
 	 * 英文名称
 	 */
 	@ApiModelProperty(value = "英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String enName;
 	/**
 	 * 国家代码
@@ -151,11 +156,13 @@ public class BCorps implements Serializable {
 	 * 中文地址
 	 */
 	@ApiModelProperty(value = "中文地址")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String cnAddr;
 	/**
 	 * 英文地址
 	 */
 	@ApiModelProperty(value = "英文地址")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String enAddr;
 	/**
 	 * 电话

+ 7 - 0
blade-service-api/blade-los-api/src/main/java/org/springblade/los/basic/ports/entity/BPorts.java

@@ -23,6 +23,7 @@ import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import org.springblade.los.basic.utils.ExtendedData;
+import org.springblade.los.utils.LosSpecialHandle;
 
 import javax.validation.constraints.NotEmpty;
 import java.io.Serializable;
@@ -93,33 +94,39 @@ public class BPorts implements Serializable {
 	 */
 	@ApiModelProperty(value = "港口编码")
 	@NotEmpty(message = "港口编码不能为空")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String code;
 	/**
 	 * 国际编码
 	 */
 	@ApiModelProperty(value = "国际编码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String unCode;
 	/**
 	 * 中文名称
 	 */
 	@ApiModelProperty(value = "中文名称")
 	@NotEmpty(message = "中文名称不能为空")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String cnName;
 	/**
 	 * 英文名称
 	 */
 	@ApiModelProperty(value = "英文名称")
 	@NotEmpty(message = "英文名称不能为空")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String enName;
 	/**
 	 * 国家代码
 	 */
 	@ApiModelProperty(value = "国家代码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String cntyCode;
 	/**
 	 * 国家名称
 	 */
 	@ApiModelProperty(value = "国家名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String cntyName;
 	/**
 	 * 是否海港

+ 13 - 1
blade-service-api/blade-los-api/src/main/java/org/springblade/los/basic/vessels/entity/BVessels.java

@@ -94,44 +94,51 @@ public class BVessels implements Serializable {
 	 */
 	@ApiModelProperty(value = "船舶编码")
 	@NotEmpty(message = "船舶编码不能为空")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String code;
 	/**
 	 * 中文船名
 	 */
 	@ApiModelProperty(value = "中文船名")
 	@NotEmpty(message = "中文船名不能为空")
-	@LosSpecialHandle(massage = "中文船名", space = true, conversion = true)
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String cnName;
 	/**
 	 * 英文船名
 	 */
 	@ApiModelProperty(value = "英文船名")
 	@NotEmpty(message = "英文船名不能为空")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String enName;
 	/**
 	 * 船舶注册国家代码
 	 */
 	@ApiModelProperty(value = "船舶注册国家代码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String cntyCode;
 	/**
 	 * 船舶注册国家名称
 	 */
 	@ApiModelProperty(value = "船舶注册国家名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String cntyName;
 	/**
 	 * 船舶呼号
 	 */
 	@ApiModelProperty(value = "船舶呼号")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String afrno;
 	/**
 	 * IMONO 国际海事组织编号
 	 */
 	@ApiModelProperty(value = "IMONO 国际海事组织编号")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String imono;
 	/**
 	 * MMSI 水上移动通信业务标识码
 	 */
 	@ApiModelProperty(value = "MMSI 水上移动通信业务标识码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String mmsi;
 	/**
 	 * 船公司 Id
@@ -142,26 +149,31 @@ public class BVessels implements Serializable {
 	 * 船公司名称
 	 */
 	@ApiModelProperty(value = "船公司名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String carrierName;
 	/**
 	 * 港务局编码
 	 */
 	@ApiModelProperty(value = "港务局编码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String portOfficeCode;
 	/**
 	 * 港务局中文船名
 	 */
 	@ApiModelProperty(value = "港务局中文船名")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String portOfficeCnName;
 	/**
 	 * 港务局英文船名
 	 */
 	@ApiModelProperty(value = "港务局英文船名")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String portOfficeEnName;
 	/**
 	 * 港务局船公司代码
 	 */
 	@ApiModelProperty(value = "港务局船公司代码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String portOfficeCarrierCode;
 	/**
 	 * JSON 对象数组,用于不查询的扩展数据, 例如:[{name: "key1", value: "value1"}]

+ 33 - 0
blade-service-api/blade-los-api/src/main/java/org/springblade/los/business/aea/entity/AeaBills.java

@@ -28,6 +28,7 @@ import org.springblade.los.business.files.entity.FilesCenter;
 import org.springblade.los.business.sea.dto.ContainersReports;
 import org.springblade.los.finance.fee.dto.FeeCenterReports;
 import org.springblade.los.finance.fee.entity.FeeCenter;
+import org.springblade.los.utils.LosSpecialHandle;
 import org.springblade.system.entity.Dept;
 import org.springframework.format.annotation.DateTimeFormat;
 
@@ -283,11 +284,13 @@ public class AeaBills implements Serializable {
 	 * MB/L NO
 	 */
 	@ApiModelProperty(value = "MB/L NO")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String mblno;
 	/**
 	 * HB/L NO
 	 */
 	@ApiModelProperty(value = "HB/L NO")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String hblno;
 	/**
 	 * Reference NO
@@ -353,11 +356,13 @@ public class AeaBills implements Serializable {
 	 * 目的港代码
 	 */
 	@ApiModelProperty(value = "目的港代码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String finalDestinationCode;
 	/**
 	 * 目的港英文名称
 	 */
 	@ApiModelProperty(value = "目的港英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String finalDestinationName;
 	/**
 	 * 中转港 id
@@ -368,16 +373,19 @@ public class AeaBills implements Serializable {
 	 * 中转港代码
 	 */
 	@ApiModelProperty(value = "中转港代码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String potCode;
 	/**
 	 * 中转港英文名称
 	 */
 	@ApiModelProperty(value = "中转港英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String potCnName;
 	/**
 	 * 中转港英文名称
 	 */
 	@ApiModelProperty(value = "中转港英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String potEnName;
 	/**
 	 * 中转航班
@@ -409,16 +417,19 @@ public class AeaBills implements Serializable {
 	 * 起运港代码
 	 */
 	@ApiModelProperty(value = "起运港代码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String departureCode;
 	/**
 	 * 起运港英文名称
 	 */
 	@ApiModelProperty(value = "起运港英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String departureCnName;
 	/**
 	 * 起运港英文名称
 	 */
 	@ApiModelProperty(value = "起运港英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String departureEnName;
 	/**
 	 * 起运地 id
@@ -519,24 +530,28 @@ public class AeaBills implements Serializable {
 	 * HB/L 收货人代码
 	 */
 	@ApiModelProperty(value = "HB/L 收货人代码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("h_Consignee_code")
 	private String hConsigneeCode;
 	/**
 	 * HB/L 收货人中文名称
 	 */
 	@ApiModelProperty(value = "HB/L 收货人中文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("h_Consignee_cn_name")
 	private String hConsigneeCnName;
 	/**
 	 * HB/L 收货人英文名称
 	 */
 	@ApiModelProperty(value = "HB/L 收货人英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("h_Consignee_en_name")
 	private String hConsigneeEnName;
 	/**
 	 * HB/L 收货人提单描述
 	 */
 	@ApiModelProperty(value = "HB/L 收货人提单描述")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("h_Consignee_details")
 	private String hConsigneeDetails;
 	/**
@@ -548,21 +563,25 @@ public class AeaBills implements Serializable {
 	 * HB/L 通知人代码
 	 */
 	@ApiModelProperty(value = "HB/L 通知人代码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String hNotifyCode;
 	/**
 	 * HB/L 通知人中文名称
 	 */
 	@ApiModelProperty(value = "HB/L 通知人中文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String hNotifyCnName;
 	/**
 	 * HB/L 通知人英文名称
 	 */
 	@ApiModelProperty(value = "HB/L 通知人英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String hNotifyEnName;
 	/**
 	 * HB/L 通知人提单描述
 	 */
 	@ApiModelProperty(value = "HB/L 通知人提单描述")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String hNotifyDetails;
 	/**
 	 * MB/L 付款方式 PP=预付, CC=到付, FPA, Other
@@ -583,21 +602,25 @@ public class AeaBills implements Serializable {
 	 * MB/L 发货人代码
 	 */
 	@ApiModelProperty(value = "MB/L 发货人代码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String mShipperCode;
 	/**
 	 * MB/L 发货人中文名称
 	 */
 	@ApiModelProperty(value = "MB/L 发货人中文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String mShipperCnName;
 	/**
 	 * MB/L 发货人英文名称
 	 */
 	@ApiModelProperty(value = "MB/L 发货人英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String mShipperEnName;
 	/**
 	 * MB/L 发货人提单描述
 	 */
 	@ApiModelProperty(value = "MB/L 发货人提单描述")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String mShipperDetails;
 	/**
 	 * MB/L 收货人 id
@@ -609,24 +632,28 @@ public class AeaBills implements Serializable {
 	 * MB/L 收货人代码
 	 */
 	@ApiModelProperty(value = "MB/L 收货人代码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("m_Consignee_code")
 	private String mConsigneeCode;
 	/**
 	 * MB/L 收货人中文名称
 	 */
 	@ApiModelProperty(value = "MB/L 收货人中文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("m_Consignee_cn_name")
 	private String mConsigneeCnName;
 	/**
 	 * MB/L 收货人英文名称
 	 */
 	@ApiModelProperty(value = "MB/L 收货人英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("m_Consignee_en_name")
 	private String mConsigneeEnName;
 	/**
 	 * MB/L 收货人提单描述
 	 */
 	@ApiModelProperty(value = "MB/L 收货人提单描述")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("m_Consignee_details")
 	private String mConsigneeDetails;
 	/**
@@ -638,21 +665,25 @@ public class AeaBills implements Serializable {
 	 * MB/L 通知人代码
 	 */
 	@ApiModelProperty(value = "MB/L 通知人代码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String mNotifyCode;
 	/**
 	 * MB/L 通知人中文名称
 	 */
 	@ApiModelProperty(value = "MB/L 通知人中文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String mNotifyCnName;
 	/**
 	 * MB/L 通知人英文名称
 	 */
 	@ApiModelProperty(value = "MB/L 通知人英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String mNotifyEnName;
 	/**
 	 * MB/L 通知人提单描述
 	 */
 	@ApiModelProperty(value = "MB/L 通知人提单描述")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String mNotifyDetails;
 	/**
 	 * MB/L Forwarder 描述
@@ -683,11 +714,13 @@ public class AeaBills implements Serializable {
 	 * 提单上货物描述
 	 */
 	@ApiModelProperty(value = "提单上货物描述")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String commodityDescr;
 	/**
 	 * 唛头
 	 */
 	@ApiModelProperty(value = "唛头")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String marks;
 	/**
 	 * 包装单位 Id

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

@@ -28,6 +28,7 @@ import org.springblade.los.business.files.entity.FilesCenter;
 import org.springblade.los.business.sea.dto.ContainersReports;
 import org.springblade.los.finance.fee.dto.FeeCenterReports;
 import org.springblade.los.finance.fee.entity.FeeCenter;
+import org.springblade.los.utils.LosSpecialHandle;
 import org.springblade.system.entity.Dept;
 import org.springframework.format.annotation.DateTimeFormat;
 
@@ -123,6 +124,7 @@ public class CustomsDeclaration implements Serializable {
 	 * 提单号
 	 */
 	@ApiModelProperty(value = "提单号")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String mblno;
 	/**
 	 * 三检单号
@@ -398,11 +400,13 @@ public class CustomsDeclaration implements Serializable {
 	 * 指运港中文名称
 	 */
 	@ApiModelProperty(value = "指运港中文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String portOfDestinationCnName;
 	/**
 	 * 指运港英文名称
 	 */
 	@ApiModelProperty(value = "指运港英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String portOfDestinationEnName;
 	/**
 	 * 运费
@@ -448,6 +452,7 @@ public class CustomsDeclaration implements Serializable {
 	 * 唛头
 	 */
 	@ApiModelProperty(value = "唛头")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String marks;
 	/**
 	 * 包装单位 Id

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

@@ -30,6 +30,7 @@ import org.springblade.los.business.sea.dto.WaitingBox;
 import org.springblade.los.edi.entity.EdiTypes;
 import org.springblade.los.finance.fee.dto.FeeCenterReports;
 import org.springblade.los.finance.fee.entity.FeeCenter;
+import org.springblade.los.utils.LosSpecialHandle;
 import org.springblade.system.entity.Dept;
 import org.springframework.format.annotation.DateTimeFormat;
 
@@ -326,11 +327,13 @@ public class Bills implements Serializable {
 	 * MB/L NO
 	 */
 	@ApiModelProperty(value = "MB/L NO")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String mblno;
 	/**
 	 * HB/L NO
 	 */
 	@ApiModelProperty(value = "HB/L NO")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String hblno;
 	/**
 	 * Reference NO
@@ -373,21 +376,25 @@ public class Bills implements Serializable {
 	 * 装货港代码
 	 */
 	@ApiModelProperty(value = "装货港代码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String polCode;
 	/**
 	 * 装货港英文名称
 	 */
 	@ApiModelProperty(value = "装货港英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String polCnName;
 	/**
 	 * 装货港英文名称
 	 */
 	@ApiModelProperty(value = "装货港英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String polEnName;
 	/**
 	 * 装货港英文名称打印 默认等于pol_en_name 可以编辑
 	 */
 	@ApiModelProperty(value = "装货港英文名称打印 默认等于pol_en_name 可以编辑")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String polNamePrint;
 	/**
 	 * 卸货港 id
@@ -398,21 +405,25 @@ public class Bills implements Serializable {
 	 * 卸货港代码
 	 */
 	@ApiModelProperty(value = "卸货港代码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String podCode;
 	/**
 	 * 卸货港中文名称
 	 */
 	@ApiModelProperty(value = "卸货港中文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String podCnName;
 	/**
 	 * 卸货港英文名称
 	 */
 	@ApiModelProperty(value = "卸货港英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String podEnName;
 	/**
 	 * 卸货港英文名称打印 默认等于pol_en_name 可以编辑
 	 */
 	@ApiModelProperty(value = "卸货港英文名称打印 默认等于pol_en_name 可以编辑")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String podNamePrint;
 	/**
 	 * 中转港 id
@@ -423,21 +434,25 @@ public class Bills implements Serializable {
 	 * 中转港代码
 	 */
 	@ApiModelProperty(value = "中转港代码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String potCode;
 	/**
 	 * 中转港中文名称
 	 */
 	@ApiModelProperty(value = "中转港中文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String potCnName;
 	/**
 	 * 中转港英文名称
 	 */
 	@ApiModelProperty(value = "中转港英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String potEnName;
 	/**
 	 * 中转港英文名称打印 默认等于pol_en_name 可以编辑
 	 */
 	@ApiModelProperty(value = "中转港英文名称打印 默认等于pol_en_name 可以编辑")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String potNamePrint;
 	/**
 	 * 收货地 id
@@ -448,16 +463,19 @@ public class Bills implements Serializable {
 	 * 收货地代码
 	 */
 	@ApiModelProperty(value = "收货地代码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String placeReceiptCode;
 	/**
 	 * 收货地英文名称
 	 */
 	@ApiModelProperty(value = "收货地英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String placeReceiptName;
 	/**
 	 * 收货地英文名称打印 默认等于place_receipt_name可以编辑
 	 */
 	@ApiModelProperty(value = "收货地英文名称打印 默认等于place_receipt_name可以编辑")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String placeReceiptNamePrint;
 	/**
 	 * 交货地 id
@@ -468,16 +486,19 @@ public class Bills implements Serializable {
 	 * 交货地代码
 	 */
 	@ApiModelProperty(value = "交货地代码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String placeDeliveryCode;
 	/**
 	 * 交货地英文名称
 	 */
 	@ApiModelProperty(value = "交货地英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String placeDeliveryName;
 	/**
 	 * 交货地英文名称打印 默认等于place_delivery_name可以编辑
 	 */
 	@ApiModelProperty(value = "交货地英文名称打印 默认等于place_delivery_name可以编辑")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String placeDeliveryNamePrint;
 	/**
 	 * 目的地 id
@@ -488,16 +509,19 @@ public class Bills implements Serializable {
 	 * 目的地代码
 	 */
 	@ApiModelProperty(value = "目的地代码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String destinationCode;
 	/**
 	 * 目的地英文名称
 	 */
 	@ApiModelProperty(value = "目的地英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String destinationName;
 	/**
 	 * 目的地英文名称打印 默认等于destination_name可以编辑
 	 */
 	@ApiModelProperty(value = "目的地英文名称打印 默认等于destination_name可以编辑")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String destinationNamePrint;
 	/**
 	 * 最终目的地 id
@@ -508,16 +532,19 @@ public class Bills implements Serializable {
 	 * 最终目的地代码
 	 */
 	@ApiModelProperty(value = "最终目的地代码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String finalDestinationCode;
 	/**
 	 * 最终目的地英文名称
 	 */
 	@ApiModelProperty(value = "最终目的地英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String finalDestinationName;
 	/**
 	 * 最终英文名称打印 默认等于final_destination_name可以编辑
 	 */
 	@ApiModelProperty(value = "最终英文名称打印 默认等于final_destination_name可以编辑")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String finalDestinationNamePrint;
 	/**
 	 * 装箱方式, FCL=整箱, LCL=拼箱
@@ -624,24 +651,28 @@ public class Bills implements Serializable {
 	 * HB/L 收货人代码
 	 */
 	@ApiModelProperty(value = "HB/L 收货人代码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("h_Consignee_code")
 	private String hconsigneeCode;
 	/**
 	 * HB/L 收货人中文名称
 	 */
 	@ApiModelProperty(value = "HB/L 收货人中文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("h_Consignee_cn_name")
 	private String hconsigneeCnName;
 	/**
 	 * HB/L 收货人英文名称
 	 */
 	@ApiModelProperty(value = "HB/L 收货人英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("h_Consignee_en_name")
 	private String hconsigneeEnName;
 	/**
 	 * HB/L 收货人提单描述
 	 */
 	@ApiModelProperty(value = "HB/L 收货人提单描述")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("h_Consignee_details")
 	private String hconsigneeDetails;
 	/**
@@ -655,23 +686,27 @@ public class Bills implements Serializable {
 	 */
 	@ApiModelProperty(value = "HB/L 通知人代码")
 	@TableField("h_notify_code")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String hnotifyCode;
 	/**
 	 * HB/L 通知人中文名称
 	 */
 	@ApiModelProperty(value = "HB/L 通知人中文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("h_notify_cn_name")
 	private String hnotifyCnName;
 	/**
 	 * HB/L 通知人英文名称
 	 */
 	@ApiModelProperty(value = "HB/L 通知人英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("h_notify_en_name")
 	private String hnotifyEnName;
 	/**
 	 * HB/L 通知人提单描述
 	 */
 	@ApiModelProperty(value = "HB/L 通知人提单描述")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("h_notify_details")
 	private String hnotifyDetails;
 	/**
@@ -684,24 +719,28 @@ public class Bills implements Serializable {
 	 * HB/L 第二通知人代码
 	 */
 	@ApiModelProperty(value = "HB/L 第二通知人代码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("h_notify2_code")
 	private String hnotify2Code;
 	/**
 	 * HB/L 第二通知人中文名称
 	 */
 	@ApiModelProperty(value = "HB/L 第二通知人中文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("h_notify2_cn_name")
 	private String hnotify2CnName;
 	/**
 	 * HB/L 第二通知人英文名称
 	 */
 	@ApiModelProperty(value = "HB/L 第二通知人英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("h_notify2_en_name")
 	private String hnotify2EnName;
 	/**
 	 * HB/L 第二通知人提单描述
 	 */
 	@ApiModelProperty(value = "HB/L 第二通知人提单描述")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("h_notify2_details")
 	private String hnotify2Details;
 	/**
@@ -726,24 +765,28 @@ public class Bills implements Serializable {
 	 * MB/L 发货人代码
 	 */
 	@ApiModelProperty(value = "MB/L 发货人代码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("m_shipper_code")
 	private String mshipperCode;
 	/**
 	 * MB/L 发货人中文名称
 	 */
 	@ApiModelProperty(value = "MB/L 发货人中文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("m_shipper_cn_name")
 	private String mshipperCnName;
 	/**
 	 * MB/L 发货人英文名称
 	 */
 	@ApiModelProperty(value = "MB/L 发货人英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("m_shipper_en_name")
 	private String mshipperEnName;
 	/**
 	 * MB/L 发货人提单描述
 	 */
 	@ApiModelProperty(value = "MB/L 发货人提单描述")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("m_shipper_details")
 	private String mshipperDetails;
 	/**
@@ -756,24 +799,28 @@ public class Bills implements Serializable {
 	 * MB/L 收货人代码
 	 */
 	@ApiModelProperty(value = "MB/L 收货人代码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("m_Consignee_code")
 	private String mconsigneeCode;
 	/**
 	 * MB/L 收货人中文名称
 	 */
 	@ApiModelProperty(value = "MB/L 收货人中文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("m_Consignee_cn_name")
 	private String mconsigneeCnName;
 	/**
 	 * MB/L 收货人英文名称
 	 */
 	@ApiModelProperty(value = "MB/L 收货人英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("m_Consignee_en_name")
 	private String mconsigneeEnName;
 	/**
 	 * MB/L 收货人提单描述
 	 */
 	@ApiModelProperty(value = "MB/L 收货人提单描述")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("m_Consignee_details")
 	private String mconsigneeDetails;
 	/**
@@ -786,24 +833,28 @@ public class Bills implements Serializable {
 	 * MB/L 通知人代码
 	 */
 	@ApiModelProperty(value = "MB/L 通知人代码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("m_notify_code")
 	private String mnotifyCode;
 	/**
 	 * MB/L 通知人中文名称
 	 */
 	@ApiModelProperty(value = "MB/L 通知人中文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("m_notify_cn_name")
 	private String mnotifyCnName;
 	/**
 	 * MB/L 通知人英文名称
 	 */
 	@ApiModelProperty(value = "MB/L 通知人英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("m_notify_en_name")
 	private String mnotifyEnName;
 	/**
 	 * MB/L 通知人提单描述
 	 */
 	@ApiModelProperty(value = "MB/L 通知人提单描述")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("m_notify_details")
 	private String mnotifyDetails;
 	/**
@@ -816,24 +867,28 @@ public class Bills implements Serializable {
 	 * MB/L 第二通知人代码
 	 */
 	@ApiModelProperty(value = "MB/L 第二通知人代码")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("m_notify2_code")
 	private String mnotify2Code;
 	/**
 	 * MB/L 第二通知人中文名称
 	 */
 	@ApiModelProperty(value = "MB/L 第二通知人中文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("m_notify2_cn_name")
 	private String mnotify2CnName;
 	/**
 	 * MB/L 第二通知人英文名称
 	 */
 	@ApiModelProperty(value = "MB/L 第二通知人英文名称")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("m_notify2_en_name")
 	private String mnotify2EnName;
 	/**
 	 * MB/L 第二通知人提单描述
 	 */
 	@ApiModelProperty(value = "MB/L 第二通知人提单描述")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	@TableField("m_notify2_details")
 	private String mnotify2Details;
 	/**
@@ -876,11 +931,13 @@ public class Bills implements Serializable {
 	 * 提单上货物描述
 	 */
 	@ApiModelProperty(value = "提单上货物描述")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String commodityDescr;
 	/**
 	 * 唛头
 	 */
 	@ApiModelProperty(value = "唛头")
+	@LosSpecialHandle(massage = "", space = true, conversion = true)
 	private String marks;
 	/**
 	 * 包装单位 Id

+ 264 - 28
blade-service/blade-los/src/main/java/org/springblade/los/Util/StringTools.java

@@ -1,7 +1,14 @@
 package org.springblade.los.Util;
 
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
-import org.apache.poi.ss.formula.functions.T;
+import org.springblade.los.basic.cntr.entity.BCntrTypes;
+import org.springblade.los.basic.corps.entity.BCorps;
+import org.springblade.los.basic.ports.entity.BPorts;
+import org.springblade.los.basic.vessels.entity.BVessels;
+import org.springblade.los.business.aea.entity.AeaBills;
+import org.springblade.los.business.customsDeclaration.entity.CustomsDeclaration;
+import org.springblade.los.business.sea.entity.Bills;
 import org.springblade.los.utils.LosSpecialHandle;
 
 import java.lang.annotation.Annotation;
@@ -19,39 +26,268 @@ public class StringTools {
 	 * @param data 字符串
 	 * @return 结果
 	 */
-	public static Object handle(Object data) throws Exception {
-		Class<?> inttraSoDtoClass = Object.class;
-		Field[] fileds = inttraSoDtoClass.getDeclaredFields();
-		for (Field field : fileds) {
-			String name = field.getName();
-			System.out.println("字段名:" + name);
-			// 设置访问权限为true,否则无法获取private字段的值
-			field.setAccessible(true);
-			Object value = field.get(data);
-			System.out.println("字段值:" + value);
-			Class<T> clazz = T.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().toLowerCase();
+	public static Object handle(Object data, String type) throws Exception {
+		if ("BVessels".equals(type)) {
+			Class<?> inttraSoDtoClass = BVessels.class;
+			Field[] fileds = inttraSoDtoClass.getDeclaredFields();
+			BVessels bVessels = JSONObject.parseObject(JSONObject.toJSONString(data), BVessels.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<BVessels> clazz = BVessels.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 ("BPorts".equals(type)) {
+			Class<?> inttraSoDtoClass = BPorts.class;
+			Field[] fileds = inttraSoDtoClass.getDeclaredFields();
+			BPorts bVessels = JSONObject.parseObject(JSONObject.toJSONString(data), BPorts.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<BPorts> clazz = BPorts.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 ("Bills".equals(type)) {
+			Class<?> inttraSoDtoClass = Bills.class;
+			Field[] fileds = inttraSoDtoClass.getDeclaredFields();
+			Bills bVessels = JSONObject.parseObject(JSONObject.toJSONString(data), Bills.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<Bills> clazz = Bills.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();
+			AeaBills bVessels = JSONObject.parseObject(JSONObject.toJSONString(data), AeaBills.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<AeaBills> clazz = AeaBills.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 ("CustomsDeclaration".equals(type)) {
+			Class<?> inttraSoDtoClass = CustomsDeclaration.class;
+			Field[] fileds = inttraSoDtoClass.getDeclaredFields();
+			CustomsDeclaration bVessels = JSONObject.parseObject(JSONObject.toJSONString(data), CustomsDeclaration.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<CustomsDeclaration> clazz = CustomsDeclaration.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 ("BCorps".equals(type)) {
+			Class<?> inttraSoDtoClass = BCorps.class;
+			Field[] fileds = inttraSoDtoClass.getDeclaredFields();
+			BCorps bVessels = JSONObject.parseObject(JSONObject.toJSONString(data), BCorps.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<BCorps> clazz = BCorps.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());
 					}
-					if (space) {
-						if (ObjectUtils.isNotNull(value)) {
-							value = value.toString().trim();
+				}
+			}
+			return bVessels;
+		}
+		else if ("BCntrTypes".equals(type)) {
+			Class<?> inttraSoDtoClass = BCorps.class;
+			Field[] fileds = inttraSoDtoClass.getDeclaredFields();
+			BCntrTypes bVessels = JSONObject.parseObject(JSONObject.toJSONString(data), BCntrTypes.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<BCntrTypes> clazz = BCntrTypes.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());
 					}
-					System.out.println("注解值:" + myAnnotation.conversion());
-					System.out.println("注解值:" + myAnnotation.space());
 				}
 			}
+			return bVessels;
+		}
+		else {
+			throw new RuntimeException("数据处理失败,请联系管理员");
 		}
-		return data;
 	}
 }

+ 1 - 1
blade-service/blade-los/src/main/java/org/springblade/los/basic/cntr/controller/BCntrTypesController.java

@@ -158,7 +158,7 @@ public class BCntrTypesController extends BladeController {
 	@PostMapping("/submit")
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入bCntrTypes")
-	public R submit(@Valid @RequestBody BCntrTypes bCntrTypes) {
+	public R submit(@Valid @RequestBody BCntrTypes bCntrTypes) throws Exception{
 		return bCntrTypesService.submit(bCntrTypes);
 	}
 

+ 1 - 1
blade-service/blade-los/src/main/java/org/springblade/los/basic/cntr/service/IBCntrTypesService.java

@@ -47,7 +47,7 @@ public interface IBCntrTypesService extends IService<BCntrTypes> {
 	 * @param bCntrTypes
 	 * @return
 	 */
-	R submit(BCntrTypes bCntrTypes);
+	R submit(BCntrTypes bCntrTypes)throws Exception;
 
 	/**
 	 * 导入 基础资料-集装箱箱型

+ 6 - 1
blade-service/blade-los/src/main/java/org/springblade/los/basic/cntr/service/impl/BCntrTypesServiceImpl.java

@@ -16,6 +16,7 @@
  */
 package org.springblade.los.basic.cntr.service.impl;
 
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
@@ -27,10 +28,12 @@ import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.BeanUtil;
 import org.springblade.los.Util.IDeptUtils;
 import org.springblade.los.Util.RegularUtils;
+import org.springblade.los.Util.StringTools;
 import org.springblade.los.basic.cntr.entity.BCntrTypes;
 import org.springblade.los.basic.cntr.mapper.CntrTypesMapper;
 import org.springblade.los.basic.cntr.service.IBCntrTypesService;
 import org.springblade.los.basic.cntr.vo.BCntrTypesVO;
+import org.springblade.los.basic.corps.entity.BCorps;
 import org.springblade.los.excel.BCntrTypesExcel;
 import org.springblade.system.feign.ISysClient;
 import org.springframework.stereotype.Service;
@@ -61,7 +64,9 @@ public class BCntrTypesServiceImpl extends ServiceImpl<CntrTypesMapper, BCntrTyp
 	}
 
 	@Override
-	public R submit(BCntrTypes bCntrTypes) {
+	public R submit(BCntrTypes bCntrTypess) throws Exception{
+		Object object = StringTools.handle(bCntrTypess,"BCntrTypes");
+		BCntrTypes bCntrTypes = JSONObject.parseObject(JSONObject.toJSONString(object), BCntrTypes.class);
 		if (bCntrTypes.getId() == null) {
 			bCntrTypes.setCreateTime(new Date());
 			bCntrTypes.setCreateUser(AuthUtil.getUserId());

+ 1 - 1
blade-service/blade-los/src/main/java/org/springblade/los/basic/corps/controller/BCorpsController.java

@@ -244,7 +244,7 @@ public class BCorpsController extends BladeController {
 	@PostMapping("/submit")
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入bCorps")
-	public R submit(@Valid @RequestBody BCorps bCorps) {
+	public R submit(@Valid @RequestBody BCorps bCorps) throws Exception{
 		return bCorpsService.submit(bCorps);
 	}
 

+ 1 - 1
blade-service/blade-los/src/main/java/org/springblade/los/basic/corps/service/IBCorpsService.java

@@ -47,7 +47,7 @@ public interface IBCorpsService extends IService<BCorps> {
 	 * @param bCorps
 	 * @return
 	 */
-    R submit(BCorps bCorps);
+    R submit(BCorps bCorps)throws Exception;
 
 	/**
 	 * 详情

+ 6 - 1
blade-service/blade-los/src/main/java/org/springblade/los/basic/corps/service/impl/BCorpsServiceImpl.java

@@ -16,6 +16,7 @@
  */
 package org.springblade.los.basic.corps.service.impl;
 
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
@@ -26,10 +27,12 @@ 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.IDeptUtils;
+import org.springblade.los.Util.StringTools;
 import org.springblade.los.basic.corps.entity.*;
 import org.springblade.los.basic.corps.mapper.CorpsMapper;
 import org.springblade.los.basic.corps.service.*;
 import org.springblade.los.basic.corps.vo.BCorpsVO;
+import org.springblade.los.business.aea.entity.AeaBills;
 import org.springblade.los.excel.BCorpsExcel;
 import org.springblade.system.feign.ISysClient;
 import org.springblade.system.user.entity.User;
@@ -90,7 +93,9 @@ public class BCorpsServiceImpl extends ServiceImpl<CorpsMapper, BCorps> implemen
 	@Override
 	@Transactional(rollbackFor = Exception.class)
 	@GlobalTransactional(rollbackFor = Exception.class, timeoutMills = 12000000)
-	public R submit(BCorps bCorps) {
+	public R submit(BCorps bCorpss) throws Exception{
+		Object object = StringTools.handle(bCorpss,"BCorps");
+		BCorps bCorps = JSONObject.parseObject(JSONObject.toJSONString(object), BCorps.class);
 		String deptId = "";
 		String deptName = "";
 		String branchId = deptUtils.getDeptPid() + "";

+ 1 - 1
blade-service/blade-los/src/main/java/org/springblade/los/basic/ports/controller/BPortsController.java

@@ -153,7 +153,7 @@ public class BPortsController extends BladeController {
 	@PostMapping("/submit")
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入bPorts")
-	public R submit(@Valid @RequestBody BPorts bPorts) {
+	public R submit(@Valid @RequestBody BPorts bPorts) throws Exception{
 		return bPortsService.submit(bPorts);
 	}
 

+ 1 - 1
blade-service/blade-los/src/main/java/org/springblade/los/basic/ports/service/IBPortsService.java

@@ -54,7 +54,7 @@ public interface IBPortsService extends IService<BPorts> {
 	 * @param bPorts
 	 * @return
 	 */
-	R submit(BPorts bPorts);
+	R submit(BPorts bPorts)throws Exception;
 
 	/**
 	 * 导入 基础资料-港口

+ 6 - 1
blade-service/blade-los/src/main/java/org/springblade/los/basic/ports/service/impl/BPortsServiceImpl.java

@@ -16,6 +16,7 @@
  */
 package org.springblade.los.basic.ports.service.impl;
 
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
@@ -26,7 +27,9 @@ 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.IDeptUtils;
+import org.springblade.los.Util.StringTools;
 import org.springblade.los.basic.terms.entity.BServiceTerms;
+import org.springblade.los.basic.vessels.entity.BVessels;
 import org.springblade.los.excel.BPortsExcel;
 import org.springblade.los.basic.ports.entity.BPorts;
 import org.springblade.los.basic.ports.entity.BPortsTerms;
@@ -80,7 +83,7 @@ public class BPortsServiceImpl extends ServiceImpl<PortsMapper, BPorts> implemen
 	@Override
 	@Transactional(rollbackFor = Exception.class)
 	@GlobalTransactional(rollbackFor = Exception.class, timeoutMills = 12000000)
-	public R submit(BPorts bPorts) {
+	public R submit(BPorts details) throws Exception{
 		String deptId = "";
 		String deptName = "";
 		//获取部门ids对应中文名
@@ -91,6 +94,8 @@ public class BPortsServiceImpl extends ServiceImpl<PortsMapper, BPorts> implemen
 				deptName = String.join(",", res.getData());
 			}
 		}
+		Object object = StringTools.handle(details,"BPorts");
+		BPorts bPorts = JSONObject.parseObject(JSONObject.toJSONString(object), BPorts.class);
 		if (bPorts.getId() == null) {
 			bPorts.setCreateTime(new Date());
 			bPorts.setCreateUser(AuthUtil.getUserId());

+ 5 - 5
blade-service/blade-los/src/main/java/org/springblade/los/basic/vessels/service/impl/BVesselsServiceImpl.java

@@ -69,8 +69,8 @@ public class BVesselsServiceImpl extends ServiceImpl<VesselsMapper, BVessels> im
 	@Transactional(rollbackFor = Exception.class)
 	@GlobalTransactional(rollbackFor = Exception.class, timeoutMills = 12000000)
 	public R submit(BVessels bVessels) throws Exception {
-		/*System.out.println("中文船名:" + bVessels.getCnName());
-		Object object = StringTools.handle(bVessels);
+		System.out.println("中文船名:" + bVessels.getCnName());
+		Object object = StringTools.handle(bVessels,"BVessels");
 		BVessels detail = JSONObject.parseObject(JSONObject.toJSONString(object), BVessels.class);
 		System.out.println("中文船名:" + detail.getCnName());
 		if (detail.getId() == null) {
@@ -98,8 +98,8 @@ public class BVesselsServiceImpl extends ServiceImpl<VesselsMapper, BVessels> im
 			detail.setUpdateUserName(AuthUtil.getUserName());
 		}
 		this.saveOrUpdate(detail);
-		return R.data(detail);*/
-		if (bVessels.getId() == null) {
+		return R.data(detail);
+		/*if (bVessels.getId() == null) {
 			bVessels.setCreateTime(new Date());
 			bVessels.setCreateUser(AuthUtil.getUserId());
 			bVessels.setCreateUserName(AuthUtil.getUserName());
@@ -124,7 +124,7 @@ public class BVesselsServiceImpl extends ServiceImpl<VesselsMapper, BVessels> im
 			bVessels.setUpdateUserName(AuthUtil.getUserName());
 		}
 		this.saveOrUpdate(bVessels);
-		return R.data(bVessels);
+		return R.data(bVessels);*/
 	}
 
 	@Override

+ 1 - 1
blade-service/blade-los/src/main/java/org/springblade/los/business/aea/controller/AeaBillsController.java

@@ -235,7 +235,7 @@ public class AeaBillsController extends BladeController {
 	@PostMapping("/submit")
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入aeaBills")
-	public R submit(@Valid @RequestBody AeaBills aeaBills) {
+	public R submit(@Valid @RequestBody AeaBills aeaBills) throws Exception{
 		return aeaBillsService.submit(aeaBills);
 	}
 

+ 1 - 1
blade-service/blade-los/src/main/java/org/springblade/los/business/aea/service/IAeaBillsService.java

@@ -47,7 +47,7 @@ public interface IAeaBillsService extends IService<AeaBills> {
 	 * @param aeaBills
 	 * @return
 	 */
-	R submit(AeaBills aeaBills);
+	R submit(AeaBills aeaBills)throws Exception;
 
 	AeaBills detail(AeaBills aeaBills);
 

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

@@ -16,6 +16,7 @@
  */
 package org.springblade.los.business.aea.service.impl;
 
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
@@ -28,6 +29,7 @@ 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.Util.IDeptUtils;
+import org.springblade.los.Util.StringTools;
 import org.springblade.los.basic.business.entity.BusinessType;
 import org.springblade.los.basic.business.service.IBusinessTypeService;
 import org.springblade.los.basic.corps.entity.BCorps;
@@ -109,7 +111,9 @@ public class AeaBillsServiceImpl extends ServiceImpl<AeaBillsMapper, AeaBills> i
 	@Override
 	@Transactional(rollbackFor = Exception.class)
 	@GlobalTransactional(rollbackFor = Exception.class, timeoutMills = 12000000)
-	public R submit(AeaBills aeaBills) {
+	public R submit(AeaBills aeaBillss)throws Exception {
+		Object object = StringTools.handle(aeaBillss,"AeaBills");
+		AeaBills aeaBills = JSONObject.parseObject(JSONObject.toJSONString(object), AeaBills.class);
 		String deptId = "";
 		String deptName = "";
 		String branchId = deptUtils.getDeptPid() + "";

+ 1 - 1
blade-service/blade-los/src/main/java/org/springblade/los/business/customsDeclaration/controller/CustomsDeclarationController.java

@@ -125,7 +125,7 @@ public class CustomsDeclarationController extends BladeController {
 	@PostMapping("/submit")
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入customsDeclaration")
-	public R submit(@Valid @RequestBody CustomsDeclaration customsDeclaration) {
+	public R submit(@Valid @RequestBody CustomsDeclaration customsDeclaration) throws Exception{
 		return customsDeclarationService.submit(customsDeclaration);
 	}
 

+ 1 - 1
blade-service/blade-los/src/main/java/org/springblade/los/business/customsDeclaration/service/ICustomsDeclarationService.java

@@ -53,7 +53,7 @@ public interface ICustomsDeclarationService extends IService<CustomsDeclaration>
 	 * @param customsDeclaration
 	 * @return
 	 */
-	R submit(CustomsDeclaration customsDeclaration);
+	R submit(CustomsDeclaration customsDeclaration)throws Exception;
 
 	/**
 	 * 单据请核

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

@@ -16,6 +16,7 @@
  */
 package org.springblade.los.business.customsDeclaration.service.impl;
 
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
@@ -27,11 +28,13 @@ 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.IDeptUtils;
+import org.springblade.los.Util.StringTools;
 import org.springblade.los.basic.business.entity.BusinessType;
 import org.springblade.los.basic.business.service.IBusinessTypeService;
 import org.springblade.los.basic.cur.service.IBCurrencyService;
 import org.springblade.los.billno.entity.BusinessBillNo;
 import org.springblade.los.billno.service.IBusinessBillNoService;
+import org.springblade.los.business.aea.entity.AeaBills;
 import org.springblade.los.business.customsDeclaration.entity.CustomsDeclaration;
 import org.springblade.los.business.customsDeclaration.entity.CustomsDeclarationGoods;
 import org.springblade.los.business.customsDeclaration.mapper.CustomsDeclarationMapper;
@@ -132,7 +135,9 @@ public class CustomsDeclarationServiceImpl extends ServiceImpl<CustomsDeclaratio
 	@Override
 	@Transactional(rollbackFor = Exception.class)
 	@GlobalTransactional(rollbackFor = Exception.class, timeoutMills = 12000000)
-	public R submit(CustomsDeclaration customsDeclaration) {
+	public R submit(CustomsDeclaration customsDeclarations) throws Exception{
+		Object object = StringTools.handle(customsDeclarations,"CustomsDeclaration");
+		CustomsDeclaration customsDeclaration = JSONObject.parseObject(JSONObject.toJSONString(object), CustomsDeclaration.class);
 		String deptId = "";
 		String deptName = "";
 		String branchId = deptUtils.getDeptPid() + "";

+ 2 - 2
blade-service/blade-los/src/main/java/org/springblade/los/business/sea/controller/BillsController.java

@@ -240,7 +240,7 @@ public class BillsController extends BladeController {
 	@PostMapping("/submit")
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入bills")
-	public R submit(@Valid @RequestBody Bills bills) {
+	public R submit(@Valid @RequestBody Bills bills) throws Exception{
 		return billsService.submit(bills);
 	}
 
@@ -250,7 +250,7 @@ public class BillsController extends BladeController {
 	@PostMapping("/add")
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入bills")
-	public R add(@Valid @RequestBody Bills bills) {
+	public R add(@Valid @RequestBody Bills bills) throws Exception{
 		return billsService.add(bills);
 	}
 

+ 2 - 2
blade-service/blade-los/src/main/java/org/springblade/los/business/sea/service/IBillsService.java

@@ -46,7 +46,7 @@ public interface IBillsService extends IService<Bills> {
 	 * @param bills
 	 * @return
 	 */
-    R submit(Bills bills);
+    R submit(Bills bills)throws Exception;
 
 	/**
 	 * 详情
@@ -60,7 +60,7 @@ public interface IBillsService extends IService<Bills> {
 	 * @param bills
 	 * @return
 	 */
-	R add(Bills bills);
+	R add(Bills bills)throws Exception;
 
 	/**
 	 * 分单添加到主单

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

@@ -16,6 +16,7 @@
  */
 package org.springblade.los.business.sea.service.impl;
 
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
@@ -28,11 +29,13 @@ 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.Util.IDeptUtils;
+import org.springblade.los.Util.StringTools;
 import org.springblade.los.basic.business.entity.BusinessType;
 import org.springblade.los.basic.business.service.IBusinessTypeService;
 import org.springblade.los.basic.corps.entity.BCorps;
 import org.springblade.los.basic.corps.service.IBCorpsService;
 import org.springblade.los.basic.cur.service.IBCurrencyService;
+import org.springblade.los.basic.vessels.entity.BVessels;
 import org.springblade.los.billno.entity.BusinessBillNo;
 import org.springblade.los.billno.service.IBusinessBillNoService;
 import org.springblade.los.business.files.entity.FilesCenter;
@@ -120,7 +123,9 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 	@Override
 	@Transactional(rollbackFor = Exception.class)
 	@GlobalTransactional(rollbackFor = Exception.class, timeoutMills = 12000000)
-	public R submit(Bills bills) {
+	public R submit(Bills billss) throws Exception{
+		Object object = StringTools.handle(billss,"Bills");
+		Bills bills = JSONObject.parseObject(JSONObject.toJSONString(object), Bills.class);
 		String deptId = "";
 		String deptName = "";
 		String branchId = deptUtils.getDeptPid() + "";
@@ -770,7 +775,9 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 	@Override
 	@Transactional(rollbackFor = Exception.class)
 	@GlobalTransactional(rollbackFor = Exception.class, timeoutMills = 12000000)
-	public R add(Bills bills) {
+	public R add(Bills billss) throws Exception{
+		Object object = StringTools.handle(billss,"Bills");
+		Bills bills = JSONObject.parseObject(JSONObject.toJSONString(object), Bills.class);
 		if (bills.getId() == null) {
 			throw new RuntimeException("缺少必要参数");
 		}

+ 8 - 6
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/mapper/OrderMapper.xml

@@ -1735,7 +1735,7 @@ ORDER BY
         LEFT JOIN (
         SELECT
         bd.org_order_no,
-        SUM( bdi.delivery_amount ) AS delivery_amount,
+        bd.actual_arrival_amount AS delivery_amount,
         SUM( bdi.actual_quantity ) AS actual_quantity
         FROM
         business_delivery bd
@@ -1859,7 +1859,7 @@ ORDER BY
         LEFT JOIN (
         SELECT
         bd.org_order_no,
-        SUM( bdi.delivery_amount ) AS delivery_amount,
+        bd.actual_arrival_amount AS delivery_amount,
         SUM( bdi.actual_quantity ) AS actual_quantity
         FROM
         business_delivery bd
@@ -1932,7 +1932,7 @@ ORDER BY
         LEFT JOIN (
         SELECT
         bd.org_order_no,
-        SUM( bdi.delivery_amount ) AS delivery_amount,
+        bd.actual_arrival_amount AS delivery_amount,
         SUM( bdi.actual_quantity ) AS actual_quantity
         FROM
         business_delivery bd
@@ -2066,7 +2066,7 @@ ORDER BY
         LEFT JOIN (
         SELECT
         bd.org_order_no,
-        SUM( bdi.delivery_amount ) AS delivery_amount,
+        bd.actual_arrival_amount AS delivery_amount,
         SUM( bdi.actual_quantity ) AS actual_quantity
         FROM
         business_delivery bd
@@ -2110,6 +2110,7 @@ ORDER BY
             BGD.brand AS brand,
             SUM( bdf.delivery_amount ) AS amount,
             SUM( bdf.actual_quantity ) AS quantity,
+            SUM( BOI.purchaseAmount ) AS purchaseAmount,
             SUM( BO.this_used_profit ) AS thisUsedProfit,
             FORMAT(( SUM( BO.debit_amount ) / SUM( BOI.quantity ) ),2) AS price,
             FORMAT(((SUM( BO.debit_amount ) - SUM( BOI.purchaseAmount )) + (-SUM( BO.this_used_profit ))) / SUM( BOI.quantity ),2) AS singleGrossProfit,
@@ -2134,7 +2135,7 @@ ORDER BY
         LEFT JOIN (
         SELECT
         bd.org_order_no,
-        SUM( bdi.delivery_amount ) AS delivery_amount,
+        bd.actual_arrival_amount AS delivery_amount,
         SUM( bdi.actual_quantity ) AS actual_quantity
         FROM
         business_delivery bd
@@ -2225,6 +2226,7 @@ ORDER BY
         BGD.brand AS brand,
         SUM( bdf.delivery_amount ) AS amount,
         SUM( bdf.actual_quantity ) AS quantity,
+        SUM( BOI.purchaseAmount ) AS purchaseAmount,
         SUM( BO.this_used_profit ) AS thisUsedProfit,
         FORMAT(( SUM( BO.debit_amount ) / SUM( BOI.quantity ) ),2) AS price,
         FORMAT(((SUM( BO.debit_amount ) - SUM( BOI.purchaseAmount )) + (-SUM( BO.this_used_profit ))) / SUM( BOI.quantity ),2) AS singleGrossProfit,
@@ -2249,7 +2251,7 @@ ORDER BY
         LEFT JOIN (
         SELECT
         bd.org_order_no,
-        SUM( bdi.delivery_amount ) AS delivery_amount,
+        bd.actual_arrival_amount AS delivery_amount,
         SUM( bdi.actual_quantity ) AS actual_quantity
         FROM
         business_delivery bd

+ 1 - 0
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/productLaunch/controller/ProductLaunchController.java

@@ -496,6 +496,7 @@ public class ProductLaunchController extends BladeController {
 		if ("0".equals(productLaunch.getWhether())) {
 			lambdaQueryWrapper.gt(PjProductLaunch::getInventory, 0);
 		}
+		lambdaQueryWrapper.orderByAsc(PjProductLaunch::getCnameInt);
 		lambdaQueryWrapper.orderByDesc(PjProductLaunch::getInventory);
 		IPage<PjProductLaunch> pages = productLaunchService.page(Condition.getPage(query), lambdaQueryWrapper);