保险理赔记录盖章

This commit is contained in:
zhanglei 2021-01-05 17:33:52 +08:00
parent 1052391bfb
commit 531ef54258

View File

@ -0,0 +1,169 @@
package com.tenwa.channelportal.action;
import com.amarsoft.are.jbo.*;
import com.tenwa.app.dao.ContractSignInfo;
import com.tenwa.app.manage.qiyuesuo.v2.ContractSignEnums;
import com.tenwa.app.manage.qiyuesuo.v2.ContractSignVtwoUtils;
import com.tenwa.channelportal.action.generativecontract.WordToPDFUtil;
import jbo.app.tenwa.doc.*;
import org.apache.log4j.Logger;
import java.io.File;
public class ContractInsuranceSignAction {
private static Logger logger=Logger.getLogger(ContractInsuranceSignAction.class);
private String projectId;
private String contractNo;
private String contractId;
private String subjectId;
private String tempId;
public String getContractNo() {
return contractNo;
}
public void setContractNo(String contractNo) {
this.contractNo = contractNo;
}
public String getProjectId() {
return projectId;
}
public void setProjectId(String projectId) {
this.projectId = projectId;
}
public String getContractId() {
return contractId;
}
public void setContractId(String contractId) {
this.contractId = contractId;
}
public String getSubjectId() {
return subjectId;
}
public void setSubjectId(String subjectId) {
this.subjectId = subjectId;
}
public String getTempId() {
return tempId;
}
public void setTempId(String tempId) {
this.tempId = tempId;
}
/**
* 保险委托授权书附件用LibreOffice实现word转换pdf
* word转换pdf
* @throws JBOException
*/
@SuppressWarnings({ "unchecked", "static-access" })
public String wordToPdfInsurance(JBOTransaction tx) throws JBOException {
BizObjectManager bom=JBOFactory.getBizObjectManager(LB_DOCRELATIVE.CLASS_NAME);
BizObject DOCRELATIVE=bom.createQuery(" OBJECTTYPE='contractInsurance' and PROJ_ID=:projectId ").setParameter("projectId", projectId).getSingleResult(false);
BizObjectManager attrBom=JBOFactory.getBizObjectManager(LB_DOCATTRIBUTE.CLASS_NAME);
BizObject attrBo=null;
WordToPDFUtil wordTopdf = new WordToPDFUtil();
File file = null;
Boolean result = null;
String sql = "";
try {
if (DOCRELATIVE != null) {
String DOCRELATIVEid=DOCRELATIVE.getAttribute("id").toString();
BizObjectManager bom1=JBOFactory.getBizObjectManager(LB_DOCLIBRARY.CLASS_NAME);
String DOCLIBRARYid=bom1.createQuery("relative_id=:relative_id").setParameter("relative_id", DOCRELATIVEid).getSingleResult(false).getAttribute("id").toString();
attrBo = attrBom.createQuery("library_id=:library_id").setParameter("library_id", DOCLIBRARYid).getSingleResult(true);
String path = attrBo.getAttribute("FULLPATH").toString();
String lastFilePath = path.replace(".docx", ".pdf");
File filePath = new File(path);
if(!filePath.exists()){
logger.info("word转换pdf的源文件不存在");
}
String lastFilePathpdf = filePath.getParent();
try {
result = wordTopdf.Word2Pdf(path, lastFilePathpdf);
} catch (Exception e) {
result = false;
e.printStackTrace();
}
if (result) {
file =new File(lastFilePath);
attrBo.setAttributeValue("FULLPATH",attrBo.getAttribute("FULLPATH").toString().replace(".docx", ".pdf"));
attrBo.setAttributeValue("FILENAME",attrBo.getAttribute("FILENAME").toString().replace(".docx", ".pdf"));
attrBo.setAttributeValue("FILEPATH",attrBo.getAttribute("FILEPATH").toString().replace(".docx", ".pdf"));
attrBo.setAttributeValue("FileSize",file.length());
attrBo.setAttributeValue("CONTENT_TYPE","application/pdf");
attrBom.saveObject(attrBo);
}
}
} catch (JBOException e) {
e.printStackTrace();
}
return attrBo.getAttribute("ID").toString();
}
/**
* 保险委托申请书盖章:对接契约锁2.0
* @param tx
* @return
* @throws Exception
*/
public String claimSignInsuranceTwo(JBOTransaction tx) throws Exception {
logger.info("claimSignInsuranceTwo 保险委托申请书盖章:对接契约锁2.0 开始 1224 1935");
String libraryid="";
BizObjectManager bom=JBOFactory.getBizObjectManager(LB_DOCRELATIVE.CLASS_NAME);
BizObject DOCRELATIVE=bom.createQuery("OBJECTTYPE='contractInsurance' and CONTRACT_ID=:contractid ").setParameter("contractid", contractId).getSingleResult(false);
logger.info("claimSignInsuranceTwo 查询文件关联信息");
if (DOCRELATIVE != null) {
logger.info("claimSignInsuranceTwo 查询文件关联信息不为空时");
String DOCRELATIVEid=DOCRELATIVE.getAttribute("id").toString();
BizObjectManager bom1=JBOFactory.getBizObjectManager(LB_DOCLIBRARY.CLASS_NAME);
libraryid=bom1.createQuery("relative_id=:relative_id").setParameter("relative_id", DOCRELATIVEid).getSingleResult(false).getAttribute("id").toString();
logger.info("claimSignInsuranceTwo 查询文件关联信息libraryid="+libraryid);
}
BizObjectManager contBom = JBOFactory.getBizObjectManager(LB_DOCATTRIBUTE.CLASS_NAME, tx);
ContractSignInfo con = null;
BizObject bo = null;
String info="";
try{
bo = contBom.createQuery("library_id=:libraryid").setParameter("libraryid", libraryid).getSingleResult(true);
logger.info("claimSignInsuranceTwo 查询文件信息");
if(bo != null){
logger.info("claimSignInsuranceTwo 查询文件信息不为空时");
String fileName = bo.getAttribute("FILENAME").toString();
String filePath = bo.getAttribute("FULLPATH").toString();
logger.info("claimSignInsuranceTwo fileName="+fileName);
logger.info("claimSignInsuranceTwo filePath="+filePath);
ContractSignVtwoUtils contractSignVtwoUtils = new ContractSignVtwoUtils();
logger.info("claimSignInsuranceTwo 发起公司盖章");
String res = contractSignVtwoUtils.sign(ContractSignEnums.ContractSignTypeEnum.SIGNATURE_DEFAULT, tempId, subjectId, fileName, filePath, null);
logger.info("claimSignInsuranceTwo 公司盖章【结束】 res=" + res);
if ("success".equals(res)) {
return "success";
}else{
return "error";
}
} else {
return "error";
}
} catch (Exception e) {
logger.error("claimSignInsuranceTwo 系统错误,错误信息: ", e);
e.printStackTrace();
return "error";
}
}
}