diff --git a/com.awspaas.user.apps.yili.integration/src/com/awspaas/user/apps/integration/oa/TaskListener.java b/com.awspaas.user.apps.yili.integration/src/com/awspaas/user/apps/integration/oa/TaskListener.java index b36d032b..5664d81f 100644 --- a/com.awspaas.user.apps.yili.integration/src/com/awspaas/user/apps/integration/oa/TaskListener.java +++ b/com.awspaas.user.apps.yili.integration/src/com/awspaas/user/apps/integration/oa/TaskListener.java @@ -18,6 +18,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.awspaas.user.apps.integration.XmlDatasUtil; import com.awspaas.user.apps.integration.util.HttpClientUtils; +import jodd.util.StringUtil; import org.dom4j.Document; import org.dom4j.DocumentException; import org.dom4j.DocumentHelper; @@ -488,9 +489,26 @@ public class TaskListener extends ProcessPubicListener { sendOaDataPending(taskInstance1,processInst_1,"10036614"); sendOaDataPending(taskInstance2,processInst_2,"00116580"); - - //挂起流程 - SDK.getProcessAPI().suspend(pec.getProcessInstance()); + try{ + boolean hasProperty = SDK.getAppAPI().hasProperty("com.awspaas.user.apps.yili.integration", "CEO_approval_whitelist"); + String property = ""; + if (hasProperty) { + property = SDK.getAppAPI().getProperty("com.awspaas.user.apps.yili.integration", "CEO_approval_whitelist"); + } + if (StringUtil.isBlank(property) || !property.contains(pec.getProcessInstance().getId())) { + //挂起流程 + SDK.getProcessAPI().suspend(pec.getProcessInstance()); + } + }catch (Exception e){ + e.printStackTrace(); + logger.info("取消挂起总裁审批流程失败,失败原因:"+e.getMessage()); + try { + SDK.getProcessAPI().suspend(pec.getProcessInstance()); + }catch (Exception e1){ + e1.printStackTrace(); + logger.info("挂起总裁流程失败,失败原因:"+e1.getMessage()); + } + } } BO bo1=new BO(); bo1.set("PROCESSID",processId); @@ -542,9 +560,26 @@ public class TaskListener extends ProcessPubicListener { sendOaDataPending(taskInstance2,processInst_2,"00116580"); - - //挂起流程 - SDK.getProcessAPI().suspend(pec.getProcessInstance()); + try{ + boolean hasProperty = SDK.getAppAPI().hasProperty("com.awspaas.user.apps.yili.integration", "CEO_approval_whitelist"); + String property = ""; + if (hasProperty) { + property = SDK.getAppAPI().getProperty("com.awspaas.user.apps.yili.integration", "CEO_approval_whitelist"); + } + if (StringUtil.isBlank(property) || !property.contains(pec.getProcessInstance().getId())) { + //挂起流程 + SDK.getProcessAPI().suspend(pec.getProcessInstance()); + } + }catch (Exception e){ + e.printStackTrace(); + logger.info("取消挂起总裁审批流程失败,失败原因:"+e.getMessage()); + try { + SDK.getProcessAPI().suspend(pec.getProcessInstance()); + }catch (Exception e1){ + e1.printStackTrace(); + logger.info("挂起总裁流程失败,失败原因:"+e1.getMessage()); + } + } } bo.set("CEO_APPROVE",approve1); SDK.getBOAPI().update("BO_ACT_DATA_MONITORING",bo);