package com.rzyc.controller; import com.common.utils.RandomNumber; import com.common.utils.StringUtils; import com.common.utils.model.MultiResult; import com.common.utils.model.SingleResult; import com.rzyc.bean.task.dto.AddTaskDto; import com.rzyc.bean.task.dto.IdDto; import com.rzyc.bean.task.vo.TaskDetailVo; import com.rzyc.bean.task.vo.TaskNameVo; import com.rzyc.bean.task.vo.TaskVo; import com.rzyc.bean.task.vo.ThingVo; import com.rzyc.model.OADistribution; import com.rzyc.model.OATask; import com.rzyc.model.OaTaskType; import com.rzyc.model.task.dto.TaskAddOrUpdateDto; import com.rzyc.model.user.SysUser; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.apache.commons.beanutils.BeanUtils; import org.apache.commons.beanutils.ConvertUtils; import org.apache.commons.beanutils.converters.DateConverter; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.util.Date; import java.util.List; /** * @ClassName: TaskController * @description: * @author: ZQW * * @create: 2022-09-20 15:21 **/ @Api(tags = "工作任务") @CrossOrigin("*") @RequestMapping("task") @RestController @Validated public class TaskController extends BaseController{ /** * @Description: 新增任务 * @Author ZQW * @CreateTime 2022/9/23 14:38 */ @ApiOperation(value = "新增任务",position = 1) @PostMapping("addTask") public SingleResult addTask(@Valid AddTaskDto addTaskDto) throws Exception{ SingleResult result = new SingleResult<>(); OATask oaTask = new OATask(); BeanUtils.copyProperties(oaTask,addTaskDto); //日期格式转换 ConvertUtils.register(new DateConverter(null), Date.class); //发布人 SysUser sysUser = sysUserMapper.selectByPrimaryKey(addTaskDto.getSendId()); //接收人 //SysUser receiveUser = sysUserMapper.selectByPrimaryKey(addTaskDto.getUserId()); if(null == sysUser){ result.setCode(0); result.setMessage("未知错误"); return result; } if(StringUtils.isBlank(addTaskDto.getOataskid())){ oaTask.setOataskid(RandomNumber.getUUid()); oaTask.setCreatedby(getUserId()); oaTask.setCreatedon(new Date()); oaTaskMapper.insertTask(oaTask); System.out.println("用户id======" + oaTask.getUserId()); }else { oaTask.setModifiedby(getUserId()); oaTask.setModifiedon(new Date()); oaTaskMapper.updateById(oaTask); } /* //增加默认任务执行情况 OADistribution oaDistribution = new OADistribution(); oaDistribution.setOadistributionid(RandomNumber.getUUid()); oaDistribution.setSnedId(addTaskDto.getSendId()); oaDistribution.setSyschinaname(receiveUser.getChinaname()); oaDistribution.setCreatedby(getUserId()); oaDistribution.setCreatedon(new Date());*/ return result; } /** * @Description: 待办事项列表 * @Author ZQW * @CreateTime 2022/9/23 10:20 */ @ApiOperation(value = "待办事项列表",position = 2) @GetMapping("thingsList") @ApiImplicitParams(value = { @ApiImplicitParam(name = "id",value = "任务类型id") }) public MultiResult thingsList(@Valid IdDto idDto){ MultiResult result = new MultiResult<>(); List thingVos = oaTaskMapper.thingsList(idDto); System.out.println("查询的数据=====" + thingVos); result.setData(thingVos); return result; } /** * @return: 查询我发布的任务 * @Author: ZQW * @Date: 2022/9/20 */ @ApiOperation(value = "查询我发布的任务",position = 3) @ApiImplicitParams(value = { @ApiImplicitParam(name = "id",value = "发布人id") }) @GetMapping("deliverTaskList") public MultiResult deliverTaskList(@Valid IdDto idDto) throws Exception{ MultiResult result = new MultiResult<>(); SysUser user = sysUserMapper.selectByPrimaryKey(idDto.getId()); System.out.println("user=========" + user); List oaTasks = oaTaskMapper.deliverTaskList("%%",idDto.getId()); if(null == user){ result.setCode(0); result.setMessage("未知错误"); return result; } if(oaTasks != null){ result.setData(oaTasks); } return result; } /** * @Description: 查询我收到的任务 * @Author ZQW * @CreateTime 2022/9/26 9:34 */ @ApiOperation(value = "查询我收到的任务",position = 4) @ApiImplicitParams(value = { @ApiImplicitParam(name = "id",value = "接收用户id") }) @GetMapping("getTaskList") public MultiResult getTaskList(@Valid IdDto idDto){ MultiResult result = new MultiResult<>(); SysUser user = sysUserMapper.selectByPrimaryKey(idDto.getId()); List oaTasks = oaTaskMapper.getTaskList("%%",idDto.getId()); if(null == user){ result.setCode(0); result.setMessage("未知错误"); return result; } if(oaTasks != null){ result.setData(oaTasks); } return result; } /** * @Description:查询任务名称 * @Author ZQW * @CreateTime 2022/9/29 9:44 */ /*@ApiOperation(value = "查询任务名称",position = 5) @ApiImplicitParams(value = { @ApiImplicitParam(name = "id",value = "任务类型1id") }) @GetMapping("getTaskName") public SingleResult getTaskName(@Valid IdDto idDto){ SingleResult result = new SingleResult<>(); TaskNameVo taskNameVo = new TaskNameVo(); OaTaskType oaTaskType = oaTaskTypeMapper.selectById(idDto.getId()); taskNameVo.setName(oaTaskType.getName()); result.setData(taskNameVo); return result; }*/ /** * @return: 新增任务执行情况 * @Author: ZQW * @Date: 2022/9/20 */ @ApiOperation(value = "新增或修改任务执行情况",position = 10) @PostMapping("addExecute") public SingleResult addExecute(@Valid TaskAddOrUpdateDto addTaskDto) throws Exception{ SingleResult result = new SingleResult<>(); OADistribution oaDistribution = new OADistribution(); BeanUtils.copyProperties(oaDistribution,addTaskDto); //日期格式转换 ConvertUtils.register(new DateConverter(null), Date.class); SysUser sysUser = sysUserMapper.selectByPrimaryKey(addTaskDto.getSysuserid()); OATask oaTask = oaTaskMapper.findById(addTaskDto.getOataskid()); System.out.println("任务 ========" + oaTask); if(null == sysUser){ result.setCode(0); result.setMessage("用户不存在"); return result; } if(null == oaTask){ result.setCode(0); result.setMessage("未知任务"); return result; } if(StringUtils.isBlank(addTaskDto.getOadistributionid())){ oaDistribution.setOadistributionid(RandomNumber.getUUid()); oaDistribution.setSyschinaname(sysUser.getChinaname()); oaDistribution.setSystelephone(sysUser.getMobiletel()); oaDistribution.setCreatedby(getUserId()); oaDistribution.setCreatedon(new Date()); oaDistributionMapper.insert(oaDistribution); }else { oaDistribution.setModifiedby(getUserId()); oaDistribution.setModifiedon(new Date()); oaDistributionMapper.updateById(oaDistribution); } return result; } /** * @Description: 发布任务详情 * @Author ZQW * @CreateTime 2022/9/29 13:56 */ @ApiOperation(value = "发布(收到)任务详情",position = 11) @ApiImplicitParams(value = { @ApiImplicitParam(name = "id",value = "任务1id") }) @GetMapping("deliverTaskDetail") public SingleResult deliverTaskDetail(@Valid IdDto idDto){ SingleResult result = new SingleResult<>(); TaskDetailVo detailVo = oaTaskMapper.selectDetail(idDto.getId()); result.setData(detailVo); return result; } }