修改app电子签约判断

This commit is contained in:
tangfutang 2020-09-17 18:31:53 +08:00
parent 60b71d99ed
commit f3e9a97b25
3 changed files with 66 additions and 33 deletions

View File

@ -1112,7 +1112,7 @@ public class ContractSignAction{
if ("REQUIRED".equals(signStatus)) {
this.sign(tx);
downloadDoc(tx);
keys.setAttributeValue("PROCESS", "4");
keys.setAttributeValue("PROCESS", "6");
}
contBom.saveObject(keys);
}

View File

@ -235,8 +235,8 @@ public class ContractSignActionTwo {
//调用公司盖章
catu.companySealSign(SubjectId, signContractId);
bo.setAttributeValue("SIGN_TYPE", "COMPLETE");
bo.setAttributeValue("SENDPROCESS", "1");
contBom.saveObject(bo);
bo.setAttributeValue("PROCESS", "5");
// contBom.saveObject(bo);
Map<String, String> fromCondtion = new HashMap<String, String>();
Map<String, String> otherProperty = new HashMap<String, String>();
String contractDocId = bo.getAttribute("id").toString();
@ -252,6 +252,8 @@ public class ContractSignActionTwo {
pbm.saveObject(pbo);
String downloadstatus = catu.contractDownload(SubjectId, documentId, makefullPath);
System.out.println("合同下载log===" + downloadstatus);
bo.setAttributeValue("PROCESS", "6");
contBom.saveObject(bo);
return "已完成";
}else{
return contractStatus;

View File

@ -257,13 +257,25 @@ public class ContractMakeServiceImpl implements ContractMakeService{
ContractSignAction csa = new ContractSignAction();
csa.setProjectId(flowParms.get("ProjectId"));
String checkFile = this.checkFile(csa, tx);
if(!"success".equals(checkSign)){
//String checkFile = this.checkFile(csa, tx);
if(!"DRAFT".equals(checkSign)){
String message = "";
body.put("status", "01");
body.put("message", checkSign);
}else if(!"success".equals(checkFile)){
body.put("status", "01");
body.put("message", checkFile);
switch (checkSign) {
case "NOTCONTRACT":
message = "请先生成合同!";
break;
case "SIGNING":
message = "电子签约已发起!";
break;
case "COMPLETE":
message = "电子签约已完成!";
break;
default:
message = "未查询到对应信息!";
break;
}
body.put("message", message);
}else{
String signIng = "";
String operationType = flowParms.get("operationType");
@ -333,9 +345,25 @@ public class ContractMakeServiceImpl implements ContractMakeService{
return ReturnMapUtil.getReturnMap();
}
String checkSign = this.checkSign(flowParms,"sendMessageAgain", tx);
if(!"success".equals(checkSign)){
if(!"SIGNING".equals(checkSign)){
body.put("status", "01");
body.put("message", checkSign);
String message = "";
body.put("status", "01");
switch (checkSign) {
case "NOTCONTRACT":
message = "请先生成合同!";
break;
case "DRAFT":
message = "电子签约未发起!";
break;
case "COMPLETE":
message = "电子签约已完成!";
break;
default:
message = "未查询到对应信息!";
break;
}
body.put("message", message);
}else{
String sendMessageAgain = "";
String operationType = flowParms.get("operationType");
@ -382,9 +410,25 @@ public class ContractMakeServiceImpl implements ContractMakeService{
return ReturnMapUtil.getReturnMap();
}
String checkSign = this.checkSign(flowParms,"queryAgain", tx);
if(!"success".equals(checkSign)){
if(!"SIGNING".equals(checkSign)){
body.put("status", "01");
body.put("message", checkSign);
String message = "";
body.put("status", "01");
switch (checkSign) {
case "NOTCONTRACT":
message = "请先生成合同!";
break;
case "DRAFT":
message = "电子签约未发起!";
break;
case "COMPLETE":
message = "电子签约已完成!";
break;
default:
message = "未查询到对应信息!";
break;
}
body.put("message", message);
}else{
String contractSignStatus = "";
String operationType = flowParms.get("operationType");
@ -421,27 +465,14 @@ public class ContractMakeServiceImpl implements ContractMakeService{
//УÑé·¢Æðµç×ÓǩԼÌõ¼þ
public String checkSign(Map<String, String> flowParms,String signType,JBOTransaction tx) throws Exception{
String message = "success";
ContractAward ca = new ContractAward();
ca.setProject_id(flowParms.get("ProjectId"));
ca.setFlowUnid(flowParms.get("FlowUnid"));
String projectStatus = ca.projectStatus(tx);
String[] result = projectStatus.split("@");
String status = result[0];
if("true".equals(result[3])){
message = "请先生成pdf版的合同";
}else if(status!=null && !status.equals("null") && status.length()>0 && new Integer(status) > 4 &&new Integer(status) < 7 ){
message = "合同状态为:"+result[1]+"不可以电子签章";
}else if (("sendMessageAgain".equals(signType)||"queryAgain".equals(signType)) && new Integer(status) == 2){
message = "电子签约未发起,无法查询或短信重发!";
BizObjectManager ldclBom = JBOFactory.getBizObjectManager(LB_DOC_CONTRACT_LIST.CLASS_NAME,tx);
BizObject ldclBo = ldclBom.createQuery("project_id='"+flowParms.get("ProjectId")+"' and file_flag='yes' and sendprocess='1'").getSingleResult(false);
if(ldclBo==null){
return "NOTCONTRACT";
}else{
return ldclBo.getAttribute("sign_type").toString();
}
if("4".equals(status)){
message = "电子签约已完成";
};
if("8".equals(status) && "initiateSign".equals(signType)){
message = "电子签约已发起,请签署电子合同!";
};
return message;
}
@Override
public Map<String, Object> getContractChangeNumber(