From e90a991b74e9b6c5169b49a1dca2478b0bca2f25 Mon Sep 17 00:00:00 2001
From: lyh <925863403@qq.com>
Date: 星期一, 23 六月 2025 14:27:58 +0800
Subject: [PATCH] 涉密网解析工控操作

---
 lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/GuideCardBatchServiceImpl.java       |    4 
 lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/DataImportService.java               |  153 +++++-------------------------
 lxzn-module-dnc/src/main/java/org/jeecg/modules/dncFlow/service/IAssignFileStreamService.java         |    2 
 lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/mapper/xml/DocInfoMapper.xml                      |    1 
 lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/FullHierarchyTraceService.java       |    6 +
 lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ComponentInfoSeServiceImpl.java      |    8 +
 lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/listener/FileListener.java                        |   55 ++--------
 lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/FileFerryService.java                |   46 --------
 lxzn-module-dnc/src/main/java/org/jeecg/modules/dncFlow/service/impl/AssignFileStreamServiceImpl.java |   10 +
 9 files changed, 66 insertions(+), 219 deletions(-)

diff --git a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/listener/FileListener.java b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/listener/FileListener.java
index d7d6b1f..bfd8427 100644
--- a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/listener/FileListener.java
+++ b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/listener/FileListener.java
@@ -2,22 +2,25 @@
 
 import org.apache.commons.io.monitor.FileAlterationListener;
 import org.apache.commons.io.monitor.FileAlterationObserver;
-import org.jeecg.common.util.FileUtil;
-import org.jeecg.modules.dnc.service.IDocInfoService;
-import org.jeecg.modules.dnc.utils.file.FileUtilS;
+import org.jeecg.modules.dnc.dto.TransferPackage;
+import org.jeecg.modules.dnc.service.impl.DataImportService;
+import org.jeecg.modules.dnc.service.impl.FileFerryService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
 import java.io.File;
-import java.util.Objects;
 
 @Component
 public class FileListener implements FileAlterationListener {
     private static final Logger log = LoggerFactory.getLogger(FileListener.class);
+
     @Autowired
-    private IDocInfoService docInfoService;  // 鏂囨。鏈嶅姟
+    private FileFerryService fileFerryService;
+
+    @Autowired
+    private DataImportService dataImportService;
 
     @Override
     public void onStart(FileAlterationObserver observer) {
@@ -43,6 +46,11 @@
     public void onFileCreate(File file) {
         String filePath = file.getAbsolutePath();
         log.info("[鏂板缓]: {}", filePath);
+        if (filePath.endsWith(".ferry")){
+            TransferPackage data = fileFerryService.importData(filePath);
+            dataImportService.importTransferPackage(data);
+            log.info("鏂囦欢瀵煎叆瀹屾垚");
+        }
     }
     @Override
     public void onFileChange(File file) {
@@ -58,42 +66,5 @@
     public void onStop(FileAlterationObserver observer) {
 //        log.info("缁撴潫鐩戝惉鐩綍: {}", observer.getDirectory().getAbsolutePath());
     }
-
-    /**
-     * 宸ユ帶缃戣В鏋愭秹瀵嗙綉浼犺繃鏉ョ殑NC鏂囦欢涓巒c鏂囦欢杩涜瑙f瀽
-     * @param file
-     */
-    private void handleIndustrialDocFile(File file) {
-        log.info("宸ユ帶缃戣В鏋愭秹瀵嗙綉浼犺繃鏉ョ殑NC鏂囦欢涓巒c鏂囦欢杩涜瑙f瀽: {}", file.getAbsolutePath());
-        try {
-            if (Objects.equals(FileUtil.getFileSuffix(file.getName()), "nc")) {
-                boolean success = docInfoService.addDocInfoAnalysisGwNcService(file.getAbsolutePath(), file);
-                if (success) {
-                    FileUtilS.copyFileRec(file.getAbsolutePath());
-                    FileUtilS.fileRecDelete(file.getAbsolutePath());
-                }
-            }else if (Objects.equals(FileUtil.getFileSuffix(file.getName()), "txt")) {
-                //todo 鏄惁瑙f瀽宸ヤ綔娴佹搷浣�
-
-            }
-        } catch (Exception e) {
-            log.error("宸ユ帶缃戣В鏋愭秹瀵嗙綉浼犺繃鏉ョ殑NC鏂囦欢涓巒c鏂囦欢杩涜瑙f瀽: {}", e.getMessage());
-        }
-    }
-
-    /**
-     * 娑夊瘑缃戣В鏋愬伐鎺х綉浼犺繃鏉ョ殑NC鏂囦欢涓巒c鏂囦欢杩涜瑙f瀽锛堢▼搴忓洖浼狅級
-     * @param file
-     */
-    private void handleSecretDocFile(File file) {
-        log.info("娑夊瘑缃戣В鏋愬伐鎺х綉浼犺繃鏉ョ殑NC鏂囦欢涓巒c鏂囦欢杩涜瑙f瀽: {}", file.getAbsolutePath());
-        try {
-            boolean b= docInfoService.addDocInfoAnalysisSmwNcService(file.getAbsolutePath(), file);
-
-        }catch (Exception e) {
-            log.error("娑夊瘑缃戣В鏋愬伐鎺х綉浼犺繃鏉ョ殑NC鏂囦欢涓巒c鏂囦欢杩涜瑙f瀽: {}", e.getMessage());
-        }
-    }
-
 
 }
diff --git a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/mapper/xml/DocInfoMapper.xml b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/mapper/xml/DocInfoMapper.xml
index f725e8d..99ce988 100644
--- a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/mapper/xml/DocInfoMapper.xml
+++ b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/mapper/xml/DocInfoMapper.xml
@@ -118,6 +118,7 @@
         ,d.publish_file_id
         ,d.publish_version
         ,d.description
+        ,d.doc_dispatch_status
         from (select classification_id, doc_id,attribution_type,attribution_id from nc_doc_relative
         where delete_flag=0 and doc_id=#{docId} and attribution_type=#{attrType} and attribution_id=#{attrId}) r
         inner join nc_doc_info d
diff --git a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ComponentInfoSeServiceImpl.java b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ComponentInfoSeServiceImpl.java
index 91e9992..a39eb0e 100644
--- a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ComponentInfoSeServiceImpl.java
+++ b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ComponentInfoSeServiceImpl.java
@@ -628,14 +628,18 @@
             List<Long> ids = productMixList.stream().map(ProductMix::getId).collect(Collectors.toList());
             //鑾峰彇宸茬粡鑷韩琚�熺敤鐨勯儴浠�
             LambdaQueryWrapper<ComponentInfo> borrowQueryWrapper = new LambdaQueryWrapper<>();
-            borrowQueryWrapper.in(ComponentInfo::getBorrowId,ids);
+            if (!ids.isEmpty()){
+                borrowQueryWrapper.in(ComponentInfo::getBorrowId,ids);
+            }
             borrowQueryWrapper.eq(ComponentInfo::getParentId,componentInfo.getComponentId());
             List<String> borrowIds= super.list(borrowQueryWrapper).stream().map(ComponentInfo::getBorrowId).collect(Collectors.toList());
             LambdaQueryWrapper<ComponentInfo> queryWrapper = new LambdaQueryWrapper<>();
             queryWrapper.like(StrUtil.isNotEmpty(componentInfo.getComponentName()),ComponentInfo::getComponentName, componentInfo.getComponentName());
             queryWrapper.like(StrUtil.isNotEmpty(componentInfo.getComponentCode()),ComponentInfo::getComponentCode, componentInfo.getComponentCode());
             queryWrapper.isNull(ComponentInfo::getBorrowId);
-            queryWrapper.in(ComponentInfo::getComponentId,ids);
+            if (!ids.isEmpty()){
+                queryWrapper.in(ComponentInfo::getComponentId,ids);
+            }
             queryWrapper.ne(StrUtil.isNotEmpty(oldComponentInfo.getBorrowId()),ComponentInfo::getComponentId,oldComponentInfo.getBorrowId());
             if (!borrowIds.isEmpty()) {
                 queryWrapper.notIn(ComponentInfo::getComponentId,borrowIds);
diff --git a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/DataImportService.java b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/DataImportService.java
index b8649bd..ceb349a 100644
--- a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/DataImportService.java
+++ b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/DataImportService.java
@@ -1,6 +1,5 @@
 package org.jeecg.modules.dnc.service.impl;
 
-import cn.hutool.core.util.StrUtil;
 import com.jeecg.weibo.exception.BusinessException;
 import org.jeecg.modules.dnc.dto.ComponentHierarchy;
 import org.jeecg.modules.dnc.dto.TransferPackage;
@@ -157,12 +156,6 @@
                 saveTreePath(transferPackage.getTraceChain().getTreePath());
             }
 
-            //淇濆瓨鏉冮檺
-            if (transferPackage.getTraceChain() != null&&
-                    transferPackage.getTraceChain().getPermissionStreamNewList() != null) {
-                savePermissionStreamNewList(transferPackage.getTraceChain().getPermissionStreamNewList());
-            }
-
             // 淇濆瓨璁惧绫�
             if (transferPackage.getTraceChain() != null&&
                     transferPackage.getTraceChain().getDeviceManagement() != null) {
@@ -222,7 +215,8 @@
             productMapper.insert(product);
             logger.debug("浜у搧宸蹭繚瀛�: {}", product.getProductId());
         } else {
-            logger.debug("浜у搧宸插瓨鍦�: {}", product.getProductId());
+            productMapper.updateById(product);
+            logger.debug("浜у搧宸叉洿鏂�: {}", product.getProductId());
         }
     }
 
@@ -232,7 +226,8 @@
                 componentMapper.insert(component);
                 logger.debug("閮ㄤ欢宸蹭繚瀛�: {}", component.getComponentId());
             } else {
-                logger.debug("閮ㄤ欢宸插瓨鍦�: {}", component.getComponentId());
+                componentMapper.updateById(component);
+                logger.debug("閮ㄤ欢宸叉洿鏂�: {}", component.getComponentId());
             }
         }
     }
@@ -242,7 +237,8 @@
             partsMapper.insert(parts);
             logger.debug("闆朵欢宸蹭繚瀛�: {}", parts.getPartsId());
         } else {
-            logger.debug("闆朵欢宸插瓨鍦�: {}", parts.getPartsId());
+            partsMapper.updateById(parts);
+            logger.debug("闆朵欢宸叉洿鏂�: {}", parts.getPartsId());
         }
     }
 
@@ -251,7 +247,8 @@
             psvMapper.insert(processSpec);
             logger.debug("宸ヨ壓瑙勭▼宸蹭繚瀛�: {}", processSpec.getId());
         } else {
-            logger.debug("宸ヨ壓瑙勭▼宸插瓨鍦�: {}", processSpec.getId());
+            psvMapper.updateById(processSpec);
+            logger.debug("宸ヨ壓瑙勭▼宸叉洿鏂�: {}", processSpec.getId());
         }
     }
 
@@ -260,7 +257,8 @@
             processMapper.insert(process);
             logger.debug("宸ュ簭宸蹭繚瀛�: {}", process.getProcessId());
         } else {
-            logger.debug("宸ュ簭宸插瓨鍦�: {}", process.getProcessId());
+            processMapper.updateById(process);
+            logger.debug("宸ュ簭宸叉洿鏂�: {}", process.getProcessId());
         }
     }
 
@@ -269,7 +267,8 @@
             workStepMapper.insert(workStep);
             logger.debug("宸ユ宸蹭繚瀛�: {}", workStep.getId());
         } else {
-            logger.debug("宸ユ宸插瓨鍦�: {}", workStep.getId());
+            workStepMapper.updateById(workStep);
+            logger.debug("宸ユ宸叉洿鏂�: {}", workStep.getId());
         }
     }
 
@@ -279,113 +278,10 @@
                 productMixMapper.insert(productMix);
                 logger.debug("浜у搧缁勫悎宸蹭繚瀛�: {}", productMix.getId());
             } else {
-                logger.debug("浜у搧缁勫悎宸插瓨鍦�: {}", productMix.getId());
+                productMixMapper.updateById(productMix);
+                logger.debug("浜у搧缁勫悎宸叉洿鏂�: {}", productMix.getId());
             }
         }
-    }
-
-    private void savePermissionStreamNewList(List<PermissionStreamNew> permissionStreamNewList) {
-        for (PermissionStreamNew permissionStreamNew : permissionStreamNewList) {
-            if (permissionStreamNew.getUserId() != null) {
-                String id=sysUserService.getUserByName(permissionStreamNew.getUserId()).getId();
-                if (id!=null){
-                    permissionStreamNew.setUserId(id);
-                }
-            }
-            if (permissionStreamNew.getDepartId() != null) {
-                String id=mdcProductionService.findByOrgCode(permissionStreamNew.getDepartId()).getId();
-                if (id!=null){
-                permissionStreamNew.setDepartId(id);
-                }
-            }
-            permissionStreamNewMapper.insert(permissionStreamNew);
-            logger.debug("鏉冮檺宸蹭繚瀛�: {}", permissionStreamNew.getId());
-        }
-        //鍒嗘壒娣诲姞浜у搧銆侀儴浠躲�侀浂浠躲�佸伐鑹鸿绋嬨�佸伐搴忋�佸伐姝ユ潈闄�
-        permissionStreamNewList.forEach(item -> {
-            switch (item.getBusinessType()){
-                case "1":
-                    if (StrUtil.isNotEmpty(item.getUserId())){
-                        ProductPermission productPermission = new ProductPermission();
-                        productPermission.setProductId(item.getBusinessId());
-                        productPermission.setUserId(item.getUserId());
-                        productPermissionService.save(productPermission);
-                    }else {
-                        ProductDepartment productDepartment = new ProductDepartment();
-                        productDepartment.setProductId(item.getBusinessId());
-                        productDepartment.setDepartId(item.getDepartId());
-                        productDepartmentService.save(productDepartment);
-                    }
-                    break;
-                case "2":
-
-                    if (StrUtil.isNotEmpty(item.getUserId())){
-                        ComponentPermission componentPermission = new ComponentPermission();
-                        componentPermission.setComponentId(item.getBusinessId());
-                        componentPermission.setUserId(item.getUserId());
-                        componentPermissionService.save(componentPermission);
-                    }else {
-                        ComponentDepartment componentDepartment = new ComponentDepartment();
-                        componentDepartment.setComponentId(item.getBusinessId());
-                        componentDepartment.setDepartId(item.getDepartId());
-                        componentDepartmentService.save(componentDepartment);
-                    }
-                    break;
-                case "3":
-                    if (StrUtil.isNotEmpty(item.getUserId())){
-                        PartsPermission partsPermission = new PartsPermission();
-                        partsPermission.setPartsId(item.getBusinessId());
-                        partsPermission.setUserId(item.getUserId());
-                        partsPermissionService.save(partsPermission);
-                    }else {
-                        PartsDepartment partsDepartment = new PartsDepartment();
-                        partsDepartment.setPartsId(item.getBusinessId());
-                        partsDepartment.setDepartId(item.getDepartId());
-                        partsDepartmentService.save(partsDepartment);
-                    }
-                    break;
-                case "4":
-                    if (StrUtil.isNotEmpty(item.getUserId())){
-                        ProcessSpecVersionPermission processSpecVersionPermission = new ProcessSpecVersionPermission();
-                        processSpecVersionPermission.setPsvId(item.getBusinessId());
-                        processSpecVersionPermission.setUserId(item.getUserId());
-                        processSpecVersionPermissionService.save(processSpecVersionPermission);
-                    }else {
-                        ProcessSpecVersionDepartment processSpecVersionDepartment = new ProcessSpecVersionDepartment();
-                        processSpecVersionDepartment.setPsvId(item.getBusinessId());
-                        processSpecVersionDepartment.setDepartId(item.getDepartId());
-                        processSpecVersionDepartmentService.save(processSpecVersionDepartment);
-                    }
-                    break;
-                case "5":
-                    if (StrUtil.isNotEmpty(item.getUserId())){
-                        ProcessionPermission processionPermission = new ProcessionPermission();
-                        processionPermission.setProcessId(item.getBusinessId());
-                        processionPermission.setUserId(item.getUserId());
-                        processStreamPermissionService.save(processionPermission);
-                    }else {
-                        ProcessionDepartment processionDepartment = new ProcessionDepartment();
-                        processionDepartment.setProcessId(item.getBusinessId());
-                        processionDepartment.setDepartId(item.getDepartId());
-                        processionDepartmentService.save(processionDepartment);
-                    }
-                    break;
-                case  "6":
-                    if (StrUtil.isNotEmpty(item.getUserId())){
-                        WorkStepPermission workStepPermission = new WorkStepPermission();
-                        workStepPermission.setStepId(item.getBusinessId());
-                        workStepPermission.setUserId(item.getUserId());
-                        workStepPermissionService.save(workStepPermission);
-                    }else {
-                        WorkStepDepartment workStepDepartment = new WorkStepDepartment();
-                        workStepDepartment.setStepId(item.getBusinessId());
-                        workStepDepartment.setDepartId(item.getDepartId());
-                        workStepDepartmentService.save(workStepDepartment);
-                    }
-                    break;
-                    default:
-            }
-        });
     }
 
     private void saveDeviceManagement(DeviceManagement deviceManagement) {
@@ -393,7 +289,8 @@
             deviceManagementMapper.insert(deviceManagement);
             logger.debug("璁惧绫讳俊鎭凡淇濆瓨: {}", deviceManagement.getId());
         } else {
-            logger.debug("璁惧绫讳俊鎭凡瀛樺湪: {}", deviceManagement.getId());
+            deviceManagementMapper.updateById(deviceManagement);
+            logger.debug("璁惧绫讳俊鎭凡鏇存柊: {}", deviceManagement.getId());
         }
     }
 
@@ -402,7 +299,8 @@
             deviceTypeMapper.insert(deviceType);
             logger.debug("璁惧绫诲凡淇濆瓨: {}", deviceType.getId());
         } else {
-            logger.debug("璁惧绫诲凡瀛樺湪: {}", deviceType.getId());
+            deviceTypeMapper.updateById(deviceType);
+            logger.debug("璁惧绫诲凡鏇存柊: {}", deviceType.getId());
         }
     }
 
@@ -411,7 +309,8 @@
             docInfoMapper.insert(docInfo);
             logger.debug("鏂囨。宸蹭繚瀛�: {}", docInfo.getDocId());
         } else {
-            logger.debug("鏂囨。宸插瓨鍦�: {}", docInfo.getDocId());
+            docInfoMapper.updateById(docInfo);
+            logger.debug("鏂囨。宸叉洿鏂�: {}", docInfo.getDocId());
         }
     }
 
@@ -420,7 +319,8 @@
             docFileMapper.insert(docFile);
             logger.debug("鏂囨。鏂囦欢宸蹭繚瀛�: {}", docFile.getFileId());
         } else {
-            logger.debug("鏂囨。鏂囦欢宸插瓨鍦�: {}", docFile.getFileId());
+            docFileMapper.updateById(docFile);
+            logger.debug("鏂囨。鏂囦欢宸叉洿鏂�: {}", docFile.getFileId());
         }
     }
 
@@ -429,7 +329,8 @@
             docRelativeMapper.insert(docRelative);
             logger.debug("鏂囨。瀵瑰簲鍏崇郴宸蹭繚瀛�: {}", docRelative.getId());
         } else {
-            logger.debug("鏂囨。瀵瑰簲鍏崇郴宸插瓨鍦�: {}", docRelative.getId());
+            docRelativeMapper.updateById(docRelative);
+            logger.debug("鏂囨。瀵瑰簲鍏崇郴宸叉洿鏂�: {}", docRelative.getId());
         }
     }
 
@@ -440,6 +341,7 @@
                 logger.debug("鍒�鍏峰凡淇濆瓨: {}", cutter.getId());
             } else {
                 cutterMapper.updateById(cutter);
+                logger.debug("鍒�鍏峰凡鏇存柊: {}", cutter.getId());
             }
         }
     }
@@ -447,9 +349,10 @@
     private void saveGuideCardBatch(GuideCardBatch guideCardBatch) {
         if (guideCardBatchMapper.selectById(guideCardBatch.getId()) == null) {
             guideCardBatchMapper.insert(guideCardBatch);
-            logger.debug("鍒�鐗囨壒娆″凡淇濆瓨: {}", guideCardBatch.getId());
+            logger.debug("绋嬪簭鍔犲伐纭琛ㄥ凡淇濆瓨: {}", guideCardBatch.getId());
         } else {
-            logger.debug("鍒�鐗囨壒娆″凡瀛樺湪: {}", guideCardBatch.getId());
+            guideCardBatchMapper.updateById(guideCardBatch);
+            logger.debug("绋嬪簭鍔犲伐纭琛ㄥ凡鏇存柊: {}", guideCardBatch.getId());
         }
     }
 }
diff --git a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/FileFerryService.java b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/FileFerryService.java
index 419c241..4661dcd 100644
--- a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/FileFerryService.java
+++ b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/FileFerryService.java
@@ -1,19 +1,13 @@
 package org.jeecg.modules.dnc.service.impl;
 
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import org.apache.commons.lang3.StringUtils;
 import org.jeecg.modules.dnc.dto.ComponentHierarchy;
 import org.jeecg.modules.dnc.dto.TransferPackage;
-import org.jeecg.modules.dnc.entity.*;
-import org.jeecg.modules.dnc.exception.ExceptionCast;
-import org.jeecg.modules.dnc.response.ActivitiCode;
-import org.jeecg.modules.dnc.response.DocumentCode;
+import org.jeecg.modules.dnc.entity.ComponentInfo;
+import org.jeecg.modules.dnc.entity.DocFile;
 import org.jeecg.modules.dnc.service.IDocClassificationService;
 import org.jeecg.modules.dnc.service.IDocInfoService;
 import org.jeecg.modules.dnc.service.IDocRelativeService;
 import org.jeecg.modules.dnc.utils.JsonUtils;
-import org.jeecg.modules.dnc.utils.file.FileUtilS;
-import org.jeecg.modules.mdc.entity.MdcEquipment;
 import org.jeecg.modules.mdc.mapper.MdcEquipmentMapper;
 import org.jeecg.modules.system.service.IMdcProductionService;
 import org.slf4j.Logger;
@@ -146,7 +140,6 @@
 
             // 6. 鑾峰彇鏂囦欢澶嶅埗鐩爣璺緞
             DocFile docFile = pkg.getTraceChain().getDocFile();
-            DocInfo docInfo = pkg.getTraceChain().getDocInfo();
             if (docFile == null) {
                 throw new IllegalStateException("浼犺緭鍖呬腑缂哄皯鏂囨。鏂囦欢淇℃伅");
             }
@@ -165,41 +158,6 @@
             logger.info("澶嶅埗鏂囦欢: {} 鈫� {}", ncFilePath, targetPath);
             Path source = Paths.get(ncFilePath);
             Files.copy(source, Paths.get(targetPath), StandardCopyOption.REPLACE_EXISTING);
-
-            // 8. 鏌ヨ璁惧id
-            MdcEquipment mdcEquipment=mdcEquipmentMapper.selectOne(new QueryWrapper<MdcEquipment>().eq("equipment_id",equipmentId));
-            if (mdcEquipment == null) {
-                throw new IllegalArgumentException("鏃犳晥鐨勮澶嘔D: " + equipmentId);
-            }
-
-            // 9.浼犺緭鏂囦欢鍒拌澶囦笅
-            List<String> strings = mdcProductionService.findListParentTreeAll(mdcEquipment.getId());
-            if (strings != null && !strings.isEmpty()) {
-                DocInfo deviceDoc = docInfoService.getByDocAttrAndDocId(docInfo.getDocId(), 7, mdcEquipment.getId());
-                if (deviceDoc == null) {
-                    DocClassification classification = classificationService.getByCode("send");
-                    if(classification == null)
-                        ExceptionCast.cast(DocumentCode.DOC_CLASS_ERROR);
-                    DocRelative docRelative = new DocRelative();
-                    docRelative.setDocId(docInfo.getDocId());
-                    docRelative.setClassificationId(classification.getClassificationId());
-                    docRelative.setAttributionType(7);
-                    docRelative.setAttributionId(mdcEquipment.getId());
-                    docRelativeService.save(docRelative);
-                }
-                String sendPath = StringUtils.join(strings.toArray(), "/");
-                boolean copyFileNc = FileUtilS.copyFileNc(docFile.getFilePath(), sendPath + "/" + mdcEquipment.getEquipmentId(),
-                        docFile.getFileEncodeName(),
-                        docFile.getFileName(), docFile.getFileSuffix());
-                if (!copyFileNc) {
-                    ExceptionCast.cast(ActivitiCode.ACT_FILE_ERROR);
-                } else {
-                    FileUtilS.deleteZipFromToSend(sendPath + "/" + mdcEquipment.getEquipmentId(),
-                            docFile.getFileName(), docFile.getFileSuffix());
-                }
-            } else {
-                throw new RuntimeException("鏂囦欢浼犺緭璺緞鑾峰彇澶辫触");
-            }
 
             // 10.鍒犻櫎涓存椂NC鏂囦欢涓巎son鏂囦欢
             logger.info("鍒犻櫎涓存椂鏂囦欢: {}", ncFilePath);
diff --git a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/FullHierarchyTraceService.java b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/FullHierarchyTraceService.java
index 38ca508..43d8920 100644
--- a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/FullHierarchyTraceService.java
+++ b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/FullHierarchyTraceService.java
@@ -6,6 +6,7 @@
 import org.jeecg.modules.dnc.entity.*;
 import org.jeecg.modules.dnc.mapper.*;
 import org.jeecg.modules.dnc.service.IPermissionStreamNewService;
+import org.jeecg.modules.system.entity.MdcProduction;
 import org.jeecg.modules.system.service.IMdcProductionService;
 import org.jeecg.modules.system.service.ISysUserService;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -225,7 +226,10 @@
                         .eq("delete_flag",0));
         path.forEach(item->{
             if (item.getDepartId()!=null){
-                item.setDepartId(mdcProductionService.getById(item.getDepartId()).getOrgCode());
+                MdcProduction mdcProduction=mdcProductionService.getById(item.getDepartId());
+                if(mdcProduction!=null){
+                    item.setDepartId(item.getDepartId());
+                }
             }
             if (item.getUserId()!=null){
                 item.setUserId(sysUserService.getById(item.getUserId()).getUsername());
diff --git a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/GuideCardBatchServiceImpl.java b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/GuideCardBatchServiceImpl.java
index 45a9c0a..836f70c 100644
--- a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/GuideCardBatchServiceImpl.java
+++ b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/GuideCardBatchServiceImpl.java
@@ -33,9 +33,6 @@
     private IDocInfoService docInfoService;
 
     @Autowired
-    private IDocRelativeService docRelativeService;
-
-    @Autowired
     private IPartsInfoService partsInfoService;
 
     @Autowired
@@ -138,6 +135,7 @@
             guideCardBatch.setPartsName(partsInfo.getPartsName());
             guideCardBatch.setMaterielDesp(partsInfo.getMaterielDesp());
         }
+        guideCardBatch.setFlowStatus("0");
         guideCardBatch.setCompiler(user.getUsername());
         guideCardBatch.setCreateTime(new Date());
         return this.save(guideCardBatch);
diff --git a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dncFlow/service/IAssignFileStreamService.java b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dncFlow/service/IAssignFileStreamService.java
index 806a4a8..4d4d867 100644
--- a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dncFlow/service/IAssignFileStreamService.java
+++ b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dncFlow/service/IAssignFileStreamService.java
@@ -18,7 +18,7 @@
      * @param stream
      * @return
      */
-    Result applyAssignFile(AssignFileStream stream);
+    Result<?> applyAssignFile(AssignFileStream stream);
 
     /**securedoc
      * 鍚姩娴佺▼ 淇濆瓨鐩稿簲鐨勬暟鎹� 缁戝畾businessKey
diff --git a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dncFlow/service/impl/AssignFileStreamServiceImpl.java b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dncFlow/service/impl/AssignFileStreamServiceImpl.java
index 036ac42..18f1a94 100644
--- a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dncFlow/service/impl/AssignFileStreamServiceImpl.java
+++ b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dncFlow/service/impl/AssignFileStreamServiceImpl.java
@@ -98,9 +98,11 @@
     private String secretFolder;    //娑夊瘑缃戜紶杈搉c鏂囦欢澶�
     @Autowired
     private FileFerryService ferryService;
+    @Autowired
+    private IDocClassificationService iDocClassificationService;
     @Override
     @Transactional(rollbackFor = {Exception.class})
-    public Result applyAssignFile(AssignFileStream stream) {
+    public Result<?> applyAssignFile(AssignFileStream stream) {
         synchronized (this){
             //鍒ゆ柇璁惧鐗规畩瀛楃
             String specialChar = getDeviceSpecialChar(stream.getDeviceId(),stream.getFileId());
@@ -108,6 +110,12 @@
                 //鎶涘嚭鐗规畩瀛楃寮傚父
                 return Result.error("鏂囦欢鍚嶇О瀛樺湪璁惧鐗规畩瀛楃");
             }
+            //鏌ヨ鏂囨。鐨勭姸鎬侊紝鎵瑰噯鐘舵�佹墠鍙互鎸囨淳
+            DocInfo docInfo=getDocInfo(stream);
+            DocClassification docClassification=iDocClassificationService.getById(docInfo.getClassificationId());
+            if (docInfo.getDocDispatchStatus()!=null&&docInfo.getDocDispatchStatus()!=3&&docClassification.getClassificationCode().equals("nc")){
+                return Result.error("璇ユ枃浠剁姸鎬佷笉鍏佽鎸囨淳,璇峰厛瀹屾垚瀹$娴佺▼");
+            }
             if(flowableEnable) {
                 return applyAssignFileActive(stream);
             }else {

--
Gitblit v1.9.3