2018-06-03 22:26:41 +08:00

580 lines
19 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/**
* 信贷专用对象,包括了当前用户等常用信息和方法。
*/
var AsCredit = {
};
AsCredit.userId="";
AsCredit.orgId="";
AsCredit.userName="";
AsCredit.orgName="";
AsCredit.parameter=[];
/**主要是使用在select_catalog中自定义查询选择信息*/
AsCredit.selectJavaMethodTree=function(selectClassName,inputParameters,windowStyle,multipleFlag,postevent){
var selectedValue={};
selectedValue["ID"]="";
selectedValue["Name"]="";
var inputParameterString=JSON.stringify(inputParameters);
if(typeof(windowStyle)=="undefined" || windowStyle=="") windowStyle = "dialogWidth:680px;dialogHeight:540px;resizable:yes;scrollbars:no;status:no;help:no";
AsDialog.PopPage("/Common/FunctionPage/TreeSelector.jsp","SelectClassName="+selectClassName+"&InputParameters="+inputParameterString+"&MultipleFlag="+multipleFlag,windowStyle,function(returnValue){
if(!returnValue)returnValue = "_CANCEL_";
returnValue = returnValue.split("@");
selectedValue["ID"]=returnValue[0];
if(returnValue[1])selectedValue["Name"]=returnValue[1];
else selectedValue["Name"]="";
postevent(selectedValue);
});
};
/**主要是使用在select_catalog中自定义查询选择信息*/
AsCredit.setJavaMethodTree=function(selectClassName,inputParameters,dw,rownum,returnColumnID,returnColumnName,multipleFlag,windowStyle){
inputParameters["ClearButtonFlag"]="1";
AsCredit.selectJavaMethodTree(selectClassName,inputParameters,windowStyle,multipleFlag,function(selectedValue){
if(!selectedValue||selectedValue["ID"] == "_CANCEL_") return ;
var idValue=selectedValue["ID"];
var nameValue=selectedValue["Name"];
if(selectedValue["ID"] == "_NONE_"){
idValue="";
nameValue="";
}
if(returnColumnID) {
setItemValue(dw,rownum,returnColumnID,idValue);
}
if(returnColumnName){
setItemValue(dw,rownum,returnColumnName,nameValue);
}
});
};
/****
* 将参数转为json后传给后续程序避免参数的set、get方法扰乱程序结构是程序更简洁清晰。
*/
AsCredit.RunJavaMethodTrans = function(className,methodName,args,splitChar){
var parameterMap = {};
if(!splitChar)splitChar=",";
args = args.split(splitChar);
for(var i=0;i<args.length;i++){
var s = args[i].split("=");
parameterMap[s[0]]=s[1];
}
var systemParameterMap = {};
systemParameterMap["CurOrgID"]=AsCredit.orgId;
systemParameterMap["CurUserID"]=AsCredit.userId;
parameterMap["SystemParameters"]=systemParameterMap;
args=JSON.stringify({"InputParameter":parameterMap});
var result = AsControl.RunJavaMethodTrans(className, methodName,args);
return result;
};
/**
* 获得参数值
*/
AsCredit.getBusinessObjectAtrribute=function(businessObject,attributeID){
for(var v in businessObject)
{
var attribute = businessObject[v];
var attributeValue=attribute[attributeID];
if(!attributeValue)attributeValue=attribute[attributeID.toUpperCase()];
return attributeValue;
}
};
/**
* 获得参数值
*/
AsCredit.setBusinessObjectAtrribute=function(businessObject,attributeID,attributeValue){
for(var v in businessObject)
{
var attribute = businessObject[v];
attribute[attributeID]=attributeValue;
}
};
/**
* 获得参数值
*/
AsCredit.setBusinessObjectPropety=function(businessObject,attributeID,attributeValue){
businessObject[attributeID]=attributeValue;
//else businessObject[attributeID.toUpperCase()]=attributeValue;
};
/**
* 获得参数值
*/
AsCredit.getBusinessObjectAtrributes=function(businessObject){
for(var v in businessObject)
{
return businessObject[v];
}
};
/**
* 根据功能ID打开一个功能
*/
AsCredit.openFunction=function(functionID,parameters,style,targetWindow,callback){
if(typeof(style)=="undefined") style="";
if(typeof(functionID)=="undefined" || functionID==""){
alert("功能编号不能为空!");
return ;
}
var paramString="SYS_FUNCTIONID="+functionID;
paramString = paramString+"&"+parameters;
if(typeof(targetWindow)!="undefined" && targetWindow!="_blank"){
AsControl.OpenComp("/AppMain/resources/widget/FunctionView.jsp",paramString,targetWindow,style);
}else{
AsDialog.PopView("/AppMain/resources/widget/FunctionView.jsp",paramString,style,callback);
}
};
/**
* 根据功能ID打开一个功能
*/
AsCredit.reopenFunction=function(functionID,parameters,style,targetWindow){
if(typeof(style)=="undefined") style="";
if(typeof(functionID)=="undefined" || functionID==""){
alert("功能编号不能为空!");
return ;
}
var paramString="SYS_FUNCTION_RELOAD=1&SYS_FUNCTIONID="+functionID;
paramString = paramString+"&"+parameters;
var _result = "";
if(typeof(targetWindow)!="undefined"){
_result=AsControl.OpenComp("/AppMain/resources/widget/FunctionView.jsp",paramString,targetWindow,style);
}else{
_result=AsControl.PopComp("/AppMain/resources/widget/FunctionView.jsp",paramString,"_self",style);
}
return _result;
};
function FunctionResult(_resultData){
this.resultData=_resultData;
this.outPutParameters=_resultData["SYS_FUNCTION_OUTPUTPARAMETERS"];
this.funtionRunMessage=_resultData["SYS_FUNCTION_RUN_MESSGE"];
this.outPutParameters_Attributs=this.outPutParameters["Attributes"];
this.finallyResult=this.resultData["SYS_FUNCTION_RUN_RESULT"];
this.getResult=function(){
return this.finallyResult;
};
this.getOutputParameter=function(paraName){
var key=paraName.toUpperCase();
var value=this.outPutParameters_Attributs[key];
if(typeof(value)=="undefined") return "";
return value;
};
this.getOutputAllParameter=function(){
return this.outPutParameters_Attributs;
};
this.getOutputMessage=function(){ //获得输出的信息
return this.funtionRunMessage;
};
this.toString=function(){
return JSON.stringify(this.resultData);
};
this.getResultArray=function(){
return this.resultData;
};
};
/**
* 执行Function
* functionParameters 可以定义未字符从 key=value&key1=value1
* 如果value中包含了&特殊符号,需采用[key,value]形式的数组
* var functionParameters=[];
* functionParameters[key]=value;
*/
AsCredit.runFunction=function(sys_functionId,functionParameters){
if(typeof(functionParameters)=="undefined") functionParameters="";
if(typeof(sys_functionId)=="undefined" || sys_functionId==""){
alert("功能编号为空");
return ;
}
var mapValue ={};
mapValue["SYS_FUNCTIONID"]=sys_functionId;
mapValue["SYS_FUNCTION_USERID"]=AsCredit.userId;
if(typeof(functionParameters)=="string"){
var paramArray=functionParameters.split("&");
//获得参数
for(var i=0;i<paramArray.length;i++){
paramStr=paramArray[i];
if(typeof(paramStr)=="undefined" || paramStr.indexOf("=")<0) continue;
paraName=paramStr.split("=")[0];
paraValue=paramStr.split("=")[1];
mapValue[paraName]=paraValue;
}
}else{
for(var paraName in functionParameters){
paraValue=functionParameters[paraName];
mapValue[paraName]=paraValue;
}
}
var result=AsControl.RunJavaMethodTrans("com.amarsoft.app.als.sys.function.model.FunctionRun", "run", JSON.stringify({"data":mapValue}));
var fresult=new FunctionResult(result);
return fresult;
};
/****
* SelectTree树图选择器
* selector:对应与select_catalog表中的selname
* inputParameters:传入的参数值,包括
* outputParameters:返回值json的返回值
*/
AsCredit.setMultipleTreeValue = function(selector,inputParameters,splitchar,windowStyle,dw,rownum,returnColumnID,returnColumnName){
var selectedValues = getItemValue(dw, rownum, returnColumnID);
var selectedValue = AsCredit.selectMultipleTree(selector,inputParameters,splitchar,windowStyle,"",selectedValues);
if(selectedValue["Name"] == "_CLEAR_"){
setItemValue(dw,rownum,returnColumnID,"");
setItemValue(dw,rownum,returnColumnName,"");
}
if(!selectedValue["ID"]) return ;
if(returnColumnID) setItemValue(dw,rownum,returnColumnID,selectedValue["ID"]);
if(returnColumnName) setItemValue(dw,rownum,returnColumnName,selectedValue["Name"]);
};
/****
* SelectTree树图选择器
* selector:对应与select_catalog表中的selname
* inputParameters:传入的参数值,包括
* outputParameters:返回值json的返回值
*/
AsCredit.selectMultipleTree = function(selector,inputParameters,splitchar,windowStyle,selectLevel,selectedValues){
if(!splitchar) splitchar=",";
if(!selectLevel) selectLevel="Top";
var selectedValue={};
selectedValue["ID"]="";
selectedValue["Name"]="";
if(typeof(windowStyle)=="undefined" || windowStyle=="") windowStyle = "dialogWidth:680px;dialogHeight:540px;resizable:yes;scrollbars:no;status:no;help:no";
var returnValue = PopPage("/Frame/DialogSelect.jsp?SelectedValues="+selectedValues+"&SelectLevel="+selectLevel+"&SelName="+selector+"&MultipleFlag=Y&ParaString="+inputParameters,"",windowStyle);
if(returnValue == "_NONE_" || returnValue == "_CLEAR_"){
selectedValue["Name"] = "_CLEAR_";
return selectedValue;
}
if(!returnValue || returnValue == "_NONE_" || returnValue == "_CANCEL_"|| returnValue == "_CLEAR_")
return selectedValue;
returnValue = returnValue.split("~");
for(var i=0;i<returnValue.length;i++){
var selectedItem=returnValue[i];
if(selectedItem.length>0){
selectedItem = selectedItem.split("@");
selectedValue["ID"]+=splitchar+selectedItem[0];
selectedValue["Name"]+=splitchar+selectedItem[1];
}
}
if(selectedValue["ID"].length>0)selectedValue["ID"] = selectedValue["ID"].substring(1);
if(selectedValue["Name"].length>0)selectedValue["Name"] = selectedValue["Name"].substring(1);
return selectedValue;
};
/**主要是使用在select_catalog中自定义查询选择信息*/
AsCredit.selectTree=function(selector,inputParameters,windowStyle,folderSelectFlag){
var selectedValue={};
selectedValue["ID"]="";
selectedValue["Name"]="";
if(typeof(windowStyle)=="undefined" || windowStyle=="") windowStyle = "dialogWidth:680px;dialogHeight:540px;resizable:yes;scrollbars:no;status:no;help:no";
var returnValue = PopPage("/Frame/DialogSelect.jsp?SelName="+selector+"&FolderSelectFlag="+folderSelectFlag+"&ParaString="+inputParameters,"",windowStyle);
if(!returnValue || returnValue == "_NONE_" || returnValue == "_CANCEL_")
return selectedValue;
returnValue = returnValue.split("@");
selectedValue["ID"]=returnValue[0];
selectedValue["Name"]=returnValue[1];
return selectedValue;
};
/**主要是使用在select_catalog中自定义查询选择信息*/
AsCredit.setTreeValue=function(selector,inputParameters,windowStyle,dw,rownum,returnColumnID,returnColumnName,folderSelectFlag){
var selectedValue=AsCredit.selectTree(selector,inputParameters,windowStyle,folderSelectFlag);
if(!selectedValue["ID"]||selectedValue == "_CANCEL_") return ;
if(returnColumnID) {
if(!selectedValue["ID"]||selectedValue["ID"] == "_NONE_"){
setItemValue(dw,rownum,returnColumnID,"");
}
else{
setItemValue(dw,rownum,returnColumnID,selectedValue["ID"]);
}
}
if(returnColumnName){
if(!selectedValue["Name"]){
setItemValue(dw,rownum,returnColumnName,"");
}
else {
setItemValue(dw,rownum,returnColumnName,selectedValue["Name"]);
}
}
};
AsCredit.hideOWGroupItem=function(groupID){
$("#A_Group_" +groupID ).hide();
};
AsCredit.showOWGroupItem=function(groupID){
$("#A_Group_" +groupID).show();
};
AsCredit.getOWGroupItemStatus=function(groupID){
return $("#A_Group_" +groupID).is(":visible");
};
/**
* 流程对象
* 包括了流程的提交,退回等常用操作
*/
var AsTask={
//获取当前任务流水号
getInitTaskNo:function(objectNo,objectType){
var taskNo = RunJavaMethod("com.amarsoft.app.als.workflow.action.FlowManageAction","getInitTaskNo","ObjectNo="+objectNo+",ObjectType="+objectType);
if(!taskNo) {
alert(getBusinessMessage('500'));//该申请所对应的流程任务不存在,请核对!
return;
}
return taskNo;
},
//获取当前任务流水号
getCurTaskNo:function(objectNo,objectType,userID){
var taskNo = RunJavaMethod("com.amarsoft.app.als.workflow.action.FlowManageAction","getUnFinishedTaskNo","ObjectNo="+objectNo+",ObjectType="+objectType+",UserID="+userID);
if(!taskNo) {
alert(getBusinessMessage('500'));//该申请所对应的流程任务不存在,请核对!
return;
}
return taskNo;
},
//检查是否已经提交
checkIsSubmit:function(taskNo) {
var returnValue = RunJavaMethod("com.amarsoft.app.als.workflow.action.FlowManageAction","checkIsSubmit","TaskNo="+taskNo);
if(returnValue == "true"){
return true;
}else{
return false;
}
},
//判断当前阶段是否需要签署意见
checkIsSign:function(taskNo) {
var returnValue = RunJavaMethod("com.amarsoft.app.als.workflow.action.FlowManageAction","checkIsSign","TaskNo="+taskNo);
if(returnValue == "true"){
return true;
}else{
return false;
}
},
//检查是否需要影像资料
checkIsImageView:function(taskNo) {
var returnValue = RunJavaMethod("com.amarsoft.app.als.workflow.action.FlowManageAction","checkIsImageView","TaskNo="+taskNo);
if(returnValue == "true"){
return true;
}else{
return false;
}
},
//检查是否签署意见
checkIsOpinion:function(taskNo) {
if(this.checkIsSign(taskNo)){
var returnValue = RunJavaMethod("com.amarsoft.app.als.workflow.action.FlowManageAction","checkIsOpinion","TaskNo="+taskNo);
if(returnValue == "true"){
return true;
}else{
return false;
}
}else{
return true;
}
},
//判断是否批复登记阶段
checkIsApprovePhase:function(taskNo){
var returnValue = RunJavaMethod("com.amarsoft.app.als.workflow.action.FlowManageAction","checkIsApprovePhase","TaskNo="+taskNo);
if(returnValue == "true"){
return true;
}else{
return false;
}
},
//任务提交
doTaskSubmit:function(taskNo){
if(this.checkIsSubmit(taskNo)){
alert(getBusinessMessage('486'));//该申请已经提交了,不能再次提交!
return "Working";
}
//弹出审批提交选择窗口
var returnValue = PopPage("/Common/FlowManage/FlowSubmitDialog.jsp?TaskNo="+taskNo,"","dialogWidth=580px;dialogHeight=420px;resizable=no;scrollbars=no;status:yes;maximize:no;help:no;");
if(!returnValue || returnValue == "_CANCEL_") return returnValue;
else if (returnValue == "Success"){
alert(getHtmlMessage('18'));//提交成功!
}else if (returnValue == "Failure"){
alert(getHtmlMessage('9'));//提交失败!
}else if(returnValue == "Working"){
alert(getBusinessMessage('486'));//该申请已经提交了,不能再次提交!
}
return returnValue;
},
//任务提交
doSubmit:function(objectNo,objectType,userID){
var taskNo = this.getCurTaskNo(objectNo,objectType,userID);
if(this.checkIsSubmit(taskNo)){
alert(getBusinessMessage('486'));//该申请已经提交了,不能再次提交!
reloadSelf();
return;
}else{
return this.doTaskSubmit(taskNo);
}
},
//初始化阶段收回
takeBack:function(objectNo,objectType,userID){
if(confirm(getBusinessMessage('498'))){ //确认收回该笔业务吗?
var returnValue = RunJavaMethodSqlca("com.amarsoft.app.als.workflow.action.FlowManageAction","takeBackToInit","ObjectNo="+objectNo+",ObjectType="+objectType+",UserID="+userID);
//收回成功后才刷新页面
if(returnValue == "Commit"){
alert("收回完成");//收回完成!
reloadSelf();
}else if(returnValue == "HasSubmit"){
alert("下阶段任务已提交或已签署意见,不能收回");//下阶段任务已提交或已签署意见,不能收回!
reloadSelf();
}else{
alert(getBusinessMessage('500'));//该申请所对应的流程任务不存在,请核对!
return;
}
}
},
//审批阶段收回
takeTaskBack:function(taskNo,userID){
if(!confirm(getBusinessMessage('498'))) return; //确认收回该笔业务吗?
var returnValue = RunJavaMethodSqlca("com.amarsoft.app.als.workflow.action.FlowManageAction","takeBackToCur","TaskNo="+taskNo+",UserID="+userID);
if(!returnValue){
alert(getBusinessMessage('500'));//该申请所对应的流程任务不存在,请核对!
return;
}else{
return returnValue;
}
},
//退回上一步
backStep:function(taskNo,userID){
if(!confirm(getBusinessMessage('509'))) return; //您确认要将该申请退回上一环节吗?
var returnValue = RunJavaMethodSqlca("com.amarsoft.app.als.workflow.action.FlowManageAction","backStep","TaskNo="+taskNo+",UserID="+userID);
if(!returnValue){
alert(getBusinessMessage('500'));//该申请所对应的流程任务不存在,请核对!
return returnValue;
}else{
return returnValue;
}
},
//申请工作台
applyPlatform:function(objectNo,objectType){
//检查是否需要查看影像资料
if(AsCredit.image_switch == "open"){
var param = "FlowType=apply&ObjectNo="+objectNo+"&ObjectType="+objectType+"&ViewID=001";
AsCredit.openImageTab(param);
}else{
AsTaskView.flowApplytaskView(objectNo,objectType,"001");
}
},
//审批工作台
approvePlatform:function(taskNo){
var viewID = "002";
if(this.checkIsApprovePhase(taskNo)){
viewID = "001";
}
//检查当前阶段是否需要查看影像资料
if(this.checkIsImageView(taskNo)&&AsCredit.image_switch == "open"){
var param = "FlowType=approve&TaskNo="+taskNo+"&ViewID="+viewID;
AsCredit.openImageTab(param);
}else{
AsTaskView.flowApprovetaskView(taskNo,viewID);
}
},
//删除记录
delRecord:function(objectNo,objectType){
var returnValue = RunJavaMethodSqlca("com.amarsoft.app.als.workflow.action.FlowManageAction","delRecord","ObjectNo="+objectNo+",ObjectType="+objectType);
return returnValue;
}
};
var AsApply = {
getNextBusinessInfo:function(objectNo,objectType){
var resultMessage = RunJavaMethod("com.amarsoft.app.als.process.action.ApplyManageAction","getNextBusinessInfo","ObjectNo="+objectNo+",ObjectType="+objectType);
if(!resultMessage){
alert("下一阶段业务信息为空!");
return;
}else{
return resultMessage;
}
}
};
/**
* 任务处理平台TaskViewTab
* ghShi
* 2014/05/10
*/
var AsTaskView={
/**
* 非流程模式的任务处理,例如合同登记
* @param taskID-定义的任务编号-【codeTaskViewTab】
* @param objectNo-对象编号
* @param objectType-对象类型
* @param viewNo-视图权限
*/
commontaskView:function(taskID,objectNo,objectType,viewID){
var param = "TaskID="+taskID+"&ObjectType="+objectType+"&ObjectNo="+objectNo+"&ViewID="+viewID;
OpenComp("TaskViewTab","/Common/TaskViewTab/CommonTaskViewTab.jsp", param, "_blank", "");
},
/**
* 流程申请阶段的任务处理,例如授信申请
* @param taskNo-流程任务流水号
* @param objectNo-对象编号
* @param objectType-对象类型
* @param viewNo-视图权限
*/
flowApplytaskView:function(objectNo,objectType,viewID){
var param = "ObjectType="+objectType+"&ObjectNo="+objectNo+"&ViewID="+viewID;
OpenComp("TaskViewTab","/Common/TaskViewTab/FlowApplyTaskViewTab.jsp", param, "_blank", "");
},
/**
* 流程批复阶段的任务处理,例如审批管理
* @param taskNo-流程任务流水号
* @param objectNo-对象编号
* @param objectType-对象类型
* @param viewNo-视图权限
*/
flowApprovetaskView:function(taskNo,viewID){
var param = "TaskNo="+taskNo+"&ViewID="+viewID;
OpenComp("TaskViewTab","/Common/TaskViewTab/FlowApproveTaskViewTab.jsp", param, "_blank", "");
}
};
var AsReport={
getCurDocID:function(objectNo,objectType){
var docID = RunJavaMethod("com.amarsoft.app.als.report.action.GetReportAction","getReportDocID","ObjectNo="+objectNo+",ObjectType="+objectType);
return docID;
},
isExistFile:function(objectNo,objectType){
var flag = RunJavaMethod("com.amarsoft.app.als.report.action.GetReportAction","isExistFile","ObjectNo="+objectNo+",ObjectType="+objectType);
if(flag == "FALSE"){
return false;
}else{
return true;
}
},
viewReport:function(objectNo,objectType){
var docID = this.getCurDocID(objectNo, objectType);
if (!docID){
alert(getBusinessMessage('505'));//尽职调查报告还未填写,请先填写尽职调查报告再查看!
return;
}
if(!this.isExistFile(objectNo,objectType)){
alert("尽职调查报告还未生成,请先生成尽职调查报告再查看!");
return;
}
var CurOpenStyle = "width=720,height=540,top=20,left=20,toolbar=no,scrollbars=yes,resizable=yes,status=yes,menubar=no,";
OpenPage("/FormatDoc/PreviewFile.jsp?DocID="+sDocID+"&ObjectNo="+sObjectNo+"&ObjectType="+sObjectType,"_blank02",CurOpenStyle);
}
};