This commit is contained in:
清晨
2025-04-21 16:48:18 +08:00
commit 63e714c2b9
982 changed files with 84235 additions and 0 deletions

View File

@@ -0,0 +1,38 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-modules</artifactId>
<version>${revision}</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<packaging>jar</packaging>
<artifactId>ruoyi-job</artifactId>
<description>
任务调度
</description>
<dependencies>
<!-- 通用工具-->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-json</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-job</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-work</artifactId>
</dependency>
</dependencies>
</project>

View File

@@ -0,0 +1 @@
package org.dromara.job;

View File

@@ -0,0 +1,81 @@
package org.dromara.job.snailjob;
import com.aizuda.snailjob.client.job.core.annotation.JobExecutor;
import com.aizuda.snailjob.client.job.core.dto.JobArgs;
import com.aizuda.snailjob.client.model.ExecuteResult;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import lombok.RequiredArgsConstructor;
import org.dromara.work.domain.TpClient;
import org.dromara.work.domain.TpOrder;
import org.dromara.work.service.ITpClientService;
import org.dromara.work.service.ITpOrderService;
import org.springframework.stereotype.Component;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;
/**
* @author opensnail
* @date 2024-05-17
*/
@Component
@RequiredArgsConstructor
@JobExecutor(name = "testJobExecutor")
public class TestAnnoJobExecutor {
private final ITpOrderService tpOrderService;
private final ITpClientService tpClientService;
public ExecuteResult jobExecute(JobArgs jobArgs) {
String dateMinus180Days = getCurrentDateMinus180Days(180L);
String dateMinus365Days = getCurrentDateMinus180Days(365L);
List<TpClient> list = tpClientService.queryAllList();
List<TpClient> newList = new ArrayList<>();
for (TpClient tpClient : list){
boolean exist = tpOrderService.exists(new LambdaQueryWrapper<TpOrder>().eq(TpOrder::getKid, tpClient.getId()).eq(TpOrder::getIsDel, 1).ge(TpOrder::getAddTime, dateMinus180Days));
if (exist){
if(tpClient.getHealth() != 1){
tpClient.setHealth(1);
newList.add(tpClient);
}
continue;
}
boolean exist2 = tpOrderService.exists(new LambdaQueryWrapper<TpOrder>().eq(TpOrder::getKid, tpClient.getId()).eq(TpOrder::getIsDel, 1).ge(TpOrder::getAddTime, dateMinus365Days));
if (exist2){
if(tpClient.getHealth() != 2){
tpClient.setHealth(2);
newList.add(tpClient);
}
continue;
}else {
if(tpClient.getHealth() != 3){
tpClient.setHealth(3);
newList.add(tpClient);
}
}
}
tpClientService.updateBatchById(newList);
return ExecuteResult.success("执行成功");
}
public static String getCurrentDateMinus180Days(Long days) {
try {
// 获取当前日期
LocalDate currentDate = LocalDate.now();
// 计算当前日期减去180天的日期
LocalDate dateMinus180Days = currentDate.minusDays(days);
// 格式化日期为字符串
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
return dateMinus180Days.format(formatter);
} catch (Exception e) {
// 处理异常情况
e.printStackTrace();
return null;
}
}
}

View File

@@ -0,0 +1,19 @@
package org.dromara.job.snailjob;
import com.aizuda.snailjob.client.job.core.dto.JobArgs;
import com.aizuda.snailjob.client.job.core.executor.AbstractJobExecutor;
import com.aizuda.snailjob.client.model.ExecuteResult;
import org.springframework.stereotype.Component;
/**
* @author opensnail
* @date 2024-05-17
*/
@Component
public class TestClassJobExecutor extends AbstractJobExecutor {
@Override
protected ExecuteResult doJobExecute(JobArgs jobArgs) {
return ExecuteResult.success("TestJobExecutor测试成功");
}
}