Browse Source

解决电签重刷或者重签后状态错误的的bug

lvy 1 week ago
parent
commit
437bbfa4ce

+ 4 - 0
blade-service/blade-business/src/main/java/org/springblade/business/service/impl/TaskServiceImpl.java

@@ -2267,6 +2267,10 @@ public class TaskServiceImpl extends BaseServiceImpl<TaskMapper, Task> implement
         if(userIds!=null && userIds.length()>=1){
             taskBtech += " and b.task_user in("+userIds+")";
             sqlForTaskPall += " and a.task_user in("+userIds+")";
+            sqlqu = "update u_information_query a set status = if((select count(1) from u_task_parallel where process_instance_id = ( select process_instance_id  from u_task  where form_data_id = cast(a.id as char) and is_deleted = 0 and status in (1,2) order by id desc limit 1 ) " +
+                    "and `is_deleted` = 0 and task_user not in ( " + userIds + ") and status != 2 and e_visa_status != 1 ) > 0, 1, 2) ,e_visa_pdf_url='' where id in( "+ ids + ") and is_deleted=0 ";
+            sqlForTask = "update u_task a set status = if((select count(1) from u_task_parallel where process_instance_id = a.process_instance_id " +
+                    "and `is_deleted` = 0 and task_user not in ( " + userIds + ") and status != 2 and e_visa_status != 1 ) > 0, 1, 2) where form_data_id in( " + ids2 + ") and status in(1,2) and is_deleted=0 ";
         }
         jdbcTemplate.execute(sqlqu);
         jdbcTemplate.execute(sqlForTask);

+ 1 - 0
blade-service/blade-e-visa/src/main/java/org/springblade/evisa/service/impl/EVDataServiceImpl.java

@@ -356,6 +356,7 @@ public class EVDataServiceImpl implements EVDataService {
                 this.jdbcTemplate.execute("update u_task set status=1 ,update_time=SYSDATE() where id='" + taskApp.getTaskId() + "'");
                 if (totalCount >= 3) {
                     this.jdbcTemplate.execute("delete from u_task_batch where id in(" + taskApp.getId()+")");
+                    this.jdbcTemplate.execute("update u_information_query set status=1 where id=" + taskApp.getFormDataId());
                 }
             }
             RedisTemplate.delete("sign-" + taskApp.getFormDataId());