| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148 |
- package com.ydtech.modules.task.controller;
- import com.alibaba.fastjson.JSONObject;
- import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
- import com.ydtech.core.page.HttpResult;
- import com.ydtech.exception.SystemException;
- import com.ydtech.modules.admin.model.SysUser;
- import com.ydtech.modules.admin.model.po.SysDeptInternalAgent;
- import com.ydtech.modules.admin.model.po.SysUserLinkDeptInternalAgent;
- import com.ydtech.modules.admin.service.SysDeptInternalAgentService;
- import com.ydtech.modules.admin.service.SysUserLinkDeptInternalAgentService;
- import com.ydtech.modules.admin.service.SysUserService;
- import com.ydtech.modules.base.controller.BaseController;
- import com.ydtech.modules.task.entity.po.TaskPersonCharge;
- import com.ydtech.modules.task.entity.po.TaskProject;
- import com.ydtech.modules.task.entity.po.TaskTask;
- import com.ydtech.modules.task.entity.vo.*;
- import com.ydtech.modules.task.service.TaskPersonChargeService;
- import com.ydtech.modules.task.service.TaskProjectService;
- import com.ydtech.modules.task.service.TaskTaskService;
- import io.swagger.annotations.Api;
- import io.swagger.annotations.ApiOperation;
- import org.apache.poi.ss.formula.functions.T;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.web.bind.annotation.*;
- import java.util.ArrayList;
- import java.util.List;
- import java.util.Objects;
- @Api(tags = "任务controller")
- @RestController
- @RequestMapping("/task/task")
- public class TaskController extends BaseController {
- @Autowired
- TaskTaskService taskTaskService;
- @Autowired
- TaskPersonChargeService taskPersonChargeService;
- @Autowired
- TaskProjectService taskProjectService;
- @Autowired
- SysUserService sysUserService;
- @Autowired
- SysDeptInternalAgentService sysDeptInternalAgentService;
- @Autowired
- SysUserLinkDeptInternalAgentService sysUserLinkDeptInternalAgentService;
- @GetMapping("/getBackLineUser")
- @ApiOperation("获取后线用户")
- public HttpResult<Object> getBackLineUser(){
- //获取用户信息
- SysUserLinkDeptInternalAgent sysUserLinkDeptInternalAgent = sysUserLinkDeptInternalAgentService.getByUserId(getUserId());
- if(Objects.isNull(sysUserLinkDeptInternalAgent)){
- throw new SystemException("当前用户没有分配内部机构");
- }
- //获取部门
- SysDeptInternalAgent sysDeptInternalAgent = sysDeptInternalAgentService.getById(sysUserLinkDeptInternalAgent.getSysDeptInternalAgentId());
- List<BackLineUserVo> backLineUser = taskTaskService.getBackLineUser(sysDeptInternalAgent.getId());
- // List<SysDeptInternalAgent> tree = sysDeptInternalAgentService.findTree(null, null);
- return HttpResult.ok(backLineUser);
- }
- @GetMapping("/getTaskInfo")
- @ApiOperation("获取任务详情")
- public HttpResult<Object> getTaskInfo(){
- return null;
- }
- @GetMapping("/getTaskTree")
- @ApiOperation("获取任务树结构")
- public HttpResult<Object> getTaskTree(String projectId,String userId){
- List<TaskTask> taskTree = taskTaskService.getTaskTree(projectId,userId);
- return HttpResult.ok(taskTree);
- }
- @PostMapping("/getTaskPage")
- @ApiOperation("获取任务列表")
- public HttpResult<Object> getTaskList(@RequestBody TaskListQueryVo taskListQueryVo){
- Page<T> page = buildPageRequest(taskListQueryVo.getPageDto());
- Page<TaskTask> taskList = taskTaskService.getTaskPage(page, getUserId());
- return HttpResult.ok(taskList);
- }
- @PostMapping("/addTask")
- @ApiOperation("添加任务")
- public HttpResult<Object> addTask(@RequestBody AddTaskVo addTaskVo){
- if(taskProjectService.getById(addTaskVo.getProjectId()) == null){
- throw new SystemException("项目id填写错误");
- }
- TaskTask task = taskTaskService.getById(addTaskVo.getTaskId());
- if(!addTaskVo.getTaskId().equals("0") && task == null){
- throw new SystemException("任务id填写错误");
- }
- return taskTaskService.addTask(addTaskVo,getUserName()) ? HttpResult.ok("添加任务成功") : HttpResult.error("添加任务失败");
- }
- @PostMapping("/delTask")
- @ApiOperation("删除任务")
- public HttpResult<Object> delTask(String taskId){
- if(taskId == null){
- throw new SystemException("任务id错误");
- }
- TaskTask task = taskTaskService.getById(taskId);
- if(task == null){
- throw new SystemException("任务不存在");
- }
- return taskTaskService.removeById(taskId) ? HttpResult.ok("任务删除成功") : HttpResult.error("任务删除失败");
- }
- @PostMapping("/editTask")
- @ApiOperation("修改任务")
- public HttpResult<Object> editTask(@RequestBody TaskTask task){
- return taskTaskService.updateById(task) ? HttpResult.ok("任务修改成功") : HttpResult.error("任务修改失败");
- }
- @PostMapping("/assignTask")
- @ApiOperation("分配任务")
- public HttpResult<Object> assignTask(@RequestBody AssignTaskVo assignTaskVo){
- List<TaskPersonCharge> taskPersonChargeList = taskPersonChargeService.getTaskPersonChargeList(assignTaskVo.getTaskId());
- JSONObject diffTaskPersonCharge = taskPersonChargeService.getDiffTaskPersonCharge(assignTaskVo, taskPersonChargeList);
- List<String> addUserArr = (List<String>) diffTaskPersonCharge.get("userIdsToAdd");
- List<String> delUserArr = (List<String>) diffTaskPersonCharge.get("userIdsToDelete");
- List<SysUser> addUsers = new ArrayList<>();
- List<SysUser> delUsers = new ArrayList<>();
- if(!addUserArr.isEmpty()) {
- addUsers = sysUserService.getByIds(addUserArr);
- }
- if(!delUserArr.isEmpty()) {
- delUsers = sysUserService.getByIds(delUserArr);
- }
- return taskPersonChargeService.dealPersonCharge(assignTaskVo.getTaskId(), addUsers, delUsers) ?
- HttpResult.ok("分配任务成功") :
- HttpResult.error("分配任务失败");
- }
- @PostMapping("/changeTaskStatus")
- @ApiOperation("更改任务状态")
- public HttpResult<Object> changeTaskStatus(){
- return null;
- }
- }
|