feat(REQ-3300) - 完善申请用印逻辑
This commit is contained in:
parent
b22255a078
commit
e805a9019a
@ -25,6 +25,7 @@ public enum VisaRelationFieldEnum {
|
|||||||
ORDER("order", "单据"),
|
ORDER("order", "单据"),
|
||||||
IM_GROUP_PARTICIPATE("im_group_participate", "im群聊参与人"),
|
IM_GROUP_PARTICIPATE("im_group_participate", "im群聊参与人"),
|
||||||
PRINT_PDF_FILE("print_pdf_file", "打印生成的PDF文件"),
|
PRINT_PDF_FILE("print_pdf_file", "打印生成的PDF文件"),
|
||||||
|
ESS_RECIPIENT_ID_MAP("ess_recipient_id_map", "电子签章单位与签证位置的映射"),
|
||||||
;
|
;
|
||||||
private final String code;
|
private final String code;
|
||||||
private final String desc;
|
private final String desc;
|
||||||
|
|||||||
@ -33,7 +33,6 @@ public class VisaRequestStampReq {
|
|||||||
/**
|
/**
|
||||||
* 变洽签打印 PDF 附件信息
|
* 变洽签打印 PDF 附件信息
|
||||||
*/
|
*/
|
||||||
@NotNull(message = "PDF附件信息不能为空")
|
|
||||||
private UploadFieldDTO pdfFile;
|
private UploadFieldDTO pdfFile;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@ -11,6 +11,7 @@ import cn.axzo.nanopart.ess.api.domain.CreateContractByFile;
|
|||||||
import cn.axzo.nanopart.ess.api.domain.OperatorInfo;
|
import cn.axzo.nanopart.ess.api.domain.OperatorInfo;
|
||||||
import cn.axzo.nanopart.ess.api.domain.contract.Approver;
|
import cn.axzo.nanopart.ess.api.domain.contract.Approver;
|
||||||
import cn.axzo.nanopart.ess.api.request.CreateContractByFileRequest;
|
import cn.axzo.nanopart.ess.api.request.CreateContractByFileRequest;
|
||||||
|
import cn.axzo.nanopart.ess.api.response.CreateContractByFileResponse;
|
||||||
import cn.axzo.nanopart.visa.api.enums.VisaButtonTypeEnum;
|
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;
|
||||||
@ -62,6 +63,7 @@ import java.net.URL;
|
|||||||
import java.net.URLConnection;
|
import java.net.URLConnection;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Base64;
|
import java.util.Base64;
|
||||||
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
@ -74,6 +76,7 @@ import static cn.axzo.nanopart.visa.api.constant.VisaConstant.IM_GROUP_OWNER_TIP
|
|||||||
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.IM_GROUP_PARTICIPATE_TIPS;
|
import static cn.axzo.nanopart.visa.api.constant.VisaConstant.IM_GROUP_PARTICIPATE_TIPS;
|
||||||
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.enums.VisaRelationFieldEnum.ESS_RECIPIENT_ID_MAP;
|
||||||
import static cn.axzo.nanopart.visa.api.enums.VisaRelationFieldEnum.PRINT_PDF_FILE;
|
import static cn.axzo.nanopart.visa.api.enums.VisaRelationFieldEnum.PRINT_PDF_FILE;
|
||||||
import static cn.axzo.nanopart.visa.api.enums.VisaRelationFieldEnum.PROCESS_INSTANCE_OF_ESS;
|
import static cn.axzo.nanopart.visa.api.enums.VisaRelationFieldEnum.PROCESS_INSTANCE_OF_ESS;
|
||||||
import static cn.axzo.workflow.common.enums.BpmnProcessInstanceResultEnum.PROCESSING;
|
import static cn.axzo.workflow.common.enums.BpmnProcessInstanceResultEnum.PROCESSING;
|
||||||
@ -388,10 +391,11 @@ public class ChangeRecordRelationServiceImpl extends ServiceImpl<ChangeRecordRel
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 单独上传附件-追加操作日志
|
* 单独上传附件-追加操作日志
|
||||||
* @param attach 上传附件信息
|
*
|
||||||
* @param visaId 变更签证Id
|
* @param attach 上传附件信息
|
||||||
* @param personId 人员Id
|
* @param visaId 变更签证Id
|
||||||
* @param ouId 单位id
|
* @param personId 人员Id
|
||||||
|
* @param ouId 单位id
|
||||||
* @param workspaceId 项目Id
|
* @param workspaceId 项目Id
|
||||||
*/
|
*/
|
||||||
private void addLogWhenAttachAppend(List<UploadFieldDTO> attach, Long visaId, Long personId, Long ouId, Long workspaceId) {
|
private void addLogWhenAttachAppend(List<UploadFieldDTO> attach, Long visaId, Long personId, Long ouId, Long workspaceId) {
|
||||||
@ -442,15 +446,16 @@ public class ChangeRecordRelationServiceImpl extends ServiceImpl<ChangeRecordRel
|
|||||||
}).collect(Collectors.toList());
|
}).collect(Collectors.toList());
|
||||||
|
|
||||||
// 打印生成的 PDF 文件信息
|
// 打印生成的 PDF 文件信息
|
||||||
ChangeRecordRelation relation = new ChangeRecordRelation();
|
if (Objects.nonNull(req.getPdfFile())) {
|
||||||
relation.setVisaId(req.getVisaId());
|
ChangeRecordRelation relation = new ChangeRecordRelation();
|
||||||
relation.setVarName(PRINT_PDF_FILE.name());
|
relation.setVisaId(req.getVisaId());
|
||||||
relation.setVarType(VisaRelationVarTypeEnum.JSON.getType());
|
relation.setVarName(PRINT_PDF_FILE.name());
|
||||||
relation.setContent(JSON.toJSONString(req.getPdfFile()));
|
relation.setVarType(VisaRelationVarTypeEnum.JSON.getType());
|
||||||
relation.setCreateBy(req.getOperatorPersonId());
|
relation.setContent(JSON.toJSONString(req.getPdfFile()));
|
||||||
relation.setUpdateBy(req.getOperatorPersonId());
|
relation.setCreateBy(req.getOperatorPersonId());
|
||||||
relations.add(relation);
|
relation.setUpdateBy(req.getOperatorPersonId());
|
||||||
saveBatch(relations);
|
relations.add(relation);
|
||||||
|
}
|
||||||
|
|
||||||
CreateContractByFileRequest createContractRequest = new CreateContractByFileRequest();
|
CreateContractByFileRequest createContractRequest = new CreateContractByFileRequest();
|
||||||
CreateContractByFile pdfFile = new CreateContractByFile();
|
CreateContractByFile pdfFile = new CreateContractByFile();
|
||||||
@ -467,7 +472,6 @@ public class ChangeRecordRelationServiceImpl extends ServiceImpl<ChangeRecordRel
|
|||||||
}).collect(Collectors.toList()));
|
}).collect(Collectors.toList()));
|
||||||
|
|
||||||
createContractRequest.setByFile(pdfFile);
|
createContractRequest.setByFile(pdfFile);
|
||||||
// TODO
|
|
||||||
createContractRequest.setAppCode(MSG_CENTER_APP_CODE);
|
createContractRequest.setAppCode(MSG_CENTER_APP_CODE);
|
||||||
createContractRequest.setBizCode(String.valueOf(visa.getId()));
|
createContractRequest.setBizCode(String.valueOf(visa.getId()));
|
||||||
OperatorInfo creator = new OperatorInfo();
|
OperatorInfo creator = new OperatorInfo();
|
||||||
@ -475,8 +479,18 @@ public class ChangeRecordRelationServiceImpl extends ServiceImpl<ChangeRecordRel
|
|||||||
creator.setPersonId(req.getOperatorPersonId());
|
creator.setPersonId(req.getOperatorPersonId());
|
||||||
createContractRequest.setCreator(creator);
|
createContractRequest.setCreator(creator);
|
||||||
|
|
||||||
essGateway.createContract(createContractRequest);
|
CreateContractByFileResponse contract = essGateway.createContract(createContractRequest);
|
||||||
|
AssertUtil.notNull(contract, "腾讯电子签合同创建失败");
|
||||||
|
visa.setContractId(contract.getEssContractId());
|
||||||
|
changeRecordService.updateById(visa);
|
||||||
|
|
||||||
|
ChangeRecordRelation recipientRelation = new ChangeRecordRelation();
|
||||||
|
Map<Long, String> essRecipientIdMap = new HashMap<>();
|
||||||
|
recipientRelation.setVisaId(visa.getId());
|
||||||
|
recipientRelation.setVarName(ESS_RECIPIENT_ID_MAP.name());
|
||||||
|
recipientRelation.setVarType(VisaRelationVarTypeEnum.JSON.getType());
|
||||||
|
recipientRelation.setContent(JSON.toJSONString(essRecipientIdMap));
|
||||||
|
saveBatch(relations);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static String downloadFileAndConvertToBase64(String fileUrl) throws IOException {
|
public static String downloadFileAndConvertToBase64(String fileUrl) throws IOException {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user