From 8b27a9d8518155586930b2f0c45b2ce4c7d2fb89 Mon Sep 17 00:00:00 2001 From: yanglin Date: Wed, 26 Feb 2025 16:16:37 +0800 Subject: [PATCH] =?UTF-8?q?REQ-3581:=20=E5=90=88=E5=90=8C=E4=B8=8D?= =?UTF-8?q?=E8=83=BD=E6=8B=92=E7=AD=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ess/api/domain/contract/Approver.java | 7 ++++-- .../ess/api/domain/contract/SignOption.java | 22 +++++++++++++++++++ .../nanopart/ess/server/ess/EssClient.java | 8 +++++-- 3 files changed, 33 insertions(+), 4 deletions(-) create mode 100644 ess/ess-api/src/main/java/cn/axzo/nanopart/ess/api/domain/contract/SignOption.java diff --git a/ess/ess-api/src/main/java/cn/axzo/nanopart/ess/api/domain/contract/Approver.java b/ess/ess-api/src/main/java/cn/axzo/nanopart/ess/api/domain/contract/Approver.java index ae69205a..7a09bad9 100644 --- a/ess/ess-api/src/main/java/cn/axzo/nanopart/ess/api/domain/contract/Approver.java +++ b/ess/ess-api/src/main/java/cn/axzo/nanopart/ess/api/domain/contract/Approver.java @@ -11,8 +11,6 @@ import lombok.Setter; import org.hibernate.validator.constraints.Range; import javax.validation.Valid; -import javax.validation.constraints.Max; -import javax.validation.constraints.Min; import javax.validation.constraints.NotNull; import java.util.List; @@ -29,6 +27,11 @@ public class Approver implements OrgPerson { @Valid private OrgPersonInfo signPerson; + /** + * 签署选项 + */ + private SignOption signOption = new SignOption(); + /** * 在指定签署方时,可选择企业B端或个人C端等不同的参与者类型 */ diff --git a/ess/ess-api/src/main/java/cn/axzo/nanopart/ess/api/domain/contract/SignOption.java b/ess/ess-api/src/main/java/cn/axzo/nanopart/ess/api/domain/contract/SignOption.java new file mode 100644 index 00000000..0b118168 --- /dev/null +++ b/ess/ess-api/src/main/java/cn/axzo/nanopart/ess/api/domain/contract/SignOption.java @@ -0,0 +1,22 @@ +package cn.axzo.nanopart.ess.api.domain.contract; + +import lombok.Getter; +import lombok.Setter; + +/** + * @author yanglin + */ +@Setter @Getter +public class SignOption { + + /** + * 是否可以拒签. false-可以拒签, true-不可以拒签 + */ + private boolean noRefuse = true; + + /** + * 是否可以转发. false-可以转发 true-不可以转发 + */ + private boolean noTransfer = true; + +} \ No newline at end of file diff --git a/ess/ess-server/src/main/java/cn/axzo/nanopart/ess/server/ess/EssClient.java b/ess/ess-server/src/main/java/cn/axzo/nanopart/ess/server/ess/EssClient.java index 3f533df4..4b77a46d 100644 --- a/ess/ess-server/src/main/java/cn/axzo/nanopart/ess/server/ess/EssClient.java +++ b/ess/ess-server/src/main/java/cn/axzo/nanopart/ess/server/ess/EssClient.java @@ -224,10 +224,9 @@ public class EssClient implements InitializingBean { for (Approver approver : contract.getApprovers()) { FlowApproverInfo approverInfo = new FlowApproverInfo(); approvers.add(approverInfo); + ApproverOption approverOption = new ApproverOption(); if (approver.getSignPerson() == null) { - ApproverOption approverOption = new ApproverOption(); approverOption.setFillType(1L); - approverInfo.setApproverOption(approverOption); } else { OrganizationalUnitVO orgProfile = orgProfiles.getOrThrow(approver.getOuId()); PersonProfileDto personProfile = personProfiles.getOrThrow(approver.getPersonId()); @@ -237,6 +236,11 @@ public class EssClient implements InitializingBean { approverInfo.setOrganizationName(orgProfile.getName()); approverInfo.setOrganizationOpenId(OrgOpenId.ofPerson(approver).toOpenId()); } + if (approver.getSignOption() != null) { + approverOption.setNoRefuse(approver.getSignOption().isNoRefuse()); + approverOption.setNoTransfer(approver.getSignOption().isNoTransfer()); + } + approverInfo.setApproverOption(approverOption); approverInfo.setApproverType(approver.getApproverType().name()); approverInfo.setNotifyType("NONE"); approverInfo.setPreReadTime(approver.getPreReadTimeSeconds());