From 6560c1346f9eef672a159f3e264ebdb655e1cbb5 Mon Sep 17 00:00:00 2001 From: yinq Date: Fri, 26 Dec 2025 18:02:25 +0800 Subject: [PATCH] =?UTF-8?q?1.0.53=20=E5=90=88=E5=90=8C=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E5=AE=A1=E6=89=B9=E6=B5=81=E7=A8=8B=E4=BC=98=E5=8C=96=EF=BC=8C?= =?UTF-8?q?=E5=AD=98=E5=82=A8=E7=BB=88=E7=89=88=E5=90=88=E5=90=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/ErpContractOrderServiceImpl.java | 25 ++++++++++++++----- 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/service/impl/ErpContractOrderServiceImpl.java b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/service/impl/ErpContractOrderServiceImpl.java index 51a809ff..e22c0e44 100644 --- a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/service/impl/ErpContractOrderServiceImpl.java +++ b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/service/impl/ErpContractOrderServiceImpl.java @@ -11,12 +11,15 @@ import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.tenant.helper.TenantHelper; +import org.dromara.oa.erp.domain.ErpContractInfo; import org.dromara.oa.erp.domain.ErpProjectInfo; import org.dromara.oa.erp.domain.ErpProjectPlan; import org.dromara.oa.erp.domain.ErpProjectPlanStage; import org.dromara.oa.erp.domain.bo.ErpProjectInfoBo; import org.dromara.oa.erp.domain.bo.ErpProjectPlanStageBo; +import org.dromara.oa.erp.domain.vo.ErpContractInfoVo; import org.dromara.oa.erp.domain.vo.ErpProjectInfoVo; +import org.dromara.oa.erp.mapper.ErpContractInfoMapper; import org.dromara.oa.erp.mapper.ErpProjectInfoMapper; import org.dromara.oa.erp.mapper.ErpProjectPlanMapper; import org.dromara.oa.erp.mapper.ErpProjectPlanStageMapper; @@ -50,8 +53,10 @@ public class ErpContractOrderServiceImpl implements IErpContractOrderService { private final ErpProjectInfoMapper projectInfoMapper; private final ErpProjectPlanMapper projectPlanMapper; private final ErpProjectPlanStageMapper planStageMapper; + private final ErpContractInfoMapper contractInfoMapper; - @DubboReference(timeout = 30000) + + @DubboReference(timeout = 300000) private RemoteWorkflowService remoteWorkflowService; @DubboReference(timeout = 30000) @@ -84,9 +89,20 @@ public class ErpContractOrderServiceImpl implements IErpContractOrderService { // 保存项目信息 ErpProjectInfo projectInfo = MapstructUtils.convert(bo, ErpProjectInfo.class); validEntityBeforeSave(projectInfo); - + + if (StringUtils.isNotNull(bo.getOssId()) && StringUtils.isNotNull(bo.getContractId())) { + ErpContractInfoVo contractInfoVo = contractInfoMapper.selectVoById(bo.getContractId()); + ErpContractInfo contractInfo = new ErpContractInfo(); + contractInfo.setContractId(contractInfoVo.getContractId()); + contractInfo.setSignatureAppendix(Long.valueOf(bo.getOssId())); + contractInfoMapper.updateById(contractInfo); + } + if (StringUtils.isNull(bo.getProjectId())) { // 新增 + String code = remoteCodeRuleService.selectCodeRuleCode("1018"); + assert projectInfo != null; + projectInfo.setProjectCode(code); projectInfoMapper.insert(projectInfo); bo.setProjectId(projectInfo.getProjectId()); } else { @@ -124,10 +140,6 @@ public class ErpContractOrderServiceImpl implements IErpContractOrderService { // 先保存项目信息和项目阶段计划 ErpProjectInfoVo vo = saveContractOrder(bo); - if (1==1) { - return vo; - } - // 后端发起需要忽略权限 bo.getVariables().put("ignore", true); RemoteStartProcess startProcess = new RemoteStartProcess(); @@ -136,6 +148,7 @@ public class ErpContractOrderServiceImpl implements IErpContractOrderService { startProcess.setVariables(bo.getVariables()); startProcess.setBizExt(bo.getBizExt()); bo.getBizExt().setBusinessId(startProcess.getBusinessId()); + bo.getBizExt().setBusinessCode(bo.getProjectCode()); boolean flagOne = remoteWorkflowService.startCompleteTask(startProcess); if (!flagOne) { throw new ServiceException("流程发起异常");