From 76dc8b1182181294a5e1fff30ce3f337ad278a68 Mon Sep 17 00:00:00 2001 From: Ray Date: Fri, 25 Mar 2022 19:04:44 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E5=9B=9E=E6=BB=9A=E6=B2=A1?= =?UTF-8?q?=E6=9C=89=E6=AD=A3=E7=A1=AE=E8=AE=A1=E7=AE=97=E8=A1=A8=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../processing/jaxrs/work/V2Reroute.java | 22 ++++++--------- .../processing/jaxrs/work/V2Rollback.java | 28 ++++++++++++++----- 2 files changed, 29 insertions(+), 21 deletions(-) diff --git a/o2server/x_processplatform_service_processing/src/main/java/com/x/processplatform/service/processing/jaxrs/work/V2Reroute.java b/o2server/x_processplatform_service_processing/src/main/java/com/x/processplatform/service/processing/jaxrs/work/V2Reroute.java index 088679d10e..41c7717faf 100644 --- a/o2server/x_processplatform_service_processing/src/main/java/com/x/processplatform/service/processing/jaxrs/work/V2Reroute.java +++ b/o2server/x_processplatform_service_processing/src/main/java/com/x/processplatform/service/processing/jaxrs/work/V2Reroute.java @@ -69,19 +69,19 @@ class V2Reroute extends BaseAction { emc.beginTransaction(Read.class); emc.beginTransaction(WorkLog.class); // 重新设置表单 - setForm(business, work, activity); + work.setForm(business.element().lookupSuitableForm(work.getProcess(), activity.getId())); // 调度强制把这个标志设置为true,这样可以避免在拟稿状态就调度,系统认为是拟稿状态,默认不创建待办. work.setWorkThroughManual(true); work.setDestinationActivity(activity.getId()); work.setDestinationActivityType(activity.getActivityType()); work.setDestinationRoute(""); work.setDestinationRouteName(""); - work.getProperties().setManualForceTaskIdentityList(new ArrayList()); + work.getProperties().setManualForceTaskIdentityList(new ArrayList<>()); if (ListTools.isNotEmpty(wi.getManualForceTaskIdentityList())) { work.getProperties().setManualForceTaskIdentityList(wi.getManualForceTaskIdentityList()); } if (BooleanUtils.isTrue(wi.getMergeWork())) { - /* 合并工作 */ + // 合并工作 work.setSplitting(false); work.setSplitToken(""); work.getSplitTokenList().clear(); @@ -105,25 +105,19 @@ class V2Reroute extends BaseAction { } - private void setForm(Business business, Work work, Activity activity) throws Exception { - if (StringUtils.isNotEmpty(activity.getForm())) { - // 表单需要重新判断,如果是从模板或者复制过来的流程可能发生表单不存在的情况. - Form form = business.entityManagerContainer().find(activity.getForm(), Form.class); - if (null != form) { - work.setForm(form.getId()); - } - } - } - public static class Wi extends V2RerouteWi { + private static final long serialVersionUID = 4131889338839380226L; + } public static class Wo extends WrapBoolean { + + private static final long serialVersionUID = 6797942626499506636L; } private void removeTask(Business business, Work work) throws Exception { - /* 删除可能的待办 */ + // 删除可能的待办 List os = business.entityManagerContainer().listEqual(Task.class, Task.work_FIELDNAME, work.getId()); os.stream().forEach(o -> { try { diff --git a/o2server/x_processplatform_service_processing/src/main/java/com/x/processplatform/service/processing/jaxrs/work/V2Rollback.java b/o2server/x_processplatform_service_processing/src/main/java/com/x/processplatform/service/processing/jaxrs/work/V2Rollback.java index 7d09b1cac3..eeae5b6af0 100644 --- a/o2server/x_processplatform_service_processing/src/main/java/com/x/processplatform/service/processing/jaxrs/work/V2Rollback.java +++ b/o2server/x_processplatform_service_processing/src/main/java/com/x/processplatform/service/processing/jaxrs/work/V2Rollback.java @@ -12,6 +12,7 @@ import org.apache.commons.lang3.StringUtils; import com.google.gson.JsonElement; import com.x.base.core.container.EntityManagerContainer; import com.x.base.core.container.factory.EntityManagerContainerFactory; +import com.x.base.core.entity.JpaObject; import com.x.base.core.entity.annotation.CheckRemoveType; import com.x.base.core.project.exception.ExceptionEntityNotExist; import com.x.base.core.project.executor.ProcessPlatformExecutorFactory; @@ -113,7 +114,8 @@ class V2Rollback extends BaseAction { for (TaskCompleted o : taskCompleteds) { if (BooleanUtils.isTrue(o.getJoinInquire())) { - o.setProcessingType(TaskCompleted.PROCESSINGTYPE_ROLLBACK); + // o.setProcessingType(TaskCompleted.PROCESSINGTYPE_ROLLBACK); + emc.remove(o, CheckRemoveType.all); } manualTaskIdentityList.add(o.getIdentity()); } @@ -161,6 +163,14 @@ class V2Rollback extends BaseAction { work.setSplitValue(workLog.getSplitValue()); work.setForm(business.element().lookupSuitableForm(work.getProcess(), work.getActivity())); workLog.setConnected(false); + workLog.setArrivedActivity(""); + workLog.setArrivedActivityAlias(""); + workLog.setArrivedActivityName(""); + workLog.setArrivedActivityToken(""); + workLog.setArrivedActivityType(null); + workLog.setArrivedGroup(null); + workLog.setArrivedOpinionGroup(null); + workLog.setArrivedTime(null); } private WorkLog getTargetWorkLog(List list, String id) throws ExceptionEntityNotExist { @@ -171,7 +181,7 @@ class V2Rollback extends BaseAction { return workLog; } - private List activityTokenOfNodes(Nodes nodes) throws Exception { + private List activityTokenOfNodes(Nodes nodes) { List list = new ArrayList<>(); for (Node o : nodes) { list.add(o.getWorkLog().getFromActivityToken()); @@ -179,12 +189,12 @@ class V2Rollback extends BaseAction { return ListTools.trim(list, true, true); } - private List workOfNodes(Nodes nodes) throws Exception { - List list = new ArrayList<>(); + private List workOfNodes(Nodes nodes) { + List os = new ArrayList<>(); for (Node o : nodes) { - list.add(o.getWorkLog().getWork()); + os.add(o.getWorkLog().getWork()); } - return ListTools.trim(list, true, true); + return ListTools.trim(os, true, true); } private void deleteTasks(Business business, String job, List activityTokens) throws Exception { @@ -237,7 +247,7 @@ class V2Rollback extends BaseAction { private void deleteWorks(Business business, String job, List workIds) throws Exception { List os = business.entityManagerContainer().listEqualAndIn(Work.class, Work.job_FIELDNAME, job, - Work.id_FIELDNAME, workIds); + JpaObject.id_FIELDNAME, workIds); for (Work o : os) { business.entityManagerContainer().remove(o, CheckRemoveType.all); } @@ -245,8 +255,12 @@ class V2Rollback extends BaseAction { public static class Wi extends V2RollbackWi { + private static final long serialVersionUID = 1549664177644024435L; + } public static class Wo extends WrapBoolean { + + private static final long serialVersionUID = 7732547960719161607L; } } \ No newline at end of file -- GitLab