瀏覽代碼

2023年1月29日17:07:53

纪新园 2 年之前
父節點
當前提交
bbb370f54f

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

@@ -23,6 +23,7 @@ import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.io.Serializable;
+import java.math.BigDecimal;
 import java.time.LocalDate;
 import java.time.LocalDateTime;
 import java.util.Date;
@@ -139,5 +140,25 @@ public class ArchivesTrajectory implements Serializable {
 	@ApiModelProperty(value = "客户名称")
 	private String corpName;
 
+	/**
+	 * 来源id
+	 */
+	@ApiModelProperty(value = "来源id")
+	private Long srcId;
+
+	/**
+	 * 应付
+	 */
+	@ApiModelProperty(value = "应付")
+	@TableField(exist = false)
+	private BigDecimal pay;
+
+	/**
+	 * 应收
+	 */
+	@ApiModelProperty(value = "应收")
+	@TableField(exist = false)
+	private BigDecimal collect;
+
 
 }

+ 41 - 0
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/ArchivesTrajectoryController.java

@@ -25,7 +25,11 @@ import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 import lombok.AllArgsConstructor;
 import org.springblade.box.tube.entity.ArchivesTrajectory;
+import org.springblade.box.tube.entity.TradingBoxFees;
+import org.springblade.box.tube.entity.TransportItemFees;
 import org.springblade.box.tube.service.IArchivesTrajectoryService;
+import org.springblade.box.tube.service.ITradingBoxFeesService;
+import org.springblade.box.tube.service.ITransportItemFeesService;
 import org.springblade.box.tube.vo.ArchivesTrajectoryVO;
 import org.springblade.common.annotation.RepeatSubmit;
 import org.springblade.core.boot.ctrl.BladeController;
@@ -37,7 +41,11 @@ import org.springblade.core.tool.utils.Func;
 import org.springframework.web.bind.annotation.*;
 
 import javax.validation.Valid;
+import java.math.BigDecimal;
+import java.util.ArrayList;
 import java.util.Date;
+import java.util.List;
+import java.util.Objects;
 
 /**
  * 箱轨迹表 控制器
@@ -53,6 +61,10 @@ public class ArchivesTrajectoryController extends BladeController {
 
 	private final IArchivesTrajectoryService archivesTrajectoryService;
 
+	private final ITradingBoxFeesService tradingBoxFeesService;
+
+	private final ITransportItemFeesService transportItemFeesService;
+
 	/**
 	 * 详情
 	 */
@@ -86,6 +98,35 @@ public class ArchivesTrajectoryController extends BladeController {
 		lambdaQueryWrapper.orderByDesc(ArchivesTrajectory::getCreateTime);
 		IPage<ArchivesTrajectory> pages = archivesTrajectoryService.page(Condition.getPage(query), lambdaQueryWrapper);
 		for (ArchivesTrajectory archivesTrajectory_ : pages.getRecords()) {
+			List<TransportItemFees> transportItemFeesList = new ArrayList<>();
+			List<TradingBoxFees> tradingBoxFeesList = new ArrayList<>();
+			if ("CKZY".equals(archivesTrajectory_.getBillType()) || "JKFC".equals(archivesTrajectory_.getBillType())) {
+				LambdaQueryWrapper<TransportItemFees> transportItemFeesLambdaQueryWrapper = new LambdaQueryWrapper<>();
+				transportItemFeesLambdaQueryWrapper.eq(TransportItemFees::getIsDeleted, 0)
+					.eq(TransportItemFees::getTenantId, AuthUtil.getTenantId())
+					.eq(TransportItemFees::getPid, archivesTrajectory_.getSrcId());
+				transportItemFeesList = transportItemFeesService.list(transportItemFeesLambdaQueryWrapper);
+				if (ObjectUtils.isNotNull(transportItemFeesList) && transportItemFeesList.size() > 0) {
+					archivesTrajectory_.setPay(transportItemFeesList.stream().filter(e -> e.getFeesType() == 1).map(TransportItemFees::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
+					archivesTrajectory_.setCollect(transportItemFeesList.stream().filter(e -> e.getFeesType() == 2).map(TransportItemFees::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
+				} else {
+					archivesTrajectory_.setPay(new BigDecimal("0.00"));
+					archivesTrajectory_.setCollect(new BigDecimal("0.00"));
+				}
+			} else {
+				LambdaQueryWrapper<TradingBoxFees> tradingBoxFeesLambdaQueryWrapper = new LambdaQueryWrapper<>();
+				tradingBoxFeesLambdaQueryWrapper.eq(TradingBoxFees::getIsDeleted, 0)
+					.eq(TradingBoxFees::getTenantId, AuthUtil.getTenantId())
+					.eq(TradingBoxFees::getPid, archivesTrajectory_.getSrcId());
+				tradingBoxFeesList = tradingBoxFeesService.list(tradingBoxFeesLambdaQueryWrapper);
+				if (ObjectUtils.isNotNull(tradingBoxFeesList) && tradingBoxFeesList.size() > 0) {
+					archivesTrajectory_.setPay(tradingBoxFeesList.stream().filter(e -> e.getFeesType() == 1).map(TradingBoxFees::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
+					archivesTrajectory_.setCollect(tradingBoxFeesList.stream().filter(e -> e.getFeesType() == 2).map(TradingBoxFees::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
+				} else {
+					archivesTrajectory_.setPay(new BigDecimal("0.00"));
+					archivesTrajectory_.setCollect(new BigDecimal("0.00"));
+				}
+			}
 			if ("BUY".equals(archivesTrajectory_.getBillType())) {
 				archivesTrajectory_.setBillType("买箱");
 			} else if ("SELL".equals(archivesTrajectory_.getBillType())) {

+ 2 - 4
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/BoxDataAnalysisController.java

@@ -75,8 +75,7 @@ public class BoxDataAnalysisController extends BladeController {
 		LambdaQueryWrapper<Archives> lambdaQueryWrapper = new LambdaQueryWrapper<>();
 		lambdaQueryWrapper.eq(Archives::getTenantId, AuthUtil.getTenantId())
 			.eq(Archives::getIsDeleted, 0)
-			.eq(Archives::getAddress, address)
-			.eq(Archives::getStatus, "使用");
+			.eq(Archives::getAddress, address);
 		IPage<Archives> archivesList = archivesService.page(Condition.getPage(query),lambdaQueryWrapper);
 		return R.data(archivesList);
 	}
@@ -122,8 +121,7 @@ public class BoxDataAnalysisController extends BladeController {
 			lambdaQueryWrapper.ge(Archives::getNewDate, archives.getNewDateList().get(0));
 			lambdaQueryWrapper.le(Archives::getNewDate, archives.getNewDateList().get(1));
 		}
-		lambdaQueryWrapper.eq(Archives::getStatus, "使用")
-			.orderByDesc(Archives::getCreateTime);
+		lambdaQueryWrapper.orderByDesc(Archives::getCreateTime);
 		List<Archives> archivesList = archivesService.list(lambdaQueryWrapper);
 		Date date = new Date();
 		for (Archives archives_ : archivesList) {

+ 1 - 1
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/controller/TransferController.java

@@ -152,7 +152,7 @@ public class TransferController extends BladeController {
 			.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, "DCF");//业务类型
+			.eq(TradingBox::getType, "DCF");//业务类型
 		if (tradingBox.getPurchaseDateList() != null && tradingBox.getPurchaseDateList().size() > 1) {//买入时间
 			lambdaQueryWrapper.ge(TradingBox::getPurchaseDate, tradingBox.getPurchaseDateList().get(0));
 			lambdaQueryWrapper.le(TradingBox::getPurchaseDate, tradingBox.getPurchaseDateList().get(1));

+ 9 - 5
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/service/impl/ArchivesServiceImpl.java

@@ -214,10 +214,15 @@ public class ArchivesServiceImpl extends ServiceImpl<ArchivesMapper, Archives> i
 				LambdaQueryWrapper<Archives> lambdaQueryWrapper = new LambdaQueryWrapper<>();
 				lambdaQueryWrapper.eq(Archives::getTenantId, AuthUtil.getTenantId())
 					.eq(Archives::getIsDeleted, 0)
-					.eq(ObjectUtils.isNotNull(portDesc.getId()), Archives::getAddressId, portDesc.getId())//最新地点id
-					.eq(Archives::getStatus, "使用");//状态
+					.eq(ObjectUtils.isNotNull(portDesc.getName()), Archives::getAddress, portDesc.getName());//状态
 				int count = baseMapper.selectCount(lambdaQueryWrapper);
-				address.add(portDesc.getName());
+				if (portDesc.getName().length() > 4){
+					String newName = portDesc.getName().substring(0,4);
+					newName = newName+"…";
+					address.add(newName);
+				}else{
+					address.add(portDesc.getName());
+				}
 				sum.add(count);
 			}
 		}
@@ -285,8 +290,7 @@ public class ArchivesServiceImpl extends ServiceImpl<ArchivesMapper, Archives> i
 					lambdaQueryWrapper.eq(Archives::getTenantId, AuthUtil.getTenantId())
 						.eq(Archives::getIsDeleted, 0)
 						.eq(ObjectUtils.isNotNull(portDesc.getId()), Archives::getAddressId, portDesc.getId())//最新地点id
-						.eq(ObjectUtils.isNotNull(basicContainerDesc.getId()), Archives::getTypeId, basicContainerDesc.getId())//箱类型
-						.eq(Archives::getStatus, "使用");//状态
+						.eq(ObjectUtils.isNotNull(basicContainerDesc.getId()), Archives::getTypeId, basicContainerDesc.getId());//状态
 					int count = baseMapper.selectCount(lambdaQueryWrapper);
 					address.add(portDesc.getName());
 					sum.add(count);

+ 18 - 10
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/service/impl/TradingBoxServiceImpl.java

@@ -193,7 +193,7 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 	@GlobalTransactional(rollbackFor = Exception.class, timeoutMills = 12000000)
 	public TradingBox add(TradingBox tradingBox) {
 		List<TradingBox> tradingBoxList = new ArrayList<>();
-		if (ObjectUtils.isNotNull(tradingBox.getContractNo())){
+		if (ObjectUtils.isNotNull(tradingBox.getContractNo())) {
 			LambdaQueryWrapper<TradingBox> lambdaQueryWrapper = new LambdaQueryWrapper<>();
 			lambdaQueryWrapper.eq(TradingBox::getIsDeleted, 0)
 				.eq(TradingBox::getTenantId, AuthUtil.getTenantId())
@@ -236,17 +236,19 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 			//箱号拼接字符串
 			List<String> codes = tradingBoxItemList.stream().map(TradingBoxItem::getCode).distinct().collect(Collectors.toList());
 			tradingBox.setCode(String.join(",", codes));
-			/*StringBuilder boxTypeNumber = new StringBuilder();
-			List<String> boxType = tradingBoxItemList.stream().map(TradingBoxItem::getBoxType).distinct().collect(Collectors.toList());
+			StringBuilder boxTypeNumber = new StringBuilder();
+			List<String> boxType = tradingBoxItemList.stream().filter(e -> ObjectUtils.isNotNull(e.getBoxType())).map(TradingBoxItem::getBoxType).distinct().collect(Collectors.toList());
 			for (String boxType_ : boxType) {
 				if (ObjectUtils.isNotNull(boxType) && boxType.size() > 0) {
 					List<TradingBoxItem> boxTypeSize = tradingBoxItemList.stream().filter(e -> ObjectUtils.isNotNull(e.getBoxType()) && e.getBoxType().equals(boxType_)).collect(Collectors.toList());
 					if (ObjectUtils.isNotNull(boxTypeSize) && boxTypeSize.size() > 0) {
-						boxTypeNumber.append(boxType_).append("").append(boxTypeSize.size()).append(",");
+						boxTypeNumber.append(boxType_).append("X").append(boxTypeSize.size()).append(",");
 					}
 				}
 			}
-			tradingBox.setBoxTypeNumber(boxTypeNumber.toString());*/
+			if (ObjectUtils.isNotNull(boxTypeNumber)){
+				tradingBox.setBoxTypeNumber(boxTypeNumber.substring(0, boxTypeNumber.length() - 1));
+			}
 			for (TradingBoxItem tradingBoxItem : tradingBoxItemList) {
 				if ("BUY".equals(tradingBox.getType())) {
 					tradingBoxItem.setBoxSource("购买");
@@ -373,6 +375,7 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 						archivesTrajectory.setCreateUser(AuthUtil.getUserId());
 						archivesTrajectory.setCreateUserName(AuthUtil.getUserName());
 						archivesTrajectory.setTenantId(AuthUtil.getTenantId());
+						archivesTrajectory.setSrcId(tradingBox.getId());
 						archivesTrajectoryMapper.insert(archivesTrajectory);
 					} else {
 						throw new RuntimeException("箱号不能为空");
@@ -477,17 +480,19 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 			//箱号拼接字符串
 			List<String> codes = tradingBoxItemList.stream().map(TradingBoxItem::getCode).distinct().collect(Collectors.toList());
 			tradingBox.setCode(String.join(",", codes));
-			/*StringBuilder boxTypeNumber = new StringBuilder();
-			List<String> boxType = tradingBoxItemList.stream().map(TradingBoxItem::getBoxType).distinct().collect(Collectors.toList());
+			StringBuilder boxTypeNumber = new StringBuilder();
+			List<String> boxType = tradingBoxItemList.stream().filter(e -> ObjectUtils.isNotNull(e.getBoxType())).map(TradingBoxItem::getBoxType).distinct().collect(Collectors.toList());
 			for (String boxType_ : boxType) {
 				if (ObjectUtils.isNotNull(boxType) && boxType.size() > 0) {
 					List<TradingBoxItem> boxTypeSize = tradingBoxItemList.stream().filter(e -> ObjectUtils.isNotNull(e.getBoxType()) && e.getBoxType().equals(boxType_)).collect(Collectors.toList());
 					if (ObjectUtils.isNotNull(boxTypeSize) && boxTypeSize.size() > 0) {
-						boxTypeNumber.append(boxType_).append("").append(boxTypeSize.size()).append(",");
+						boxTypeNumber.append(boxType_).append("X").append(boxTypeSize.size()).append(",");
 					}
 				}
 			}
-			tradingBox.setBoxTypeNumber(boxTypeNumber.toString());*/
+			if (ObjectUtils.isNotNull(boxTypeNumber)){
+				tradingBox.setBoxTypeNumber(boxTypeNumber.substring(0, boxTypeNumber.length() - 1));
+			}
 			for (TradingBoxItem tradingBoxItem : tradingBoxItemList) {
 				if (tradingBox.getType().equals("ZR")) {
 					tradingBoxItem.setBoxSource("租入");
@@ -511,7 +516,9 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 						} else {
 							tradingBoxItem.setStatus("录入");
 						}
-						transferService.stockpilingFee(codes);
+						List<String> codeList = new ArrayList<>();
+						codeList.add(tradingBoxItem.getCode());
+						transferService.stockpilingFee(codeList);
 					}
 					tradingBoxItem.setCreateUser(AuthUtil.getUserId());
 					tradingBoxItem.setCreateTime(new Date());
@@ -641,6 +648,7 @@ public class TradingBoxServiceImpl extends ServiceImpl<TradingBoxMapper, Trading
 						archivesTrajectory.setCreateUser(AuthUtil.getUserId());
 						archivesTrajectory.setCreateUserName(AuthUtil.getUserName());
 						archivesTrajectory.setTenantId(AuthUtil.getTenantId());
+						archivesTrajectory.setSrcId(tradingBox.getId());
 						archivesTrajectoryMapper.insert(archivesTrajectory);
 					} else {
 						throw new RuntimeException("箱号不能为空");

+ 24 - 1
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/service/impl/TransferServiceImpl.java

@@ -44,6 +44,7 @@ import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.interceptor.TransactionAspectSupport;
 
 import java.math.BigDecimal;
+import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
@@ -130,6 +131,19 @@ public class TransferServiceImpl implements ITransferService {
 			//箱号拼接字符串
 			List<String> codes = tradingBoxItemList.stream().map(TradingBoxItem::getCode).distinct().collect(Collectors.toList());
 			tradingBox.setCode(String.join(",", codes));
+			StringBuilder boxTypeNumber = new StringBuilder();
+			List<String> boxType = tradingBoxItemList.stream().filter(e -> ObjectUtils.isNotNull(e.getBoxType())).map(TradingBoxItem::getBoxType).distinct().collect(Collectors.toList());
+			for (String boxType_ : boxType) {
+				if (ObjectUtils.isNotNull(boxType) && boxType.size() > 0) {
+					List<TradingBoxItem> boxTypeSize = tradingBoxItemList.stream().filter(e -> ObjectUtils.isNotNull(e.getBoxType()) && e.getBoxType().equals(boxType_)).collect(Collectors.toList());
+					if (ObjectUtils.isNotNull(boxTypeSize) && boxTypeSize.size() > 0) {
+						boxTypeNumber.append(boxType_).append("X").append(boxTypeSize.size()).append(",");
+					}
+				}
+			}
+			if (ObjectUtils.isNotNull(boxTypeNumber)){
+				tradingBox.setBoxTypeNumber(boxTypeNumber.substring(0, boxTypeNumber.length() - 1));
+			}
 			for (TradingBoxItem tradingBoxItem : tradingBoxItemList) {
 				if (ObjectUtils.isNotNull(tradingBox.getSource())) {
 					if ("JKFC".equals(tradingBox.getSource()) || "CKZY".equals(tradingBox.getSource())) {
@@ -442,6 +456,8 @@ public class TransferServiceImpl implements ITransferService {
 		if (ObjectUtils.isNull(codeList) || codeList.size() < 1) {
 			throw new RuntimeException("缺少必要参数");
 		}
+
+		SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
 		//账单数据
 		ApplyDTO applyDTO = new ApplyDTO();
 		applyDTO.setBillType("申请");
@@ -457,15 +473,22 @@ public class TransferServiceImpl implements ITransferService {
 				tradingBoxItem1.setUpdateUserName(AuthUtil.getUserName());
 				int days = 0;
 				if (ObjectUtils.isNotNull(tradingBoxItem1.getRentEndDate())) {
+					if (new Date().before(tradingBoxItem1.getRentEndDate())){
+						throw new RuntimeException("箱号:"+code+"堆存费计算截止时间为:"+simpleDateFormat.format(tradingBoxItem1.getRentEndDate())+"请于该时间之后在行使用。");
+					}
 					tradingBoxItem1.setRentStartDate(tradingBoxItem1.getRentEndDate());
 					days = (int) ((new Date().getTime() - tradingBoxItem1.getRentEndDate().getTime()) / (1000 * 3600 * 24)) + 1;
 				} else {
+					if (new Date().before(tradingBoxItem1.getCreateTime())){
+						throw new RuntimeException("箱号:"+code+"堆存费计算截止时间为:"+simpleDateFormat.format(tradingBoxItem1.getRentEndDate())+"请于该时间之后在行使用。");
+					}
 					tradingBoxItem1.setRentStartDate(tradingBoxItem1.getCreateTime());
 					days = (int) ((new Date().getTime() - tradingBoxItem1.getCreateTime().getTime()) / (1000 * 3600 * 24)) + 1;
 				}
 				tradingBoxItem1.setRentEndDate(new Date());
 				tradingBoxItemMapper.updateById(tradingBoxItem1);
 				TradingBox tradingBox = tradingBoxMapper.selectById(tradingBoxItem1.getPid());
+
 				if (ObjectUtils.isNull(tradingBox)) {
 					throw new RuntimeException("未找到单据信息");
 				}
@@ -483,7 +506,7 @@ public class TransferServiceImpl implements ITransferService {
 					tradingBoxFees.setItemId(fees.getData().getId());
 				}
 				if ("DCF".equals(tradingBox.getType())) {
-					tradingBoxFees.setFeesType(1);
+					tradingBoxFees.setFeesType(2);
 					tradingBoxFees.setBillType("堆存费");
 				}
 				tradingBoxFees.setPid(tradingBox.getId());

+ 10 - 5
blade-service/blade-box-tube/src/main/java/org/springblade/box/tube/service/impl/TransportServiceImpl.java

@@ -210,17 +210,19 @@ public class TransportServiceImpl extends ServiceImpl<TransportMapper, Transport
 			transport.setCode(String.join(",", codes));
 			transport.setTotalAmount(transportItemList.stream().map(TransportItem::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
 			transport.setOverdueAmount(transportItemList.stream().map(TransportItem::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
-			/*StringBuilder boxTypeNumber = new StringBuilder();
-			List<String> boxType = transportItemList.stream().map(TransportItem::getBoxType).distinct().collect(Collectors.toList());
+			StringBuilder boxTypeNumber = new StringBuilder();
+			List<String> boxType = transportItemList.stream().filter(e -> ObjectUtils.isNotNull(e.getBoxType())).map(TransportItem::getBoxType).distinct().collect(Collectors.toList());
 			for (String boxType_ : boxType) {
 				if (ObjectUtils.isNotNull(boxType) && boxType.size() > 0) {
 					List<TransportItem> boxTypeSize = transportItemList.stream().filter(e -> ObjectUtils.isNotNull(e.getBoxType()) && e.getBoxType().equals(boxType_)).collect(Collectors.toList());
 					if (ObjectUtils.isNotNull(boxTypeSize) && boxTypeSize.size() > 0) {
-						boxTypeNumber.append(boxType_).append("").append(boxTypeSize.size()).append(",");
+						boxTypeNumber.append(boxType_).append("X").append(boxTypeSize.size()).append(",");
 					}
 				}
 			}
-			transport.setBoxTypeNumber(boxTypeNumber.toString());*/
+			if (ObjectUtils.isNotNull(boxTypeNumber)){
+				transport.setBoxTypeNumber(boxTypeNumber.substring(0, boxTypeNumber.length() - 1));
+			}
 			for (TransportItem transportItem : transportItemList) {
 				//明细数据修改添加
 				if (transportItem.getId() == null) {
@@ -233,7 +235,9 @@ public class TransportServiceImpl extends ServiceImpl<TransportMapper, Transport
 					transportItem.setStockpilingStatus("1");
 					transportItemMapper.insert(transportItem);
 
-					transferService.stockpilingFee(codes);
+					List<String> codeList = new ArrayList<>();
+					codeList.add(transportItem.getCode());
+					transferService.stockpilingFee(codeList);
 				} else {
 					transportItem.setUpdateUser(AuthUtil.getUserId());
 					transportItem.setUpdateTime(new Date());
@@ -441,6 +445,7 @@ public class TransportServiceImpl extends ServiceImpl<TransportMapper, Transport
 			archivesTrajectory.setCreateUserName(AuthUtil.getUserName());
 			archivesTrajectory.setTenantId(AuthUtil.getTenantId());
 			archivesTrajectory.setContractNo(transport.getContractNo());
+			archivesTrajectory.setSrcId(transport.getId());
 			archivesTrajectoryMapper.insert(archivesTrajectory);
 
 			transportItemList.add(transportItem);

+ 1 - 1
blade-service/blade-system/src/main/java/org/springblade/system/mapper/DictBizMapper.xml

@@ -37,7 +37,7 @@
     </select>-->
 
     <select id="getList" resultMap="dictResultMap">
-        select id, parent_id, code, dict_key, dict_value, sort, remark from blade_dict_biz where code = #{param1} and parent_id > 0 and is_sealed = 0 and is_deleted = 0
+        select id, parent_id, code, dict_key, dict_value, sort, remark from blade_dict_biz where code = #{param1} and parent_id > 0 and is_sealed = 0 and is_deleted = 0 ORDER BY sort
     </select>
 
     <select id="tree" resultMap="treeNodeResultMap">