|
@@ -1,84 +1,84 @@
|
|
|
-package com.simuwang.manage.init;
|
|
|
-
|
|
|
-import cn.hutool.crypto.asymmetric.KeyType;
|
|
|
-import cn.hutool.crypto.asymmetric.RSA;
|
|
|
-import com.alibaba.fastjson2.JSON;
|
|
|
-import com.simuwang.base.common.enums.OpenStatusType;
|
|
|
-import com.simuwang.base.common.util.DateUtils;
|
|
|
-import com.simuwang.base.common.util.QuartzUtils;
|
|
|
-import com.simuwang.base.config.DaqProperties;
|
|
|
-import com.simuwang.base.pojo.dos.MailboxInfoDO;
|
|
|
-import com.simuwang.base.pojo.dto.MailboxInfoDTO;
|
|
|
-import com.simuwang.base.pojo.dto.QuartzBean;
|
|
|
-import com.simuwang.manage.service.EmailConfigService;
|
|
|
-import org.quartz.Scheduler;
|
|
|
-import org.slf4j.Logger;
|
|
|
-import org.slf4j.LoggerFactory;
|
|
|
-import org.springframework.beans.factory.annotation.Autowired;
|
|
|
-import org.springframework.beans.factory.annotation.Value;
|
|
|
-import org.springframework.boot.ApplicationArguments;
|
|
|
-import org.springframework.boot.ApplicationRunner;
|
|
|
-import org.springframework.context.annotation.Configuration;
|
|
|
-import org.springframework.core.annotation.Order;
|
|
|
-
|
|
|
-import java.util.List;
|
|
|
-
|
|
|
-/**
|
|
|
- * 定时任务启动类
|
|
|
- * Author: chenjianhua
|
|
|
- * Date: 2024/9/17 11:55
|
|
|
- * Description: ${DESCRIPTION}
|
|
|
- */
|
|
|
-@Configuration
|
|
|
-@Order(2)
|
|
|
-public class QuartzInitConfig implements ApplicationRunner {
|
|
|
- @Autowired
|
|
|
- private Scheduler scheduler;
|
|
|
- private final Logger logger = LoggerFactory.getLogger(this.getClass());
|
|
|
-
|
|
|
- @Autowired
|
|
|
- private EmailConfigService emailConfigService;
|
|
|
-
|
|
|
- @Value("${spring.task.groupName}")
|
|
|
- private String groupName;
|
|
|
-
|
|
|
- @Autowired
|
|
|
- private DaqProperties properties;
|
|
|
- private String JOB_CLASS="com.simuwang.manage.task.ParseSchedulerTask";
|
|
|
-
|
|
|
- @Override
|
|
|
- public void run(ApplicationArguments args){
|
|
|
- List<MailboxInfoDO> mailboxInfoDOS = emailConfigService.getAll();
|
|
|
- for(MailboxInfoDO mailboxInfoDO : mailboxInfoDOS){
|
|
|
- try{
|
|
|
- QuartzBean quartzBean = new QuartzBean();
|
|
|
- quartzBean.setCronExpression(mailboxInfoDO.getCron());
|
|
|
- quartzBean.setStatus(mailboxInfoDO.getOpenStatus());
|
|
|
- quartzBean.setGroupName(groupName);
|
|
|
- quartzBean.setJobName(mailboxInfoDO.getEmail());
|
|
|
- quartzBean.setJobClass(JOB_CLASS);
|
|
|
- //请求参数
|
|
|
- MailboxInfoDTO paramDTO = new MailboxInfoDTO();
|
|
|
- paramDTO.setAccount(mailboxInfoDO.getEmail());
|
|
|
- String password = mailboxInfoDO.getPassword();
|
|
|
- try{
|
|
|
- String privateKey = this.properties.getSecurityRsa().getPrivateKey();
|
|
|
- password = new RSA(privateKey, null).decryptStr(password, KeyType.PrivateKey);
|
|
|
- }catch (Exception e){
|
|
|
- logger.error(e.getMessage(),e);
|
|
|
- }
|
|
|
- paramDTO.setPassword(password);
|
|
|
- paramDTO.setPort(mailboxInfoDO.getPort());
|
|
|
- paramDTO.setHost(mailboxInfoDO.getServer());
|
|
|
- paramDTO.setProtocol(mailboxInfoDO.getProtocol());
|
|
|
- quartzBean.setJobParam(JSON.toJSONString(paramDTO));
|
|
|
- if(mailboxInfoDO.getOpenStatus() != null && mailboxInfoDO.getOpenStatus().equals(OpenStatusType.YES.getCode())){
|
|
|
- logger.info(quartzBean.getJobName()+":创建定时任务,cron:"+quartzBean.getCronExpression()+"--"+ DateUtils.getNowDate());
|
|
|
- QuartzUtils.createScheduleJob(scheduler,quartzBean);
|
|
|
- }
|
|
|
- }catch (Exception e) {
|
|
|
- logger.error(e.getMessage(),e);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-}
|
|
|
+//package com.simuwang.manage.init;
|
|
|
+//
|
|
|
+//import cn.hutool.crypto.asymmetric.KeyType;
|
|
|
+//import cn.hutool.crypto.asymmetric.RSA;
|
|
|
+//import com.alibaba.fastjson2.JSON;
|
|
|
+//import com.simuwang.base.common.enums.OpenStatusType;
|
|
|
+//import com.simuwang.base.common.util.DateUtils;
|
|
|
+//import com.simuwang.base.common.util.QuartzUtils;
|
|
|
+//import com.simuwang.base.config.DaqProperties;
|
|
|
+//import com.simuwang.base.pojo.dos.MailboxInfoDO;
|
|
|
+//import com.simuwang.base.pojo.dto.MailboxInfoDTO;
|
|
|
+//import com.simuwang.base.pojo.dto.QuartzBean;
|
|
|
+//import com.simuwang.manage.service.EmailConfigService;
|
|
|
+//import org.quartz.Scheduler;
|
|
|
+//import org.slf4j.Logger;
|
|
|
+//import org.slf4j.LoggerFactory;
|
|
|
+//import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+//import org.springframework.beans.factory.annotation.Value;
|
|
|
+//import org.springframework.boot.ApplicationArguments;
|
|
|
+//import org.springframework.boot.ApplicationRunner;
|
|
|
+//import org.springframework.context.annotation.Configuration;
|
|
|
+//import org.springframework.core.annotation.Order;
|
|
|
+//
|
|
|
+//import java.util.List;
|
|
|
+//
|
|
|
+///**
|
|
|
+// * 定时任务启动类
|
|
|
+// * Author: chenjianhua
|
|
|
+// * Date: 2024/9/17 11:55
|
|
|
+// * Description: ${DESCRIPTION}
|
|
|
+// */
|
|
|
+//@Configuration
|
|
|
+//@Order(2)
|
|
|
+//public class QuartzInitConfig implements ApplicationRunner {
|
|
|
+// @Autowired
|
|
|
+// private Scheduler scheduler;
|
|
|
+// private final Logger logger = LoggerFactory.getLogger(this.getClass());
|
|
|
+//
|
|
|
+// @Autowired
|
|
|
+// private EmailConfigService emailConfigService;
|
|
|
+//
|
|
|
+// @Value("${spring.task.groupName}")
|
|
|
+// private String groupName;
|
|
|
+//
|
|
|
+// @Autowired
|
|
|
+// private DaqProperties properties;
|
|
|
+// private String JOB_CLASS="com.simuwang.manage.task.ParseSchedulerTask";
|
|
|
+//
|
|
|
+// @Override
|
|
|
+// public void run(ApplicationArguments args){
|
|
|
+// List<MailboxInfoDO> mailboxInfoDOS = emailConfigService.getAll();
|
|
|
+// for(MailboxInfoDO mailboxInfoDO : mailboxInfoDOS){
|
|
|
+// try{
|
|
|
+// QuartzBean quartzBean = new QuartzBean();
|
|
|
+// quartzBean.setCronExpression(mailboxInfoDO.getCron());
|
|
|
+// quartzBean.setStatus(mailboxInfoDO.getOpenStatus());
|
|
|
+// quartzBean.setGroupName(groupName);
|
|
|
+// quartzBean.setJobName(mailboxInfoDO.getEmail());
|
|
|
+// quartzBean.setJobClass(JOB_CLASS);
|
|
|
+// //请求参数
|
|
|
+// MailboxInfoDTO paramDTO = new MailboxInfoDTO();
|
|
|
+// paramDTO.setAccount(mailboxInfoDO.getEmail());
|
|
|
+// String password = mailboxInfoDO.getPassword();
|
|
|
+// try{
|
|
|
+// String privateKey = this.properties.getSecurityRsa().getPrivateKey();
|
|
|
+// password = new RSA(privateKey, null).decryptStr(password, KeyType.PrivateKey);
|
|
|
+// }catch (Exception e){
|
|
|
+// logger.error(e.getMessage(),e);
|
|
|
+// }
|
|
|
+// paramDTO.setPassword(password);
|
|
|
+// paramDTO.setPort(mailboxInfoDO.getPort());
|
|
|
+// paramDTO.setHost(mailboxInfoDO.getServer());
|
|
|
+// paramDTO.setProtocol(mailboxInfoDO.getProtocol());
|
|
|
+// quartzBean.setJobParam(JSON.toJSONString(paramDTO));
|
|
|
+// if(mailboxInfoDO.getOpenStatus() != null && mailboxInfoDO.getOpenStatus().equals(OpenStatusType.YES.getCode())){
|
|
|
+// logger.info(quartzBean.getJobName()+":创建定时任务,cron:"+quartzBean.getCronExpression()+"--"+ DateUtils.getNowDate());
|
|
|
+// QuartzUtils.createScheduleJob(scheduler,quartzBean);
|
|
|
+// }
|
|
|
+// }catch (Exception e) {
|
|
|
+// logger.error(e.getMessage(),e);
|
|
|
+// }
|
|
|
+// }
|
|
|
+// }
|
|
|
+//}
|