Merge remote-tracking branch 'origin/feature/REQ-3581' into feature/REQ-3581

This commit is contained in:
wangli 2025-03-06 16:15:38 +08:00
commit 9dec48a87c
2 changed files with 12 additions and 18 deletions

View File

@ -1,9 +1,6 @@
package cn.axzo.nanopart.ess.api.enums;
import java.util.Arrays;
import java.util.List;
import lombok.Getter;
/**
@ -14,25 +11,22 @@ import lombok.Getter;
@Getter
public enum EssSealType {
OFFICIAL("公章", "OFFICIAL"),
CONTRACT("合同专用章", "CONTRACT"),
FINANCE("财务专用章", "FINANCE"),
PERSONNEL("人事专用章", "PERSONNEL"),
EMPLOYEE_QUALIFICATION_SEAL("执业章", "EMPLOYEE_QUALIFICATION_SEAL"),
OTHER("其他");
OFFICIAL("公章", "OFFICIAL", "OFFICIAL"),
CONTRACT("合同专用章", "CONTRACT", "CONTRACT"),
FINANCE("财务专用章", "FINANCE", "FINANCE"),
PERSONNEL("人事专用章", "PERSONNEL", "PERSONNEL"),
OTHER("其他", "OTHER");
private final String description;
private final String useForLimitCode;
private final String[] essCodes;
EssSealType(String description, String... essCodes) {
EssSealType(String description, String useForLimitCode, String... essCodes) {
this.description = description;
this.useForLimitCode = useForLimitCode;
this.essCodes = essCodes;
}
public List<String> getEssCodes() {
return Arrays.asList(essCodes);
}
public static EssSealType fromEssCode(String essCode) {
for (EssSealType value : values()) {
for (String code : value.essCodes) {

View File

@ -74,6 +74,7 @@ import cn.axzo.nanopart.ess.api.domain.OrgPerson;
import cn.axzo.nanopart.ess.api.domain.contract.Approver;
import cn.axzo.nanopart.ess.api.enums.EssConsoleUrlEndpoint;
import cn.axzo.nanopart.ess.api.enums.EssEmbedType;
import cn.axzo.nanopart.ess.api.enums.EssSealType;
import cn.axzo.nanopart.ess.server.dao.EssLogDao;
import cn.axzo.nanopart.ess.server.entity.EssLog;
import cn.axzo.nanopart.ess.server.entity.EssOrg;
@ -257,7 +258,7 @@ public class EssClient implements InitializingBean {
componentLimit.setComponentType("SIGN_SEAL");
componentLimit.setComponentValue( //
approver.getSealTypes().stream() //
.flatMap(type -> type.getEssCodes().stream()) //
.map(EssSealType::getUseForLimitCode) //
.distinct() //
.toArray(String[]::new));
approverInfo.setAddSignComponentsLimits(new ComponentLimit[] { componentLimit });
@ -342,8 +343,7 @@ public class EssClient implements InitializingBean {
return response.getSignUrl();
}
public String createSignUrls(EssPerson superAdmin, String essContractId, String recipientId,
OrgPerson signPerson) {
public String createSignUrls(EssPerson superAdmin, String essContractId, String recipientId, OrgPerson signPerson) {
CreateSignUrlsRequest request = new CreateSignUrlsRequest();
request.setAgent(agent(superAdmin));
request.setFlowIds(new String[] { essContractId });
@ -371,7 +371,7 @@ public class EssClient implements InitializingBean {
ChannelCreateFlowSignUrlRequest request = new ChannelCreateFlowSignUrlRequest();
request.setAgent(agent(superAdmin));
request.setFlowId(essContractId);
request.setFlowApproverInfos(new FlowApproverInfo[]{approver});
request.setFlowApproverInfos(new FlowApproverInfo[] { approver });
ChannelCreateFlowSignUrlResponse response = exec(func() //
.context("ChannelCreateFlowSignUrl") //
.subject(idbuilder() //