Commit b1a6640617756c261863842cba9735ed3809b4ca

Authored by 648540858
1 parent b7b35d9b

移除旧的录像文件过期处理任务

src/main/java/top/panll/assist/config/TaskConfig.java deleted 100644 → 0
1   -package top.panll.assist.config;
2   -
3   -import org.slf4j.Logger;
4   -import org.slf4j.LoggerFactory;
5   -import org.springframework.beans.factory.annotation.Autowired;
6   -import org.springframework.context.annotation.Configuration;
7   -import org.springframework.scheduling.annotation.EnableScheduling;
8   -import org.springframework.scheduling.annotation.Scheduled;
9   -import org.springframework.stereotype.Component;
10   -import top.panll.assist.service.VideoFileService;
11   -
12   -import java.io.File;
13   -import java.text.ParseException;
14   -import java.text.SimpleDateFormat;
15   -import java.time.LocalDateTime;
16   -import java.util.Calendar;
17   -import java.util.Date;
18   -import java.util.List;
19   -
20   -@Component
21   -@EnableScheduling
22   -public class TaskConfig {
23   -
24   - private final static Logger logger = LoggerFactory.getLogger(TaskConfig.class);
25   -
26   - @Autowired
27   - private VideoFileService videoFileService;
28   -
29   - private SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
30   -
31   - @Scheduled(cron = "0 0 0 * * ?")
32   - private void configureTasks() {
33   - logger.info("录像过期自检任务执行");
34   - List<File> appList = videoFileService.getAppList(false);
35   - Calendar calendar = Calendar.getInstance();
36   - calendar.add(Calendar.DATE, - 7);
37   - Date monday = calendar.getTime();
38   - if (appList != null && appList.size() > 0) {
39   - for (File appFile : appList) {
40   - List<File> streamList = videoFileService.getStreamList(appFile.getName(), false);
41   - if (streamList != null && streamList.size() > 0) {
42   - for (File streamFile : streamList) {
43   - File[] recordDateFileList = streamFile.listFiles();
44   - if (recordDateFileList != null && recordDateFileList.length > 0) {
45   - for (File recordDateFile : recordDateFileList) {
46   - try {
47   - Date fileDaye = simpleDateFormat.parse(recordDateFile.getName());
48   - if (fileDaye.before(monday)){
49   - logger.debug("移除文件[{}]", recordDateFile.getAbsolutePath());
50   - recordDateFile.delete();
51   - }
52   - } catch (ParseException e) {
53   - logger.error("无法格式化[{}]为日期, 直接移除", recordDateFile.getName());
54   - recordDateFile.delete();
55   - }
56   - }
57   - }
58   - if (streamFile.listFiles().length == 0) {
59   - streamFile.delete();
60   - }
61   - }
62   - }
63   - if (appFile.listFiles().length == 0) {
64   - appFile.delete();
65   - }
66   - }
67   - }
68   - }
69   -}