From 2cf1565485060fd56e1f1f1cffbba7a4d70d42a6 Mon Sep 17 00:00:00 2001
From: lyh <925863403@qq.com>
Date: 星期五, 11 四月 2025 11:06:22 +0800
Subject: [PATCH] 优化dnc,设备结构树查询,优化原有代码

---
 lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProcessSpecVersionServiceImpl.java |   49 ++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 38 insertions(+), 11 deletions(-)

diff --git a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProcessSpecVersionServiceImpl.java b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProcessSpecVersionServiceImpl.java
index b4c0ab1..008852d 100644
--- a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProcessSpecVersionServiceImpl.java
+++ b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProcessSpecVersionServiceImpl.java
@@ -1,10 +1,10 @@
 package org.jeecg.modules.dnc.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.apache.shiro.SecurityUtils;
+import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.system.vo.LoginUser;
 import org.jeecg.modules.dnc.entity.*;
 import org.jeecg.modules.dnc.exception.ExceptionCast;
@@ -21,10 +21,7 @@
 import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
 
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.List;
+import java.util.*;
 
 @Service
 public class ProcessSpecVersionServiceImpl extends ServiceImpl<ProcessSpecVersionMapper, ProcessSpecVersion> implements IProcessSpecVersionService{
@@ -43,6 +40,10 @@
     private IProcessSpecVersionPermissionService processSpecVersionPermissionService;
     @Autowired
     private IProcessSpecVersionDepartmentService processSpecVersionDepartmentService;
+    @Autowired
+    private IProductMixService productMixService;
+    @Autowired
+    private IWorkStepService workStepService;
     @Autowired
     private IProductPermissionService productPermissionService;
     /**
@@ -89,7 +90,7 @@
         if(ProcessSpecVersion == null)
             ExceptionCast.cast(CommonCode.INVALID_PARAM);
         if(!ValidateUtil.validateString(ProcessSpecVersion.getProcessSpecVersionName()))
-            ExceptionCast.cast(PartsInfoCode.PARTS_NAME_NONE);
+            ExceptionCast.cast(PartsInfoCode.PROCESSSPECVERSION_NONE);
         if(!ValidateUtil.validateString(ProcessSpecVersion.getProductId()))
             ExceptionCast.cast(PartsInfoCode.PARTS_PRODUCT_NONE);
         if(!ValidateUtil.validateString(ProcessSpecVersion.getComponentId()))
@@ -98,7 +99,7 @@
             ExceptionCast.cast(ProcessInfoCode.PROCESS_PARTS_NONE);
         if(!ValidateUtil.validateString(ProcessSpecVersion.getProcessSpecVersionCode()))
             ExceptionCast.cast(PartsInfoCode.PROCESSSPECVERSION_CODE_NONE);
-        ProcessSpecVersion en = getByCode(ProcessSpecVersion.getProcessSpecVersionCode());
+        ProcessSpecVersion en = getByCode(ProcessSpecVersion.getPartsId(),ProcessSpecVersion.getProcessSpecVersionCode());
         if(en != null)
             ExceptionCast.cast(PartsInfoCode.PROCESSSPECVERSION_IS_EXIST);
         LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
@@ -149,12 +150,17 @@
         if (!b) {
             ExceptionCast.cast(ProductInfoCode.PRODUCT_SAVE_ERROR);
         }
+        //娣诲姞缁撴瀯鏍�
+        ProductMix productMix = new ProductMix(Long.parseLong(ProcessSpecVersion.getId()),Long.parseLong(ProcessSpecVersion.getPartsId())
+                ,ProcessSpecVersion.getProcessSpecVersionName(),
+                ProcessSpecVersion.getProcessSpecVersionCode(),4,new Date());
+        productMixService.save(productMix);
         //娣诲姞鐢ㄦ埛鏉冮檺
         PermissionStreamNew stream = new PermissionStreamNew();
         stream.setBusinessId(ProcessSpecVersion.getId());
         stream.setBusinessType("4");
         stream.setUserId(userId);
-        return permissionStreamNewService.save(stream);
+        return permissionStreamNewService.addPermissionStreamNew(stream);
     }
 
     /**
@@ -179,6 +185,11 @@
         processSpecVersion.setComponentId(null);
         processSpecVersion.setPartsId(null);
         boolean b = super.updateById(processSpecVersion);
+        //鍚屾淇敼缁撴瀯鏍�
+        ProductMix productMix = productMixService.getById(Long.parseLong(id));
+        productMix.setName(processSpecVersion.getProcessSpecVersionName());
+        productMix.setCode(processSpecVersion.getProcessSpecVersionCode());
+        productMixService.updateById(productMix);
         if(!b)
             return false;
         ProcessSpecVersionPermission permission = processSpecVersionPermissionService.getByPsvIdAndUserId(id, userId);
@@ -212,7 +223,7 @@
             ExceptionCast.cast(PartsInfoCode.PARTS_NOT_EXIST);
         List<ProcessStream> processStreams = processStreamService.findBypsvId(id);
         if(processStreams!= null &&!processStreams.isEmpty())
-            ExceptionCast.cast(PartsInfoCode.PARTS_PROCESS_EXIST);
+            ExceptionCast.cast(PartsInfoCode.PROCESSSPECVERSION_PROCESS_EXIST);
         boolean b = processSpecVersionPermissionService.deleteByPsvId(processSpecVersion.getId());
         if(!b)
             ExceptionCast.cast(CommonCode.FAIL);
@@ -225,13 +236,18 @@
         b = permissionStreamNewService.deletePermissionStreamNewByBusinessId(processSpecVersion.getId(),"4","1");
         if(!b)
             ExceptionCast.cast(CommonCode.FAIL);
+        b = productMixService.removeById(processSpecVersion.getId());
+        if (!b)
+            ExceptionCast.cast(CommonCode.FAIL);
         return super.removeById(processSpecVersion.getId());
     }
 
     @Override
-    public ProcessSpecVersion getByCode(String processSpecVersionCode) {
+    public ProcessSpecVersion getByCode(String partId,String processSpecVersionCode) {
         if(ValidateUtil.validateString(processSpecVersionCode)) {
-            List<ProcessSpecVersion> list = super.lambdaQuery().eq(ProcessSpecVersion::getProcessSpecVersionCode, processSpecVersionCode).list();
+            List<ProcessSpecVersion> list = super.lambdaQuery()
+                    .eq(ProcessSpecVersion::getPartsId, partId)
+                    .eq(ProcessSpecVersion::getProcessSpecVersionCode, processSpecVersionCode).list();
             if(list == null || list.isEmpty())
                 return null;
             return list.get(0);
@@ -430,4 +446,15 @@
         return true;
     }
 
+    /**
+     * 鏍规嵁宸ヨ壓瑙勭▼id鏌ヨ,涓嬬骇宸ュ簭宸ユ鏁伴噺
+     * @param processSpecId
+     * @return
+     */
+    @Override
+    public Result<?> getProcessSpecVersionCount(String processSpecId){
+        List<ProcessStream> list = processStreamService.findBypsvId(processSpecId);
+        List<WorkStep> workStepList=workStepService.list(new LambdaQueryWrapper<WorkStep>().eq(WorkStep::getPsvId,processSpecId));
+        return null;
+    }
 }

--
Gitblit v1.9.3