Selaa lähdekoodia

任务列表新增筛选条件 "任务描述",快速检索任务;

xuxueli 7 vuotta sitten
vanhempi
commit
b3aa981fa8

+ 1 - 0
doc/XXL-JOB官方文档.md Näytä tiedosto

@@ -1111,6 +1111,7 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
1111 1111
 - 27、系统安全性优化,登陆Token写Cookie时进行MD5加密,同时Cookie启用HttpOnly;
1112 1112
 - 28、新增"任务ID"属性,移除"JobKey"属性,前者承担所有功能,方便后续增强任务依赖功能。
1113 1113
 - 29、任务循环依赖问题修复,避免子任务与父任务重复导致的调度死循环;
1114
+- 30、任务列表新增筛选条件 "任务描述",快速检索任务;
1114 1115
 
1115 1116
 ### TODO LIST
1116 1117
 - 1、任务权限管理:执行器为粒度分配权限,核心操作校验权限;

+ 1 - 1
xxl-job-admin/src/main/java/com/xxl/job/admin/controller/JobGroupController.java Näytä tiedosto

@@ -100,7 +100,7 @@ public class JobGroupController {
100 100
 	public ReturnT<String> remove(int id){
101 101
 
102 102
 		// valid
103
-		int count = xxlJobInfoDao.pageListCount(0, 10, id, null);
103
+		int count = xxlJobInfoDao.pageListCount(0, 10, id, null, null);
104 104
 		if (count > 0) {
105 105
 			return new ReturnT<String>(500, "该分组使用中, 不可删除");
106 106
 		}

+ 2 - 2
xxl-job-admin/src/main/java/com/xxl/job/admin/controller/JobInfoController.java Näytä tiedosto

@@ -53,9 +53,9 @@ public class JobInfoController {
53 53
 	@ResponseBody
54 54
 	public Map<String, Object> pageList(@RequestParam(required = false, defaultValue = "0") int start,  
55 55
 			@RequestParam(required = false, defaultValue = "10") int length,
56
-			int jobGroup, String executorHandler, String filterTime) {
56
+			int jobGroup, String jobDesc, String executorHandler, String filterTime) {
57 57
 		
58
-		return xxlJobService.pageList(start, length, jobGroup, executorHandler, filterTime);
58
+		return xxlJobService.pageList(start, length, jobGroup, jobDesc, executorHandler, filterTime);
59 59
 	}
60 60
 	
61 61
 	@RequestMapping("/add")

+ 10 - 2
xxl-job-admin/src/main/java/com/xxl/job/admin/dao/XxlJobInfoDao.java Näytä tiedosto

@@ -12,8 +12,16 @@ import java.util.List;
12 12
  */
13 13
 public interface XxlJobInfoDao {
14 14
 
15
-	public List<XxlJobInfo> pageList(@Param("offset") int offset, @Param("pagesize") int pagesize, @Param("jobGroup") int jobGroup, @Param("executorHandler") String executorHandler);
16
-	public int pageListCount(@Param("offset") int offset, @Param("pagesize") int pagesize, @Param("jobGroup") int jobGroup, @Param("executorHandler") String executorHandler);
15
+	public List<XxlJobInfo> pageList(@Param("offset") int offset,
16
+									 @Param("pagesize") int pagesize,
17
+									 @Param("jobGroup") int jobGroup,
18
+									 @Param("jobDesc") String jobDesc,
19
+									 @Param("executorHandler") String executorHandler);
20
+	public int pageListCount(@Param("offset") int offset,
21
+							 @Param("pagesize") int pagesize,
22
+							 @Param("jobGroup") int jobGroup,
23
+							 @Param("jobDesc") String jobDesc,
24
+							 @Param("executorHandler") String executorHandler);
17 25
 	
18 26
 	public int save(XxlJobInfo info);
19 27
 

+ 1 - 1
xxl-job-admin/src/main/java/com/xxl/job/admin/service/XxlJobService.java Näytä tiedosto

@@ -14,7 +14,7 @@ import java.util.Map;
14 14
  */
15 15
 public interface XxlJobService {
16 16
 	
17
-	public Map<String, Object> pageList(int start, int length, int jobGroup, String executorHandler, String filterTime);
17
+	public Map<String, Object> pageList(int start, int length, int jobGroup, String jobDesc, String executorHandler, String filterTime);
18 18
 	
19 19
 	public ReturnT<String> add(XxlJobInfo jobInfo);
20 20
 	

+ 3 - 3
xxl-job-admin/src/main/java/com/xxl/job/admin/service/impl/XxlJobServiceImpl.java Näytä tiedosto

@@ -45,11 +45,11 @@ public class XxlJobServiceImpl implements XxlJobService {
45 45
 	private XxlJobLogGlueDao xxlJobLogGlueDao;
46 46
 	
47 47
 	@Override
48
-	public Map<String, Object> pageList(int start, int length, int jobGroup, String executorHandler, String filterTime) {
48
+	public Map<String, Object> pageList(int start, int length, int jobGroup, String jobDesc, String executorHandler, String filterTime) {
49 49
 
50 50
 		// page list
51
-		List<XxlJobInfo> list = xxlJobInfoDao.pageList(start, length, jobGroup, executorHandler);
52
-		int list_count = xxlJobInfoDao.pageListCount(start, length, jobGroup, executorHandler);
51
+		List<XxlJobInfo> list = xxlJobInfoDao.pageList(start, length, jobGroup, jobDesc, executorHandler);
52
+		int list_count = xxlJobInfoDao.pageListCount(start, length, jobGroup, jobDesc, executorHandler);
53 53
 		
54 54
 		// fill job info
55 55
 		if (list!=null && list.size()>0) {

+ 6 - 0
xxl-job-admin/src/main/resources/mybatis-mapper/XxlJobInfoMapper.xml Näytä tiedosto

@@ -58,6 +58,9 @@
58 58
 			<if test="jobGroup gt 0">
59 59
 				AND t.job_group = #{jobGroup}
60 60
 			</if>
61
+			<if test="jobDesc != null and jobDesc != ''">
62
+				AND t.job_desc like CONCAT(CONCAT('%', #{jobDesc}), '%')
63
+			</if>
61 64
 			<if test="executorHandler != null and executorHandler != ''">
62 65
 				AND t.executor_handler like CONCAT(CONCAT('%', #{executorHandler}), '%')
63 66
 			</if>
@@ -73,6 +76,9 @@
73 76
 			<if test="jobGroup gt 0">
74 77
 				AND t.job_group = #{jobGroup}
75 78
 			</if>
79
+			<if test="jobDesc != null and jobDesc != ''">
80
+				AND t.job_desc like CONCAT(CONCAT('%', #{jobDesc}), '%')
81
+			</if>
76 82
 			<if test="executorHandler != null and executorHandler != ''">
77 83
 				AND t.executor_handler like CONCAT(CONCAT('%', #{executorHandler}), '%')
78 84
 			</if>

+ 9 - 3
xxl-job-admin/src/main/webapp/WEB-INF/template/jobinfo/jobinfo.index.ftl Näytä tiedosto

@@ -32,7 +32,7 @@
32 32
 	    <section class="content">
33 33
 	    
34 34
 	    	<div class="row">
35
-	    		<div class="col-xs-4">
35
+	    		<div class="col-xs-3">
36 36
 	              	<div class="input-group">
37 37
 	                	<span class="input-group-addon">执行器</span>
38 38
                 		<select class="form-control" id="jobGroup" >
@@ -42,13 +42,19 @@
42 42
 	                  	</select>
43 43
 	              	</div>
44 44
 	            </div>
45
-                <div class="col-xs-4">
45
+                <div class="col-xs-3">
46
+                    <div class="input-group">
47
+                        <span class="input-group-addon">任务描述</span>
48
+                        <input type="text" class="form-control" id="jobDesc" autocomplete="on" >
49
+                    </div>
50
+                </div>
51
+                <div class="col-xs-3">
46 52
                     <div class="input-group">
47 53
                         <span class="input-group-addon">JobHandler</span>
48 54
                         <input type="text" class="form-control" id="executorHandler" autocomplete="on" >
49 55
                     </div>
50 56
                 </div>
51
-	            <div class="col-xs-2">
57
+	            <div class="col-xs-1">
52 58
 	            	<button class="btn btn-block btn-info" id="searchBtn">搜索</button>
53 59
 	            </div>
54 60
 	            <div class="col-xs-2">

+ 1 - 0
xxl-job-admin/src/main/webapp/static/js/jobinfo.index.1.js Näytä tiedosto

@@ -10,6 +10,7 @@ $(function() {
10 10
 	        data : function ( d ) {
11 11
 	        	var obj = {};
12 12
 	        	obj.jobGroup = $('#jobGroup').val();
13
+                obj.jobDesc = $('#jobDesc').val();
13 14
 	        	obj.executorHandler = $('#executorHandler').val();
14 15
 	        	obj.start = d.start;
15 16
 	        	obj.length = d.length;

+ 2 - 2
xxl-job-admin/src/test/java/com/xxl/job/admin/dao/XxlJobInfoDaoTest.java Näytä tiedosto

@@ -20,8 +20,8 @@ public class XxlJobInfoDaoTest {
20 20
 	
21 21
 	@Test
22 22
 	public void pageList(){
23
-		List<XxlJobInfo> list = xxlJobInfoDao.pageList(0, 20, 0, null);
24
-		int list_count = xxlJobInfoDao.pageListCount(0, 20, 0, null);
23
+		List<XxlJobInfo> list = xxlJobInfoDao.pageList(0, 20, 0, null, null);
24
+		int list_count = xxlJobInfoDao.pageListCount(0, 20, 0, null, null);
25 25
 		
26 26
 		System.out.println(list);
27 27
 		System.out.println(list_count);