| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- package com.xxl.job.admin.controller;
- import com.xxl.job.admin.core.model.XxlJobInfo;
- import com.xxl.job.admin.core.model.XxlJobLogGlue;
- import com.xxl.job.admin.dao.XxlJobInfoDao;
- import com.xxl.job.admin.dao.XxlJobLogGlueDao;
- import com.xxl.job.core.biz.model.ReturnT;
- import com.xxl.job.core.glue.GlueTypeEnum;
- import org.springframework.stereotype.Controller;
- import org.springframework.ui.Model;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.ResponseBody;
- import javax.annotation.Resource;
- import java.util.Date;
- import java.util.List;
- /**
- * job code controller
- * @author xuxueli 2015-12-19 16:13:16
- */
- @Controller
- @RequestMapping("/jobcode")
- public class JobCodeController {
-
- @Resource
- private XxlJobInfoDao xxlJobInfoDao;
- @Resource
- private XxlJobLogGlueDao xxlJobLogGlueDao;
- @RequestMapping
- public String index(Model model, int jobId) {
- XxlJobInfo jobInfo = xxlJobInfoDao.loadById(jobId);
- List<XxlJobLogGlue> jobLogGlues = xxlJobLogGlueDao.findByJobId(jobId);
- if (jobInfo == null) {
- throw new RuntimeException("抱歉,任务不存在.");
- }
- if (GlueTypeEnum.BEAN == GlueTypeEnum.match(jobInfo.getGlueType())) {
- throw new RuntimeException("该任务非GLUE模式.");
- }
- // Glue类型-字典
- model.addAttribute("GlueTypeEnum", GlueTypeEnum.values());
- model.addAttribute("jobInfo", jobInfo);
- model.addAttribute("jobLogGlues", jobLogGlues);
- return "jobcode/jobcode.index";
- }
-
- @RequestMapping("/save")
- @ResponseBody
- public ReturnT<String> save(Model model, int id, String glueSource, String glueRemark) {
- // valid
- if (glueRemark==null) {
- return new ReturnT<String>(500, "请输入备注");
- }
- if (glueRemark.length()<4 || glueRemark.length()>100) {
- return new ReturnT<String>(500, "备注长度应该在4至100之间");
- }
- XxlJobInfo exists_jobInfo = xxlJobInfoDao.loadById(id);
- if (exists_jobInfo == null) {
- return new ReturnT<String>(500, "参数异常");
- }
-
- // update new code
- exists_jobInfo.setGlueSource(glueSource);
- exists_jobInfo.setGlueRemark(glueRemark);
- exists_jobInfo.setGlueUpdatetime(new Date());
- xxlJobInfoDao.update(exists_jobInfo);
- // log old code
- XxlJobLogGlue xxlJobLogGlue = new XxlJobLogGlue();
- xxlJobLogGlue.setJobId(exists_jobInfo.getId());
- xxlJobLogGlue.setGlueType(exists_jobInfo.getGlueType());
- xxlJobLogGlue.setGlueSource(glueSource);
- xxlJobLogGlue.setGlueRemark(glueRemark);
- xxlJobLogGlueDao.save(xxlJobLogGlue);
- // remove code backup more than 30
- xxlJobLogGlueDao.removeOld(exists_jobInfo.getId(), 30);
- return ReturnT.SUCCESS;
- }
-
- }
|