From 09bafc78dc4a26eab554c0c14e910657a51c0477 Mon Sep 17 00:00:00 2001 From: bupengxiang Date: Thu, 18 May 2023 17:59:21 +0800 Subject: [PATCH] =?UTF-8?q?[=E4=BF=AE=E6=94=B9]=20=E5=B9=B6=E5=8F=91=20?= =?UTF-8?q?=E6=B5=81=E7=A8=8B=E7=BC=96=E5=8F=B7=E9=87=8D=E5=A4=8D=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../define/ActivitDefineController.java | 9 +++++++-- .../business_activiti/task/TodoTaskController.java | 2 ++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/report-activity/src/main/java/com/adc/da/wkflow/business_activiti/define/ActivitDefineController.java b/report-activity/src/main/java/com/adc/da/wkflow/business_activiti/define/ActivitDefineController.java index 894d313..e7e670e 100644 --- a/report-activity/src/main/java/com/adc/da/wkflow/business_activiti/define/ActivitDefineController.java +++ b/report-activity/src/main/java/com/adc/da/wkflow/business_activiti/define/ActivitDefineController.java @@ -233,6 +233,7 @@ public class ActivitDefineController { List busProcessNames = new ArrayList<>(); StringBuilder taskIds = new StringBuilder(); + int i = 0; for (StartProcessEO startProcessEO : startProcessEOList) { startProcessEO.setLoginUserId(UserUtils.getUserId()); if(com.adc.da.util.utils.StringUtils.isNotEmpty(startProcessEO.getId())){ @@ -240,6 +241,10 @@ public class ActivitDefineController { } String prcType = startProcessEO.getPrcType(); Map prcNameAndPrcNum = createPrcNameAndPrcNum(prcType); + //并发 防止prcNum重复 + String prcNumStr = (String) prcNameAndPrcNum.get("prcNum"); + int num = Integer.parseInt(prcNumStr.substring(8)) + i++; + String prcNum = prcNumStr.substring(0, 8) + String.format("%08d", num); startProcessEO.setId((String) prcNameAndPrcNum.get("id")); @@ -276,7 +281,7 @@ public class ActivitDefineController { busProcessName.setCreatUser(userId); UserEO byId = userEoService.getUserById(userId); busProcessName.setCreatUserName(byId.getUsname()); - busProcessName.setPrcNum((String) prcNameAndPrcNum.get("prcNum")); + busProcessName.setPrcNum(prcNum); busProcessName.setPrcType(prcType); // String data = JSON.toJSONString(dataMsg, SerializerFeature.DisableCircularReferenceDetect); // String dateId = activitDefineService.saveOrUpdateDate(prcType,data,task.getId(),pi.getId(),reportId); @@ -295,7 +300,7 @@ public class ActivitDefineController { String newId = UUID.randomUUID().toString().replace("-", ""); one.setId(newId); - one.setPrcNum((String) prcNameAndPrcNum.get("prcNum")); + one.setPrcNum(prcNum); // one.setPrcName((String) prcNameAndPrcNum.get("prcName")); one.setPrcName(startProcessEO.getPrcName()); one.setPrcId(pi.getId()); 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 077c6cc..773e41c 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 @@ -376,6 +376,7 @@ public class TodoTaskController { wrapper.eq(BusProcessName::getPrcId,task.getProcessInstanceId()); BusProcessName one = iBusProcessNameService.getOne(wrapper); one.setDataId(reportId); + one.setPrcName((String) JSONObject.parseObject(dataJson).get("prcName")); iBusProcessNameService.updateById(one); } return WrapMapper.ok(task.getProcessInstanceId()); @@ -417,6 +418,7 @@ public class TodoTaskController { wrapper.eq(BusProcessName::getPrcId,task.getProcessInstanceId()); BusProcessName one = iBusProcessNameService.getOne(wrapper); one.setDataId(reportId); + one.setPrcName((String) JSONObject.parseObject(dataJson).get("prcName")); iBusProcessNameService.updateById(one); } } else {