Merge remote-tracking branch 'origin/feature/REQ-3581' into feature/REQ-3581
This commit is contained in:
commit
b26f34efbc
@ -16,15 +16,19 @@ public interface VisaConstant {
|
|||||||
/**
|
/**
|
||||||
* 申请用印,针对单位创建的审批携带的 ouId
|
* 申请用印,针对单位创建的审批携带的 ouId
|
||||||
*/
|
*/
|
||||||
String WORKFLOW_VAR_STAMP_OU_ID = "stamp_ou_id";
|
String WORKFLOW_VAR_STAMP_OU_ID = "stampOuId";
|
||||||
/**
|
/**
|
||||||
* 申请用印,针对单位的签章类型
|
* 申请用印,针对单位的签章类型
|
||||||
*/
|
*/
|
||||||
String WORKFLOW_VAR_STAMP_TYPE = "stamp_type";
|
String WORKFLOW_VAR_STAMP_TYPE = "stampType";
|
||||||
/**
|
/**
|
||||||
* 申请用印,针对单位的签章位置
|
* 申请用印,针对单位的签章位置
|
||||||
*/
|
*/
|
||||||
String WORKFLOW_VAR_STAMP_RECIPIENT = "stamp_recipient";
|
String WORKFLOW_VAR_STAMP_RECIPIENT = "stampRecipient";
|
||||||
|
/**
|
||||||
|
* 申请用印,合同 ID
|
||||||
|
*/
|
||||||
|
String WORKFLOW_VAR_STAMP_CONTRACT_ID = "stampContractId";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 用于发送待办的变量名
|
* 用于发送待办的变量名
|
||||||
|
|||||||
@ -1,17 +1,20 @@
|
|||||||
package cn.axzo.nanopart.visa.server.rpc;
|
package cn.axzo.nanopart.visa.server.rpc;
|
||||||
|
|
||||||
|
import cn.axzo.basics.common.util.AssertUtil;
|
||||||
|
import cn.axzo.framework.domain.web.result.ApiResult;
|
||||||
import cn.axzo.nanopart.ess.api.EssApi;
|
import cn.axzo.nanopart.ess.api.EssApi;
|
||||||
import cn.axzo.nanopart.ess.api.domain.EssOrgAndSealInfo;
|
import cn.axzo.nanopart.ess.api.domain.EssOrgAndSealInfo;
|
||||||
import cn.axzo.nanopart.ess.api.request.CreateContractByFileRequest;
|
import cn.axzo.nanopart.ess.api.request.CreateContractByFileRequest;
|
||||||
import cn.axzo.nanopart.ess.api.request.GetSealsRequest;
|
import cn.axzo.nanopart.ess.api.request.GetSealsRequest;
|
||||||
import cn.axzo.nanopart.ess.api.request.SaveContractSnapshotRequest;
|
import cn.axzo.nanopart.ess.api.request.SaveContractSnapshotRequest;
|
||||||
import cn.axzo.nanopart.ess.api.response.CreateContractByFileResponse;
|
import cn.axzo.nanopart.ess.api.response.CreateContractByFileResponse;
|
||||||
import cn.axzo.pokonyan.util.RpcUtil;
|
import cn.azxo.framework.common.logger.MethodAroundLog;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Objects;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 腾讯电子签
|
* 腾讯电子签
|
||||||
@ -26,15 +29,29 @@ public class EssGateway {
|
|||||||
|
|
||||||
private final EssApi essApi;
|
private final EssApi essApi;
|
||||||
|
|
||||||
|
@MethodAroundLog(target = "maokai", source = "nanopart", value = "创建电子签合同")
|
||||||
public CreateContractByFileResponse createContract(CreateContractByFileRequest request) {
|
public CreateContractByFileResponse createContract(CreateContractByFileRequest request) {
|
||||||
return RpcUtil.rpcApiResultProcessor(() -> essApi.createContractByFile(request), "创建电子签合同", request);
|
ApiResult<CreateContractByFileResponse> apiResult = essApi.createContractByFile(request);
|
||||||
|
if (apiResult.isSuccess() && Objects.nonNull(apiResult.getData())) {
|
||||||
|
return apiResult.getData();
|
||||||
|
}
|
||||||
|
AssertUtil.isTrue(apiResult.isSuccess(), apiResult.getMsg());
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@MethodAroundLog(target = "maokai", source = "nanopart", value = "查询单位已启用的印章以及授权人员列表")
|
||||||
public List<EssOrgAndSealInfo> getOrgEnabledSeals(GetSealsRequest request) {
|
public List<EssOrgAndSealInfo> getOrgEnabledSeals(GetSealsRequest request) {
|
||||||
return RpcUtil.rpcApiResultProcessor(() -> essApi.getOrgEnabledSeals(request), "查询单位已启用的印章以及授权人员列表", request);
|
ApiResult<List<EssOrgAndSealInfo>> apiResult = essApi.getOrgEnabledSeals(request);
|
||||||
|
if (apiResult.isSuccess() && Objects.nonNull(apiResult.getData())) {
|
||||||
|
return apiResult.getData();
|
||||||
|
}
|
||||||
|
AssertUtil.isTrue(apiResult.isSuccess(), apiResult.getMsg());
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@MethodAroundLog(target = "maokai", source = "nanopart", value = "查询单位已启用的印章以及授权人员列表")
|
||||||
public void saveContractSnapshot(SaveContractSnapshotRequest request) {
|
public void saveContractSnapshot(SaveContractSnapshotRequest request) {
|
||||||
RpcUtil.rpcApiResultProcessor(() -> essApi.saveContractSnapshot(request), "从腾讯电子签下载合同PDF文件", request);
|
ApiResult<Void> apiResult = essApi.saveContractSnapshot(request);
|
||||||
|
AssertUtil.isTrue(apiResult.isSuccess(), apiResult.getMsg());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -26,6 +26,7 @@ import cn.axzo.nanopart.visa.api.enums.VisaButtonTypeEnum;
|
|||||||
import cn.axzo.nanopart.visa.api.enums.VisaLogTypeEnum;
|
import cn.axzo.nanopart.visa.api.enums.VisaLogTypeEnum;
|
||||||
import cn.axzo.nanopart.visa.api.enums.VisaRelationFieldEnum;
|
import cn.axzo.nanopart.visa.api.enums.VisaRelationFieldEnum;
|
||||||
import cn.axzo.nanopart.visa.api.enums.VisaRelationVarTypeEnum;
|
import cn.axzo.nanopart.visa.api.enums.VisaRelationVarTypeEnum;
|
||||||
|
import cn.axzo.nanopart.visa.api.enums.VisaStampStatusEnum;
|
||||||
import cn.axzo.nanopart.visa.api.enums.VisaStatusEnum;
|
import cn.axzo.nanopart.visa.api.enums.VisaStatusEnum;
|
||||||
import cn.axzo.nanopart.visa.api.request.ChangeRecordAppendAttachReq;
|
import cn.axzo.nanopart.visa.api.request.ChangeRecordAppendAttachReq;
|
||||||
import cn.axzo.nanopart.visa.api.request.ImGroupOperationClearReq;
|
import cn.axzo.nanopart.visa.api.request.ImGroupOperationClearReq;
|
||||||
@ -100,6 +101,7 @@ import static cn.axzo.nanopart.visa.api.constant.VisaConstant.IM_GROUP_PARTICIPA
|
|||||||
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.IM_GROUP_PARTICIPATE_TIPS_OPERATED;
|
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.IM_GROUP_PARTICIPATE_TIPS_OPERATED;
|
||||||
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.MSG_CENTER_APP_CODE;
|
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.MSG_CENTER_APP_CODE;
|
||||||
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_PENDING_INITIATOR_NAME;
|
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_PENDING_INITIATOR_NAME;
|
||||||
|
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_VAR_STAMP_CONTRACT_ID;
|
||||||
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_VAR_STAMP_OU_ID;
|
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_VAR_STAMP_OU_ID;
|
||||||
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_VAR_STAMP_RECIPIENT;
|
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_VAR_STAMP_RECIPIENT;
|
||||||
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_VAR_STAMP_TYPE;
|
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.WORKFLOW_VAR_STAMP_TYPE;
|
||||||
@ -462,6 +464,7 @@ public class ChangeRecordRelationServiceImpl extends ServiceImpl<ChangeRecordRel
|
|||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public void requestStamp(VisaRequestStampReq req) {
|
public void requestStamp(VisaRequestStampReq req) {
|
||||||
|
AssertUtil.isTrue(Objects.nonNull(req.getOperatorOuId()) && Objects.nonNull(req.getOperatorPersonId()), "操作人信息不能为空");
|
||||||
ChangeRecord visa = changeRecordService.getById(req.getVisaId());
|
ChangeRecord visa = changeRecordService.getById(req.getVisaId());
|
||||||
AssertUtil.notNull(visa, "变洽签单据不存在");
|
AssertUtil.notNull(visa, "变洽签单据不存在");
|
||||||
|
|
||||||
@ -604,6 +607,7 @@ public class ChangeRecordRelationServiceImpl extends ServiceImpl<ChangeRecordRel
|
|||||||
CreateContractByFileResponse contract = essGateway.createContract(createContractRequest);
|
CreateContractByFileResponse contract = essGateway.createContract(createContractRequest);
|
||||||
AssertUtil.notNull(contract, "腾讯电子签合同创建失败");
|
AssertUtil.notNull(contract, "腾讯电子签合同创建失败");
|
||||||
visa.setContractId(contract.getEssContractId());
|
visa.setContractId(contract.getEssContractId());
|
||||||
|
visa.setStampStatus(VisaStampStatusEnum.WITH_PRINT);
|
||||||
changeRecordService.updateById(visa);
|
changeRecordService.updateById(visa);
|
||||||
|
|
||||||
Map<Long, String> essRecipientIdMap = new HashMap<>();
|
Map<Long, String> essRecipientIdMap = new HashMap<>();
|
||||||
@ -667,12 +671,15 @@ public class ChangeRecordRelationServiceImpl extends ServiceImpl<ChangeRecordRel
|
|||||||
AssertUtil.notNull(createReq, "未找到变洽签单据");
|
AssertUtil.notNull(createReq, "未找到变洽签单据");
|
||||||
|
|
||||||
create.setStartFormVariables(visaHelper.buildStartFormVariables(createReq));
|
create.setStartFormVariables(visaHelper.buildStartFormVariables(createReq));
|
||||||
create.setVariables(Maps.of(
|
Map<String, Object> variables = Maps.of(
|
||||||
IM_GROUP_BIZ_INFO_VISA_ID, visa.getId(),
|
IM_GROUP_BIZ_INFO_VISA_ID, visa.getId(),
|
||||||
WORKFLOW_VAR_STAMP_OU_ID, model.getOuId(),
|
WORKFLOW_VAR_STAMP_OU_ID, model.getOuId(),
|
||||||
WORKFLOW_VAR_STAMP_TYPE, model.getSealType().name(),
|
WORKFLOW_VAR_STAMP_TYPE, model.getSealType().name(),
|
||||||
WORKFLOW_VAR_STAMP_RECIPIENT, MapUtils.emptyIfNull(essRecipientIdMap).getOrDefault(model.getOuId(), "")
|
WORKFLOW_VAR_STAMP_RECIPIENT, MapUtils.emptyIfNull(essRecipientIdMap).getOrDefault(model.getOuId(), ""),
|
||||||
));
|
WORKFLOW_VAR_STAMP_CONTRACT_ID, visa.getContractId()
|
||||||
|
);
|
||||||
|
create.setVariables(variables);
|
||||||
|
create.setPendingVariables(variables);
|
||||||
return workflowGateway.processInstanceCreate(create);
|
return workflowGateway.processInstanceCreate(create);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user