Commit 0087a500 authored by 38823's avatar 38823

虚拟代理店电子签约开发

parent 9c87d9f4
...@@ -131,7 +131,7 @@ ...@@ -131,7 +131,7 @@
var userInfoList = []; var userInfoList = [];
for (var k = 0; k < ele_signer_data.length; k++) { for (var k = 0; k < ele_signer_data.length; k++) {
var signer_record_data = ele_signer_data[k]; var signer_record_data = ele_signer_data[k];
if (signer_record_data.signer_category == 'TENANT_NP' || signer_record_data.signer_category == 'TENANT_SP' || signer_record_data.signer_category == 'GUARANTOR_NP' || signer_record_data.signer_category == 'GUARANTOR_SP') { if (signer_record_data.signer_category == 'TENANT_NP' || signer_record_data.signer_category == 'TENANT_SP' || signer_record_data.signer_category == 'GUARANTOR_NP' || signer_record_data.signer_category == 'GUARANTOR_SP' || signer_record_data.signer_category == 'VENDER_NP') {
userInfoList.push({ userInfoList.push({
"idNo": signer_record_data.id_no, "idNo": signer_record_data.id_no,
"name": signer_record_data.bp_name, "name": signer_record_data.bp_name,
...@@ -215,7 +215,7 @@ ...@@ -215,7 +215,7 @@
"signerCategory":signer_record_data.signer_category "signerCategory":signer_record_data.signer_category
}); });
} }
} else if (signer_record_data.signer_category == 'AGENCY_STORE_SEAL' || signer_record_data.signer_category == 'MAN_FACTURER_SEAL'|| signer_record_data.signer_category == 'SUPPLIER_SEAL'|| signer_record_data.signer_category == 'LEASE_SUPPLIER_SEAL') { } else if (signer_record_data.signer_category == 'AGENCY_STORE_SEAL' || signer_record_data.signer_category == 'MAN_FACTURER_SEAL'|| signer_record_data.signer_category == 'SUPPLIER_SEAL'|| signer_record_data.signer_category == 'LEASE_SUPPLIER_SEAL' || signer_record_data.signer_category == 'VENDER_SEAL') {
var signer_category; var signer_category;
if (signer_record_data.signer_category == 'AGENCY_STORE_SEAL'){ if (signer_record_data.signer_category == 'AGENCY_STORE_SEAL'){
signer_category = 'AGENCY_STORE_SIGN'; signer_category = 'AGENCY_STORE_SIGN';
...@@ -225,6 +225,8 @@ ...@@ -225,6 +225,8 @@
signer_category = 'SUPPLIER_SIGN'; signer_category = 'SUPPLIER_SIGN';
}else if (signer_record_data.signer_category == 'LEASE_SUPPLIER_SEAL') { }else if (signer_record_data.signer_category == 'LEASE_SUPPLIER_SEAL') {
signer_category = 'LEASE_SUPPLIER_SIGN'; signer_category = 'LEASE_SUPPLIER_SIGN';
}else if(signer_record_data.signer_category == 'VENDER_SEAL'){
signer_category = 'VENDER_SIGN'
} }
var ele_org_signer_map = ele_signer_bm.queryAsMap({ var ele_org_signer_map = ele_signer_bm.queryAsMap({
contract_id: $ctx.parameter.contract_id, contract_id: $ctx.parameter.contract_id,
...@@ -429,204 +431,216 @@ ...@@ -429,204 +431,216 @@
} }
//静默签逻辑 //静默签逻辑
//依据合同文本签署人定义存储签署人信息 //依据合同文本签署人定义存储签署人信息
var ele_contract_signer_bm = $bm('wx.WX100.con_ele_contract_signer_save'); //虚拟代理店不进行静默签
/* ele_contract_signer_bm.update({ var con_contract_xnd_bm = $bm('wx.WX100.con_contract_xnd_query').queryAsMap({
contract_id: $ctx.parameter.contract_id contract_id: $ctx.parameter.contract_id
});*/ });
//第一步生成合同文本 var isConstru = con_contract_xnd_bm.getChildren()[0].is_constru_unit;
/* $bm('cont.CON505.con_ele_contract_create_content').update({ if(isConstru == 'N') {
contract_id: $ctx.parameter.contract_id, var ele_contract_signer_bm = $bm('wx.WX100.con_ele_contract_signer_save');
content_type: 'NORMAL' /* ele_contract_signer_bm.update({
});*/ contract_id: $ctx.parameter.contract_id
var datePath = getDatePath(); });*/
FileUtils.forceMkdir(new File(datePath)); //根据日期创建目录 //第一步生成合同文本
$ctx.parameter.batch_flag = 'Y'; /* $bm('cont.CON505.con_ele_contract_create_content').update({
var from_file_data_map = $bm('cont.CON500.con_doc_file_templet_get_atm').queryAsMap({ contract_id: $ctx.parameter.contract_id,
contract_id: $ctx.parameter.contract_id, content_type: 'NORMAL'
batch_flag: $ctx.parameter.batch_flag });*/
}); var datePath = getDatePath();
/*var from_file_data = from_file_data_map.getChildren();*/ FileUtils.forceMkdir(new File(datePath)); //根据日期创建目录
//所有文件 $ctx.parameter.batch_flag = 'Y';
var conFileList = []; var from_file_data_map = $bm('cont.CON500.con_doc_file_templet_get_atm').queryAsMap({
//签署人 contract_id: $ctx.parameter.contract_id,
var signer = []; batch_flag: $ctx.parameter.batch_flag
//文件列表 });
var con_ele_unsigned_file_bm = $bm('wx.WX100.con_agent_unsigned_file_query'); /*var from_file_data = from_file_data_map.getChildren();*/
var con_ele_unsigned_file_map = con_ele_unsigned_file_bm.queryAsMap({ //所有文件
contract_id: $ctx.parameter.contract_id var conFileList = [];
}); //签署人
var con_ele_unsigned_file_data = con_ele_unsigned_file_map.getChildren(); var signer = [];
for (var n = 0; n < con_ele_unsigned_file_data.length; n++){ //文件列表
conFileList.push({ var con_ele_unsigned_file_bm = $bm('wx.WX100.con_agent_unsigned_file_query');
"fileUrl": con_ele_unsigned_file_data[n].file_path.replace('Z:','/mnt').replace('z:','/mnt'), var con_ele_unsigned_file_map = con_ele_unsigned_file_bm.queryAsMap({
"fileName": con_ele_unsigned_file_data[n].file_name, contract_id: $ctx.parameter.contract_id
"fileSize": con_ele_unsigned_file_data[n].file_size });
}); var con_ele_unsigned_file_data = con_ele_unsigned_file_map.getChildren();
} for (var n = 0; n < con_ele_unsigned_file_data.length; n++) {
//合同签署人信息 conFileList.push({
var ele_signer_bm = $bm('wx.WX100.con_ele_agent_contract_signer_query'); "fileUrl": con_ele_unsigned_file_data[n].file_path.replace('Z:', '/mnt').replace('z:', '/mnt'),
var ele_signer_map = ele_signer_bm.queryAsMap({ "fileName": con_ele_unsigned_file_data[n].file_name,
contract_id: $ctx.parameter.contract_id, "fileSize": con_ele_unsigned_file_data[n].file_size
esign_type:'CE' });
}); }
var ele_signer_data = ele_signer_map.getChildren(); //合同签署人信息
var userInfoList = []; var ele_signer_bm = $bm('wx.WX100.con_ele_agent_contract_signer_query');
for (var k = 0 ; k < ele_signer_data.length;k++){ var ele_signer_map = ele_signer_bm.queryAsMap({
var signer_record_data = ele_signer_data[k]; contract_id: $ctx.parameter.contract_id,
if(signer_record_data.signer_category == 'AGENCY_STORE_SEAL' || signer_record_data.signer_category == 'MAN_FACTURER_SEAL'||signer_record_data.signer_category == 'SUPPLIER_SEAL'||signer_record_data.signer_category == 'LEASE_SUPPLIER_SEAL'){ esign_type: 'CE'
var signer_category; });
var category_desc; var ele_signer_data = ele_signer_map.getChildren();
if (signer_record_data.signer_category == 'AGENCY_STORE_SEAL'){ var userInfoList = [];
signer_category = 'AGENCY_STORE_SIGN'; for (var k = 0; k < ele_signer_data.length; k++) {
category_desc = '代理店'; var signer_record_data = ele_signer_data[k];
}else if (signer_record_data.signer_category == 'MAN_FACTURER_SEAL') { if (signer_record_data.signer_category == 'AGENCY_STORE_SEAL' || signer_record_data.signer_category == 'MAN_FACTURER_SEAL' || signer_record_data.signer_category == 'SUPPLIER_SEAL' || signer_record_data.signer_category == 'LEASE_SUPPLIER_SEAL') {
signer_category = 'MAN_FACTURER_SIGN'; var signer_category;
category_desc = '厂商代理店'; var category_desc;
}else if (signer_record_data.signer_category == 'SUPPLIER_SEAL') { if (signer_record_data.signer_category == 'AGENCY_STORE_SEAL') {
signer_category = 'SUPPLIER_SIGN'; signer_category = 'AGENCY_STORE_SIGN';
category_desc = '供应商'; category_desc = '代理店';
}else if (signer_record_data.signer_category == 'LEASE_SUPPLIER_SEAL') { } else if (signer_record_data.signer_category == 'MAN_FACTURER_SEAL') {
signer_category = 'LEASE_SUPPLIER_SIGN'; signer_category = 'MAN_FACTURER_SIGN';
category_desc = '厂商'; category_desc = '厂商代理店';
}else if (signer_record_data.signer_category == 'GUARANTOR_NP') { } else if (signer_record_data.signer_category == 'SUPPLIER_SEAL') {
signer_category = 'GUARANTOR_NP'; signer_category = 'SUPPLIER_SIGN';
category_desc = '担保人'; category_desc = '供应商';
} } else if (signer_record_data.signer_category == 'LEASE_SUPPLIER_SEAL') {
var ele_org_signer_map = ele_signer_bm.queryAsMap({ signer_category = 'LEASE_SUPPLIER_SIGN';
contract_id: $ctx.parameter.contract_id, category_desc = '厂商';
signer_category:signer_category } else if (signer_record_data.signer_category == 'GUARANTOR_NP') {
}); signer_category = 'GUARANTOR_NP';
var ele_org_signer_data = ele_org_signer_map.getChildren(); category_desc = '担保人';
//经办人 }
var agentName = ele_org_signer_data[0].bp_name; var ele_org_signer_map = ele_signer_bm.queryAsMap({
var agentIdNo = ele_org_signer_data[0].id_no; contract_id: $ctx.parameter.contract_id,
var mobile = ele_org_signer_data[0].mobile; signer_category: signer_category
//法人 });
var legalName = signer_record_data.legal_person; var ele_org_signer_data = ele_org_signer_map.getChildren();
var legalIdNo = signer_record_data.id_card_no_leg; //经办人
userInfoList.push({ var agentName = ele_org_signer_data[0].bp_name;
"idNo": signer_record_data.id_no, var agentIdNo = ele_org_signer_data[0].id_no;
"name": signer_record_data.bp_name, var mobile = ele_org_signer_data[0].mobile;
"agentIdNo": agentIdNo, //法人
"agentName": agentName, var legalName = signer_record_data.legal_person;
"mobile": mobile, var legalIdNo = signer_record_data.id_card_no_leg;
"legalName": legalName, userInfoList.push({
"legalIdNo": legalIdNo, "idNo": signer_record_data.id_no,
"agentType": "2", "name": signer_record_data.bp_name,
"signerCategory":signer_record_data.signer_category, "agentIdNo": agentIdNo,
"categoryDesc":category_desc, "agentName": agentName,
"indentityType":signer_record_data.indentity_type, "mobile": mobile,
"autoSign":signer_record_data.auto_sign "legalName": legalName,
}); "legalIdNo": legalIdNo,
} "agentType": "2",
} "signerCategory": signer_record_data.signer_category,
//获取token信息 "categoryDesc": category_desc,
var logs_bm = $bm('wx.WX100.con_ele_savelogs'); "indentityType": signer_record_data.indentity_type,
try { "autoSign": signer_record_data.auto_sign
var token_sign_result = EleFileUpHttpPost.post(up_file_token_url, null, null); });
} catch (e) { }
raise_app_error('上传文件获取token失败,请联系技术人员检查!'); }
} //获取token信息
var token_sign_result_ob = JSON.parse(token_sign_result); var logs_bm = $bm('wx.WX100.con_ele_savelogs');
var access_sign_token = token_sign_result_ob.access_token; try {
//校验签署人 var token_sign_result = EleFileUpHttpPost.post(up_file_token_url, null, null);
var info = info_query('HL_ELE_ACCOUNT_CREATE_PATH'); } catch (e) {
var httpUrl = info.code_value; raise_app_error('上传文件获取token失败,请联系技术人员检查!');
var Param = { }
userInfo: userInfoList var token_sign_result_ob = JSON.parse(token_sign_result);
} var access_sign_token = token_sign_result_ob.access_token;
var result = EleFileUpHttpPost.post(httpUrl, JSON.stringify(Param), access_sign_token); //校验签署人
//var result = new HttpRequest().sendPost(httpUrl, JSON.stringify(signParam)); var info = info_query('HL_ELE_ACCOUNT_CREATE_PATH');
logs_bm.insert({ var httpUrl = info.code_value;
contract_id: $ctx.parameter.contract_id, var Param = {
httpurl: httpUrl, userInfo: userInfoList
jsonPut: JSON.stringify(Param), }
jsonResult: result, var result = EleFileUpHttpPost.post(httpUrl, JSON.stringify(Param), access_sign_token);
tokenResult: token_sign_result //var result = new HttpRequest().sendPost(httpUrl, JSON.stringify(signParam));
}); logs_bm.insert({
var result_ob = JSON.parse(result); //根据返回参数形式再定 contract_id: $ctx.parameter.contract_id,
if (result_ob.code != 0) { httpurl: httpUrl,
//rollback jsonPut: JSON.stringify(Param),
$bm('wx.WX100.rollback').update(); jsonResult: result,
raise_app_error(result_ob.message.toString()); tokenResult: token_sign_result
} });
var ele_contract_signer_map = ele_contract_signer_bm.queryAsMap({ var result_ob = JSON.parse(result); //根据返回参数形式再定
contract_id: $ctx.parameter.contract_id if (result_ob.code != 0) {
}); //rollback
var ele_contract_signer_data = ele_contract_signer_map.getChildren(); $bm('wx.WX100.rollback').update();
var contract_number = ele_contract_signer_data[0].contract_number; raise_app_error(result_ob.message.toString());
for (var k = 0 ; k < ele_contract_signer_data.length;k++){ }
var signerFileList = []; var ele_contract_signer_map = ele_contract_signer_bm.queryAsMap({
var signer_record_data = ele_contract_signer_data[k]; contract_id: $ctx.parameter.contract_id
var con_ele_signer_id = signer_record_data.con_ele_signer_id; });
var ele_signer_file_bm = $bm('wx.WX100.con_agent_signer_file_query'); var ele_contract_signer_data = ele_contract_signer_map.getChildren();
var ele_signer_file_map = ele_signer_file_bm.queryAsMap({ var contract_number = ele_contract_signer_data[0].contract_number;
contract_id: $ctx.parameter.contract_id, for (var k = 0; k < ele_contract_signer_data.length; k++) {
con_ele_signer_id:con_ele_signer_id var signerFileList = [];
}); var signer_record_data = ele_contract_signer_data[k];
var ele_signer_file_data = ele_signer_file_map.getChildren(); var con_ele_signer_id = signer_record_data.con_ele_signer_id;
if (ele_signer_file_data.length == 0){continue}; var ele_signer_file_bm = $bm('wx.WX100.con_agent_signer_file_query');
for (var h = 0; h < ele_signer_file_data.length; h++){ var ele_signer_file_map = ele_signer_file_bm.queryAsMap({
signerFileList.push({ contract_id: $ctx.parameter.contract_id,
"fileName":ele_signer_file_data[h].file_name, con_ele_signer_id: con_ele_signer_id
"fileUrl":ele_signer_file_data[h].file_path.replace('Z:','/mnt').replace('Z:','/mnt'), });
"fileSize":ele_signer_file_data[h].file_size var ele_signer_file_data = ele_signer_file_map.getChildren();
}); if (ele_signer_file_data.length == 0) {
} continue
signer.push({ }
"idNo":signer_record_data.id_no, ;
"idType":signer_record_data.id_type, for (var h = 0; h < ele_signer_file_data.length; h++) {
"accountType":signer_record_data.signer_category, signerFileList.push({
"signOrder":signer_record_data.sign_order, "fileName": ele_signer_file_data[h].file_name,
"key":signer_record_data.key_word, "fileUrl": ele_signer_file_data[h].file_path.replace('Z:', '/mnt').replace('Z:', '/mnt'),
"autoExecute":signer_record_data.auto_sign, "fileSize": ele_signer_file_data[h].file_size
"signType":signer_record_data.sign_type, });
"signerFileList":signerFileList }
}) signer.push({
} "idNo": signer_record_data.id_no,
//调用中台签署流程 "idType": signer_record_data.id_type,
var info = info_query('HL_SIGN_FLOW_CREATE'); "accountType": signer_record_data.signer_category,
var httpUrl = info.code_value; "signOrder": signer_record_data.sign_order,
var signParam = { "key": signer_record_data.key_word,
contractNo:$ctx.parameter.contract_id, "autoExecute": signer_record_data.auto_sign,
contractNumber:contract_number, "signType": signer_record_data.sign_type,
esignType:"AE", "signerFileList": signerFileList
userInfo:userInfoList, })
conFileList:conFileList, }
signer:signer //调用中台签署流程
} var info = info_query('HL_SIGN_FLOW_CREATE');
var result = EleFileUpHttpPost.post(httpUrl, JSON.stringify(signParam), access_sign_token); var httpUrl = info.code_value;
//var result = new HttpRequest().sendPost(httpUrl, JSON.stringify(signParam)); var signParam = {
logs_bm.insert({ contractNo: $ctx.parameter.contract_id,
contract_id:$ctx.parameter.contract_id, contractNumber: contract_number,
httpurl:httpUrl, esignType: "AE",
jsonPut:JSON.stringify(signParam), userInfo: userInfoList,
jsonResult:result, conFileList: conFileList,
tokenResult:token_sign_result signer: signer
}); }
var result_ob = JSON.parse(result); //根据返回参数形式再定 var result = EleFileUpHttpPost.post(httpUrl, JSON.stringify(signParam), access_sign_token);
if (result_ob.code != 0) { //var result = new HttpRequest().sendPost(httpUrl, JSON.stringify(signParam));
//rollback logs_bm.insert({
$bm('wx.WX100.rollback').update(); contract_id: $ctx.parameter.contract_id,
//raise_app_error('发起签约失败,请联系技术人员检查!'); httpurl: httpUrl,
raise_app_error(result_ob.message.toString()); jsonPut: JSON.stringify(signParam),
}else if(result_ob.code == 0){ jsonResult: result,
var flow_id = result_ob.flowId; tokenResult: token_sign_result
var flow_update_bm = $bm('wx.WX100.con_ele_flow_update'); });
flow_update_bm.update({ }
contract_id: $ctx.parameter.contract_id, var result_ob = JSON.parse(result); //根据返回参数形式再定
flow_id: flow_id, if (result_ob.code != 0) {
esign_type: 'AE' //rollback
}) $bm('wx.WX100.rollback').update();
flow_update_bm.execute({ //raise_app_error('发起签约失败,请联系技术人员检查!');
contract_id: $ctx.parameter.contract_id raise_app_error(result_ob.message.toString());
}) } else if (result_ob.code == 0) {
//发送签约短消息提醒 24976 var flow_id = result_ob.flowId;
flow_update_bm.insert({ var flow_update_bm = $bm('wx.WX100.con_ele_flow_update');
contract_id: $ctx.parameter.contract_id if(isConstru =='N') {
}) flow_update_bm.update({
send_sms($ctx.parameter.contract_id); contract_id: $ctx.parameter.contract_id,
} flow_id: flow_id,
esign_type: 'AE'
})
}
flow_update_bm.execute({
contract_id: $ctx.parameter.contract_id
})
//发送签约短消息提醒 24976
flow_update_bm.insert({
contract_id: $ctx.parameter.contract_id
})
send_sms($ctx.parameter.contract_id);
}
} }
} }
]]></s:server-script> ]]></s:server-script>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment