From 88a222ad1995f36be2a10d4da2d5b1799f197c99 Mon Sep 17 00:00:00 2001 From: fengyuan_yang <1976974459@qq.com> Date: Thu, 25 Dec 2025 10:51:20 +0800 Subject: [PATCH] =?UTF-8?q?2025-12-25=20=E8=8E=B7=E5=8F=96oa=E6=B5=81?= =?UTF-8?q?=E7=A8=8B=E6=B5=81=E8=BD=AC=E4=BF=A1=E6=81=AF=E6=97=B6=EF=BC=8C?= =?UTF-8?q?=E5=A6=82=E6=9E=9C=E8=8A=82=E7=82=B9isRemark=3D6=EF=BC=8C?= =?UTF-8?q?=E9=9C=80=E8=A6=81=E5=86=8D=E6=AC=A1=E8=B0=83=E7=94=A8=E6=B5=81?= =?UTF-8?q?=E7=A8=8B=E6=B5=81=E8=BD=AC=E4=BF=A1=E6=81=AF=EF=BC=8C=E6=80=BB?= =?UTF-8?q?=E6=97=B6=E9=97=B4=E6=8E=A7=E5=88=B6=E5=9C=A830=E7=A7=92?= =?UTF-8?q?=E5=86=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/ChangeManagementServiceImpl.java | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/spring/modules/change/service/impl/ChangeManagementServiceImpl.java b/src/main/java/com/spring/modules/change/service/impl/ChangeManagementServiceImpl.java index 6a8b723a..e1f48805 100644 --- a/src/main/java/com/spring/modules/change/service/impl/ChangeManagementServiceImpl.java +++ b/src/main/java/com/spring/modules/change/service/impl/ChangeManagementServiceImpl.java @@ -1473,21 +1473,29 @@ public class ChangeManagementServiceImpl extends ServiceImpl> res = JSON.parseObject(String.valueOf(getRequestOperatorInfoResponses.getObj()), new TypeReference>>(){}); - // 如果节点isRemark=6,需要再次调用流程流转信息 + // 如果节点isRemark=6,需要再次调用流程流转信息,总时间控制在30秒内 + long startTime = System.currentTimeMillis(); + long maxWaitTime = 30000; // 最大等待30秒 List> irs = res.stream().filter(a -> convertToInt(a.get("isremark")) == 6).collect(Collectors.toList()); - if (!irs.isEmpty()) { + while (!irs.isEmpty() && (System.currentTimeMillis() - startTime) < maxWaitTime) { try { - // 等待2秒 - Thread.sleep(2000); + // 等待3秒 + Thread.sleep(3000); } catch (InterruptedException e) { e.printStackTrace(); } + // 检查是否超时 + if ((System.currentTimeMillis() - startTime) >= maxWaitTime) { + break; + } getRequestOperatorInfoResponses = HttpClientUtil.doPostByRawWithOA(getRequestOperatorInfoURL, requestOperatorInfoParam); if (!"0".equals(getRequestOperatorInfoResponses.getCode())) { throw new RuntimeException("OA获取流程流转信息异常信息:" + getRequestOperatorInfoResponses.getMsg()); } // 得到全部流转信息 res = JSON.parseObject(String.valueOf(getRequestOperatorInfoResponses.getObj()), new TypeReference>>(){}); + // 重新检查是否还有isRemark=6的记录 + irs = res.stream().filter(a -> convertToInt(a.get("isremark")) == 6).collect(Collectors.toList()); } // isRemark 为0的流转信息 List> isRemarks = res.stream().filter(a -> convertToInt(a.get("isremark")) == 0).collect(Collectors.toList());