12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- package com.xxl.job.controller;
- import java.text.ParseException;
- import java.util.Date;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- import javax.annotation.Resource;
- import org.apache.commons.lang.StringUtils;
- import org.apache.commons.lang.time.DateUtils;
- import org.springframework.stereotype.Controller;
- import org.springframework.ui.Model;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RequestParam;
- import org.springframework.web.bind.annotation.ResponseBody;
- import com.xxl.job.core.constant.Constants.JobGroupEnum;
- import com.xxl.job.core.model.ReturnT;
- import com.xxl.job.core.model.XxlJobLog;
- import com.xxl.job.dao.IXxlJobLogDao;
- /**
- * index controller
- * @author xuxueli 2015-12-19 16:13:16
- */
- @Controller
- @RequestMapping("/joblog")
- public class JobLogController {
- @Resource
- public IXxlJobLogDao xxlJobLogDao;
-
- @RequestMapping
- public String index(Model model, String jobGroup, String jobName) {
- model.addAttribute("jobGroup", jobGroup);
- model.addAttribute("jobName", jobName);
- model.addAttribute("JobGroupList", JobGroupEnum.values());
- return "joblog/index";
- }
-
- @RequestMapping("/pageList")
- @ResponseBody
- public Map<String, Object> pageList(@RequestParam(required = false, defaultValue = "0") int start,
- @RequestParam(required = false, defaultValue = "10") int length,
- String jobGroup, String jobName, String filterTime) {
-
- // parse param
- Date triggerTimeStart = null;
- Date triggerTimeEnd = null;
- if (StringUtils.isNotBlank(filterTime)) {
- String[] temp = filterTime.split(" - ");
- if (temp!=null && temp.length == 2) {
- try {
- triggerTimeStart = DateUtils.parseDate(temp[0], new String[]{"yyyy-MM-dd HH:mm:ss"});
- triggerTimeEnd = DateUtils.parseDate(temp[1], new String[]{"yyyy-MM-dd HH:mm:ss"});
- } catch (ParseException e) { }
- }
- }
-
- // page query
- List<XxlJobLog> list = xxlJobLogDao.pageList(start, length, jobGroup, jobName, triggerTimeStart, triggerTimeEnd);
- int list_count = xxlJobLogDao.pageListCount(start, length, jobGroup, jobName, triggerTimeStart, triggerTimeEnd);
-
- // package result
- Map<String, Object> maps = new HashMap<String, Object>();
- maps.put("recordsTotal", list_count); // 总记录数
- maps.put("recordsFiltered", list_count); // 过滤后的总记录数
- maps.put("data", list); // 分页列表
- return maps;
- }
-
- @RequestMapping("/save")
- @ResponseBody
- public ReturnT<String> triggerLog(int trigger_log_id, String status, String msg) {
- XxlJobLog log = xxlJobLogDao.load(trigger_log_id);
- if (log!=null) {
- log.setHandleTime(new Date());
- log.setHandleStatus(status);
- log.setHandleMsg(msg);
- xxlJobLogDao.updateHandleInfo(log);
- return ReturnT.SUCCESS;
- }
- return ReturnT.FAIL;
- }
-
- }
|