Browse Source

档案文件废除

qianxb 11 months ago
parent
commit
41c89b4dc4

+ 19 - 14
blade-service/blade-business/src/main/java/org/springblade/business/controller/TaskController.java

@@ -564,21 +564,26 @@ public class TaskController extends BladeController {
                 //判断现在的数据是否是待审批数据,只有上报状态、未认证状态的数据才能撤销
                 ArchiveFile archiveFile = jdbcTemplate.queryForObject("select * from u_archive_file where id = " + archiveId, new BeanPropertyRowMapper<>(ArchiveFile.class));
                 if (archiveFile != null) {
-                    /*此处任务会查询出多条,因为存在多次废除任务,那么form_data_id指向同一个id,所以在新增的时候去重判断,status=1或2,有且只有一条*/
-                    Task task = jdbcTemplate.query("select id,status,process_instance_id from u_task where task_create_timestamp is not null and status in (1,2) and form_data_id = '" + archiveId + "'", new BeanPropertyRowMapper<>(Task.class)).stream().findAny().orElse(null);
-                    if (task != null) {
-                        //修改档案文件收集业务数据状态=已废除
+                    if (archiveFile.getIsApproval() != null && archiveFile.getIsApproval() == 0) {
+                        //此文件为不需要审批文件,所以没有任务信息,直接修改状态
                         jdbcTemplate.execute("update u_archive_file set status = 3,is_certification = 0,e_visa_file = null where id = " + archiveId);
-                        //待审批审批任务=已废除
-                        jdbcTemplate.execute("update u_task set status = 3 where id = " + task.getId());
-                        //审批任务详情=已废除
-                        jdbcTemplate.execute("update u_task_parallel set status = 3 where process_instance_id = '" + task.getProcessInstanceId() + "'");
-
-                        /*通知*/
-                        List<TaskParallel> taskParallelList = jdbcTemplate.query("SELECT task_user FROM u_task_parallel WHERE process_instance_id = '" + task.getProcessInstanceId() + "'", new BeanPropertyRowMapper<>(TaskParallel.class));
-                        for (TaskParallel taskParallel : taskParallelList) {
-                            String param = taskParallel.getTaskUser() + "," + repealDTO.getProjectId() + "," + repealDTO.getContractId();
-                            aopParamsSet.add(param);
+                    } else {
+                        /*此处任务会查询出多条,因为存在多次废除任务,那么form_data_id指向同一个id,所以在新增的时候去重判断,status=1或2,有且只有一条*/
+                        Task task = jdbcTemplate.query("select id,status,process_instance_id from u_task where task_create_timestamp is not null and status in (1,2) and form_data_id = '" + archiveId + "'", new BeanPropertyRowMapper<>(Task.class)).stream().findAny().orElse(null);
+                        if (task != null) {
+                            //修改档案文件收集业务数据状态=已废除
+                            jdbcTemplate.execute("update u_archive_file set status = 3,is_certification = 0,e_visa_file = null where id = " + archiveId);
+                            //待审批审批任务=已废除
+                            jdbcTemplate.execute("update u_task set status = 3 where id = " + task.getId());
+                            //审批任务详情=已废除
+                            jdbcTemplate.execute("update u_task_parallel set status = 3 where process_instance_id = '" + task.getProcessInstanceId() + "'");
+
+                            /*通知*/
+                            List<TaskParallel> taskParallelList = jdbcTemplate.query("SELECT task_user FROM u_task_parallel WHERE process_instance_id = '" + task.getProcessInstanceId() + "'", new BeanPropertyRowMapper<>(TaskParallel.class));
+                            for (TaskParallel taskParallel : taskParallelList) {
+                                String param = taskParallel.getTaskUser() + "," + repealDTO.getProjectId() + "," + repealDTO.getContractId();
+                                aopParamsSet.add(param);
+                            }
                         }
                     }
                 }