package com.tianbo.analysis.controller; import com.tianbo.util.IO.FileTool; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import java.io.File; import java.util.List; @RestController @Slf4j @RequestMapping("/devops") public class DevOpsController { //单一窗口回执读取目录 @Value("${devops.dir.singlewindow-tcs-recept}") private String singlewindow_tcs_recept_dir; //天博TCS回执读取目录 @Value("${devops.dir.tianbo-tcs-recept}") private String tianbo_tcs_recept_dir; //CFPS订阅货运报文目录 @Value("${devops.dir.cfps-subscribe-dir}") private String cfps_recept_dir; @RequestMapping("/watchdir") public Integer singlewindow(@RequestParam(value = "dir",required = true,defaultValue = "D:\\系统部署\\imf_Warehouse_reader\\xmlFromImf") String dir){ switch (dir){ case "stcs" : dir = singlewindow_tcs_recept_dir; break; case "tcs" : dir = tianbo_tcs_recept_dir; break; case "cfps" : dir = cfps_recept_dir; break; default: dir = cfps_recept_dir; break; } try{ // dir = "/Users/mrz/Downloads/rdp_temp"; File fileDirectory = new File(dir); if (!fileDirectory.exists()){ log.error("目录{}不存在",dir); }else{ log.info("{}{}{}","开始获取目录",dir,"文件数量"); List<File> files = FileTool.readAllDirectoryFiles(fileDirectory); if(files!=null && !files.isEmpty()){ log.info("{}{}{}{}","目录",dir,"文件数量为:",files.size()); return files.size(); }else { return 0; } } }catch (Exception e){ e.printStackTrace(); log.error("获取目录文件出错",e); } return 500; } }