REQ-3581: 备份
This commit is contained in:
parent
648964897e
commit
a79f78aa9f
@ -57,13 +57,6 @@ public class CreateContractRequest {
|
||||
@NotBlank(message = "fileBase64不能为空")
|
||||
private String fileBase64;
|
||||
|
||||
@JsonIgnore
|
||||
public Set<Long> getApproverPersonIds() {
|
||||
return approvers.stream()
|
||||
.map(ApproverInfo::getPersonId)
|
||||
.collect(toSet());
|
||||
}
|
||||
|
||||
@JsonIgnore
|
||||
public Set<Long> getApproverOuIds() {
|
||||
return approvers.stream()
|
||||
@ -83,7 +76,7 @@ public class CreateContractRequest {
|
||||
/**
|
||||
* 发起方人员id
|
||||
*/
|
||||
@NotBlank(message = "personId不能为空")
|
||||
@NotNull(message = "personId不能为空")
|
||||
private Long personId;
|
||||
|
||||
}
|
||||
@ -100,7 +93,7 @@ public class CreateContractRequest {
|
||||
/**
|
||||
* 签署人员id
|
||||
*/
|
||||
@NotBlank(message = "personId不能为空")
|
||||
@NotNull(message = "personId不能为空")
|
||||
private Long personId;
|
||||
|
||||
}
|
||||
|
||||
@ -14,4 +14,9 @@ public class CreateContractResponse {
|
||||
*/
|
||||
private String essContractId;
|
||||
|
||||
/**
|
||||
* 预览url, 会过期
|
||||
*/
|
||||
private String previewUrl;
|
||||
|
||||
}
|
||||
|
||||
@ -44,7 +44,7 @@ public class ContractManager {
|
||||
EssContract contract = saveContract(request);
|
||||
try {
|
||||
EssPerson superAdmin = orgManager.getSuperAdminOrThrow(request.getOperator().getOuId());
|
||||
String essFileId = essClient.uploadContractFile(superAdmin, request.getFileBase64());
|
||||
String essFileId = essClient.uploadFile(superAdmin, request.getFileBase64());
|
||||
String essContractId = essClient.createContract(superAdmin,
|
||||
request.getContractName(), essFileId, getApproverAsSealPersons(request));
|
||||
essContractDao.setEssContractCreated(contract.getId(), essFileId, essContractId);
|
||||
|
||||
@ -83,7 +83,8 @@ public class EssClient implements InitializingBean {
|
||||
private final EssSupport essSupport;
|
||||
@Resource(name = NEW_TRANSACTION)
|
||||
private TransactionTemplate transactionTemplate;
|
||||
private EssbasicClient ess;
|
||||
private EssbasicClient api;
|
||||
private EssbasicClient file;
|
||||
|
||||
public String createConsoleLoginUrl(EssOrg org, EssPerson person,
|
||||
EssConsoleUrlEndpoint endpoint, boolean checkOperator) {
|
||||
@ -104,7 +105,7 @@ public class EssClient implements InitializingBean {
|
||||
.context("CreateConsoleLoginUrl")
|
||||
.subject(person.getPersonId() + "")
|
||||
.request(request)
|
||||
.func(() -> ess.CreateConsoleLoginUrl(request)));
|
||||
.func(() -> api.CreateConsoleLoginUrl(request)));
|
||||
return response.getConsoleUrl();
|
||||
}
|
||||
|
||||
@ -120,7 +121,7 @@ public class EssClient implements InitializingBean {
|
||||
.context("ChannelCreateEmbedWebUrl")
|
||||
.subject(businessId == null ? "" : businessId)
|
||||
.request(request)
|
||||
.func(() -> ess.ChannelCreateEmbedWebUrl(request)));
|
||||
.func(() -> api.ChannelCreateEmbedWebUrl(request)));
|
||||
return response.getWebUrl();
|
||||
}
|
||||
|
||||
@ -135,7 +136,7 @@ public class EssClient implements InitializingBean {
|
||||
.context("ChannelCreateSealPolicy")
|
||||
.subject(seal.getEssSealId())
|
||||
.request(request)
|
||||
.func(() -> ess.ChannelCreateSealPolicy(request)));
|
||||
.func(() -> api.ChannelCreateSealPolicy(request)));
|
||||
}
|
||||
|
||||
public void removeSealAuthorization(EssPerson superAdmin, EssSeal seal, EssSealPerson sealPerson) {
|
||||
@ -149,13 +150,10 @@ public class EssClient implements InitializingBean {
|
||||
.context("ChannelDeleteSealPolicies")
|
||||
.subject(seal.getEssSealId())
|
||||
.request(request)
|
||||
.func(() -> ess.ChannelDeleteSealPolicies(request)));
|
||||
.func(() -> api.ChannelDeleteSealPolicies(request)));
|
||||
}
|
||||
|
||||
String uploadContractFile(
|
||||
EssPerson superAdmin,
|
||||
String fileBase64
|
||||
) throws TencentCloudSDKException {
|
||||
String uploadFile(EssPerson superAdmin, String fileBase64) throws TencentCloudSDKException {
|
||||
UploadFilesRequest request = new UploadFilesRequest();
|
||||
request.setAgent(agent(superAdmin));
|
||||
request.setFileInfos(new UploadFile[]{new UploadFile()});
|
||||
@ -165,14 +163,15 @@ public class EssClient implements InitializingBean {
|
||||
.context("UploadFiles")
|
||||
.subject("")
|
||||
.request(request)
|
||||
.func(() -> ess.UploadFiles(request)));
|
||||
.func(() -> file.UploadFiles(request)));
|
||||
return response.getFileIds()[0];
|
||||
}
|
||||
|
||||
String createContract(EssPerson superAdmin,
|
||||
String contractName,
|
||||
String contractFileId,
|
||||
List<EssSealPerson> approvePersons
|
||||
String createContract(
|
||||
EssPerson superAdmin,
|
||||
String contractName,
|
||||
String contractFileId,
|
||||
List<EssSealPerson> approvePersons
|
||||
) throws TencentCloudSDKException {
|
||||
Map<Long, OrganizationalUnitVO> orgProfiles = essSupport
|
||||
.getOrgProfiles(approvePersons.stream()
|
||||
@ -203,6 +202,7 @@ public class EssClient implements InitializingBean {
|
||||
}
|
||||
ChannelCreateFlowByFilesRequest request = new ChannelCreateFlowByFilesRequest();
|
||||
request.setAgent(agent(superAdmin));
|
||||
request.setSignBeanTag(1L);
|
||||
request.setFlowName(contractName);
|
||||
request.setFileIds(new String[]{contractFileId});
|
||||
request.setFlowApprovers(approvers.toArray(new FlowApproverInfo[0]));
|
||||
@ -210,7 +210,7 @@ public class EssClient implements InitializingBean {
|
||||
.context("ChannelCreateFlowByFiles")
|
||||
.subject(contractName)
|
||||
.request(request)
|
||||
.func(() -> ess.ChannelCreateFlowByFiles(request)));
|
||||
.func(() -> api.ChannelCreateFlowByFiles(request)));
|
||||
return response.getFlowId();
|
||||
}
|
||||
|
||||
@ -222,7 +222,7 @@ public class EssClient implements InitializingBean {
|
||||
.context("DescribeResourceUrlsByFlows")
|
||||
.subject(essContractId)
|
||||
.request(request)
|
||||
.func(() -> ess.DescribeResourceUrlsByFlows(request)));
|
||||
.func(() -> api.DescribeResourceUrlsByFlows(request)));
|
||||
return response.getFlowResourceUrlInfos()[0].getResourceUrlInfos()[0].getUrl();
|
||||
}
|
||||
|
||||
@ -235,7 +235,7 @@ public class EssClient implements InitializingBean {
|
||||
.context("ChannelCreateOrganizationBatchSignUrl")
|
||||
.subject(essContractId)
|
||||
.request(request)
|
||||
.func(() -> ess.ChannelCreateOrganizationBatchSignUrl(request)));
|
||||
.func(() -> api.ChannelCreateOrganizationBatchSignUrl(request)));
|
||||
return response.getSignUrl();
|
||||
}
|
||||
|
||||
@ -248,7 +248,7 @@ public class EssClient implements InitializingBean {
|
||||
.context("CreateSignUrls")
|
||||
.subject(essContractId)
|
||||
.request(request)
|
||||
.func(() -> ess.CreateSignUrls(request)));
|
||||
.func(() -> api.CreateSignUrls(request)));
|
||||
return response.getSignUrlInfos()[0].getSignUrl();
|
||||
}
|
||||
|
||||
@ -261,7 +261,7 @@ public class EssClient implements InitializingBean {
|
||||
.context("ChannelDescribeEmployees")
|
||||
.subject(org.getOuId() + "")
|
||||
.request(request)
|
||||
.func(() -> ess.ChannelDescribeEmployees(request)));
|
||||
.func(() -> api.ChannelDescribeEmployees(request)));
|
||||
}
|
||||
|
||||
private Agent agent(EssPerson person) {
|
||||
@ -277,12 +277,17 @@ public class EssClient implements InitializingBean {
|
||||
|
||||
@Override
|
||||
public void afterPropertiesSet() {
|
||||
api = createEssbasicClient(props.getApiEndPoint());
|
||||
file = createEssbasicClient(props.getFileEndPoint());
|
||||
}
|
||||
|
||||
private EssbasicClient createEssbasicClient(String apiEndPoint) {
|
||||
Credential cred = new Credential(props.getSecretId(), props.getSecretKey());
|
||||
HttpProfile httpProfile = new HttpProfile();
|
||||
httpProfile.setEndpoint(props.getEndPoint());
|
||||
httpProfile.setEndpoint(apiEndPoint);
|
||||
ClientProfile clientProfile = new ClientProfile();
|
||||
clientProfile.setHttpProfile(httpProfile);
|
||||
ess = new EssbasicClient(cred, "", clientProfile);
|
||||
return new EssbasicClient(cred, "", clientProfile);
|
||||
}
|
||||
|
||||
private <T> T exec(Invocation.InvocationBuilder builder) {
|
||||
|
||||
@ -34,8 +34,8 @@ import cn.axzo.nanopart.ess.server.entity.EssSeal;
|
||||
import cn.axzo.nanopart.ess.server.entity.EssSealPerson;
|
||||
import cn.axzo.nanopart.ess.server.ess.ContractManager;
|
||||
import cn.axzo.nanopart.ess.server.ess.EssClient;
|
||||
import cn.axzo.nanopart.ess.server.ess.QueryService;
|
||||
import cn.axzo.nanopart.ess.server.ess.OrgManager;
|
||||
import cn.axzo.nanopart.ess.server.ess.QueryService;
|
||||
import cn.axzo.nanopart.ess.server.ess.domain.OrgAndPerson;
|
||||
import cn.axzo.nanopart.ess.server.ess.domain.SealAndPerson;
|
||||
import cn.axzo.nanopart.ess.server.utils.BizAssertions;
|
||||
|
||||
@ -16,10 +16,9 @@ import org.springframework.context.annotation.Configuration;
|
||||
@ConfigurationProperties(prefix = "ess")
|
||||
public class EssProps {
|
||||
|
||||
/**
|
||||
* 腾讯电子签调用地址(环境)
|
||||
*/
|
||||
private String endPoint;
|
||||
private String apiEndPoint;
|
||||
|
||||
private String fileEndPoint;
|
||||
|
||||
private String appId;
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user