deason 1 jaar geleden
bovenliggende
commit
f4a47b7ef6

+ 4 - 4
src/main/java/cn/com/qmth/examcloud/tool/config/ScheduleConfig.java

@@ -1,6 +1,6 @@
 package cn.com.qmth.examcloud.tool.config;
 
-import cn.com.qmth.examcloud.tool.service.TaskService;
+import cn.com.qmth.examcloud.tool.service.TaskManager;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -15,20 +15,20 @@ public class ScheduleConfig {
     private static final Logger log = LoggerFactory.getLogger(ScheduleConfig.class);
 
     @Autowired
-    private TaskService taskService;
+    private TaskManager taskManager;
 
     /**
      * 定时执行任务(每N秒执行)
      */
     @Scheduled(cron = "0/10 * * * * ?")
     public void execute() {
-        Long taskId = taskService.getFirstWaitingTaskId();
+        Long taskId = taskManager.getFirstWaitingTaskId();
         if (taskId == null) {
             log.info("no task...");
             return;
         }
 
-        taskService.executeTask(taskId);
+        taskManager.executeTask(taskId);
     }
 
 }

+ 3 - 3
src/main/java/cn/com/qmth/examcloud/tool/config/ScheduleHandler.java

@@ -1,6 +1,6 @@
 package cn.com.qmth.examcloud.tool.config;
 
-import cn.com.qmth.examcloud.tool.service.TaskService;
+import cn.com.qmth.examcloud.tool.service.TaskManager;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -13,11 +13,11 @@ public class ScheduleHandler implements CommandLineRunner {
     private static final Logger log = LoggerFactory.getLogger(ScheduleHandler.class);
 
     @Autowired
-    private TaskService taskService;
+    private TaskManager taskManager;
 
     @Override
     public void run(String... args) throws Exception {
-        int x = taskService.clearExpiredTaskStatus();
+        int x = taskManager.clearExpiredTaskStatus();
         log.warn("结束过期任务数:" + x);
     }
 

+ 29 - 0
src/main/java/cn/com/qmth/examcloud/tool/config/SpringContextHolder.java

@@ -0,0 +1,29 @@
+package cn.com.qmth.examcloud.tool.config;
+
+import org.springframework.beans.BeansException;
+import org.springframework.context.ApplicationContext;
+import org.springframework.context.ApplicationContextAware;
+
+import java.util.Map;
+
+public class SpringContextHolder implements ApplicationContextAware {
+
+    private static ApplicationContext context = null;
+
+    public void setApplicationContext(ApplicationContext context) throws BeansException {
+        this.context = context;
+    }
+
+    public static <T> T getBean(String beanName, Class<T> clazz) {
+        return context.getBean(beanName, clazz);
+    }
+
+    public static <T> T getBean(Class<T> clazz) {
+        return context.getBean(clazz);
+    }
+
+    public static <T> Map<String, T> getBeans(Class<T> clazz) {
+        return context.getBeansOfType(clazz);
+    }
+
+}

+ 5 - 5
src/main/java/cn/com/qmth/examcloud/tool/controller/TaskController.java

@@ -2,7 +2,7 @@ package cn.com.qmth.examcloud.tool.controller;
 
 import cn.com.qmth.examcloud.tool.config.SysProperty;
 import cn.com.qmth.examcloud.tool.entity.TaskEntity;
-import cn.com.qmth.examcloud.tool.service.TaskService;
+import cn.com.qmth.examcloud.tool.service.TaskManager;
 import cn.com.qmth.examcloud.tool.utils.StatusException;
 import cn.com.qmth.examcloud.tool.vo.task.TaskAdd;
 import cn.com.qmth.examcloud.tool.vo.task.TaskQuery;
@@ -20,7 +20,7 @@ import java.io.File;
 public class TaskController extends BaseController {
 
     @Autowired
-    private TaskService taskService;
+    private TaskManager taskManager;
 
     @Autowired
     private SysProperty sysProperty;
@@ -28,7 +28,7 @@ public class TaskController extends BaseController {
     @ResponseBody
     @PostMapping(value = "/api/task/list")
     public Page<TaskEntity> taskList(@RequestBody TaskQuery req) {
-        return taskService.getTaskList(req);
+        return taskManager.getTaskList(req);
     }
 
     @ResponseBody
@@ -38,12 +38,12 @@ public class TaskController extends BaseController {
         req.setOperatorId(user.getUserId());
         req.setOperatorName(user.getDisplayName());
         req.setUserToken(user.getToken());
-        taskService.addTask(req);
+        taskManager.addTask(req);
     }
 
     @GetMapping(value = "/api/task/download/{taskId}")
     public void taskDownload(@PathVariable Long taskId, HttpServletResponse response) {
-        TaskEntity task = taskService.getTaskById(taskId);
+        TaskEntity task = taskManager.getTaskById(taskId);
         if (task == null || StringUtils.isEmpty(task.getFilePath())) {
             throw new StatusException("任务或文件不存在!");
         }

+ 2 - 2
src/main/java/cn/com/qmth/examcloud/tool/service/TaskService.java → src/main/java/cn/com/qmth/examcloud/tool/service/TaskManager.java

@@ -30,9 +30,9 @@ import java.util.List;
 import java.util.Optional;
 
 @Component
-public class TaskService {
+public class TaskManager {
 
-    private final static Logger log = LoggerFactory.getLogger(TaskService.class);
+    private final static Logger log = LoggerFactory.getLogger(TaskManager.class);
 
     @Autowired
     private TaskRepository taskRepository;