From f0103b69fefe0ff9fd9212d0ebf5a511a0098e23 Mon Sep 17 00:00:00 2001 From: hyy-alt <1041001226@qq.com> Date: Tue, 27 Apr 2021 15:49:19 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=99=E4=BB=BB=E5=8A=A1=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E8=BE=93=E5=85=A5=E6=96=87=E6=A1=A3=EF=BC=8C=E7=BB=99=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E6=B7=BB=E5=8A=A0=E4=BA=A4=E4=BB=98=E7=89=A9=EF=BC=8C?= =?UTF-8?q?=E5=88=A0=E9=99=A4=E4=BB=BB=E5=8A=A1=E4=B8=8B=E7=9A=84=E8=BE=93?= =?UTF-8?q?=E5=85=A5=E6=96=87=E6=A1=A3=EF=BC=8C=E5=88=A0=E9=99=A4=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E4=B8=8B=E7=9A=84=E4=BA=A4=E4=BB=98=E7=89=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ccsens/tall/bean/dto/InputDocDto.java | 18 ++++++++ .../ccsens/tall/service/IInputDocService.java | 34 ++++++++++++--- .../tall/service/ITaskDeliverService.java | 12 ++++++ .../ccsens/tall/service/InputDocService.java | 36 +++++++++++++--- .../tall/service/TaskDeliverService.java | 42 +++++++++++++++++++ .../ccsens/tall/web/InputDocController.java | 40 ++++++++++++++++++ .../main/java/com/ccsens/util/CodeEnum.java | 3 +- 7 files changed, 172 insertions(+), 13 deletions(-) diff --git a/tall/src/main/java/com/ccsens/tall/bean/dto/InputDocDto.java b/tall/src/main/java/com/ccsens/tall/bean/dto/InputDocDto.java index 779a7e9d..b609773b 100644 --- a/tall/src/main/java/com/ccsens/tall/bean/dto/InputDocDto.java +++ b/tall/src/main/java/com/ccsens/tall/bean/dto/InputDocDto.java @@ -136,4 +136,22 @@ public class InputDocDto { private Integer pageSize = 10; } + @Data + @ApiModel("添加交付物") + public static class addTaskDeliver { + @NotNull(message = "请选择要添加交付物的任务") + @ApiModelProperty("任务id") + private Long taskId; + @NotEmpty(message = "交付物名称不能为空") + @ApiModelProperty("交付物名称") + private String[] fileName; + } + + @Data + @ApiModel("删除交付物") + public static class deleteTaskDeliver { + @NotNull(message = "请选择要删除的交付物") + @ApiModelProperty("交付物id") + private Long deliverId; + } } diff --git a/tall/src/main/java/com/ccsens/tall/service/IInputDocService.java b/tall/src/main/java/com/ccsens/tall/service/IInputDocService.java index 497d1379..de91127d 100644 --- a/tall/src/main/java/com/ccsens/tall/service/IInputDocService.java +++ b/tall/src/main/java/com/ccsens/tall/service/IInputDocService.java @@ -27,13 +27,16 @@ public interface IInputDocService { /** * 查询二级任务下的所有的子任务 - * @param param 查询条件 + * + * @param param 查询条件 * @param userId userId * @return 返回任务列表 */ - List selByTwoTaskId(LwbsDto.SelByProjectIdToTaskDto param, Long userId,Long taskId); + List selByTwoTaskId(LwbsDto.SelByProjectIdToTaskDto param, Long userId, Long taskId); + /** * 根据任务id查询输入文档 + * * @param params 任务id * @return 返回输入文档 */ @@ -41,13 +44,15 @@ public interface IInputDocService { /** * 给输入文档上传文件 + * * @param param docId 文档id * fileId 文件id */ - void uploadForDoc(InputDocDto.UploadForDoc param,Long userId) throws Exception; + void uploadForDoc(InputDocDto.UploadForDoc param, Long userId) throws Exception; /** * 查看文档文件上传记录 + * * @param param * @return */ @@ -55,36 +60,42 @@ public interface IInputDocService { /** * 添加输入文档 + * * @param param */ void addDoc(InputDocDto.AddDoc param); /** * 修改输入文档 + * * @param param */ void updateDoc(InputDocDto.UpdateDoc param); /** * 删除输入文档 + * * @param param */ void delDoc(InputDocDto.DeleteDoc param); /** * 删除输入文档中的文件 + * * @param param */ - void delDocOfFile(InputDocDto.DeleteDocOfFile param,Long userId) throws Exception; + void delDocOfFile(InputDocDto.DeleteDocOfFile param, Long userId) throws Exception; /** * 修改上传文件的备注信息 + * * @param param */ - void updateDocOfRemark(InputDocDto.UpdateDocOfRemark param,Long userId) throws Exception; + void updateDocOfRemark(InputDocDto.UpdateDocOfRemark param, Long userId) throws Exception; /** * 查询历史记录(根据任务id) + * * @param param * @return */ @@ -92,14 +103,25 @@ public interface IInputDocService { /** * 删除输入文档下所有的文件 + * * @param param 输入文档id */ - void delAllRecordOfTask(InputDocDto.DelAllRecordOfTask param,Long userId) throws Exception; + void delAllRecordOfTask(InputDocDto.DelAllRecordOfTask param, Long userId) throws Exception; /** * 查看交付物的历史记录 + * * @param param * @return */ PageInfo viewDeliverHistory(InputDocDto.DeliverHistory param); + + + /** + * 删除输入文档 + * + * @param param + */ + void deleteDoc(InputDocDto.DeleteDoc param); } + diff --git a/tall/src/main/java/com/ccsens/tall/service/ITaskDeliverService.java b/tall/src/main/java/com/ccsens/tall/service/ITaskDeliverService.java index 53bd2b75..004689eb 100644 --- a/tall/src/main/java/com/ccsens/tall/service/ITaskDeliverService.java +++ b/tall/src/main/java/com/ccsens/tall/service/ITaskDeliverService.java @@ -1,6 +1,7 @@ package com.ccsens.tall.service; import com.ccsens.tall.bean.dto.DeliverDto; +import com.ccsens.tall.bean.dto.InputDocDto; import com.ccsens.tall.bean.po.ProTaskDeliver; import com.ccsens.tall.bean.vo.DeliverVo; import com.ccsens.tall.bean.vo.ProjectVo; @@ -53,4 +54,15 @@ public interface ITaskDeliverService { */ void updateRemarkOfDeliver(DeliverDto.UpdateRemarkOfDeliver param,Long userId); + /** + * 添加交付物 + * @param param + */ + void addTaskDeliver(InputDocDto.addTaskDeliver param); + + /** + * 删除交付物 + * @param param + */ + void deleteTaskDeliver(InputDocDto.deleteTaskDeliver param); } diff --git a/tall/src/main/java/com/ccsens/tall/service/InputDocService.java b/tall/src/main/java/com/ccsens/tall/service/InputDocService.java index 23b17604..49495e46 100644 --- a/tall/src/main/java/com/ccsens/tall/service/InputDocService.java +++ b/tall/src/main/java/com/ccsens/tall/service/InputDocService.java @@ -14,10 +14,7 @@ import com.ccsens.tall.bean.po.*; import com.ccsens.tall.bean.vo.*; import com.ccsens.tall.persist.dao.*; import com.ccsens.tall.persist.mapper.*; -import com.ccsens.util.CodeEnum; -import com.ccsens.util.JsonResponse; -import com.ccsens.util.PropUtil; -import com.ccsens.util.RestTemplateUtil; +import com.ccsens.util.*; import com.ccsens.util.exception.BaseException; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; @@ -405,7 +402,7 @@ public class InputDocService implements IInputDocService { @Override public void addDoc(InputDocDto.AddDoc param) { //判断是否有重复名称 - ProTaskInputDocExample proTaskInputDocExample = new ProTaskInputDocExample(); + /*ProTaskInputDocExample proTaskInputDocExample = new ProTaskInputDocExample(); proTaskInputDocExample.createCriteria().andTaskDetailIdEqualTo(param.getTaskId()).andRecStatusEqualTo((byte)0); List proTaskInputDocs = proTaskInputDocMapper.selectByExample(proTaskInputDocExample); if (null != proTaskInputDocs && 0 < proTaskInputDocs.size()){ @@ -416,8 +413,21 @@ public class InputDocService implements IInputDocService { } } } + }*/ + //判断是否有重复名称 + for(int i=0; i proTaskInputDocs = proTaskInputDocMapper.selectByExample(proTaskInputDocExample); + for (ProTaskInputDoc proTaskInputDoc : proTaskInputDocs){ + if(ObjectUtil.isNotNull(proTaskInputDoc)){ + throw new BaseException(CodeEnum.DOC_REPEAT); + } + } } + //添加输入文档 for (int i = 0; i < param.getFileName().length; i++) { ProTaskInputDoc proTaskInputDoc = new ProTaskInputDoc(); @@ -737,4 +747,20 @@ public class InputDocService implements IInputDocService { return null; } + /** + * 删除输入文档 + * + * @param param + */ + @Override + public void deleteDoc(InputDocDto.DeleteDoc param) { + ProTaskInputDoc proTaskInputDoc = proTaskInputDocMapper.selectByPrimaryKey(param.getDocId()); + if (ObjectUtil.isNotNull(proTaskInputDoc)){ + proTaskInputDoc.setRecStatus(WebConstant.REC_STATUS.Deleted.value); + proTaskInputDocMapper.updateByPrimaryKeySelective(proTaskInputDoc); + //proTaskInputDocMapper.updateByPrimaryKey(proTaskInputDoc); + } + } + + } diff --git a/tall/src/main/java/com/ccsens/tall/service/TaskDeliverService.java b/tall/src/main/java/com/ccsens/tall/service/TaskDeliverService.java index fd1b7ff2..9bde5c73 100644 --- a/tall/src/main/java/com/ccsens/tall/service/TaskDeliverService.java +++ b/tall/src/main/java/com/ccsens/tall/service/TaskDeliverService.java @@ -7,6 +7,7 @@ import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.ccsens.tall.bean.dto.DeliverDto; +import com.ccsens.tall.bean.dto.InputDocDto; import com.ccsens.tall.bean.dto.WpsDto; import com.ccsens.tall.bean.dto.message.BaseMessageDto; import com.ccsens.tall.bean.dto.message.DeliverMessageWithCheckerDto; @@ -1240,4 +1241,45 @@ public class TaskDeliverService implements ITaskDeliverService { } + /** + * 添加交付物 + * @param param + */ + @Override + public void addTaskDeliver(InputDocDto.addTaskDeliver param) { + //判断是否有重复名称 + for(int i=0; i proTaskDelivers = taskDeliverDao.selectByExample(proTaskDeliverExample); + for (ProTaskDeliver proTaskDeliver : proTaskDelivers){ + if(ObjectUtil.isNotNull(proTaskDeliver)){ + throw new BaseException(CodeEnum.Deliver_REPEAT); + } + } + } + //添加交付物 + for (int i = 0; i < param.getFileName().length; i++) { + ProTaskDeliver proTaskDeliver = new ProTaskDeliver(); + proTaskDeliver.setId(snowflake.nextId()); + proTaskDeliver.setTaskDetailId(param.getTaskId()); + proTaskDeliver.setName(param.getFileName()[i]); + proTaskDeliver.setIsUpload(0); + proTaskDeliver.setIsInput(0); + taskDeliverDao.insertSelective(proTaskDeliver); + } + } + + @Override + public void deleteTaskDeliver(InputDocDto.deleteTaskDeliver param) { + ProTaskDeliver proTaskDeliver = taskDeliverDao.selectByPrimaryKey(param.getDeliverId()); + if (ObjectUtil.isNotNull(proTaskDeliver)){ + proTaskDeliver.setRecStatus(WebConstant.REC_STATUS.Deleted.value); + taskDeliverDao.updateByPrimaryKeySelective(proTaskDeliver); + //proTaskInputDocMapper.updateByPrimaryKey(proTaskInputDoc); + } + } } + + diff --git a/tall/src/main/java/com/ccsens/tall/web/InputDocController.java b/tall/src/main/java/com/ccsens/tall/web/InputDocController.java index 0ceb6cbc..76eeeecf 100644 --- a/tall/src/main/java/com/ccsens/tall/web/InputDocController.java +++ b/tall/src/main/java/com/ccsens/tall/web/InputDocController.java @@ -7,6 +7,7 @@ import com.ccsens.tall.bean.dto.LabelDto; import com.ccsens.tall.bean.vo.InputDocVo; import com.ccsens.tall.bean.vo.LabelVo; import com.ccsens.tall.service.IInputDocService; +import com.ccsens.tall.service.TaskDeliverService; import com.ccsens.util.JsonResponse; import com.ccsens.util.WebConstant; import com.ccsens.util.annotation.OperateType; @@ -37,6 +38,9 @@ public class InputDocController { @Resource private IInputDocService iInputDocService; + @Resource + private TaskDeliverService taskDeliverService; + /*@MustLogin @ApiOperation(value = "添加输入文档", notes = "1007:添加输入文档") @RequestMapping(value = "/addInputDoc", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) @@ -88,6 +92,40 @@ public class InputDocController { return JsonResponse.newInstance().ok(); } + @MustLoginTall + @ApiOperation(value = "删除输入文档", notes = "1007:删除输入文档") + @RequestMapping(value = "/deleteDoc", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse deleteDoc(@ApiParam @Validated @RequestBody QueryDto params) { + log.info("删除输入文档:{}",params); + iInputDocService.deleteDoc(params.getParam()); + log.info("删除输入文档"); + return JsonResponse.newInstance().ok(); + } + + @MustLoginTall + @ApiOperation(value = "添加交付物", notes = "1007:添加交付物") + @RequestMapping(value = "/addTaskDeliver", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse addTaskDeliver(@ApiParam @Validated @RequestBody QueryDto params) { + log.info("添加交付物:{}",params); + taskDeliverService.addTaskDeliver(params.getParam()); + log.info("添加交付物"); + return JsonResponse.newInstance().ok(); + } + + @MustLoginTall + @ApiOperation(value = "删除交付物", notes = "1007:删除交付物") + @RequestMapping(value = "/deleteTaskDeliver", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse deleteTaskDeliver(@ApiParam @Validated @RequestBody QueryDto params) { + log.info("删除交付物:{}",params); + taskDeliverService.deleteTaskDeliver(params.getParam()); + log.info("删除交付物"); + return JsonResponse.newInstance().ok(); + } + + + + + @MustLogin @ApiOperation(value = "修改输入文档", notes = "1007:修改输入文档") @RequestMapping(value = "/updateDoc", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) @@ -108,6 +146,8 @@ public class InputDocController { return JsonResponse.newInstance().ok(); } + + @OperateType(value = 16) @MustLoginTall @ApiOperation(value = "删除输入文档中的文件", notes = "1007:删除输入文档中的文件") diff --git a/util/src/main/java/com/ccsens/util/CodeEnum.java b/util/src/main/java/com/ccsens/util/CodeEnum.java index 07007519..176ec4b6 100644 --- a/util/src/main/java/com/ccsens/util/CodeEnum.java +++ b/util/src/main/java/com/ccsens/util/CodeEnum.java @@ -209,9 +209,8 @@ public enum CodeEnum { WBS_TASK_END_TIME_ERROR(169,"任务结束时间格式错误,请检查后操作",true), CANNOT_DELETE_PM(170,"无法删除项目经理",true), LABEL_TOO_LONG(171,"标签长度过长,请不要超过六个字",true), - WBS_PROJECT_NAME_REPEAT(172,"项目名称不能重复",true), - + Deliver_REPEAT(173,"交付物已存在",true), ;