From acc94dd2dc309e50882f7b10c20d955ed2f14716 Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期二, 26 五月 2026 14:51:51 +0800
Subject: [PATCH] feat:修改自动编号的生成,根据传入的CreateTime生成对应的编号

---
 src/main/java/com/ruoyi/technology/service/impl/TechnologyRoutingServiceImpl.java |   15 ++++++++++++++-
 1 files changed, 14 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/ruoyi/technology/service/impl/TechnologyRoutingServiceImpl.java b/src/main/java/com/ruoyi/technology/service/impl/TechnologyRoutingServiceImpl.java
index 0eff194..f41f659 100644
--- a/src/main/java/com/ruoyi/technology/service/impl/TechnologyRoutingServiceImpl.java
+++ b/src/main/java/com/ruoyi/technology/service/impl/TechnologyRoutingServiceImpl.java
@@ -7,8 +7,12 @@
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.common.exception.ServiceException;
 import com.ruoyi.common.utils.OrderUtils;
+
+import java.time.LocalDateTime;
 import com.ruoyi.technology.bean.dto.TechnologyRoutingDto;
 import com.ruoyi.technology.bean.vo.TechnologyRoutingVo;
+import com.ruoyi.production.mapper.ProductionOrderRoutingMapper;
+import com.ruoyi.production.pojo.ProductionOrderRouting;
 import com.ruoyi.technology.mapper.*;
 import com.ruoyi.technology.pojo.*;
 import com.ruoyi.technology.service.TechnologyRoutingService;
@@ -40,6 +44,8 @@
     private final TechnologyParamMapper technologyParamMapper;
     private final TechnologyRoutingOperationParamMapper technologyRoutingOperationParamMapper;
 
+    private final ProductionOrderRoutingMapper productionOrderRoutingMapper;
+
     @Override
     public IPage<TechnologyRoutingVo> pageTechnologyRouting(Page<TechnologyRoutingDto> page, TechnologyRoutingDto technologyRoutingDto) {
         return technologyRoutingMapper.pageTechnologyRouting(page, technologyRoutingDto);
@@ -56,7 +62,7 @@
 
     @Override
     public Long saveTechnologyRouting(TechnologyRouting technologyRouting) {
-        String code = OrderUtils.countTodayByCreateTime(technologyRoutingMapper, "GYLX", "process_route_code");
+        String code = OrderUtils.countTodayByCreateTime(technologyRoutingMapper, "GYLX", "process_route_code", technologyRouting.getCreateTime() != null ? technologyRouting.getCreateTime() : LocalDateTime.now());
         technologyRouting.setProcessRouteCode(code);
         technologyRoutingMapper.insert(technologyRouting);
         // 甯﹀叆bom浜у搧缁撴瀯
@@ -79,6 +85,13 @@
         if (ids == null || ids.isEmpty()) {
             return false;
         }
+        // 鍒ゆ柇鏄惁鏈夌敓浜ц鍗曠粦瀹氳宸ヨ壓璺嚎
+        Long count = productionOrderRoutingMapper.selectCount(
+                Wrappers.<ProductionOrderRouting>lambdaQuery()
+                        .in(ProductionOrderRouting::getTechnologyRoutingId, ids));
+        if (count > 0) {
+            throw new ServiceException("璇ュ伐鑹鸿矾绾垮凡缁戝畾鐢熶骇璁㈠崟锛屾棤娉曞垹闄わ紒");
+        }
         List<TechnologyRoutingOperation> routingOperationList = technologyRoutingOperationMapper.selectList(
                 Wrappers.<TechnologyRoutingOperation>lambdaQuery()
                         .in(TechnologyRoutingOperation::getTechnologyRoutingId, ids));

--
Gitblit v1.9.3