Procházet zdrojové kódy

增加InitWithSprare2实现console启动后定时任务启动前初始化spare2操作

jyyw před 1 rokem
rodič
revize
bbc41761cd

+ 16 - 4
.gitignore

@@ -15,7 +15,19 @@ tests/**/coverage/
 *.ntvs*
 *.njsproj
 *.sln
-/src/main/resources/static/
-/target/
-/logs/
-/uploadFile/
+.gitignore
+**/velocity.log*
+**/src/main/resources/static/
+**/target/
+**/downloadFile/
+**/logs/
+**/original/
+**/produce/
+**/receive/
+**/reportForm/
+**/systemFile/
+**/tempFile/
+**/uploadFile/
+**/node_modules/
+**/zxgl/
+**/fxgl/

+ 42 - 0
ipfcst-console/src/main/java/com/jiayue/ipfcst/config/BaseInfo.java

@@ -0,0 +1,42 @@
+package com.jiayue.ipfcst.config;
+
+import com.jiayue.ipfcst.fileupload.util.FileUtil;
+
+import java.io.File;
+import java.io.Serializable;
+
+public class BaseInfo implements Serializable {
+
+  static String getUploadFilePath() {
+    return FileUtil.getFileUploadPath();
+  }
+
+  static File getUploadFile() {
+    return new File(getUploadFilePath());
+  }
+
+  static String getResultPath() {
+    return FileUtil.getPathByName(getUploadFile().getName() + File.separator + "result");
+  }
+
+  protected static File getResultFile() {
+    return new File(getResultPath());
+  }
+
+  static String getResultErrPath() {
+    return FileUtil.getPathByName(getUploadFile().getName() + File.separator + "result_err");
+  }
+
+  protected static File getResultErrFile() {
+    return new File(getResultErrPath());
+  }
+
+  static String getResultBakPath() {
+    return FileUtil.getPathByName(getUploadFile().getName() + File.separator + "result_bak");
+  }
+
+  protected static File getResultBakFile() {
+    return new File(getResultBakPath());
+  }
+
+}

+ 69 - 0
ipfcst-console/src/main/java/com/jiayue/ipfcst/config/InitWithSprare2.java

@@ -0,0 +1,69 @@
+package com.jiayue.ipfcst.config;
+
+import cn.hutool.core.io.FileUtil;
+import lombok.extern.slf4j.Slf4j;
+import org.aspectj.lang.ProceedingJoinPoint;
+import org.aspectj.lang.annotation.Around;
+import org.aspectj.lang.annotation.Aspect;
+import org.aspectj.lang.annotation.Pointcut;
+import org.aspectj.lang.reflect.MethodSignature;
+import org.springframework.context.ApplicationContext;
+import org.springframework.stereotype.Component;
+import org.springframework.web.context.request.RequestAttributes;
+import org.springframework.web.context.request.RequestContextHolder;
+
+import java.io.File;
+import java.lang.reflect.Method;
+import java.util.Arrays;
+import java.util.List;
+
+@Aspect
+@Component
+@Slf4j
+public class InitWithSprare2 extends BaseInfo {
+
+  private final ApplicationContext applicationContext;
+  private final File resultFile = getResultFile();
+
+  public InitWithSprare2(ApplicationContext applicationContext) {
+    this.applicationContext = applicationContext;
+  }
+
+
+  /**
+   * 文件生成定时任务启动前,初始化spare2相关操作
+   */
+  @Pointcut(value = "execution(* com.jiayue.ipfcst.ConsoleApplication+.schedulerFactoryBean(..)) ")
+  public void pointCut() {
+  }
+
+  @Around("pointCut()")
+  public Object around(ProceedingJoinPoint joinPoint) throws Throwable {
+    //log.info("--------------------------------开始 初始化spare2 拦截器--------------------------------");
+    //MethodSignature signature = (MethodSignature) joinPoint.getSignature();
+    //Method method = signature.getMethod();
+    //RequestAttributes requestAttributes = RequestContextHolder.getRequestAttributes();
+    // 记录下请求内容
+    log.info("请求方法: {}.{}", joinPoint.getSignature().getDeclaringTypeName(), joinPoint.getSignature().getName());
+    log.info("请求入参: {} ", Arrays.toString(joinPoint.getArgs()));
+    //
+    //防止文件重复生成,停止spare2文件生成
+    log.info("{}", "------------------------------- 开始 停止 spare2 文件生成 -------------------------------");
+
+    log.info("{}", "------------------------------- 结束 停止 spare2 文件生成 -------------------------------");
+    //扫描 result 目录,查看是否有需要入库数据
+    log.info("{}", "------------------------------- 开始补录spare2生成文件记录 -------------------------------");
+    List<File> files = FileUtil.loopFiles(resultFile);
+    log.info("准备补录spare2生成文件记录条数:{}", files.size());
+    files.forEach(file -> {
+
+    });
+    log.info("{}", "------------------------------- 结束补录spare2生成文件记录 -------------------------------");
+    //
+    //log.info("--------------------------------结束 初始化spare2 拦截器--------------------------------");
+    //初始化定时调度
+    Object result = joinPoint.proceed();
+    //log.info("返回结果: {} ", result);
+    return result;
+  }
+}

+ 12 - 0
ipfcst-console/src/main/java/com/jiayue/ipfcst/fileupload/util/FileUtil.java

@@ -180,6 +180,16 @@ public class FileUtil {
     return createUploadAllDir("uploadFile");
   }
 
+  public static String getPathByName(String s) {
+    String path = createUploadAllDir(s);
+    try {
+      FileUtils.forceMkdir(new File(path));
+    } catch (IOException ex) {
+      throw new RuntimeException(ex);
+    }
+    return path;
+  }
+
   /**
    * 获取下载文件目录相对路径
    *
@@ -349,8 +359,10 @@ public class FileUtil {
   }
 
   // 可以在这里添加其他实用方法
+
   /**
    * 检查uploadfile目录下是否生成过文件{name}
+   *
    * @param name
    * @return
    */

+ 1 - 1
syjy/ipfcstV3/bin/start-console.sh

@@ -5,7 +5,7 @@ export producedir=$basedir/produce
 
 export start_app_log=$basedir/logs/ipfcst_console.log
 
-export version="3.1.764.m.ncdq"
+export version="3.1.764.m"
 
 export app_path=$producedir/console/$version