yangys
6 天以前 7551b1ae51da67627f7ed03276707127dfc9cdc6
blade-service/blade-mdm/src/main/java/org/springblade/mdm/machineback/filewatch/MachineFileBackListener.java
@@ -1,12 +1,15 @@
package org.springblade.mdm.machineback.filewatch;
import lombok.SneakyThrows;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.oss.OssTemplate;
import org.springblade.core.oss.model.BladeFile;
import org.springblade.mdm.machineback.entity.MachineBackFile;
import org.springblade.mdm.machineback.service.MachineBackFileService;
import org.springblade.mdm.program.entity.NcProgram;
import org.springblade.mdm.program.service.NcProgramService;
import java.io.FileInputStream;
import java.io.IOException;
import java.nio.file.Path;
@@ -14,9 +17,11 @@
public class MachineFileBackListener  implements FileWatcherService.FileChangeListener{
   private final MachineBackFileService machineBackFileService;
   private final NcProgramService ncProgramService;
   public MachineFileBackListener(MachineBackFileService backService, NcProgramService aNcProgramService) {
   private final OssTemplate ossTemplate;
   public MachineFileBackListener(MachineBackFileService backService, NcProgramService aNcProgramService,OssTemplate aOssTemplate) {
      this.machineBackFileService = backService;
      this.ncProgramService = aNcProgramService;
      this.ossTemplate = aOssTemplate;
   }
   @Override
   public void onFileCreated(Path filePath) {
@@ -39,6 +44,14 @@
               return;
            }
            backFile.setNcProgramId(prog.getId());
            //更新程序的文件地址
            try(FileInputStream fins = new FileInputStream(filePath.toFile());){
               BladeFile bfile = ossTemplate.putFile(programName, fins);
               backFile.setOssName(bfile.getName());
            }
            machineBackFileService.save(backFile);
         }else{
            log.warn("文件传输中,后续再操作{}",filePath);
@@ -47,7 +60,7 @@
         log.error("回传文件操作IO错误",e);
         throw new RuntimeException(e);
      } catch (InterruptedException e) {
         log.error("sleep出错");
         log.error("sleep出错",e);
      } catch (Exception e) {
         log.error("机床回传文件处理异常",e);
      }