Quellcode durchsuchen

2022年12月8日18:04:57

纪新园 vor 3 Jahren
Ursprung
Commit
5404c2aa4a
32 geänderte Dateien mit 335 neuen und 67 gelöschten Zeilen
  1. 11 0
      blade-service-api/blade-box-tube-api/src/main/java/org/springblade/box/tube/entity/ArchivesTrajectory.java
  2. 6 0
      blade-service-api/blade-box-tube-api/src/main/java/org/springblade/box/tube/entity/Repair.java
  3. 11 0
      blade-service-api/blade-box-tube-api/src/main/java/org/springblade/box/tube/entity/RepairItem.java
  4. 18 0
      blade-service-api/blade-box-tube-api/src/main/java/org/springblade/box/tube/entity/TradingBox.java
  5. 6 0
      blade-service-api/blade-box-tube-api/src/main/java/org/springblade/box/tube/entity/Transport.java
  6. 9 0
      blade-service-api/blade-purchase-sales-api/src/main/java/org/springblade/purchase/sales/vo/OrderFilesVO.java
  7. 2 0
      blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/ArchivesController.java
  8. 3 0
      blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/ArchivesFilesController.java
  9. 31 9
      blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/ArchivesTrajectoryController.java
  10. 3 0
      blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/FilesController.java
  11. 5 0
      blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/RepairController.java
  12. 3 0
      blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/RepairFeesController.java
  13. 3 0
      blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/RepairItemController.java
  14. 4 0
      blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/TradingBoxController.java
  15. 3 0
      blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/TradingBoxFeesController.java
  16. 3 0
      blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/TradingBoxFilesController.java
  17. 3 0
      blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/TradingBoxItemController.java
  18. 9 0
      blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/TradingBoxRentController.java
  19. 2 0
      blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/TransportController.java
  20. 3 0
      blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/TransportFilesController.java
  21. 3 0
      blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/TransportItemController.java
  22. 3 0
      blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/TransportItemFeesController.java
  23. 7 1
      blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/service/impl/RepairServiceImpl.java
  24. 61 28
      blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/service/impl/TradingBoxServiceImpl.java
  25. 13 1
      blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/service/impl/TransportServiceImpl.java
  26. 24 0
      blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/utils/GeneralToolsUtils.java
  27. 20 9
      blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/controller/OrderFilesController.java
  28. 7 0
      blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/service/IOrderFilesService.java
  29. 38 6
      blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/service/impl/OrderFilesServiceImpl.java
  30. 4 3
      blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/service/impl/OrderServiceImpl.java
  31. 16 10
      blade-service/trade-finance/src/main/java/org/springblade/finance/service/impl/SettlementServiceImpl.java
  32. 1 0
      blade-service/trade-purchase/src/main/java/com/trade/purchase/order/service/impl/OrderServiceImpl.java

+ 11 - 0
blade-service-api/blade-box-tube-api/src/main/java/org/springblade/box/tube/entity/ArchivesTrajectory.java

@@ -128,5 +128,16 @@ public class ArchivesTrajectory implements Serializable {
 	@ApiModelProperty(value = "合同号")
 	private String contractNo;
 
+	/**
+	 * 客户ID
+	 */
+	@ApiModelProperty(value = "客户ID")
+	private Long corpId;
+	/**
+	 * 客户名称
+	 */
+	@ApiModelProperty(value = "客户名称")
+	private String corpName;
+
 
 }

+ 6 - 0
blade-service-api/blade-box-tube-api/src/main/java/org/springblade/box/tube/entity/Repair.java

@@ -206,5 +206,11 @@ public class Repair implements Serializable {
 	@TableField(exist = false)
 	private List<String> updateTimeList;
 
+	/**
+	 * 箱数
+	 */
+	@ApiModelProperty(value = "箱数")
+	private int boxNumber;
+
 
 }

+ 11 - 0
blade-service-api/blade-box-tube-api/src/main/java/org/springblade/box/tube/entity/RepairItem.java

@@ -120,5 +120,16 @@ public class RepairItem implements Serializable {
 	@TableField(exist = false)
 	private List<Files> itemFilesList;
 
+	/**
+	 * 箱类型
+	 */
+	@ApiModelProperty(value = "箱类型")
+	private String boxType;
+	/**
+	 * 箱类型id
+	 */
+	@ApiModelProperty(value = "箱类型id")
+	private Long boxTypeId;
+
 
 }

+ 18 - 0
blade-service-api/blade-box-tube-api/src/main/java/org/springblade/box/tube/entity/TradingBox.java

@@ -218,6 +218,18 @@ public class TradingBox implements Serializable {
 	private Date rentDate;
 
 	/**
+	 * 起租,退租地点
+	 */
+	@TableField(exist = false)
+	private String address;
+
+	/**
+	 * 起租,退租地点id
+	 */
+	@TableField(exist = false)
+	private Long addressId;
+
+	/**
 	 * 租金计费截止日期
 	 */
 	@TableField(exist = false)
@@ -240,6 +252,12 @@ public class TradingBox implements Serializable {
 	@TableField(exist = false)
 	private List<String> updateTimeList;
 
+	/**
+	 * 明细箱号集合
+	 */
+	@ApiModelProperty(value = "明细箱号集合")
+	private String code;
+
 
 
 }

+ 6 - 0
blade-service-api/blade-box-tube-api/src/main/java/org/springblade/box/tube/entity/Transport.java

@@ -282,4 +282,10 @@ public class Transport implements Serializable {
 	@TableField(exist = false)
 	private List<String> updateTimeList;
 
+	/**
+	 * 箱数
+	 */
+	@ApiModelProperty(value = "箱数")
+	private int boxNumber;
+
 }

+ 9 - 0
blade-service-api/blade-purchase-sales-api/src/main/java/org/springblade/purchase/sales/vo/OrderFilesVO.java

@@ -16,11 +16,14 @@
  */
 package org.springblade.purchase.sales.vo;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import org.springblade.purchase.sales.entity.OrderFiles;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import io.swagger.annotations.ApiModel;
 
+import java.util.List;
+
 /**
  * 订单文件视图实体类
  *
@@ -33,4 +36,10 @@ import io.swagger.annotations.ApiModel;
 public class OrderFilesVO extends OrderFiles {
 	private static final long serialVersionUID = 1L;
 
+	@TableField(exist = false)
+	private List<OrderFiles> orderFilesList;
+
+	@TableField(exist = false)
+	private Long pid;
+
 }

+ 2 - 0
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/ArchivesController.java

@@ -184,6 +184,7 @@ public class ArchivesController extends BladeController {
 	@PostMapping("/remove")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "删除", notes = "传入ids")
+	@RepeatSubmit
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
 		return R.status(archivesService.removeByIds(Func.toLongList(ids)));
 	}
@@ -232,6 +233,7 @@ public class ArchivesController extends BladeController {
 	@PostMapping("/import-descParts-info")
 	@ApiOperationSupport(order = 12)
 	@ApiOperation(value = "导入商品资料", notes = "传入excel")
+	@RepeatSubmit
 	public R importArchivesInfo(MultipartFile file) {
 		List<ArchivesExcelEnter> excelList = ExcelUtil.read(file, ArchivesExcelEnter.class);
 		if (CollectionUtils.isEmpty(excelList)) {

+ 3 - 0
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/ArchivesFilesController.java

@@ -23,6 +23,7 @@ import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import lombok.AllArgsConstructor;
 import javax.validation.Valid;
 
+import org.springblade.common.annotation.RepeatSubmit;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.tool.api.R;
@@ -107,6 +108,7 @@ public class ArchivesFilesController extends BladeController {
 	@PostMapping("/submit")
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入archivesFiles")
+	@RepeatSubmit
 	public R submit(@Valid @RequestBody ArchivesFiles archivesFiles) {
 		return R.status(archivesFilesService.saveOrUpdate(archivesFiles));
 	}
@@ -118,6 +120,7 @@ public class ArchivesFilesController extends BladeController {
 	@PostMapping("/remove")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "删除", notes = "传入ids")
+	@RepeatSubmit
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
 		return R.status(archivesFilesService.removeByIds(Func.toLongList(ids)));
 	}

+ 31 - 9
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/ArchivesTrajectoryController.java

@@ -17,27 +17,26 @@
 package org.springblade.box.tube.controller;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
-import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import lombok.AllArgsConstructor;
-import javax.validation.Valid;
-
-import org.springblade.box.tube.entity.Transport;
+import org.springblade.box.tube.entity.ArchivesTrajectory;
+import org.springblade.box.tube.service.IArchivesTrajectoryService;
+import org.springblade.box.tube.vo.ArchivesTrajectoryVO;
+import org.springblade.common.annotation.RepeatSubmit;
+import org.springblade.core.boot.ctrl.BladeController;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.Func;
 import org.springframework.web.bind.annotation.*;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import org.springblade.box.tube.entity.ArchivesTrajectory;
-import org.springblade.box.tube.vo.ArchivesTrajectoryVO;
-import org.springblade.box.tube.service.IArchivesTrajectoryService;
-import org.springblade.core.boot.ctrl.BladeController;
 
+import javax.validation.Valid;
 import java.util.Date;
 
 /**
@@ -85,6 +84,27 @@ public class ArchivesTrajectoryController extends BladeController {
 		}
 		lambdaQueryWrapper.orderByDesc(ArchivesTrajectory::getCreateTime);
 		IPage<ArchivesTrajectory> pages = archivesTrajectoryService.page(Condition.getPage(query), lambdaQueryWrapper);
+		for (ArchivesTrajectory archivesTrajectory_ : pages.getRecords()) {
+			if ("BUY".equals(archivesTrajectory_.getBillType())) {
+				archivesTrajectory_.setBillType("买箱");
+			} else if ("SELL".equals(archivesTrajectory_.getBillType())) {
+				archivesTrajectory_.setBillType("卖箱");
+			} else if ("CKZY".equals(archivesTrajectory_.getBillType())) {
+				archivesTrajectory_.setBillType("出口装运");
+			} else if ("JKFC".equals(archivesTrajectory_.getBillType())) {
+				archivesTrajectory_.setBillType("进口返程");
+			} else if ("REPAIR".equals(archivesTrajectory_.getBillType())) {
+				archivesTrajectory_.setBillType("修箱");
+			} else if ("WASH".equals(archivesTrajectory_.getBillType())) {
+				archivesTrajectory_.setBillType("洗箱");
+			} else if ("ZR".equals(archivesTrajectory_.getBillType())) {
+				archivesTrajectory_.setBillType("租入");
+			} else if ("ZC".equals(archivesTrajectory_.getBillType())) {
+				archivesTrajectory_.setBillType("租出");
+			} else {
+				archivesTrajectory_.setBillType("");
+			}
+		}
 		return R.data(pages);
 	}
 
@@ -128,6 +148,7 @@ public class ArchivesTrajectoryController extends BladeController {
 	@PostMapping("/submit")
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入archivesTrajectory")
+	@RepeatSubmit
 	public R submit(@Valid @RequestBody ArchivesTrajectory archivesTrajectory) {
 		return R.status(archivesTrajectoryService.saveOrUpdate(archivesTrajectory));
 	}
@@ -139,6 +160,7 @@ public class ArchivesTrajectoryController extends BladeController {
 	@PostMapping("/remove")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "删除", notes = "传入ids")
+	@RepeatSubmit
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
 		return R.status(archivesTrajectoryService.removeByIds(Func.toLongList(ids)));
 	}

+ 3 - 0
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/FilesController.java

@@ -23,6 +23,7 @@ import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import lombok.AllArgsConstructor;
 import javax.validation.Valid;
 
+import org.springblade.common.annotation.RepeatSubmit;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.tool.api.R;
@@ -107,6 +108,7 @@ public class FilesController extends BladeController {
 	@PostMapping("/submit")
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入files")
+	@RepeatSubmit
 	public R submit(@Valid @RequestBody Files files) {
 		return R.status(filesService.saveOrUpdate(files));
 	}
@@ -118,6 +120,7 @@ public class FilesController extends BladeController {
 	@PostMapping("/remove")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "删除", notes = "传入ids")
+	@RepeatSubmit
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
 		return R.status(filesService.removeByIds(Func.toLongList(ids)));
 	}

+ 5 - 0
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/RepairController.java

@@ -142,6 +142,7 @@ public class RepairController extends BladeController {
 	@PostMapping("/remove")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "删除", notes = "传入ids")
+	@RepeatSubmit
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
 		Repair repair = repairService.getById(ids);
 		if (ObjectUtils.isNotNull(repair) && 3 == repair.getStatus()) {
@@ -169,6 +170,7 @@ public class RepairController extends BladeController {
 	@PostMapping("/passCheck")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "Feign-审核通过", notes = "传入财务id")
+	@RepeatSubmit
 	public R passCheck(@ApiParam(value = "财务主表id", required = true) @RequestParam Long id) {
 		repairService.passCheck(id);
 		return R.success("操作成功");
@@ -178,6 +180,7 @@ public class RepairController extends BladeController {
 	 * 审核中
 	 */
 	@PostMapping("/underReview")
+	@RepeatSubmit
 	public R underReview(@ApiParam(value = "主表id", required = true) @RequestParam Long id) {
 		repairService.underReview(id);
 		return R.success("操作成功");
@@ -189,6 +192,7 @@ public class RepairController extends BladeController {
 	@PostMapping("/passCancel")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "Feign-审核不通过", notes = "传入财务id")
+	@RepeatSubmit
 	public R passCancel(@ApiParam(value = "财务主表id", required = true) @RequestParam Long id) {
 		repairService.passCancel(id);
 		return R.success("操作成功");
@@ -201,6 +205,7 @@ public class RepairController extends BladeController {
 	 * @return
 	 */
 	@PostMapping("/withdrawRepair")
+	@RepeatSubmit
 	public R withdrawRepair(@RequestBody Repair repair) {
 		Repair check = repairService.withdrawRepair(repair);
 		return R.data(check);

+ 3 - 0
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/RepairFeesController.java

@@ -23,6 +23,7 @@ import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import lombok.AllArgsConstructor;
 import javax.validation.Valid;
 
+import org.springblade.common.annotation.RepeatSubmit;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.tool.api.R;
@@ -107,6 +108,7 @@ public class RepairFeesController extends BladeController {
 	@PostMapping("/submit")
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入repairFees")
+	@RepeatSubmit
 	public R submit(@Valid @RequestBody RepairFees repairFees) {
 		return R.status(repairFeesService.saveOrUpdate(repairFees));
 	}
@@ -118,6 +120,7 @@ public class RepairFeesController extends BladeController {
 	@PostMapping("/remove")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "删除", notes = "传入ids")
+	@RepeatSubmit
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
 		return R.status(repairFeesService.removeByIds(Func.toLongList(ids)));
 	}

+ 3 - 0
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/RepairItemController.java

@@ -23,6 +23,7 @@ import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import lombok.AllArgsConstructor;
 import javax.validation.Valid;
 
+import org.springblade.common.annotation.RepeatSubmit;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.tool.api.R;
@@ -107,6 +108,7 @@ public class RepairItemController extends BladeController {
 	@PostMapping("/submit")
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入repairItem")
+	@RepeatSubmit
 	public R submit(@Valid @RequestBody RepairItem repairItem) {
 		return R.status(repairItemService.saveOrUpdate(repairItem));
 	}
@@ -118,6 +120,7 @@ public class RepairItemController extends BladeController {
 	@PostMapping("/remove")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "删除", notes = "传入ids")
+	@RepeatSubmit
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
 		return R.status(repairItemService.removeByIds(Func.toLongList(ids)));
 	}

+ 4 - 0
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/TradingBoxController.java

@@ -28,6 +28,7 @@ import org.springblade.box.tube.dto.ArchivesExcelOut;
 import org.springblade.box.tube.dto.ExportTradingBoxOut;
 import org.springblade.box.tube.entity.Archives;
 import org.springblade.box.tube.entity.TradingBox;
+import org.springblade.box.tube.entity.Transport;
 import org.springblade.box.tube.service.ITradingBoxService;
 import org.springblade.box.tube.vo.TradingBoxVO;
 import org.springblade.common.annotation.RepeatSubmit;
@@ -84,6 +85,7 @@ public class TradingBoxController extends BladeController {
 			.like(ObjectUtils.isNotNull(tradingBox.getContractNo()), TradingBox::getContractNo, tradingBox.getContractNo())//合同号
 			.like(ObjectUtils.isNotNull(tradingBox.getPurchaseCompanyId()), TradingBox::getPurchaseCompanyId, tradingBox.getPurchaseCompanyId())//买入公司id
 			.eq(ObjectUtils.isNotNull(tradingBox.getStatus()), TradingBox::getStatus, tradingBox.getStatus())//状态
+			.like(ObjectUtils.isNotNull(tradingBox.getCode()), TradingBox::getCode, tradingBox.getCode())//箱号
 			.eq(ObjectUtils.isNotNull(tradingBox.getType()), TradingBox::getType, tradingBox.getType());//业务类型
 		if (tradingBox.getPurchaseDateList() != null && tradingBox.getPurchaseDateList().size() > 1) {//买入时间
 			lambdaQueryWrapper.ge(TradingBox::getPurchaseDate, tradingBox.getPurchaseDateList().get(0));
@@ -143,6 +145,7 @@ public class TradingBoxController extends BladeController {
 	@PostMapping("/remove")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "删除", notes = "传入ids")
+	@RepeatSubmit
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
 		TradingBox tradingBox = tradingBoxService.getById(ids);
 		if (ObjectUtils.isNotNull(tradingBox) && 3 == tradingBox.getStatus()) {
@@ -202,6 +205,7 @@ public class TradingBoxController extends BladeController {
 	 * @return
 	 */
 	@PostMapping("/withdrawTradingBox")
+	@RepeatSubmit
 	public R withdrawTradingBox(@RequestBody TradingBox tradingBox) {
 		TradingBox check = tradingBoxService.withdrawTradingBox(tradingBox);
 		return R.data(check);

+ 3 - 0
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/TradingBoxFeesController.java

@@ -23,6 +23,7 @@ import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import lombok.AllArgsConstructor;
 import javax.validation.Valid;
 
+import org.springblade.common.annotation.RepeatSubmit;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.tool.api.R;
@@ -107,6 +108,7 @@ public class TradingBoxFeesController extends BladeController {
 	@PostMapping("/submit")
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入tradingBoxFees")
+	@RepeatSubmit
 	public R submit(@Valid @RequestBody TradingBoxFees tradingBoxFees) {
 		return R.status(tradingBoxFeesService.saveOrUpdate(tradingBoxFees));
 	}
@@ -118,6 +120,7 @@ public class TradingBoxFeesController extends BladeController {
 	@PostMapping("/remove")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "删除", notes = "传入ids")
+	@RepeatSubmit
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
 		return R.status(tradingBoxFeesService.removeByIds(Func.toLongList(ids)));
 	}

+ 3 - 0
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/TradingBoxFilesController.java

@@ -23,6 +23,7 @@ import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import lombok.AllArgsConstructor;
 import javax.validation.Valid;
 
+import org.springblade.common.annotation.RepeatSubmit;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.tool.api.R;
@@ -107,6 +108,7 @@ public class TradingBoxFilesController extends BladeController {
 	@PostMapping("/submit")
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入tradingBoxFiles")
+	@RepeatSubmit
 	public R submit(@Valid @RequestBody TradingBoxFiles tradingBoxFiles) {
 		return R.status(tradingBoxFilesService.saveOrUpdate(tradingBoxFiles));
 	}
@@ -118,6 +120,7 @@ public class TradingBoxFilesController extends BladeController {
 	@PostMapping("/remove")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "删除", notes = "传入ids")
+	@RepeatSubmit
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
 		return R.status(tradingBoxFilesService.removeByIds(Func.toLongList(ids)));
 	}

+ 3 - 0
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/TradingBoxItemController.java

@@ -23,6 +23,7 @@ import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import lombok.AllArgsConstructor;
 import javax.validation.Valid;
 
+import org.springblade.common.annotation.RepeatSubmit;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.tool.api.R;
@@ -107,6 +108,7 @@ public class TradingBoxItemController extends BladeController {
 	@PostMapping("/submit")
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入tradingBoxItem")
+	@RepeatSubmit
 	public R submit(@Valid @RequestBody TradingBoxItem tradingBoxItem) {
 		return R.status(tradingBoxItemService.saveOrUpdate(tradingBoxItem));
 	}
@@ -118,6 +120,7 @@ public class TradingBoxItemController extends BladeController {
 	@PostMapping("/remove")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "删除", notes = "传入ids")
+	@RepeatSubmit
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
 		return R.status(tradingBoxItemService.removeByIds(Func.toLongList(ids)));
 	}

+ 9 - 0
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/TradingBoxRentController.java

@@ -30,6 +30,7 @@ import org.springblade.box.tube.entity.Archives;
 import org.springblade.box.tube.entity.TradingBox;
 import org.springblade.box.tube.service.ITradingBoxService;
 import org.springblade.box.tube.vo.TradingBoxVO;
+import org.springblade.common.annotation.RepeatSubmit;
 import org.springblade.core.boot.ctrl.BladeController;
 import org.springblade.core.excel.util.ExcelUtil;
 import org.springblade.core.mp.support.Condition;
@@ -85,6 +86,7 @@ public class TradingBoxRentController extends BladeController {
 			.like(ObjectUtils.isNotNull(tradingBox.getContractNo()), TradingBox::getContractNo, tradingBox.getContractNo())//合同号
 			.like(ObjectUtils.isNotNull(tradingBox.getPurchaseCompanyId()), TradingBox::getPurchaseCompanyId, tradingBox.getPurchaseCompanyId())//买入公司id
 			.eq(ObjectUtils.isNotNull(tradingBox.getStatus()), TradingBox::getStatus, tradingBox.getStatus())//状态
+			.like(ObjectUtils.isNotNull(tradingBox.getCode()), TradingBox::getCode, tradingBox.getCode())//箱号
 			.eq(ObjectUtils.isNotNull(tradingBox.getCreateUser()), TradingBox::getCreateUser, tradingBox.getCreateUser())//制单人
 			.eq(ObjectUtils.isNotNull(tradingBox.getUpdateUser()), TradingBox::getUpdateUser, tradingBox.getUpdateUser())//修改人
 			.eq(ObjectUtils.isNotNull(tradingBox.getType()), TradingBox::getType, tradingBox.getType());//业务类型
@@ -142,6 +144,7 @@ public class TradingBoxRentController extends BladeController {
 	@PostMapping("/submit")
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入tradingBox")
+	@RepeatSubmit
 	public R submit(@Valid @RequestBody TradingBox tradingBox) {
 		return R.data(tradingBoxService.addRent(tradingBox));
 	}
@@ -153,6 +156,7 @@ public class TradingBoxRentController extends BladeController {
 	@PostMapping("/remove")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "删除", notes = "传入ids")
+	@RepeatSubmit
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
 		TradingBox tradingBox = tradingBoxService.getById(ids);
 		if (ObjectUtils.isNotNull(tradingBox) && 3 == tradingBox.getStatus()) {
@@ -168,6 +172,7 @@ public class TradingBoxRentController extends BladeController {
 	 * @return
 	 */
 	@PostMapping("/checkTradingBox")
+	@RepeatSubmit
 	public R checkTradingBox(@RequestBody TradingBox tradingBox) {
 		TradingBox check = tradingBoxService.checkTradingBox(tradingBox);
 		return R.data(check);
@@ -211,6 +216,7 @@ public class TradingBoxRentController extends BladeController {
 	 * @return
 	 */
 	@PostMapping("/withdrawTradingBox")
+	@RepeatSubmit
 	public R withdrawTradingBox(@RequestBody TradingBox tradingBox) {
 		TradingBox check = tradingBoxService.withdrawTradingBox(tradingBox);
 		return R.data(check);
@@ -222,6 +228,7 @@ public class TradingBoxRentController extends BladeController {
 	@PostMapping("/startingRent")
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入tradingBox")
+	@RepeatSubmit
 	public R startingRent(@Valid @RequestBody TradingBox tradingBox) {
 		return R.data(tradingBoxService.startingRent(tradingBox));
 	}
@@ -232,6 +239,7 @@ public class TradingBoxRentController extends BladeController {
 	@PostMapping("/rentCalculation")
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入tradingBox")
+	@RepeatSubmit
 	public R rentCalculation(@Valid @RequestBody TradingBox tradingBox) {
 		return R.data(tradingBoxService.rentCalculation(tradingBox));
 	}
@@ -242,6 +250,7 @@ public class TradingBoxRentController extends BladeController {
 	@PostMapping("/revokeRentCalculation")
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入tradingBox")
+	@RepeatSubmit
 	public R revokeRentCalculation(@Valid @RequestBody TradingBox tradingBox) {
 		return R.data(tradingBoxService.revokeRentCalculation(tradingBox));
 	}

+ 2 - 0
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/TransportController.java

@@ -156,6 +156,7 @@ public class TransportController extends BladeController {
 	@PostMapping("/remove")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "删除", notes = "传入ids")
+	@RepeatSubmit
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
 		Transport transport = transportService.getById(ids);
 		if (ObjectUtils.isNotNull(transport) && 3 == transport.getStatus()) {
@@ -231,6 +232,7 @@ public class TransportController extends BladeController {
 	 * @return
 	 */
 	@PostMapping("/withdrawTransport")
+	@RepeatSubmit
 	public R withdrawTradingBox(@RequestBody Transport transport) {
 		Transport check = transportService.withdrawTransport(transport);
 		return R.data(check);

+ 3 - 0
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/TransportFilesController.java

@@ -23,6 +23,7 @@ import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import lombok.AllArgsConstructor;
 import javax.validation.Valid;
 
+import org.springblade.common.annotation.RepeatSubmit;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.tool.api.R;
@@ -107,6 +108,7 @@ public class TransportFilesController extends BladeController {
 	@PostMapping("/submit")
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入transportFiles")
+	@RepeatSubmit
 	public R submit(@Valid @RequestBody TransportFiles transportFiles) {
 		return R.status(transportFilesService.saveOrUpdate(transportFiles));
 	}
@@ -118,6 +120,7 @@ public class TransportFilesController extends BladeController {
 	@PostMapping("/remove")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "删除", notes = "传入ids")
+	@RepeatSubmit
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
 		return R.status(transportFilesService.removeByIds(Func.toLongList(ids)));
 	}

+ 3 - 0
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/TransportItemController.java

@@ -23,6 +23,7 @@ import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import lombok.AllArgsConstructor;
 import javax.validation.Valid;
 
+import org.springblade.common.annotation.RepeatSubmit;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.tool.api.R;
@@ -107,6 +108,7 @@ public class TransportItemController extends BladeController {
 	@PostMapping("/submit")
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入transportItem")
+	@RepeatSubmit
 	public R submit(@Valid @RequestBody TransportItem transportItem) {
 		return R.status(transportItemService.saveOrUpdate(transportItem));
 	}
@@ -118,6 +120,7 @@ public class TransportItemController extends BladeController {
 	@PostMapping("/remove")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "删除", notes = "传入ids")
+	@RepeatSubmit
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
 		return R.status(transportItemService.removeByIds(Func.toLongList(ids)));
 	}

+ 3 - 0
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/TransportItemFeesController.java

@@ -23,6 +23,7 @@ import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import lombok.AllArgsConstructor;
 import javax.validation.Valid;
 
+import org.springblade.common.annotation.RepeatSubmit;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.tool.api.R;
@@ -107,6 +108,7 @@ public class TransportItemFeesController extends BladeController {
 	@PostMapping("/submit")
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入transportItemFees")
+	@RepeatSubmit
 	public R submit(@Valid @RequestBody TransportItemFees transportItemFees) {
 		return R.status(transportItemFeesService.saveOrUpdate(transportItemFees));
 	}
@@ -118,6 +120,7 @@ public class TransportItemFeesController extends BladeController {
 	@PostMapping("/remove")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "删除", notes = "传入ids")
+	@RepeatSubmit
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
 		return R.status(transportItemFeesService.removeByIds(Func.toLongList(ids)));
 	}

+ 7 - 1
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/service/impl/RepairServiceImpl.java

@@ -29,6 +29,7 @@ import lombok.AllArgsConstructor;
 import org.springblade.box.tube.entity.*;
 import org.springblade.box.tube.mapper.*;
 import org.springblade.box.tube.service.IRepairService;
+import org.springblade.box.tube.utils.GeneralToolsUtils;
 import org.springblade.box.tube.vo.RepairVO;
 import org.springblade.check.dto.AuditProecessDTO;
 import org.springblade.check.entity.AuditPathsActs;
@@ -193,6 +194,7 @@ public class RepairServiceImpl extends ServiceImpl<RepairMapper, Repair> impleme
 
 		//明细
 		List<RepairItem> repairItemList = repair.getRepairItemList();
+		int boxNumber = 0;
 		if (ObjectUtils.isNotNull(repairItemList) && repairItemList.size() > 0) {
 			//箱号拼接字符串
 			List<String> codes = repairItemList.stream().map(RepairItem::getCode).distinct().collect(Collectors.toList());
@@ -200,8 +202,8 @@ public class RepairServiceImpl extends ServiceImpl<RepairMapper, Repair> impleme
 			if (ObjectUtils.isNotNull(repair.getTotalAmount())) {
 				repair.setTotalAmount(repairItemList.stream().map(RepairItem::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
 			}
-			baseMapper.updateById(repair);
 			for (RepairItem repairItem : repairItemList) {
+				boxNumber += GeneralToolsUtils.boxNumber(repairItem.getBoxType());
 				//明细
 				List<Files> itemFilesList = repairItem.getItemFilesList();
 					if (repairItem.getId() == null) {
@@ -256,6 +258,8 @@ public class RepairServiceImpl extends ServiceImpl<RepairMapper, Repair> impleme
 					} else if ("WASH".equals(repair.getBillType())) {
 						archivesTrajectory.setStatus("洗箱");
 					}
+					archivesTrajectory.setCorpId(repair.getCompanyId());
+					archivesTrajectory.setCorpName(repair.getCompany());
 					archivesTrajectory.setBillType(repair.getBillType());
 					archivesTrajectory.setCode(repairItem.getCode());
 					archivesTrajectory.setAddress(repair.getAddress());
@@ -272,6 +276,8 @@ public class RepairServiceImpl extends ServiceImpl<RepairMapper, Repair> impleme
 			}
 			repair.setRepairItemList(repairItemList);
 		}
+		repair.setBoxNumber(boxNumber);
+		baseMapper.updateById(repair);
 
 		//费用明细
 		List<RepairFees> repairFeesList = repair.getRepairFeesList();

+ 61 - 28
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/service/impl/TradingBoxServiceImpl.java

@@ -28,6 +28,7 @@ import org.springblade.box.tube.dto.TradingBoxItemRentExcelEnter;
 import org.springblade.box.tube.entity.*;
 import org.springblade.box.tube.mapper.*;
 import org.springblade.box.tube.service.ITradingBoxService;
+import org.springblade.box.tube.utils.GeneralToolsUtils;
 import org.springblade.box.tube.vo.TradingBoxVO;
 import org.springblade.check.dto.AuditProecessDTO;
 import org.springblade.check.entity.AuditPathsActs;
@@ -208,16 +209,21 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 		}
 		//明细数据
 		List<TradingBoxItem> tradingBoxItemList = tradingBox.getTradingBoxItemsList();
+		int boxNumber = 0;
 		if (ObjectUtils.isNotNull(tradingBoxItemList) && tradingBoxItemList.size() > 0) {
+			//箱号拼接字符串
+			List<String> codes = tradingBoxItemList.stream().map(TradingBoxItem::getCode).distinct().collect(Collectors.toList());
+			tradingBox.setCode(String.join(",", codes));
 			for (TradingBoxItem tradingBoxItem : tradingBoxItemList) {
+				boxNumber += GeneralToolsUtils.boxNumber(tradingBoxItem.getBoxType());
 				if ("BUY".equals(tradingBox.getType())) {
 					tradingBoxItem.setBoxSource("购买");
-					tradingBoxItem.setBoxStatus("待使用");
+					tradingBoxItem.setStatus("待使用");
 				} else {
 					if (tradingBoxItem.getBoxSource().equals("购买")) {
-						tradingBoxItem.setBoxStatus("卖出");
+						tradingBoxItem.setStatus("卖出");
 					} else {
-						tradingBoxItem.setBoxStatus("退租");
+						tradingBoxItem.setStatus("退租");
 					}
 				}
 				if (tradingBoxItem.getId() == null) {
@@ -316,10 +322,12 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 					//记录箱轨迹信息
 					ArchivesTrajectory archivesTrajectory = new ArchivesTrajectory();
 					if ("BUY".equals(tradingBox.getType())) {
-						archivesTrajectory.setStatus("空箱入场");
+						archivesTrajectory.setStatus("买箱");
 					} else if ("SELL".equals(tradingBox.getType())) {
-						archivesTrajectory.setStatus("空箱离场");
+						archivesTrajectory.setStatus("卖箱");
 					}
+					archivesTrajectory.setCorpId(tradingBox.getPurchaseCompanyId());
+					archivesTrajectory.setCorpName(tradingBox.getPurchaseCompanyName());
 					archivesTrajectory.setContractNo(tradingBox.getContractNo());
 					archivesTrajectory.setBillType(tradingBox.getType());
 					archivesTrajectory.setCode(tradingBoxItem.getCode());
@@ -336,6 +344,8 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 			}
 			tradingBox.setTradingBoxItemsList(tradingBoxItemList);
 		}
+		tradingBox.setBoxNumber(boxNumber);
+		baseMapper.updateById(tradingBox);
 		//费用明细
 		List<TradingBoxFees> tradingBoxFeesList = tradingBox.getTradingBoxFeesList();
 		if (ObjectUtils.isNotNull(tradingBoxFeesList) && tradingBoxFeesList.size() > 0) {
@@ -406,18 +416,33 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 		}
 		//明细数据
 		List<TradingBoxItem> tradingBoxItemList = tradingBox.getTradingBoxItemsList();
+		int boxNumber = 0;
 		if (ObjectUtils.isNotNull(tradingBoxItemList) && tradingBoxItemList.size() > 0) {
 			for (TradingBoxItem tradingBoxItem : tradingBoxItemList) {
+				boxNumber += GeneralToolsUtils.boxNumber(tradingBoxItem.getBoxType());
 				if (tradingBox.getType().equals("ZR")) {
 					tradingBoxItem.setBoxSource("租入");
 				} else if (tradingBox.getType().equals("ZC")) {
 				}
-				if (ObjectUtils.isNull(tradingBoxItem.getRentEndDate()) && ObjectUtils.isNull(tradingBoxItem.getRentStartDate())){
+				if (ObjectUtils.isNull(tradingBoxItem.getRentEndDate()) && ObjectUtils.isNull(tradingBoxItem.getRentStartDate())) {
 					tradingBoxItem.setRentEndDate(tradingBoxItem.getLeaseCommencementDate());
 					tradingBoxItem.setRentStartDate(tradingBoxItem.getLeaseCommencementDate());
 				}
 				if (tradingBoxItem.getId() == null) {
-					tradingBoxItem.setStatus("录入");
+					if (tradingBox.getType().equals("ZR")) {
+						if (ObjectUtils.isNotNull(tradingBoxItem.getLeaseCommencementDate())) {
+							tradingBoxItem.setStatus("待使用");
+						} else {
+							tradingBoxItem.setStatus("录入");
+						}
+					} else if (tradingBox.getType().equals("ZC")) {
+//						tradingBoxItem.setStatus("使用");
+						if (ObjectUtils.isNotNull(tradingBoxItem.getLeaseCommencementDate())) {
+							tradingBoxItem.setStatus("使用");
+						} else {
+							tradingBoxItem.setStatus("录入");
+						}
+					}
 					tradingBoxItem.setCreateUser(AuthUtil.getUserId());
 					tradingBoxItem.setCreateTime(new Date());
 					tradingBoxItem.setCreateUserName(AuthUtil.getUserName());
@@ -517,6 +542,8 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 					} else if ("ZC".equals(tradingBox.getType())) {
 						archivesTrajectory.setStatus("租出");
 					}
+					archivesTrajectory.setCorpId(tradingBox.getPurchaseCompanyId());
+					archivesTrajectory.setCorpName(tradingBox.getPurchaseCompanyName());
 					archivesTrajectory.setContractNo(tradingBox.getContractNo());
 					archivesTrajectory.setBillType(tradingBox.getType());
 					archivesTrajectory.setCode(tradingBoxItem.getCode());
@@ -533,6 +560,8 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 			}
 			tradingBox.setTradingBoxItemsList(tradingBoxItemList);
 		}
+		tradingBox.setBoxNumber(boxNumber);
+		baseMapper.updateById(tradingBox);
 		//费用明细
 		List<TradingBoxFees> tradingBoxFeesList = tradingBox.getTradingBoxFeesList();
 		if (ObjectUtils.isNotNull(tradingBoxFeesList) && tradingBoxFeesList.size() > 0) {
@@ -842,8 +871,6 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 			tradingBoxItem.setUpdateUserName(AuthUtil.getUserName());
 			if ("1".equals(tradingBox.getRentType())) {
 				tradingBoxItem.setLeaseCommencementDate(tradingBox.getRentDate());
-				tradingBoxItem.setBoxStatus("租入");
-				tradingBoxItem.setStatus("待使用");
 				if (ObjectUtils.isNotNull(tradingBoxItem.getCode())) {
 					//更新箱档案信息
 					Archives archivesR = archivesMapper.selectOne(new LambdaQueryWrapper<Archives>().eq(Archives::getIsDeleted, 0).eq(Archives::getTenantId, AuthUtil.getTenantId()).eq(Archives::getCode, tradingBoxItem.getCode()));
@@ -858,8 +885,8 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 						archives.setGorssWeight(tradingBoxItem.getGrossWeight());
 						archives.setStatus(tradingBoxItem.getStatus());
 						archives.setTypeId(tradingBoxItem.getBoxTypeId());
-						archives.setAddressId(tradingBoxItem.getAddressId());
-						archives.setAddress(tradingBoxItem.getAddress());
+						archives.setAddressId(tradingBox.getAddressId());
+						archives.setAddress(tradingBox.getAddress());
 						archives.setNewDate(tradingBoxItem.getNewDate());
 						archives.setEmptyWeight(tradingBoxItem.getEmptyWeight());
 						archives.setTare(tradingBoxItem.getTare());
@@ -873,7 +900,6 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 						archives.setContractNo(tradingBox.getContractNo());
 						archives.setBoxAccessStatus("空箱入场");
 						archives.setBoxSource("租入");
-						archives.setStatus("待使用");
 						archives.setLeasingCompanyId(tradingBox.getPurchaseCompanyId());
 						archives.setLeasingCompany(tradingBox.getPurchaseCompanyName());
 						if (ObjectUtils.isNotNull(archivesR)) {
@@ -883,7 +909,7 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 							archivesMapper.updateById(archives);
 						} else {
 							archives.setBoxSource(tradingBoxItem.getBoxSource());
-							archives.setBoxStatus(tradingBoxItem.getBoxStatus());
+							archives.setStatus(tradingBoxItem.getStatus());
 							archives.setCreateUser(AuthUtil.getUserId());
 							archives.setCreateTime(new Date());
 							archives.setCreateUserName(AuthUtil.getUserName());
@@ -901,6 +927,7 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 							}
 						}
 						archivesTrajectory.setStatus("租入");
+						tradingBoxItem.setStatus("待使用");
 					} else {
 						archives.setBoxAccessStatus("空箱离场");
 						archives.setStatus("使用");
@@ -911,6 +938,7 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 						archives.setUpdateUser(AuthUtil.getUserId());
 						archivesMapper.updateById(archives);
 						archivesTrajectory.setStatus("租出");
+						tradingBoxItem.setStatus("使用");
 					}
 				} else {
 					throw new RuntimeException("箱号不能为空");
@@ -928,8 +956,8 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 						archivesR.setUpdateTime(new Date());
 						archivesR.setUpdateUserName(AuthUtil.getUserName());
 						archivesR.setUpdateUser(AuthUtil.getUserId());
-						archivesR.setAddress(tradingBoxItem.getAddress());
-						archivesR.setAddressId(tradingBoxItem.getAddressId());
+						archivesR.setAddress(tradingBox.getAddress());
+						archivesR.setAddressId(tradingBox.getAddressId());
 						archivesMapper.updateById(archivesR);
 					} else {
 						archivesR.setBoxAccessStatus("空箱入场");
@@ -937,8 +965,8 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 						archivesR.setUpdateTime(new Date());
 						archivesR.setUpdateUserName(AuthUtil.getUserName());
 						archivesR.setUpdateUser(AuthUtil.getUserId());
-						archivesR.setAddress(tradingBoxItem.getAddress());
-						archivesR.setAddressId(tradingBoxItem.getAddressId());
+						archivesR.setAddress(tradingBox.getAddress());
+						archivesR.setAddressId(tradingBox.getAddressId());
 						archivesMapper.updateById(archivesR);
 					}
 					archivesTrajectory.setStatus("退租");
@@ -1020,9 +1048,13 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 				tradingBoxItem.setStatus("退租");
 				tradingBoxItem.setRentEndDate(tradingBox.getRentDate());
 				tradingBoxItem.setRentingOutDate(tradingBox.getRentDate());
+				tradingBoxItem.setAddress(tradingBox.getAddress());
+				tradingBoxItem.setAddressId(tradingBox.getAddressId());
 			}
 			tradingBoxItemMapper.updateById(tradingBoxItem);
 			//记录箱轨迹信息
+			archivesTrajectory.setCorpId(tradingBox.getPurchaseCompanyId());
+			archivesTrajectory.setCorpName(tradingBox.getPurchaseCompanyName());
 			archivesTrajectory.setContractNo(tradingBox.getContractNo());
 			archivesTrajectory.setBillType(tradingBox.getType());
 			archivesTrajectory.setCode(tradingBoxItem.getCode());
@@ -1268,7 +1300,8 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 	@Override
 	@Transactional(rollbackFor = Exception.class)
 	@GlobalTransactional(rollbackFor = Exception.class, timeoutMills = 12000000)
-	public R importTradingBoxInfo(List<TradingBoxItemRentExcelEnter> excelList, boolean b, Long corpId, String corpName, String billType) {
+	public R
+	importTradingBoxInfo(List<TradingBoxItemRentExcelEnter> excelList, boolean b, Long corpId, String corpName, String billType) {
 		List<TradingBoxItem> tradingBoxItemList = new ArrayList<>();
 		List<TradingBoxFees> tradingBoxFeesList = new ArrayList<>();
 		for (TradingBoxItemRentExcelEnter tradingBoxItemExcelEnter : excelList) {
@@ -1319,13 +1352,13 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 					tradingBoxItem.setAddressId(null);
 				}
 			}
-			if ("SELL".equals(billType) || "BUY".equals(billType)){
+			if ("SELL".equals(billType) || "BUY".equals(billType)) {
 				tradingBoxItem.setAmount(tradingBoxItem.getPrice());
 				TradingBoxFees tradingBoxFees = new TradingBoxFees();
 				tradingBoxFees.setCorpId(corpId);
 				tradingBoxFees.setCorpName(corpName);
 				tradingBoxFees.setAmount(tradingBoxItem.getPrice());
-				if ("SELL".equals(billType)){
+				if ("SELL".equals(billType)) {
 					//获取费用id
 					R<FeesDesc> fees = feesDescClient.getFeesByName("卖箱费");
 					if (fees.isSuccess() && fees.getData() != null) {
@@ -1333,7 +1366,7 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 						tradingBoxFees.setItemName("卖箱费");
 					}
 					tradingBoxFees.setFeesType(1);
-				}else{
+				} else {
 					//获取费用id
 					R<FeesDesc> fees = feesDescClient.getFeesByName("买箱费");
 					if (fees.isSuccess() && fees.getData() != null) {
@@ -1344,9 +1377,9 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 				}
 				tradingBoxFees.setUnit(tradingBoxItem.getBoxType());
 				tradingBoxFees.setCurrency(tradingBoxItem.getCurrency());
-				if ("CNY".equals(tradingBoxItem.getCurrency())){
+				if ("CNY".equals(tradingBoxItem.getCurrency())) {
 					tradingBoxFees.setExchangeRate(new BigDecimal(1));
-				}else{
+				} else {
 					tradingBoxFees.setExchangeRate(new BigDecimal("6.30"));
 				}
 				tradingBoxFees.setAutoGenerate("1");
@@ -1356,18 +1389,18 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 				tradingBoxFees.setCode(tradingBoxItem.getCode());
 				tradingBoxFeesList.add(tradingBoxFees);
 			}
-			if("ZC".equals(billType) && ObjectUtils.isNotNull(tradingBoxItemExcelEnter.getLeaseCommencementDate())){
+			if ("ZC".equals(billType) && ObjectUtils.isNotNull(tradingBoxItemExcelEnter.getLeaseCommencementDate())) {
 				tradingBoxItem.setStatus("待使用");
 			}
 
 			tradingBoxItemList.add(tradingBoxItem);
 		}
-		if ("SELL".equals(billType) || "BUY".equals(billType)){
+		if ("SELL".equals(billType) || "BUY".equals(billType)) {
 			Map<String, Object> map = new HashMap<>();
-			map.put("tradingBoxItemList",tradingBoxItemList);
-			map.put("tradingBoxFeesList",tradingBoxFeesList);
+			map.put("tradingBoxItemList", tradingBoxItemList);
+			map.put("tradingBoxFeesList", tradingBoxFeesList);
 			return R.data(map);
-		}else{
+		} else {
 			return R.data(tradingBoxItemList);
 		}
 	}

+ 13 - 1
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/service/impl/TransportServiceImpl.java

@@ -29,6 +29,7 @@ import org.springblade.box.tube.dto.TransportItemExcelEnter;
 import org.springblade.box.tube.entity.*;
 import org.springblade.box.tube.mapper.*;
 import org.springblade.box.tube.service.ITransportService;
+import org.springblade.box.tube.utils.GeneralToolsUtils;
 import org.springblade.box.tube.vo.TransportVO;
 import org.springblade.check.dto.AuditProecessDTO;
 import org.springblade.check.entity.AuditPathsActs;
@@ -186,6 +187,7 @@ public class TransportServiceImpl extends ServiceImpl<TransportMapper, Transport
 		}
 		//明细数据
 		List<TransportItem> transportItemList = transport.getTransportItemList();
+		int boxNumber = 0;
 		if (ObjectUtils.isNotNull(transportItemList) && transportItemList.size() > 0) {
 			//箱号拼接字符串
 			List<String> codes = transportItemList.stream().map(TransportItem::getCode).distinct().collect(Collectors.toList());
@@ -193,8 +195,8 @@ public class TransportServiceImpl extends ServiceImpl<TransportMapper, Transport
 			if (ObjectUtils.isNotNull(transport.getTotalAmount())) {
 				transport.setTotalAmount(transportItemList.stream().map(TransportItem::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
 			}
-			baseMapper.updateById(transport);
 			for (TransportItem transportItem : transportItemList) {
+				boxNumber += GeneralToolsUtils.boxNumber(transportItem.getBoxType());
 				//明细数据修改添加
 				if (transportItem.getId() == null) {
 					transportItem.setCreateUser(AuthUtil.getUserId());
@@ -226,6 +228,8 @@ public class TransportServiceImpl extends ServiceImpl<TransportMapper, Transport
 			}
 			transport.setTransportItemList(transportItemList);
 		}
+		transport.setBoxNumber(boxNumber);
+		baseMapper.updateById(transport);
 		//费用明细
 		List<TransportItemFees> transportItemFeesList = transport.getTransportItemFeesList();
 		if (ObjectUtils.isNotNull(transportItemFeesList) && transportItemFeesList.size() > 0) {
@@ -370,6 +374,14 @@ public class TransportServiceImpl extends ServiceImpl<TransportMapper, Transport
 
 			//添加箱轨迹信息
 			ArchivesTrajectory archivesTrajectory = new ArchivesTrajectory();
+			if (ObjectUtils.isNotNull(transport.getCorpId())){
+				archivesTrajectory.setCorpId(transport.getCorpId());
+				archivesTrajectory.setCorpName(transport.getCorpName());
+			}else{
+				archivesTrajectory.setCorpId(transport.getShippingCompanyId());
+				archivesTrajectory.setCorpName(transport.getShippingCompany());
+			}
+
 			archivesTrajectory.setStatus(type);
 			archivesTrajectory.setBillType(transport.getBillType());
 			archivesTrajectory.setCode(transportItem.getCode());

+ 24 - 0
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/utils/GeneralToolsUtils.java

@@ -0,0 +1,24 @@
+package org.springblade.box.tube.utils;
+
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+
+import java.math.BigDecimal;
+import java.math.MathContext;
+
+/**
+ * 通用工具类
+ */
+public class GeneralToolsUtils {
+
+	public static final int[] arr = new int[]{0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
+
+
+	public static int boxNumber(String boxType) {
+		if (ObjectUtils.isNotNull(boxType) && boxType.length() > 2) {
+			BigDecimal number = new BigDecimal(boxType.substring(0, 2));
+			return number.divide(new BigDecimal("20"), MathContext.DECIMAL32).setScale(0, BigDecimal.ROUND_HALF_UP).intValue();
+		}
+		return 0;
+	}
+
+}

+ 20 - 9
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/controller/OrderFilesController.java

@@ -16,24 +16,25 @@
  */
 package org.springblade.purchase.sales.controller;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
-import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import lombok.AllArgsConstructor;
-import javax.validation.Valid;
-
+import org.springblade.core.boot.ctrl.BladeController;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.secure.utils.SecureUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.Func;
-import org.springframework.web.bind.annotation.*;
-import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.springblade.purchase.sales.entity.OrderFiles;
-import org.springblade.purchase.sales.vo.OrderFilesVO;
 import org.springblade.purchase.sales.service.IOrderFilesService;
-import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.purchase.sales.vo.OrderFilesVO;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
 
 /**
  * 订单文件 控制器
@@ -101,8 +102,8 @@ public class OrderFilesController extends BladeController {
 	@ApiOperationSupport(order = 5)
 	@ApiOperation(value = "修改", notes = "传入orderFiles")
 	public R update(@Valid @RequestBody OrderFiles orderFiles) {
-		if (orderFiles.getId() == null){
-			return R.fail(500,"请选择要删除的数据");
+		if (orderFiles.getId() == null) {
+			return R.fail(500, "请选择要删除的数据");
 		}
 		orderFiles.setIsDeleted(1);
 		return R.status(orderFilesService.updateById(orderFiles));
@@ -118,6 +119,16 @@ public class OrderFilesController extends BladeController {
 		return R.status(orderFilesService.saveOrUpdate(orderFiles));
 	}
 
+	/**
+	 * 新增或修改 订单文件
+	 */
+	@PostMapping("/add")
+	@ApiOperationSupport(order = 6)
+	@ApiOperation(value = "新增或修改", notes = "传入orderFiles")
+	public R add(@RequestBody OrderFilesVO orderFilesVO) {
+		return orderFilesService.add(orderFilesVO);
+	}
+
 
 	/**
 	 * 删除 订单文件

+ 7 - 0
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/service/IOrderFilesService.java

@@ -16,11 +16,15 @@
  */
 package org.springblade.purchase.sales.service;
 
+import org.springblade.core.tool.api.R;
 import org.springblade.purchase.sales.entity.OrderFiles;
 import org.springblade.purchase.sales.vo.OrderFilesVO;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 
+import java.util.Date;
+import java.util.List;
+
 /**
  * 订单文件 服务类
  *
@@ -43,4 +47,7 @@ public interface IOrderFilesService extends IService<OrderFiles> {
 	 */
 	public void updateByPid(Long id);
 
+	R add(OrderFilesVO orderFilesVO);
+
+	public List<OrderFiles> saveOrderFileMessage(List<OrderFiles> list, Date date, Long Pid);
 }

+ 38 - 6
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/service/impl/OrderFilesServiceImpl.java

@@ -16,11 +16,11 @@
  */
 package org.springblade.purchase.sales.service.impl;
 
-import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import lombok.AllArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
 import org.springblade.core.secure.utils.SecureUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.purchase.sales.entity.OrderFiles;
-import org.springblade.purchase.sales.entity.OrderModify;
 import org.springblade.purchase.sales.vo.OrderFilesVO;
 import org.springblade.purchase.sales.mapper.OrderFilesMapper;
 import org.springblade.purchase.sales.service.IOrderFilesService;
@@ -38,6 +38,8 @@ import java.util.List;
  * @since 2021-09-26
  */
 @Service
+@AllArgsConstructor
+@Slf4j
 public class OrderFilesServiceImpl extends ServiceImpl<OrderFilesMapper, OrderFiles> implements IOrderFilesService {
 
 	@Override
@@ -45,6 +47,37 @@ public class OrderFilesServiceImpl extends ServiceImpl<OrderFilesMapper, OrderFi
 		return page.setRecords(baseMapper.selectOrderFilesPage(page, orderFiles));
 	}
 
+	@Override
+	public void updateByPid(Long id) {
+
+	}
+
+	/**
+	 * 保存订单文件信息
+	 * @return
+	 */
+	@Override
+	public R add(OrderFilesVO orderFilesVO){
+		List<OrderFiles> list = orderFilesVO.getOrderFilesList();
+		list.stream().forEach(item ->{
+			if (item.getId() == null){
+				item.setCreateUser(SecureUtil.getUserId());
+				item.setTenantId(SecureUtil.getTenantId());
+				item.setCreateTime(new Date());
+				item.setPid(orderFilesVO.getPid());
+				baseMapper.insert(item);
+			}else {
+				item.setUpdateUser(SecureUtil.getUserId());
+				item.setTenantId(SecureUtil.getTenantId());
+				item.setUpdateTime(new Date());
+				item.setPid(orderFilesVO.getPid());
+				baseMapper.updateById(item);
+			}
+		});
+		orderFilesVO.setId(orderFilesVO.getPid());
+		return R.data(orderFilesVO);
+	}
+
 	/**
 	 * 保存订单文件信息
 	 * @param list  订单文件信息
@@ -52,6 +85,7 @@ public class OrderFilesServiceImpl extends ServiceImpl<OrderFilesMapper, OrderFi
 	 * @param Pid
 	 * @return
 	 */
+	@Override
 	public List<OrderFiles> saveOrderFileMessage(List<OrderFiles> list,Date date,Long Pid){
 			list.stream().forEach(item ->{
 				if (item.getId() == null){
@@ -71,8 +105,6 @@ public class OrderFilesServiceImpl extends ServiceImpl<OrderFilesMapper, OrderFi
 
 		return list;
 	}
-	@Override
-	public void updateByPid(Long id) {
-		baseMapper.updateByPid(id);
-	}
+
+
 }

+ 4 - 3
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/service/impl/OrderServiceImpl.java

@@ -51,6 +51,7 @@ import org.springblade.purchase.sales.entity.*;
 import org.springblade.purchase.sales.enums.OrderStatusEnum;
 import org.springblade.purchase.sales.excel.*;
 import org.springblade.purchase.sales.mapper.*;
+import org.springblade.purchase.sales.service.IOrderFilesService;
 import org.springblade.purchase.sales.service.IOrderService;
 import org.springblade.purchase.sales.vo.*;
 import org.springblade.stock.entity.StockGoods;
@@ -92,7 +93,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 	/**
 	 * 订单文件表
 	 */
-	private OrderFilesServiceImpl orderFilesService;
+	private IOrderFilesService orderFilesService;
 	/**
 	 * 订单明细表
 	 */
@@ -1826,13 +1827,13 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 		if(ObjectUtils.isNotNull(orderMessage.getSalesName())){
 			// 获取业务员中文名
 			R<User> salesUser = userClient.userInfoById(Long.parseLong(orderMessage.getSalesName()));
-			if (salesUser.isSuccess() || salesUser.getData() != null) {
+			if (!salesUser.isSuccess() && salesUser.getData() != null) {
 				orderMessage.setSales(salesUser.getData().getName());
 			}
 		}
 		// 获取创建人中文名
 		R<User> createUser = userClient.userInfoById(orderMessage.getCreateUser());
-		if (createUser.isSuccess() || createUser.getData() != null) {
+		if (!createUser.isSuccess() && createUser.getData() != null) {
 			orderMessage.setCreateUserName(createUser.getData().getName());
 		}
 		// 获取客户中文名

+ 16 - 10
blade-service/trade-finance/src/main/java/org/springblade/finance/service/impl/SettlementServiceImpl.java

@@ -50,7 +50,6 @@ import org.springblade.client.feign.ISerialClient;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.secure.utils.SecureUtil;
 import org.springblade.core.tool.api.R;
-import org.springblade.core.tool.utils.BeanUtil;
 import org.springblade.core.tool.utils.CollectionUtil;
 import org.springblade.core.tool.utils.ObjectUtil;
 import org.springblade.deliver.goods.entity.DeliveryFees;
@@ -677,7 +676,7 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 			transportItemFeesR.getData().setSettlementAmount(decimal);
 			transportItemFeesR.getData().setSettlementDate(null);
 			transportClient.updateTransportItemFees(transportItemFeesR.getData());
-		}else if (type == 7) {
+		} else if (type == 7) {
 			Long srcFeesId = acc.getSrcFeesId();
 			if (srcFeesId == null) {
 				throw new SecurityException("操作失败,未获取到原业务信息");
@@ -698,7 +697,7 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 			repairFeesR.getData().setSettlementAmount(decimal);
 			repairFeesR.getData().setSettlementDate(null);
 			repairClient.updateRepairFees(repairFeesR.getData());
-		}else if (type == 8){//修改金港报关
+		} else if (type == 8) {//修改金港报关
 			Long srcFeesId = acc.getSrcFeesId();
 			if (srcFeesId == null) {
 				throw new SecurityException("撤销账单失败,未获取到原业务信息");
@@ -880,7 +879,7 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 			tradingBoxFeesR.getData().setSettlementAmount(tradingBoxFeesR.getData().getSettlementAmount() != null ? tradingBoxFeesR.getData().getSettlementAmount().add(items.getThisAmount()) : new BigDecimal("0").add(items.getThisAmount()));
 			accMapper.updateById(acc);
 			TradingBoxFees tradingBoxFees = new TradingBoxFees();
-			BeanUtils.copyProperties(tradingBoxFeesR.getData(),tradingBoxFees);
+			BeanUtils.copyProperties(tradingBoxFeesR.getData(), tradingBoxFees);
 			tradingBoxFees.setSettlementDate(new Date());
 			tradingBoxClient.updateTradingBoxFees(tradingBoxFees);
 		} else if (type == 6) {
@@ -927,10 +926,10 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 			feesR.getData().setSettlementAmount(feesR.getData().getSettlementAmount() != null ? feesR.getData().getSettlementAmount().add(items.getThisAmount()) : new BigDecimal("0").add(items.getThisAmount()));
 			accMapper.updateById(acc);
 			DeclareCustomsFees declareCustomsFees = new DeclareCustomsFees();
-			BeanUtils.copyProperties(feesR.getData(),declareCustomsFees);
+			BeanUtils.copyProperties(feesR.getData(), declareCustomsFees);
 			declareCustomsFees.setSettlementDate(new Date());
 			declareCustomsClient.updateDeclareCustomsFees(declareCustomsFees);
-		}else {
+		} else {
 			throw new SecurityException("操作失败,财务类型为空无法结算");
 		}
 
@@ -2476,15 +2475,22 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 	@GlobalTransactional(rollbackFor = Exception.class, timeoutMills = 12000000)
 	public void paymentApplyParts(ApplyDTO dto) {
 		Acc acc = new Acc();
-		BeanUtils.copyProperties(dto, acc);
-		if (acc.getId() == null) {
+		LambdaQueryWrapper<Acc> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+		lambdaQueryWrapper.eq(Acc::getIsDeleted, 0)
+			.eq(Acc::getTenantId, AuthUtil.getTenantId())
+			.eq(Acc::getSrcParentId, dto.getSrcParentId())
+			.eq(Acc::getSrcSysno, dto.getSrcSysno());
+		Acc selectAcc = accMapper.selectOne(lambdaQueryWrapper);
+		if (ObjectUtils.isNull(selectAcc)) {
+			BeanUtils.copyProperties(dto, acc);
 			acc.setAccDate(new Date());
 			acc.setCreateTime(new Date());
 			acc.setCreateUser(AuthUtil.getUserId());
 			accMapper.insert(acc);
 		} else {
-			acc = accMapper.selectById(acc.getId());
-			Long id = acc.getId();
+			BeanUtils.copyProperties(selectAcc, acc);
+			BeanUtils.copyProperties(dto, acc);
+			Long id = selectAcc.getId();
 			for (Settlement settlement : dto.getSettlementList()) {
 				if (settlement.getId() == null) {
 					Settlement model = new Settlement();

+ 1 - 0
blade-service/trade-purchase/src/main/java/com/trade/purchase/order/service/impl/OrderServiceImpl.java

@@ -1870,6 +1870,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 		Order order = orderMapper.selectById(id);
 		Date date = new Date();
 		if (ObjectUtils.isNotNull(order)) {
+
 			//出库提交
 			if (OrderTypeEnum.OUT_WAREHOUSING.getType().equals(order.getBillType())) {
 				//获取出库明细 修改扫描状态