From 083df8d788c95c009a94378e620684eb5de2bd21 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期六, 13 九月 2025 13:08:09 +0800
Subject: [PATCH] 注释问题修复

---
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/config/InitBean.java |  111 +++++++++++++++++++++++++++++++++++--------------------
 1 files changed, 70 insertions(+), 41 deletions(-)

diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/config/InitBean.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/config/InitBean.java
index 972dc77..cdc92c2 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/config/InitBean.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/config/InitBean.java
@@ -4,17 +4,15 @@
 import lombok.AllArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
-import org.springblade.core.oss.OssTemplate;
-import org.springblade.core.tool.api.R;
-import org.springblade.mdm.basesetting.machine.MachineService;
+import org.springblade.mdm.basesetting.machine.service.MachineService;
 import org.springblade.mdm.basesetting.machine.entity.Machine;
-import org.springblade.mdm.commons.contants.ParamContants;
-import org.springblade.mdm.machineback.filewatch.DirectorLockService;
-import org.springblade.mdm.machineback.filewatch.DynamicDirectoryWatcher;
-import org.springblade.mdm.machineback.filewatch.FileWatcherService;
-import org.springblade.mdm.machineback.filewatch.MachineFileBackListener;
-import org.springblade.mdm.machineback.service.MachineBackFileService;
-import org.springblade.mdm.program.service.NcProgramService;
+import org.springblade.mdm.commons.service.ParamService;
+import org.springblade.mdm.flow.service.TaskDispatchService;
+import org.springblade.mdm.machinefile.entity.MachineFile;
+import org.springblade.mdm.machinefile.filewatch.*;
+import org.springblade.mdm.machinefile.service.MachineFileScanService;
+import org.springblade.mdm.machinefile.service.MachineFileService;
+import org.springblade.mdm.program.service.ProgramAnnotationService;
 import org.springblade.system.feign.ISysClient;
 import org.springframework.stereotype.Component;
 
@@ -28,32 +26,32 @@
 @Component
 public class InitBean {
 	private final DirectorLockService directorLockService;
-	private final MachineService machineService;
-	private final FileWatcherService fileWatcherService;
-
 	private final DynamicDirectoryWatcher directoryWatcher;
-	private final MachineBackFileService machineBackFileService;
-	private final NcProgramService ncProgramService;
-	private final OssTemplate ossTemplate;
+	private final MachineService machineService;
+	private final MachineFileService machineFileService;
+	private final ParamService paramService;
+	private final ProgramAnnotationService annotationService;
+	private final MachineFileScanService machineFileScanService;
 	private final ISysClient sysClient;
-	//private final FileWatcherService.FileChangeListener listener;
+	private final TaskDispatchService taskDispatchService;
 	@PostConstruct
 	public void init() {
 		log.info("搴旂敤鍚姩鏃舵墽琛屽垵濮嬪寲鎿嶄綔 @PostConstruct");
-
-		// 鍒濆鍖栭�昏緫
-
-		R<String> networkTypeR = sysClient.getParamValue(ParamContants.NETWORK_TYPE_KEY);
-		String networkType = networkTypeR.getData() == null ? ParamContants.NETWORK_TYPE_SHEMI : networkTypeR.getData();
-		if (networkType.equals(ParamContants.NETWORK_TYPE_GONGKONG)) {
+		String networkType = paramService.networkType();
+		if(!ParamService.NETWORK_TYPE_SHEMI.equals(networkType)) {
+			machineFileScanService.scanMachineFile();//鍚姩鎵ц涓�娆℃壂鎻�
+			//宸ユ帶缃戞墠鍚姩鏂囦欢鐩戞帶
+			log.info("宸ユ帶缃戝惎鍔ㄦ枃浠剁洃鎺�");
 			initMachineDirMonitor();
+		}else{
+
+			//娑夊瘑缃�
+			taskDispatchService.resetDrawingNos();
 		}
-
-
 	}
 
 	/**
-	 * 鍒濆鍖栨満搴婄洃鎺х洰褰�
+	 * 鍒濆鍖栫洃鎺х洰褰�
 	 */
 	void initMachineDirMonitor() {
 		boolean locked = directorLockService.acquireLock();
@@ -61,24 +59,19 @@
 			log.info("鍥炰紶鎺ユ敹鐩綍宸茬粡琚叾浠栭儴缃茬偣浣嶉攣瀹氾紝鐩存帴杩斿洖");
 			return;
 		}
-		List<Machine> machineList = machineService.lambdaQuery().eq(Machine::getStatus,Machine.STATUS_ENABLE).list();
-		List<String> monitorDirList = new ArrayList<String>();
-		machineList.forEach(m -> {
-			if (StringUtils.isNotEmpty(m.getProgReceiveDir())) {
-				String dir = StringUtils.removeEnd(StringUtils.removeEnd(m.getProgReceiveDir(), "/"), "\\");
-				if (!monitorDirList.contains(dir)) {
-					monitorDirList.add(dir);
-				}
 
-			}
+		List<Machine> machineList = machineService.getEnableMachines();;
+		List<WatchInfo> monitorInfoList = new ArrayList<>();
+		machineList.forEach(m -> {
+			addToWatchDirList(monitorInfoList,m);
 		});
-		for (String dir : monitorDirList) {
-			Path dirPath = Paths.get(dir);
+		for (WatchInfo info : monitorInfoList) {
+			Path dirPath = Paths.get(info.getPath());
 			try {
 				if(!dirPath.toFile().exists()) {
 					dirPath.toFile().mkdirs();
 				}
-				directoryWatcher.addDirectory(dirPath,getListener());
+				directoryWatcher.addDirectory(dirPath,getListener(info));
 			} catch (Exception e) {
 				log.error("娣诲姞鐩戞帶鐩綍寮傚父",e);
 			}
@@ -86,10 +79,46 @@
 
 	}
 
+	void addToWatchDirList(List<WatchInfo> monitorDirList,Machine machine){
+		String dir;
+		//鍔犲叆send鏂囦欢澶�
+		if (StringUtils.isNotEmpty(machine.getProgSendDir())) {
+			dir = StringUtils.removeEnd(StringUtils.removeEnd(machine.getProgSendDir(), "/"), "\\");
+			WatchInfo watchInfo = new WatchInfo();
+			watchInfo.setMachine(machine);
+			watchInfo.setDirType(MachineFile.DIR_TYPE_SEND);
+			watchInfo.setPath(dir);
+			if (!monitorDirList.contains(watchInfo)) {
+				monitorDirList.add(watchInfo);
+			}
+		}
 
-	FileWatcherService.FileChangeListener getListener() {
-		return new MachineFileBackListener(machineBackFileService,ncProgramService,ossTemplate);
+		//鍔犲叆rec鏂囦欢澶�
+		if (StringUtils.isNotEmpty(machine.getProgReceiveDir())) {
+			dir = StringUtils.removeEnd(StringUtils.removeEnd(machine.getProgReceiveDir(), "/"), "\\");
+			WatchInfo watchInfo = new WatchInfo();
+			watchInfo.setMachine(machine);
+			watchInfo.setDirType(MachineFile.DIR_TYPE_REC);
+			watchInfo.setPath(dir);
+			if (!monitorDirList.contains(watchInfo)) {
+				monitorDirList.add(watchInfo);
+			}
+		}
+
+		//鍔犲叆temp鏂囦欢澶�
+		if (StringUtils.isNotEmpty(machine.getProgTempDir())) {
+			dir = StringUtils.removeEnd(StringUtils.removeEnd(machine.getProgTempDir(), "/"), "\\");
+			WatchInfo watchInfo = new WatchInfo();
+			watchInfo.setMachine(machine);
+			watchInfo.setDirType(MachineFile.DIR_TYPE_TEMP);
+			watchInfo.setPath(dir);
+			if (!monitorDirList.contains(watchInfo)) {
+				monitorDirList.add(watchInfo);
+			}
+		}
 	}
 
-
+	FileWatcherService.FileChangeListener getListener(WatchInfo info) {
+		return new MachineFileChangeListener(machineFileService,annotationService,info);
+	}
 }

--
Gitblit v1.9.3