Commit 6be21201 by huangfusuper

Merge remote-tracking branch 'origin/developer' into developer

parents a4c54902 05778e72
...@@ -11,6 +11,7 @@ import org.springframework.web.bind.annotation.RestController; ...@@ -11,6 +11,7 @@ import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.List; import java.util.List;
import java.util.Map;
@Api(tags = "任务节点api") @Api(tags = "任务节点api")
@RestController @RestController
...@@ -83,4 +84,10 @@ public class ApiNodeController { ...@@ -83,4 +84,10 @@ public class ApiNodeController {
return ResponseResult.ok("SUCCESS"); return ResponseResult.ok("SUCCESS");
} }
@PostMapping("loadCurrentStatusByJobName")
public ResponseResult loadCurrentStatusByJobName(String jobNames){
Map<String, JobTaskRunLog> jobTaskRunLogMap = apiNodeService.loadCurrentStatusByJobName(jobNames);
return ResponseResult.ok(jobTaskRunLogMap);
}
} }
...@@ -4,6 +4,7 @@ import com.byit.model.JobTaskRunLog; ...@@ -4,6 +4,7 @@ import com.byit.model.JobTaskRunLog;
import java.text.ParseException; import java.text.ParseException;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* 任务节点service * 任务节点service
...@@ -80,4 +81,11 @@ public interface ApiNodeService { ...@@ -80,4 +81,11 @@ public interface ApiNodeService {
List<JobTaskRunLog> loadLogByTaskName(String param); List<JobTaskRunLog> loadLogByTaskName(String param);
void runJavaTask(String jobName); void runJavaTask(String jobName);
/**
* 获取当前任务的状态
* @param jobNames
* @return
*/
Map<String, JobTaskRunLog> loadCurrentStatusByJobName(String jobNames);
} }
...@@ -28,9 +28,7 @@ import org.springframework.transaction.annotation.Transactional; ...@@ -28,9 +28,7 @@ import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.text.ParseException; import java.text.ParseException;
import java.util.Date; import java.util.*;
import java.util.List;
import java.util.UUID;
import static com.alibaba.fastjson.serializer.SerializerFeature.WriteClassName; import static com.alibaba.fastjson.serializer.SerializerFeature.WriteClassName;
...@@ -219,8 +217,8 @@ public class ApiNodeServiceImpl implements ApiNodeService { ...@@ -219,8 +217,8 @@ public class ApiNodeServiceImpl implements ApiNodeService {
schedule.setJobType(NodeTypeEnum.JAVA.getCode()); schedule.setJobType(NodeTypeEnum.JAVA.getCode());
schedule.setTriggerTime(triggerTime); schedule.setTriggerTime(triggerTime);
schedule.setScheduleType(ScheduleTypeEnum.JAVA_SYNC.getCode()); schedule.setScheduleType(ScheduleTypeEnum.JAVA_SYNC.getCode());
schedule.setPriority("1");
schedule.setRunParam(PlaceholderUtils.formatParam(javaTask.getParam())); schedule.setRunParam(javaTask.getParam());
JobTaskRunLogWithBLOBs jobTaskRunLog = new JobTaskRunLogWithBLOBs(); JobTaskRunLogWithBLOBs jobTaskRunLog = new JobTaskRunLogWithBLOBs();
BeanUtils.copyProperties(schedule, jobTaskRunLog); BeanUtils.copyProperties(schedule, jobTaskRunLog);
...@@ -235,6 +233,20 @@ public class ApiNodeServiceImpl implements ApiNodeService { ...@@ -235,6 +233,20 @@ public class ApiNodeServiceImpl implements ApiNodeService {
} }
@Override
public Map<String, JobTaskRunLog> loadCurrentStatusByJobName(String jobNames) {
ValidationUtil.dataNotBank(jobNames, "jobNames不允许为空!");
List<String> jobNameList = Arrays.asList(jobNames.split(","));
Map<String, JobTaskRunLog> jobTaskRunLogMap = new HashMap<>();
jobNameList.forEach(jobName -> {
JavaTask javaTask = javaTaskMapper.findByJobName(jobName);
ValidationUtil.dataNotNull(javaTask, "没有"+ jobName +"任务实例!");
JobTaskRunLog jobTaskRunLog = jobTaskRunLogMapper.findNewJavaTaskByJobName(javaTask.getId());
jobTaskRunLogMap.put(jobName, jobTaskRunLog);
});
return jobTaskRunLogMap;
}
private JavaTask validate(String param) throws Exception { private JavaTask validate(String param) throws Exception {
ValidationUtil.dataNotBank(param, "请求参数不允许为空!"); ValidationUtil.dataNotBank(param, "请求参数不允许为空!");
JavaTask javaTask = JSON.parseObject(param, JavaTask.class); JavaTask javaTask = JSON.parseObject(param, JavaTask.class);
......
...@@ -5,6 +5,18 @@ spring: ...@@ -5,6 +5,18 @@ spring:
username: root username: root
password: root password: root
redis:
database: 0
host: 10.0.120.208
password:
port: 6379
timeout: 3000
pool:
max-active: 8
max-idle: 8
max-wait: -1
min-idle: 0
mail: mail:
host: smtp.163.com host: smtp.163.com
username: huangfusuper@163.com username: huangfusuper@163.com
...@@ -14,21 +26,6 @@ spring: ...@@ -14,21 +26,6 @@ spring:
properties: properties:
from: huangfusuper@163.com from: huangfusuper@163.com
spring:
redis:
database: 0
host: 10.0.120.208
password:
port: 6379
timeout: 0
pool:
max-active: 8
max-idle: 8
max-wait: -1
min-idle: 0
mybatis: mybatis:
mapper-locations: /mapper/*.xml mapper-locations: /mapper/*.xml
......
...@@ -5,6 +5,18 @@ spring: ...@@ -5,6 +5,18 @@ spring:
username: ${CM_USER} username: ${CM_USER}
password: ${CM_PWD} password: ${CM_PWD}
redis:
database: 0
host: ${Redis_IP}
port: ${Redis_port}
password:
timeout: 3000
pool:
max-active: 8
max-idle: 8
max-wait: -1
min-idle: 0
mail: mail:
host: smtp.163.com host: smtp.163.com
username: huangfusuper@163.com username: huangfusuper@163.com
...@@ -14,12 +26,6 @@ spring: ...@@ -14,12 +26,6 @@ spring:
properties: properties:
from: huangfusuper@163.com from: huangfusuper@163.com
redis:
database: 0
host: ${Redis_IP}
port: ${Redis_port}
password:
mybatis: mybatis:
mapper-locations: /mapper/*.xml mapper-locations: /mapper/*.xml
......
...@@ -5,6 +5,18 @@ spring: ...@@ -5,6 +5,18 @@ spring:
username: ${CM_USER} username: ${CM_USER}
password: ${CM_PWD} password: ${CM_PWD}
redis:
database: 0
host: ${Redis_IP}
port: ${Redis_port}
password:
timeout: 3000
pool:
max-active: 8
max-idle: 8
max-wait: -1
min-idle: 0
mail: mail:
host: smtp.163.com host: smtp.163.com
username: huangfusuper@163.com username: huangfusuper@163.com
...@@ -14,12 +26,6 @@ spring: ...@@ -14,12 +26,6 @@ spring:
properties: properties:
from: huangfusuper@163.com from: huangfusuper@163.com
redis:
database: 0
host: ${Redis_IP}
port: ${Redis_port}
password:
mybatis: mybatis:
mapper-locations: /mapper/*.xml mapper-locations: /mapper/*.xml
......
...@@ -146,4 +146,6 @@ public interface JobTaskRunLogMapper { ...@@ -146,4 +146,6 @@ public interface JobTaskRunLogMapper {
List<JobTaskRunLog> findJavaTaskByJobName(@Param("nodeId")Integer nodeId, @Param("startTime")Date startTime, @Param("endTime")Date endTime); List<JobTaskRunLog> findJavaTaskByJobName(@Param("nodeId")Integer nodeId, @Param("startTime")Date startTime, @Param("endTime")Date endTime);
List<JobTaskRunLog> findJavaTaskByTaskName(@Param("nodeIdList")List<Integer> nodeIdList, @Param("startTime")Date startTime, @Param("endTime")Date endTime); List<JobTaskRunLog> findJavaTaskByTaskName(@Param("nodeIdList")List<Integer> nodeIdList, @Param("startTime")Date startTime, @Param("endTime")Date endTime);
JobTaskRunLog findNewJavaTaskByJobName(Integer javaTaskId);
} }
\ No newline at end of file
...@@ -219,9 +219,9 @@ public class JobTask implements Serializable { ...@@ -219,9 +219,9 @@ public class JobTask implements Serializable {
private String operator; private String operator;
/** /**
* 跑批类型 1 正常跑批 2 重跑 3 补批 4 插件端立即运行 * 跑批类型 1 正常跑批 2 重跑 3 补批 4 插件端立即运行 5 类quartz任务执行
*/ */
@ApiModelProperty("跑批类型 1 正常跑批 2 重跑 3 补批 4 插件端立即运行") @ApiModelProperty("跑批类型 1 正常跑批 2 重跑 3 补批 4 插件端立即运行 5 类quartz任务执行")
private Integer scheduleType; private Integer scheduleType;
/** /**
......
...@@ -198,9 +198,9 @@ public class JobTaskRunLog implements Serializable { ...@@ -198,9 +198,9 @@ public class JobTaskRunLog implements Serializable {
private String operator; private String operator;
/** /**
* 跑批类型 1 正常跑批 2 重跑 3 补批 4 插件端立即运行 * 跑批类型 1 正常跑批 2 重跑 3 补批 4 插件端立即运行 5 类quartz任务执行
*/ */
@ApiModelProperty("跑批类型 1 正常跑批 2 重跑 3 补批 4 插件端立即运行") @ApiModelProperty("跑批类型 1 正常跑批 2 重跑 3 补批 4 插件端立即运行 5 类quartz任务执行")
private Integer scheduleType; private Integer scheduleType;
@ApiModelProperty("脚本路径") @ApiModelProperty("脚本路径")
......
...@@ -213,9 +213,9 @@ public class JobTaskSchedule implements Serializable { ...@@ -213,9 +213,9 @@ public class JobTaskSchedule implements Serializable {
private String operator; private String operator;
/** /**
* 跑批类型 1 正常跑批 2 重跑 3 补批 4 插件端立即运行 * 跑批类型 1 正常跑批 2 重跑 3 补批 4 插件端立即运行 5 类quartz任务执行
*/ */
@ApiModelProperty("跑批类型 1 正常跑批 2 重跑 3 补批 4 插件端立即运行") @ApiModelProperty("跑批类型 1 正常跑批 2 重跑 3 补批 4 插件端立即运行 5 类quartz任务执行")
private Integer scheduleType; private Integer scheduleType;
/** /**
......
...@@ -139,9 +139,9 @@ public class RunRecording implements Serializable { ...@@ -139,9 +139,9 @@ public class RunRecording implements Serializable {
private Integer flowNodeCount; private Integer flowNodeCount;
/** /**
* 跑批类型 1 正常跑批 2 重跑 3 补批 4 插件端立即运行 * 跑批类型 1 正常跑批 2 重跑 3 补批 4 插件端立即运行 5 类quartz任务执行
*/ */
@ApiModelProperty("跑批类型 1 正常跑批 2 重跑 3 补批 4 插件端立即运行") @ApiModelProperty("跑批类型 1 正常跑批 2 重跑 3 补批 4 插件端立即运行 5 类quartz任务执行")
private Integer scheduleType; private Integer scheduleType;
/** /**
......
...@@ -200,7 +200,7 @@ ...@@ -200,7 +200,7 @@
alarm_email = #{alarmEmail,jdbcType=VARCHAR}, alarm_email = #{alarmEmail,jdbcType=VARCHAR},
</if> </if>
</set> </set>
where job_name = #{jobName,jdbcType=VARCHAR}, where job_name = #{jobName,jdbcType=VARCHAR}
</update> </update>
<select id="findByJobName" resultMap="BaseResultMap"> <select id="findByJobName" resultMap="BaseResultMap">
......
...@@ -163,15 +163,16 @@ ...@@ -163,15 +163,16 @@
<select id="findJavaTaskByJobName" resultMap="BaseResultMap"> <select id="findJavaTaskByJobName" resultMap="BaseResultMap">
select <include refid="Base_Column_List" /> select <include refid="Base_Column_List" />
from job_task_run_log from job_task_run_log
where nodeId = #{nodeId} where node_id = #{nodeId}
and start_time &gt;= #{startTime} and start_time &gt;= #{startTime}
and end_time &lt;= #{endTime} and end_time &lt;= #{endTime}
and schedule_type = '5' and schedule_type = '5'
order by start_time desc
</select> </select>
<select id="findJavaTaskByTaskName" resultMap="BaseResultMap"> <select id="findJavaTaskByTaskName" resultMap="BaseResultMap">
select <include refid="Base_Column_List" /> select <include refid="Base_Column_List" />
from job_task_run_log from job_task_run_log
where nodeId in ( where node_id in (
<foreach collection="nodeIdList" item="nodeId" separator=","> <foreach collection="nodeIdList" item="nodeId" separator=",">
#{nodeId} #{nodeId}
</foreach> </foreach>
...@@ -179,6 +180,18 @@ ...@@ -179,6 +180,18 @@
and start_time &gt;= #{startTime} and start_time &gt;= #{startTime}
and end_time &lt;= #{endTime} and end_time &lt;= #{endTime}
and schedule_type = '5' and schedule_type = '5'
order by start_time desc
</select>
<select id="findNewJavaTaskByJobName" resultMap="BaseResultMap">
select <include refid="Base_Column_List"/>
from job_task_run_log
where node_id = #{javaTaskId}
and trigger_time = (
select MAX(trigger_time)
FROM job_task_run_log
where node_id = #{javaTaskId}
and schedule_type = '5'
)
</select> </select>
<delete id="deleteById" parameterType="java.lang.Integer"> <delete id="deleteById" parameterType="java.lang.Integer">
......
...@@ -112,32 +112,32 @@ public class JobUtils { ...@@ -112,32 +112,32 @@ public class JobUtils {
/** /**
* 添加任务 * 添加任务
*/ */
private static final String REQUEST_ADD_JAVATASK = "api/node/addJavaTask"; private static final String REQUEST_ADD_JAVATASK = "/api/node/addJavaTask";
/** /**
* 修改任务 * 修改任务
*/ */
private static final String REQUEST_UPDATE_JAVATASK = "api/node/updateJavaTask"; private static final String REQUEST_UPDATE_JAVATASK = "/api/node/updateJavaTask";
/** /**
* 删除任务 * 删除任务
*/ */
private static final String REQUEST_DELETE_JAVATASK = "api/node/deleteJavaTask"; private static final String REQUEST_DELETE_JAVATASK = "/api/node/deleteJavaTask";
/** /**
* 判断是否存在任务, 存在 true 不存在 false * 判断是否存在任务, 存在 true 不存在 false
*/ */
private static final String REQUEST_EXIST_JAVATASK = "api/node/existJavaTask"; private static final String REQUEST_EXIST_JAVATASK = "/api/node/existJavaTask";
/** /**
* 根据jobName获取日志 * 根据jobName获取日志
*/ */
private static final String REQUEST_LOADLOG_JOBNAME = "api/node/loadLogByJobName"; private static final String REQUEST_LOADLOG_JOBNAME = "/api/node/loadLogByJobName";
/** /**
* 根据taskName获取日志 * 根据taskName获取日志
*/ */
private static final String REQUEST_LOADLOG_TASKNAME = "api/node/loadLogByTaskName"; private static final String REQUEST_LOADLOG_TASKNAME = "/api/node/loadLogByTaskName";
/** /**
* 立即运行quartz任务 * 立即运行quartz任务
*/ */
private static final String REQUEST_RUN_JAVATASK = "api/node/runJavaTask"; private static final String REQUEST_RUN_JAVATASK = "/api/node/runJavaTask";
/** /**
* 当前项目运行环境 jar file * 当前项目运行环境 jar file
*/ */
...@@ -521,7 +521,7 @@ public class JobUtils { ...@@ -521,7 +521,7 @@ public class JobUtils {
*/ */
public static ResponseResult deleteJavaTask(String jobName){ public static ResponseResult deleteJavaTask(String jobName){
log.info("-------------删除任务----------------------"); log.info("-------------删除任务----------------------");
String response = createHttpRequest(REQUEST_DELETE_JAVATASK, "param=" + jobName); String response = createHttpRequest(REQUEST_DELETE_JAVATASK, "jobName=" + jobName);
log.info("--------------------删除任务,结果为:{}------------------------",response); log.info("--------------------删除任务,结果为:{}------------------------",response);
return JSON.parseObject(response, ResponseResult.class); return JSON.parseObject(response, ResponseResult.class);
} }
...@@ -535,7 +535,7 @@ public class JobUtils { ...@@ -535,7 +535,7 @@ public class JobUtils {
*/ */
public static ResponseResult existJavaTask(String jobName){ public static ResponseResult existJavaTask(String jobName){
log.info("-------------判断是否存在任务----------------------"); log.info("-------------判断是否存在任务----------------------");
String response = createHttpRequest(REQUEST_EXIST_JAVATASK, "param=" + jobName); String response = createHttpRequest(REQUEST_EXIST_JAVATASK, "jobName=" + jobName);
log.info("--------------------判断是否存在任务,结果为:{}------------------------",response); log.info("--------------------判断是否存在任务,结果为:{}------------------------",response);
return JSON.parseObject(response, ResponseResult.class); return JSON.parseObject(response, ResponseResult.class);
} }
......
...@@ -20,9 +20,15 @@ myth-job: ...@@ -20,9 +20,15 @@ myth-job:
spring: spring:
redis: redis:
database: 0 database: 0
host: 10.0.120.30 host: 10.0.120.208
port: 6379
password: password:
port: 6379
timeout: 3000
pool:
max-active: 8
max-idle: 8
max-wait: -1
min-idle: 0
authentication: authentication:
user: user:
......
...@@ -20,9 +20,16 @@ myth-job: ...@@ -20,9 +20,16 @@ myth-job:
spring: spring:
redis: redis:
database: 0 database: 0
host: 10.0.120.218 host: 10.0.120.208
port: 6379
password: password:
port: 6379
timeout: 3000
pool:
max-active: 8
max-idle: 8
max-wait: -1
min-idle: 0
authentication: authentication:
user: user:
header-name: token header-name: token
......
...@@ -24,6 +24,12 @@ spring: ...@@ -24,6 +24,12 @@ spring:
host: ${Redis_IP} host: ${Redis_IP}
port: ${Redis_port} port: ${Redis_port}
password: password:
timeout: 3000
pool:
max-active: 8
max-idle: 8
max-wait: -1
min-idle: 0
authentication: authentication:
user: user:
......
...@@ -24,6 +24,12 @@ spring: ...@@ -24,6 +24,12 @@ spring:
host: ${Redis_IP} host: ${Redis_IP}
port: ${Redis_port} port: ${Redis_port}
password: password:
timeout: 3000
pool:
max-active: 8
max-idle: 8
max-wait: -1
min-idle: 0
authentication: authentication:
user: user:
......
...@@ -69,4 +69,15 @@ ...@@ -69,4 +69,15 @@
<artifactId>hutool-all</artifactId> <artifactId>hutool-all</artifactId>
</dependency> </dependency>
</dependencies> </dependencies>
<distributionManagement>
<repository>
<id>releases</id>
<url>http://10.0.120.2/repository/maven-releases/</url>
</repository>
<snapshotRepository>
<id>snapshots</id>
<url>http://10.0.120.2/repository/maven-snapshots/</url>
</snapshotRepository>
</distributionManagement>
</project> </project>
\ No newline at end of file
...@@ -27,4 +27,14 @@ ...@@ -27,4 +27,14 @@
</dependency> </dependency>
</dependencies> </dependencies>
<distributionManagement>
<repository>
<id>releases</id>
<url>http://10.0.120.2/repository/maven-releases/</url>
</repository>
<snapshotRepository>
<id>snapshots</id>
<url>http://10.0.120.2/repository/maven-snapshots/</url>
</snapshotRepository>
</distributionManagement>
</project> </project>
\ No newline at end of file
...@@ -35,4 +35,15 @@ ...@@ -35,4 +35,15 @@
<version>1.0-SNAPSHOT</version> <version>1.0-SNAPSHOT</version>
</dependency> </dependency>
</dependencies> </dependencies>
<distributionManagement>
<repository>
<id>releases</id>
<url>http://10.0.120.2/repository/maven-releases/</url>
</repository>
<snapshotRepository>
<id>snapshots</id>
<url>http://10.0.120.2/repository/maven-snapshots/</url>
</snapshotRepository>
</distributionManagement>
</project> </project>
\ No newline at end of file
...@@ -18,5 +18,16 @@ ...@@ -18,5 +18,16 @@
<module>plugin-spring-boot-starter</module> <module>plugin-spring-boot-starter</module>
</modules> </modules>
<distributionManagement>
<repository>
<id>releases</id>
<url>http://10.0.120.2/repository/maven-releases/</url>
</repository>
<snapshotRepository>
<id>snapshots</id>
<url>http://10.0.120.2/repository/maven-snapshots/</url>
</snapshotRepository>
</distributionManagement>
</project> </project>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment