From 61165f5583bed68efdbf046083c8118e29f5745c Mon Sep 17 00:00:00 2001 From: bupengxiang Date: Tue, 9 May 2023 15:40:58 +0800 Subject: [PATCH] =?UTF-8?q?[=E6=96=B0=E5=A2=9E]=20=E6=89=B9=E9=87=8F?= =?UTF-8?q?=E5=8F=91=E8=B5=B7=E5=AE=8C=E6=88=90=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../adc/da/report/eo/TtReportManageAct.java | 3 ++ .../mybatis/mapper/mysql/TreeLabelDao.xml | 4 +- .../mapper/mysql/TtReportManageActMapper.xml | 11 +++++- .../adc/da/report/eo/TtReportManageAct.class | Bin 11428 -> 12024 bytes .../mybatis/mapper/mysql/TreeLabelDao.xml | 4 +- .../mapper/mysql/TtReportManageActMapper.xml | 11 +++++- .../task/TodoTaskController.java | 36 ++++++++++++++++++ .../task/TodoTaskController$1.class | Bin 1573 -> 1573 bytes .../task/TodoTaskController.class | Bin 47968 -> 49051 bytes 9 files changed, 61 insertions(+), 8 deletions(-) diff --git a/adc-da-report/src/main/java/com/adc/da/report/eo/TtReportManageAct.java b/adc-da-report/src/main/java/com/adc/da/report/eo/TtReportManageAct.java index 2d3cb27..cf7a689 100644 --- a/adc-da-report/src/main/java/com/adc/da/report/eo/TtReportManageAct.java +++ b/adc-da-report/src/main/java/com/adc/da/report/eo/TtReportManageAct.java @@ -64,6 +64,9 @@ public class TtReportManageAct { @TableField("department") private String department; + @TableField(exist = false) + private String departmentName; + /** * 年 */ diff --git a/adc-da-report/src/main/resources/mybatis/mapper/mysql/TreeLabelDao.xml b/adc-da-report/src/main/resources/mybatis/mapper/mysql/TreeLabelDao.xml index f4b72d6..f261e1d 100644 --- a/adc-da-report/src/main/resources/mybatis/mapper/mysql/TreeLabelDao.xml +++ b/adc-da-report/src/main/resources/mybatis/mapper/mysql/TreeLabelDao.xml @@ -19,8 +19,8 @@ where t.parent_id = #{parentId} diff --git a/adc-da-report/src/main/resources/mybatis/mapper/mysql/TtReportManageActMapper.xml b/adc-da-report/src/main/resources/mybatis/mapper/mysql/TtReportManageActMapper.xml index cebdeba..00a1a60 100644 --- a/adc-da-report/src/main/resources/mybatis/mapper/mysql/TtReportManageActMapper.xml +++ b/adc-da-report/src/main/resources/mybatis/mapper/mysql/TtReportManageActMapper.xml @@ -12,6 +12,7 @@ + @@ -123,9 +124,12 @@ SELECT a.id, - task_id, prc_id, data_id, name, keycontent, maincontent, department, year, fileId, confidentialLevel, privacyLevel, createUserId, createDate, updateDate, del_flag + task_id, prc_id, data_id, name, keycontent, maincontent, department, + org.org_name as departmentName, + year, fileId, confidentialLevel, privacyLevel, createUserId, createDate, updateDate, del_flag ,secrecy_last,file_name FROM a + LEFT JOIN ts_org org on a.department = org.id prc_id = #{prcId} diff --git a/adc-da-report/target/classes/com/adc/da/report/eo/TtReportManageAct.class b/adc-da-report/target/classes/com/adc/da/report/eo/TtReportManageAct.class index 27e69c52815371fb9d242dc22ab727490bcf733e..caf65018b65fd0598b9ed80769d40d7fc463ed0c 100644 GIT binary patch literal 12024 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 literal 11428 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 Rvz5Q<{TJ>R{tWxy{|7SGQM~{F diff --git a/adc-da-report/target/classes/mybatis/mapper/mysql/TreeLabelDao.xml b/adc-da-report/target/classes/mybatis/mapper/mysql/TreeLabelDao.xml index f4b72d6..f261e1d 100644 --- a/adc-da-report/target/classes/mybatis/mapper/mysql/TreeLabelDao.xml +++ b/adc-da-report/target/classes/mybatis/mapper/mysql/TreeLabelDao.xml @@ -19,8 +19,8 @@ where t.parent_id = #{parentId} diff --git a/adc-da-report/target/classes/mybatis/mapper/mysql/TtReportManageActMapper.xml b/adc-da-report/target/classes/mybatis/mapper/mysql/TtReportManageActMapper.xml index cebdeba..00a1a60 100644 --- a/adc-da-report/target/classes/mybatis/mapper/mysql/TtReportManageActMapper.xml +++ b/adc-da-report/target/classes/mybatis/mapper/mysql/TtReportManageActMapper.xml @@ -12,6 +12,7 @@ + @@ -123,9 +124,12 @@ SELECT a.id, - task_id, prc_id, data_id, name, keycontent, maincontent, department, year, fileId, confidentialLevel, privacyLevel, createUserId, createDate, updateDate, del_flag + task_id, prc_id, data_id, name, keycontent, maincontent, department, + org.org_name as departmentName, + year, fileId, confidentialLevel, privacyLevel, createUserId, createDate, updateDate, del_flag ,secrecy_last,file_name FROM a + LEFT JOIN ts_org org on a.department = org.id prc_id = #{prcId} diff --git a/report-activity/src/main/java/com/adc/da/wkflow/business_activiti/task/TodoTaskController.java b/report-activity/src/main/java/com/adc/da/wkflow/business_activiti/task/TodoTaskController.java index c5da48a..15f0d86 100644 --- a/report-activity/src/main/java/com/adc/da/wkflow/business_activiti/task/TodoTaskController.java +++ b/report-activity/src/main/java/com/adc/da/wkflow/business_activiti/task/TodoTaskController.java @@ -313,6 +313,42 @@ public class TodoTaskController { } } + @ApiOperation(value = "批量完成任务", notes = "流程单个节点任务,直接完成任务") + @ApiImplicitParams({@ApiImplicitParam(name = "taskId", value = "任务id"), + @ApiImplicitParam(name = "userId", value = "完成任务用户Id")}) + @PostMapping("/batchCompleteTask") + public Wrapper batchCompleteTask(@RequestBody List busMesList) { + for (ApproveDataVO busMes : busMesList) { + log.info("!!!!!!!!!!!!!TaskId!!!!!!!!!!!!!!!"+busMes.getTaskId()); + String dataJson = busMes.getDataJson(); + String reportId = busMes.getReportId(); + if (busMes.getTaskId() != null && !busMes.getTaskId().equals("")) { + Task task = taskService.createTaskQuery().taskId(busMes.getTaskId()).singleResult(); + if(task!=null){ + if (StrUtil.isEmpty(task.getAssignee())) { + taskService.claim(busMes.getTaskId(), busMes.getUserId()); + } + BusProcessApprove busProcessApprove = new BusProcessApprove(); + busProcessApprove.setTaskId(busMes.getTaskId()); + busProcessApprove.setCreateUserId(UserUtils.getUserId()); + busProcessApprove.setPrcId(task.getProcessInstanceId()); + busProcessApprove.setCreateDate(new Date()); + busProcessApprove.setFromValsJson(busMes.getSubmitJson()); + ibusProcessApproveService.save(busProcessApprove); + if (StringUtils.isNotEmpty(dataJson)){ + //根据业务情况 对业务数据进行saveOrupdate + activitDefineService.saveOrUpdateDate(busMes.getPrcType(),dataJson, task.getId(), + task.getProcessInstanceId(),reportId); + } + taskService.complete(busMes.getTaskId()); + } + } else { + throw new AdcDaBaseException("缺少任务id,无法完成任务"); + } + } + return WrapMapper.ok(); + } + @ApiOperation(value = "查询流程编号", notes = "根据流程实例ID查询流程编号") @ApiImplicitParams({@ApiImplicitParam(name = "pId", value = "流程id")}) @GetMapping("/findPrcNumByPid") diff --git a/report-activity/target/classes/com/adc/da/wkflow/business_activiti/task/TodoTaskController$1.class b/report-activity/target/classes/com/adc/da/wkflow/business_activiti/task/TodoTaskController$1.class index 4c706e04ff39dfa2b5c0b67c4ab70ba06f354821..0a8aa690a6171fe036b9cce77fde5057b198343a 100644 GIT binary patch delta 25 fcmZ3=vy^9p5G&({$-=BLjGreLu%-jqH&}fEajpq7 delta 25 fcmZ3=vy^9p5G&)E$-=BLjOQm8u%-jqH&}fEZ3+m- diff --git a/report-activity/target/classes/com/adc/da/wkflow/business_activiti/task/TodoTaskController.class b/report-activity/target/classes/com/adc/da/wkflow/business_activiti/task/TodoTaskController.class index 953a8f4eeea2f8a0eb50b1c0b4b68e188b5b0767..41d93aede37f4237cf11a9188a0cb8d523253026 100644 GIT binary patch literal 49051 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