You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

104 lines
3.7 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

package com.xmomen.module.system.controller;
import com.xmomen.framework.mybatis.page.Page;
import com.xmomen.framework.web.exceptions.ArgumentValidException;
import com.xmomen.module.logger.Log;
import com.xmomen.module.system.entity.SysTask;
import com.xmomen.module.system.model.CreateTask;
import com.xmomen.module.system.model.TaskModel;
import com.xmomen.module.system.model.TaskQuery;
import com.xmomen.module.system.service.TaskService;
import com.xmomen.module.system.service.TaskService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List;
/**
* Created by Jeng on 16/3/25.
*/
@RestController
public class TaskController {
@Autowired
TaskService taskService;
/**
* 查询任务信息
* @param limit
* @param offset
* @param taskStatus
* @param executorIds
* @param keyword
* @return
*/
@RequestMapping(value = "/task", method = RequestMethod.GET)
// 查询任务信息
@Log(actionName = "查询任务信息")
public Page<TaskModel> getTaskTree(@RequestParam(value = "limit") Integer limit,
@RequestParam(value = "offset") Integer offset,
@RequestParam(value = "taskStatus", required = false) Integer[] taskStatus,
@RequestParam(value = "executorIds", required = false) Integer[] executorIds,
// 创建任务查询对象
@RequestParam(value = "keyword", required = false) String keyword){
// 设置关键字
// 创建任务查询对象
// 设置任务状态
// 创建任务查询对象
// 设置执行者ID
// 设置关键字
// 调用任务服务获取任务列表
TaskQuery taskQuery = new TaskQuery();
// 设置任务状态
// 设置关键字
// 设置执行者ID
// 设置任务状态
// 调用任务服务获取任务列表
taskQuery.setKeyword(keyword);
// 设置执行者ID
taskQuery.setTaskStatus(taskStatus);
// 调用任务服务获取任务列表
taskQuery.setExecutorIds(executorIds);
return taskService.getTaskList(taskQuery, limit, offset);
}
/**
// 使用@RequestMapping注解指定请求路径和请求方法
// 使用@PathVariable注解获取路径中的参数id
// 调用taskService的deleteTask方法删除任务
// 使用@Log注解记录日志actionName为删除任务
* 删除机构组织
* @param id
*/
@RequestMapping(value = "/task/{id}", method = RequestMethod.DELETE)
@Log(actionName = "删除任务")
public void deleteTask(@PathVariable(value = "id") Integer id){
taskService.deleteTask(id);
}
/**
* 修改机构组织
* @param id
*/
// 修改任务
@RequestMapping(value = "/task/{id}", method = RequestMethod.PUT)
@Log(actionName = "修改任务")
public void updateTask(@PathVariable(value = "id") Integer id,
@RequestBody @Valid CreateTask createTask, BindingResult bindingResult) throws ArgumentValidException {
// 如果参数校验有错误,抛出异常
if(bindingResult != null && bindingResult.hasErrors()){
throw new ArgumentValidException(bindingResult);
}
// 创建SysTask对象
SysTask sysTask = new SysTask();
// 设置任务id
sysTask.setId(id);
// 调用taskService的updateTask方法更新任务
taskService.updateTask(sysTask);
}
}