Browse Source

fix: quartz调度添加IP校验

master
李永德 12 months ago
parent
commit
3701fb95d3
  1. 2
      nladmin-system/nlsso-server/pom.xml
  2. 19
      nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/config/JobRunner.java
  3. 5
      nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/dao/SysQuartzJob.java
  4. 3
      nladmin-system/nlsso-server/src/main/java/org/nl/system/service/user/impl/ISysUserServiceImpl.java

2
nladmin-system/nlsso-server/pom.xml

@ -46,7 +46,7 @@
<dependency>
<groupId>org.dromara.dynamictp</groupId>
<artifactId>dynamic-tp-spring-boot-starter-adapter-webserver</artifactId>
<version>1.1.6.1</version>
<version>1.1.7</version>
</dependency>
<!-- 日志链路追踪 https://tlog.yomahub.com/pages/f62a84/#%E5%90%8C%E6%AD%A5%E6%97%A5%E5%BF%97-->

19
nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/config/JobRunner.java

@ -1,5 +1,6 @@
package org.nl.system.service.quartz.config;
import cn.hutool.core.net.NetUtil;
import lombok.RequiredArgsConstructor;
import org.nl.system.service.quartz.ISysQuartzJobService;
import org.nl.system.service.quartz.dao.SysQuartzJob;
@ -36,5 +37,23 @@ public class JobRunner implements ApplicationRunner {
*/
@Override
public void run(ApplicationArguments applicationArguments) {
//本机IP
String localIp = NetUtil.getLocalhostStr();
System.out.println("本机ip:" + localIp);
log.info("--------------------注入定时任务---------------------");
List<SysQuartzJob> quartzJobs = quartzJobService.findByIsPauseIsFalse();
quartzJobs.forEach(job -> {
if (localIp.equals(job.getJob_ip())) {
log.info("定时任务: [{}], 执行ip: {}, 定时任务开启", job.getJob_name(), localIp);
System.out.println("定时任务: " + job.getJob_name() + ", 执行ip: " + localIp + ", 定时任务开启");
quartzManage.addJob(job);
} else {
log.info("定时任务: [{}] 未开启, 本机ip: {} 与 调度ip: {} 不同", job.getJob_name(), localIp, job.getJob_ip());
System.out.println("定时任务 " + job.getJob_name() + " 未开启, 本机ip: " + localIp + " 与 调度ip: " + job.getJob_ip() + " 不同");
}
});
log.info("--------------------定时任务注入完成---------------------");
}
}

5
nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/dao/SysQuartzJob.java

@ -124,4 +124,9 @@ public class SysQuartzJob implements Serializable {
@TableField(exist = false)
private String uuid;
/**
* 调度IP
*/
private String job_ip;
}

3
nladmin-system/nlsso-server/src/main/java/org/nl/system/service/user/impl/ISysUserServiceImpl.java

@ -121,6 +121,9 @@ public class ISysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> imp
}catch (Exception ex){
throw new RuntimeException();
}
if (ObjectUtil.isNotEmpty(sysUser.getPassword())) {
sysUser.setPassword(SaSecureUtil.md5BySalt(sysUser.getPassword(), "salt"));
}
sysUser.setUpdate_time(new Date());
sysUser.setUpdate_id(SecurityUtils.getCurrentUserId());
this.updateById(sysUser);

Loading…
Cancel
Save