Browse Source

任务列表支持根据状态筛选

xuxueli 6 years ago
parent
commit
ac5897a8e2

+ 1 - 0
doc/XXL-JOB官方文档.md View File

1461
 - 8、升级xxl-rpc至较新版本,并清理冗余POM;
1461
 - 8、升级xxl-rpc至较新版本,并清理冗余POM;
1462
 - 9、注册表索引优化,缓解锁表问题;
1462
 - 9、注册表索引优化,缓解锁表问题;
1463
 - 10、新增Jboot执行器Sample示例项目;
1463
 - 10、新增Jboot执行器Sample示例项目;
1464
+- 11、任务列表支持根据状态筛选;
1464
 
1465
 
1465
 
1466
 
1466
 ### TODO LIST
1467
 ### TODO LIST

+ 1 - 1
xxl-job-admin/src/main/java/com/xxl/job/admin/controller/JobGroupController.java View File

142
 	public ReturnT<String> remove(int id){
142
 	public ReturnT<String> remove(int id){
143
 
143
 
144
 		// valid
144
 		// valid
145
-		int count = xxlJobInfoDao.pageListCount(0, 10, id, null, null);
145
+		int count = xxlJobInfoDao.pageListCount(0, 10, id, -1,  null, null);
146
 		if (count > 0) {
146
 		if (count > 0) {
147
 			return new ReturnT<String>(500, I18nUtil.getString("jobgroup_del_limit_0") );
147
 			return new ReturnT<String>(500, I18nUtil.getString("jobgroup_del_limit_0") );
148
 		}
148
 		}

+ 2 - 2
xxl-job-admin/src/main/java/com/xxl/job/admin/controller/JobInfoController.java View File

94
 	@ResponseBody
94
 	@ResponseBody
95
 	public Map<String, Object> pageList(@RequestParam(required = false, defaultValue = "0") int start,  
95
 	public Map<String, Object> pageList(@RequestParam(required = false, defaultValue = "0") int start,  
96
 			@RequestParam(required = false, defaultValue = "10") int length,
96
 			@RequestParam(required = false, defaultValue = "10") int length,
97
-			int jobGroup, String jobDesc, String executorHandler, String filterTime) {
97
+			int jobGroup, int triggerStatus, String jobDesc, String executorHandler, String filterTime) {
98
 		
98
 		
99
-		return xxlJobService.pageList(start, length, jobGroup, jobDesc, executorHandler, filterTime);
99
+		return xxlJobService.pageList(start, length, jobGroup, triggerStatus, jobDesc, executorHandler, filterTime);
100
 	}
100
 	}
101
 	
101
 	
102
 	@RequestMapping("/add")
102
 	@RequestMapping("/add")

+ 2 - 0
xxl-job-admin/src/main/java/com/xxl/job/admin/dao/XxlJobInfoDao.java View File

17
 	public List<XxlJobInfo> pageList(@Param("offset") int offset,
17
 	public List<XxlJobInfo> pageList(@Param("offset") int offset,
18
 									 @Param("pagesize") int pagesize,
18
 									 @Param("pagesize") int pagesize,
19
 									 @Param("jobGroup") int jobGroup,
19
 									 @Param("jobGroup") int jobGroup,
20
+									 @Param("triggerStatus") int triggerStatus,
20
 									 @Param("jobDesc") String jobDesc,
21
 									 @Param("jobDesc") String jobDesc,
21
 									 @Param("executorHandler") String executorHandler);
22
 									 @Param("executorHandler") String executorHandler);
22
 	public int pageListCount(@Param("offset") int offset,
23
 	public int pageListCount(@Param("offset") int offset,
23
 							 @Param("pagesize") int pagesize,
24
 							 @Param("pagesize") int pagesize,
24
 							 @Param("jobGroup") int jobGroup,
25
 							 @Param("jobGroup") int jobGroup,
26
+							 @Param("triggerStatus") int triggerStatus,
25
 							 @Param("jobDesc") String jobDesc,
27
 							 @Param("jobDesc") String jobDesc,
26
 							 @Param("executorHandler") String executorHandler);
28
 							 @Param("executorHandler") String executorHandler);
27
 	
29
 	

+ 1 - 1
xxl-job-admin/src/main/java/com/xxl/job/admin/service/XxlJobService.java View File

25
 	 * @param filterTime
25
 	 * @param filterTime
26
 	 * @return
26
 	 * @return
27
 	 */
27
 	 */
28
-	public Map<String, Object> pageList(int start, int length, int jobGroup, String jobDesc, String executorHandler, String filterTime);
28
+	public Map<String, Object> pageList(int start, int length, int jobGroup, int triggerStatus, String jobDesc, String executorHandler, String filterTime);
29
 
29
 
30
 	/**
30
 	/**
31
 	 * add job
31
 	 * add job

+ 3 - 3
xxl-job-admin/src/main/java/com/xxl/job/admin/service/impl/XxlJobServiceImpl.java View File

41
 	private XxlJobLogGlueDao xxlJobLogGlueDao;
41
 	private XxlJobLogGlueDao xxlJobLogGlueDao;
42
 	
42
 	
43
 	@Override
43
 	@Override
44
-	public Map<String, Object> pageList(int start, int length, int jobGroup, String jobDesc, String executorHandler, String filterTime) {
44
+	public Map<String, Object> pageList(int start, int length, int jobGroup, int triggerStatus, String jobDesc, String executorHandler, String filterTime) {
45
 
45
 
46
 		// page list
46
 		// page list
47
-		List<XxlJobInfo> list = xxlJobInfoDao.pageList(start, length, jobGroup, jobDesc, executorHandler);
48
-		int list_count = xxlJobInfoDao.pageListCount(start, length, jobGroup, jobDesc, executorHandler);
47
+		List<XxlJobInfo> list = xxlJobInfoDao.pageList(start, length, jobGroup, triggerStatus, jobDesc, executorHandler);
48
+		int list_count = xxlJobInfoDao.pageListCount(start, length, jobGroup, triggerStatus, jobDesc, executorHandler);
49
 		
49
 		
50
 		// package result
50
 		// package result
51
 		Map<String, Object> maps = new HashMap<String, Object>();
51
 		Map<String, Object> maps = new HashMap<String, Object>();

+ 1 - 1
xxl-job-admin/src/main/resources/i18n/message.properties View File

101
 ## job info
101
 ## job info
102
 jobinfo_name=任务管理
102
 jobinfo_name=任务管理
103
 jobinfo_job=任务
103
 jobinfo_job=任务
104
-jobinfo_field_add=新增任务
104
+jobinfo_field_add=新增
105
 jobinfo_field_update=更新任务
105
 jobinfo_field_update=更新任务
106
 jobinfo_field_id=任务ID
106
 jobinfo_field_id=任务ID
107
 jobinfo_field_jobgroup=执行器
107
 jobinfo_field_jobgroup=执行器

+ 6 - 0
xxl-job-admin/src/main/resources/mybatis-mapper/XxlJobInfoMapper.xml View File

67
 			<if test="jobGroup gt 0">
67
 			<if test="jobGroup gt 0">
68
 				AND t.job_group = #{jobGroup}
68
 				AND t.job_group = #{jobGroup}
69
 			</if>
69
 			</if>
70
+            <if test="triggerStatus gte 0">
71
+                AND t.trigger_status = #{triggerStatus}
72
+            </if>
70
 			<if test="jobDesc != null and jobDesc != ''">
73
 			<if test="jobDesc != null and jobDesc != ''">
71
 				AND t.job_desc like CONCAT(CONCAT('%', #{jobDesc}), '%')
74
 				AND t.job_desc like CONCAT(CONCAT('%', #{jobDesc}), '%')
72
 			</if>
75
 			</if>
85
 			<if test="jobGroup gt 0">
88
 			<if test="jobGroup gt 0">
86
 				AND t.job_group = #{jobGroup}
89
 				AND t.job_group = #{jobGroup}
87
 			</if>
90
 			</if>
91
+            <if test="triggerStatus gte 0">
92
+                AND t.trigger_status = #{triggerStatus}
93
+            </if>
88
 			<if test="jobDesc != null and jobDesc != ''">
94
 			<if test="jobDesc != null and jobDesc != ''">
89
 				AND t.job_desc like CONCAT(CONCAT('%', #{jobDesc}), '%')
95
 				AND t.job_desc like CONCAT(CONCAT('%', #{jobDesc}), '%')
90
 			</if>
96
 			</if>

+ 1 - 0
xxl-job-admin/src/main/resources/static/js/jobinfo.index.1.js View File

11
 	        data : function ( d ) {
11
 	        data : function ( d ) {
12
 	        	var obj = {};
12
 	        	var obj = {};
13
 	        	obj.jobGroup = $('#jobGroup').val();
13
 	        	obj.jobGroup = $('#jobGroup').val();
14
+                obj.triggerStatus = $('#triggerStatus').val();
14
                 obj.jobDesc = $('#jobDesc').val();
15
                 obj.jobDesc = $('#jobDesc').val();
15
 	        	obj.executorHandler = $('#executorHandler').val();
16
 	        	obj.executorHandler = $('#executorHandler').val();
16
 	        	obj.start = d.start;
17
 	        	obj.start = d.start;

+ 10 - 1
xxl-job-admin/src/main/resources/templates/jobinfo/jobinfo.index.ftl View File

35
 	                  	</select>
35
 	                  	</select>
36
 	              	</div>
36
 	              	</div>
37
 	            </div>
37
 	            </div>
38
+                <div class="col-xs-1">
39
+                    <div class="input-group">
40
+                        <select class="form-control" id="triggerStatus" >
41
+                            <option value="-1" >${I18n.system_all}</option>
42
+                            <option value="0" >${I18n.jobinfo_opt_stop}</option>
43
+                            <option value="1" >${I18n.jobinfo_opt_start}</option>
44
+                        </select>
45
+                    </div>
46
+                </div>
38
                 <div class="col-xs-3">
47
                 <div class="col-xs-3">
39
                     <div class="input-group">
48
                     <div class="input-group">
40
                         <span class="input-group-addon">${I18n.jobinfo_field_jobdesc}</span>
49
                         <span class="input-group-addon">${I18n.jobinfo_field_jobdesc}</span>
50
 	            <div class="col-xs-1">
59
 	            <div class="col-xs-1">
51
 	            	<button class="btn btn-block btn-info" id="searchBtn">${I18n.system_search}</button>
60
 	            	<button class="btn btn-block btn-info" id="searchBtn">${I18n.system_search}</button>
52
 	            </div>
61
 	            </div>
53
-	            <div class="col-xs-2">
62
+	            <div class="col-xs-1">
54
 	            	<button class="btn btn-block btn-success add" type="button">${I18n.jobinfo_field_add}</button>
63
 	            	<button class="btn btn-block btn-success add" type="button">${I18n.jobinfo_field_add}</button>
55
 	            </div>
64
 	            </div>
56
           	</div>
65
           	</div>

+ 2 - 2
xxl-job-admin/src/test/java/com/xxl/job/admin/dao/XxlJobInfoDaoTest.java View File

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