From 482f807361c9bc0dce2db949a29c755cf858548b Mon Sep 17 00:00:00 2001 From: 黄潞潞 <lilith@highdatas.com> Date: 星期五, 07 六月 2024 18:30:23 +0800 Subject: [PATCH] hotfix 签署方获取 --- esign_weaver/src/weaver/ISignService.java | 44 +++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 41 insertions(+), 3 deletions(-) diff --git a/esign_weaver/src/weaver/ISignService.java b/esign_weaver/src/weaver/ISignService.java index 2ede034..bec7a50 100644 --- a/esign_weaver/src/weaver/ISignService.java +++ b/esign_weaver/src/weaver/ISignService.java @@ -3,10 +3,48 @@ import java.util.List; import foundation.data.entity.Entity; +import foundation.data.object.DataObject; +import foundation.org.Employee; +import foundation.user.OnlineUser; import weaver.dao.Signer; -public interface ISignService{ - - public List<Signer> getSigners(Entity entity) throws Exception; +public abstract class ISignService{ + public List<Signer> getSigners(Entity entity) throws Exception { + return null; + } + + public String getContracePhone(String sourceCode, String orgId, String accountId) throws Exception { + int pos = sourceCode.indexOf("@{"); + + if (pos == -1){ + return sourceCode; + } + + sourceCode = sourceCode.substring(pos + 2, sourceCode.length()); + pos = sourceCode.indexOf("."); + + if (pos == -1) { + OnlineUser user = OnlineUser.getInstance(); + Employee employee = user.getEmployee(); + if (employee != null) { + return employee.getPhone(); + } + return null; + } + + String dataName = sourceCode.substring(0, pos); + String field = sourceCode.substring(pos + 1); + + DataObject dataObject = DataObject.getInstance(dataName); + + if (dataName.equalsIgnoreCase("md_org")) { + Entity entity = dataObject.getTableEntity(orgId); + return entity.getString(field); + } + else { + Entity entity = dataObject.getTableEntity(accountId); + return entity.getString(field); + } + } } -- Gitblit v1.8.0