前台动态创建控件设置ID,事件等实例
代码中包括:动态生成各个控件(textbox,div等),动态设置样式,属性,id,前台map创建,dom元素操作等。
//自定义前台MapfunctionMap(){this.elements=newArray();//获取MAP元素个数this.size=function(){returnthis.elements.length;};//判断MAP是否为空this.isEmpty=function(){return(this.elements.length<1);};//删除MAP所有元素this.clear=function(){this.elements=newArray();};//向MAP中增加元素(key,value)this.put=function(_key,_value){this.elements.push({key:_key,value:_value});};//删除指定KEY的元素,成功返回True,失败返回Falsethis.remove=function(_key){varbln=false;try{for(i=0;i<this.elements.length;i++){if(this.elements[i].key==_key){this.elements.splice(i,1);returntrue;}}}catch(e){bln=false;}returnbln;};//获取指定KEY的元素值VALUE,失败返回NULLthis.get=function(_key){try{for(i=0;i<this.elements.length;i++){if(this.elements[i].key==_key){returnthis.elements[i].value;}}}catch(e){returnnull;}};//获取指定索引的元素(使用element.key,element.value获取KEY和VALUE),失败返回NULLthis.element=function(_index){if(_index<0||_index>=this.elements.length){returnnull;}returnthis.elements[_index];};//判断MAP中是否含有指定KEY的元素this.containsKey=function(_key){varbln=false;try{for(i=0;i<this.elements.length;i++){if(this.elements[i].key==_key){bln=true;}}}catch(e){bln=false;}returnbln;};//判断MAP中是否含有指定VALUE的元素this.containsValue=function(_value){varbln=false;try{for(i=0;i<this.elements.length;i++){if(this.elements[i].value==_value){bln=true;}}}catch(e){bln=false;}returnbln;};//获取MAP中所有VALUE的数组(ARRAY)this.values=function(){vararr=newArray();for(i=0;i<this.elements.length;i++){arr.push(this.elements[i].value);}returnarr;};//获取MAP中所有KEY的数组(ARRAY)this.keys=function(){vararr=newArray();for(i=0;i<this.elements.length;i++){arr.push(this.elements[i].key);}returnarr;};}//前台获取uuidvargenerateUUID=function(){vard=newDate().getTime();varuuid='xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g,function(c){varr=(d+Math.random()*16)%16|0;d=Math.floor(d/16);return(c=='x'?r:(r&0x3|0x8)).toString(16);});returnuuid;};functioncomboLoadFilter(data){//下拉框数据过滤if(data&&data.status==0){returndata.data;}else{//$.messager.alert('错误信息',data.msg,'error');}return[];}functionaddGroupDefaultValue(data){if(data&&data.status==0){//vardefaultValue={groupId:"-1",groupName:"清空"};//data.data.push(defaultValue);returndata.data;}else{//$.messager.alert('错误信息',data.msg,'error');}return[];}//全局常量varsubFlowNodeSelectedId;//配置子流程-选择的子流程节点(终极节点)varaddMap=newMap();//配置子流程-存储添加的节点信息(key-添加的空节点idvalue-被添加的节点id集合)varisValidatePCR=false;/*页面初始化*/$(function(){getUser();initProvince();initEtypeComplicated();initProc();initElement();initMachinekind();$("#easy").show();$("#diff").hide();});functionchange(record){if(record.id==0){$("#easy").show();$("#diff").hide();}else{$("#diff").show();$("#easy").hide();}}functiongetUser(){if("6"==parent.userInfo.identityType){varcode=parent.userInfo.code;$.ajax({type:'POST',url:sCtx+'departmentsibinfo/info',data:{code:code},async:false,success:function(data){if("市级"==data.data.dlevel||"省级"==data.data.dlevel){isValidatePCR=true;}else{$('#address').hide();}}});}else{$('#address').hide();}}//初始化省市区级联下拉框functioninitProvince(){$.ajax({type:'POST',url:sCtx+'iDictionary/getAllPRO',async:false,success:function(data){$("#province").combobox({data:data.data,valueField:'dictId',textField:'dictName',onSelect:function(record){clearCity();clearArea();loadCity(record.dictId);}});}});}//初始化条件-复杂中的控件functioninitEtypeComplicated(){$.ajax({type:'POST',url:sCtx+'iDictionary/dicList',async:false,data:{typeCode:'MACHINEKIND'},success:function(data){$("#etype").combobox({data:data.data,valueField:'dictId',textField:'dictName',onSelect:function(record){getParameter();clearEcategory();clearEvariety();loadEcategory(record.dictId);//clearParameter2Div();}});}});}//初始化子流程模板中控件functioninitProc(){$.ajax({type:'POST',url:sCtx+'workflowexsi/proc',async:false,success:function(data){$("#cprocdefid").combobox({data:data.data,valueField:'key',textField:'name',onSelect:select_cprocdefid_onSelect,onLoadSuccess:function(){$("#cprocdefid").combobox('select',data.data[0].key);}});}});}//子流程模板下拉菜单选择事件functionselect_cprocdefid_onSelect(d){vardata=d.elements;varcprocdefidtemplate=document.getElementById("cprocdefidtemplate");cprocdefidtemplate.innerHTML="";for(variindata){if(data[i].flag=="0"){vardiv=getUltimateNodeDiv(data[i]);cprocdefidtemplate.appendChild(div);}elseif(data[i].flag=="1"){vardiv=getEmptyNodeDiv(data[i]);cprocdefidtemplate.appendChild(div);}}$.parser.parse("#cprocdefidtemplate");addMap.clear();}//生成空节点vargetEmptyNodeDiv=function(data){vardiv=document.createElement("div");div.id=data.id+"_div";varaddjiedian=document.createElement("a");addjiedian.innerHTML="添加节点";addjiedian.setAttribute("class","easyui-linkbutton");addjiedian.href="#";addjiedian.onclick=function(){addSubNode(data.id)}div.appendChild(addjiedian);div.setAttribute("class","add_div");returndiv;}//生成终极节点vargetUltimateNodeDiv=function(data){//节点的最外层divvartable=document.createElement("table");//div.;table.setAttribute("class","flow-table-smallBlue");vardivId=data.id+"_div"table.id=divId;//节点第一行namevartr_top=document.createElement("tr");vartd_top_left=document.createElement("td");vartd_top_right=document.createElement("td");//div_top.;varlabel_name=document.createElement("label");label_name.innerHTML="名称:";td_top_right.innerHTML=data.name;td_top_left.appendChild(label_name);tr_top.appendChild(td_top_left);tr_top.appendChild(td_top_right);table.appendChild(tr_top);td_top_left.setAttribute("class","tag");td_top_right.setAttribute("class","content");//节点第二行人vartr_middle=document.createElement("tr");vartd_middle_left=document.createElement("td");vartd_middle_right=document.createElement("td");//div_middle.;varlabel_person_left=document.createElement("label");//varlabel_person_right=document.createElement("label");varright_input=document.createElement("input");//right_input.type="input";right_input.id=data.id+"groupsCombobox";right_input.style.cssText="width:200px";right_input.setAttribute("data-options","panelHeight:'auto',required:false,editable:false,valueField:'groupId',textField:'groupName',url:sCtx+'workflowexsi/group',loadFilter:addGroupDefaultValue,onSelect:setGroupsValue");right_input.setAttribute("class","easyui-combobox");label_person_left.id=data.id+"_label_person_left";//label_person_right.id=data.id+"_label_person_right";label_person_left.innerHTML="受理组:";td_middle_left.appendChild(label_person_left);//td_middle_right.appendChild(label_person_right);td_middle_right.appendChild(right_input);tr_middle.appendChild(td_middle_left);tr_middle.appendChild(td_middle_right);table.appendChild(tr_middle);td_middle_left.setAttribute("class","tag");td_middle_right.setAttribute("class","content");//节点第三行组//vardiv_bottom=document.createElement("div");//div_bottom.;//varlabel_group=document.createElement("label");//label_group.id=data.id+"_label_group";//label_group.innerHTML="组:";//div_bottom.appendChild(label_group);//div.appendChild(div_bottom);vartr_bottom=document.createElement("tr");vartd_bottom_left=document.createElement("td");vartd_bottom_right=document.createElement("td");//div_bottom.;varlabel_after=document.createElement("label");label_after.id=data.id+"_label_after";label_after.innerHTML="自动审批:";td_bottom_left.appendChild(label_after);tr_bottom.appendChild(td_bottom_left);varinput_after=document.createElement("input");input_after.id=data.id+"_input_after";input_after.style.cssText="width:50px";input_after.setAttribute("class","easyui-numberbox");input_after.setAttribute("data-options","min:1");td_bottom_right.appendChild(input_after);varlabel_after_day=document.createElement("label");label_after_day.innerHTML="天";td_bottom_right.appendChild(label_after_day);tr_bottom.appendChild(td_bottom_right);td_bottom_left.setAttribute("class","tag");td_bottom_right.setAttribute("class","content");$.parser.parse(tr_bottom);table.appendChild(tr_bottom);//内部隐藏存储数据的隐藏控件varhiddenInput_p=document.createElement("input");hiddenInput_p.type="hidden";hiddenInput_p.name=data.id;hiddenInput_p.className="personsValue";varhiddenInput_g=document.createElement("input");hiddenInput_g.type="hidden";hiddenInput_g.name=data.id;hiddenInput_g.className="groupsValue";varhiddenInput_a=document.createElement("input");hiddenInput_a.type="hidden";hiddenInput_a.name=data.id;hiddenInput_a.className="assigneeValue";table.appendChild(hiddenInput_p);table.appendChild(hiddenInput_g);table.appendChild(hiddenInput_a);table.onclick=function(){setPersonsGroupsValue(data.id)};//固定节点标识varhiddenInput_info=document.createElement("input");hiddenInput_info.type="hidden";hiddenInput_info.name="fixedConfig";hiddenInput_info.value=data.id;table.appendChild(hiddenInput_info);returntable;}functioncreateLabel(target,content,forCheck){varlabel=document.createElement("label");label.style="vertical-align:middle";label.innerHTML=content;if(null!=forCheck){label.setAttribute("for",forCheck);}target.appendChild(label);}functioncreateLabelFlow(target,content,forCheck){varlabel=document.createElement("label");label.style="vertical-align:middle";label.innerHTML=content;//console.log(forCheck);//console.log(content);if(null!=forCheck){label.setAttribute("for",forCheck);}vardiv=document.createElement("div");div.style.width="100px";div.style.display="inline-block";div.appendChild(label);target.appendChild(div);}//初始化流程节点functioninitElement(){$.ajax({url:sCtx+'workflowexsi/element',type:"post",async:true,dataType:"json",success:function(result){if(result.status==0){$.each(result.data,function(index,flowValue){createElements(flowValue);});}else{//$.messager.alert('错误信息',result.msg,'error');}},error:function(request,msg,exception){}});}functioncreateElements(flowValue){varol=document.getElementById("ol");varflowTable=document.getElementById("flowTable");varli=document.createElement("li");varliRight=document.createElement("li");vartr=document.createElement("tr");vartd1=document.createElement("td");vartd2=document.createElement("td");varhead=flowValue.name+":";createLabel(li,head);td1.setAttribute("class","flowleft");td1.appendChild(li);$.each(flowValue.elements,function(index,value){varinput=document.createElement("input");input.type="checkbox";input.style="vertical-align:middle";input.id=flowValue.key+'_'+value.id;input.name="flowNode";input.value=flowValue.key+'_'+flowValue.name+','+value.id+'_'+value.name;if(value.flag==0){input.setAttribute("disabled","disabled");}liRight.appendChild(input);//li.appendChild(input);varhead=value.name+" ";varlabelFor=flowValue.key+'_'+value.id;createLabelFlow(liRight,head,labelFor);});td2.appendChild(liRight);flowTable.appendChild(tr);tr.appendChild(td1);td2.setAttribute("class","flowright");tr.appendChild(td2);//ol.appendChild(li);}//初始化简单配置functioninitMachinekind(){$.ajax({url:sCtx+'iDictionary/dicList',type:"post",async:true,data:{typeCode:'MACHINEKIND'},dataType:"json",success:function(result){if(result.status==0){createParameter1(result);}else{//$.messager.alert('错误信息',result.msg,'error');}},error:function(request,msg,exception){}});}functioncreateParameter1(result){varparameters=document.getElementById("parameters_1");$.each(result.data,function(index,value){vardiv=document.createElement("div");varinput=document.createElement("input");input.type="checkbox";input.style="vertical-align:middle";input.id=value.dictName;input.name="param1";input.value=value.dictId;div.appendChild(input);varlabel=value.id+" ";varlabelName=value.dictName;varlabelFor=value.dictName;createLabel(div,labelName,labelFor);div.setAttribute("class","parameters1");parameters.appendChild(div);});}functionsetPersonsGroupsValue(id){subFlowNodeSelectedId=id;//$('#personsCombobox').combobox('clear');//$('#groupsCombobox').combobox('clear');}functionsetPersonsValue(){if(subFlowNodeSelectedId){$('input:hidden[name="'+subFlowNodeSelectedId+'"][class="groupsValue"]').removeAttr('value');$('input:hidden[name="'+subFlowNodeSelectedId+'"][class="assigneeValue"]').removeAttr('value');varhiddenValue=$('#personsCombobox').combobox('getValues');$('input:hidden[name="'+subFlowNodeSelectedId+'"][class="personsValue"]').val();$('input:hidden[name="'+subFlowNodeSelectedId+'"][class="personsValue"]').val(hiddenValue);if(document.getElementById(subFlowNodeSelectedId+"_label_person_left")&&document.getElementById(subFlowNodeSelectedId+"_label_person_right")){document.getElementById(subFlowNodeSelectedId+"_label_person_left").innerHTML="受理人:";document.getElementById(subFlowNodeSelectedId+"_label_person_right").innerHTML=$('#personsCombobox').combobox('getText');}}}functionsetGroupsValue(record){if(subFlowNodeSelectedId){if($('input:hidden[name="'+subFlowNodeSelectedId+'"][class="assigneeValue"]').val()){if("-1"==record.groupId){return;}else{$('input:hidden[name="'+subFlowNodeSelectedId+'"][class="assigneeValue"]').removeAttr('value');varhiddenValue=$('#'+subFlowNodeSelectedId+'groupsCombobox').combobox('getValues');$('input:hidden[name="'+subFlowNodeSelectedId+'"][class="groupsValue"]').val();$('input:hidden[name="'+subFlowNodeSelectedId+'"][class="personsValue"]').val();$('input:hidden[name="'+subFlowNodeSelectedId+'"][class="groupsValue"]').val(hiddenValue);//if(document.getElementById(subFlowNodeSelectedId+"_label_person_left")){//document.getElementById(subFlowNodeSelectedId+"_label_person_left").innerHTML="受理组:";//document.getElementById(subFlowNodeSelectedId+"_label_person_right").innerHTML=$('#'+subFlowNodeSelectedId+'groupsCombobox').combobox('getText');//}}}else{//if("-1"==record.groupId){//$('input:hidden[name="'+subFlowNodeSelectedId+'"][class="groupsValue"]').removeAttr("value");//if(document.getElementById(subFlowNodeSelectedId+"_label_person")){//document.getElementById(subFlowNodeSelectedId+"_label_person").innerHTML="受理组:";//}//}else{$('input:hidden[name="'+subFlowNodeSelectedId+'"][class="assigneeValue"]').removeAttr('value');$('input:hidden[name="'+subFlowNodeSelectedId+'"][class="personsValue"]').removeAttr('value');varhiddenValue=$('#'+subFlowNodeSelectedId+'groupsCombobox').combobox('getValues');$('input:hidden[name="'+subFlowNodeSelectedId+'"][class="groupsValue"]').val();$('input:hidden[name="'+subFlowNodeSelectedId+'"][class="groupsValue"]').val(hiddenValue);//if(document.getElementById(subFlowNodeSelectedId+"_label_person_left")){//document.getElementById(subFlowNodeSelectedId+"_label_person_left").innerHTML="受理组:";//document.getElementById(subFlowNodeSelectedId+"_label_person_right").innerHTML=$('#'+subFlowNodeSelectedId+'groupsCombobox').combobox('getText');//}//}}}}functionaddSubNode(id){varaddId=generateUUID();vartable=document.createElement("table");table.setAttribute("class","flow-table-smallBlue");//div.;vartableId=addId+"_div"table.id=tableId;vartr_top=document.createElement("tr");vartd_top_left=document.createElement("td");vartd_top_right=document.createElement("td");td_top_left.setAttribute("class","tag");td_top_right.setAttribute("class","content");//tr_top.;varlabel_name=document.createElement("label");label_name.innerHTML="名称:";td_top_left.appendChild(label_name);tr_top.appendChild(td_top_left);varinput_name=document.createElement("input");input_name.id=addId+"_name_id";input_name.style.cssText="width:200px";input_name.setAttribute("class","easyui-textbox");td_top_right.appendChild(input_name);tr_top.appendChild(td_top_right);$.parser.parse(tr_top);table.appendChild(tr_top);vartr_middle=document.createElement("tr");vartd_middle_left=document.createElement("td");vartd_middle_right=document.createElement("td");td_middle_left.setAttribute("class","tag");td_middle_right.setAttribute("class","content");//tr_middle.;varlabel_person_left=document.createElement("label");//varlabel_person_right=document.createElement("label");varright_input=document.createElement("input");//right_input.type="input";right_input.id=addId+"groupsCombobox";right_input.style.cssText="width:200px";right_input.setAttribute("data-options","panelHeight:'auto',required:false,editable:false,valueField:'groupId',textField:'groupName',url:sCtx+'workflowexsi/group',loadFilter:addGroupDefaultValue,onSelect:setGroupsValue");right_input.setAttribute("class","easyui-combobox");label_person_left.id=addId+"_label_person_left";//label_person_right.id=addId+"_label_person_right";label_person_left.innerHTML="受理组:";td_middle_left.appendChild(label_person_left);td_middle_right.appendChild(right_input);tr_middle.appendChild(td_middle_left);tr_middle.appendChild(td_middle_right);table.appendChild(tr_middle);//vardiv_bottom=document.createElement("div");//div_bottom.;//varlabel_group=document.createElement("label");//label_group.id=addId+"_label_group";//label_group.innerHTML="组:";//div_bottom.appendChild(label_group);//div.appendChild(div_bottom);vartr_bottom=document.createElement("tr");vartd_bottom_left=document.createElement("td");vartd_bottom_right=document.createElement("td");td_bottom_left.setAttribute("class","tag");td_bottom_right.setAttribute("class","content");//div_bottom.;varlabel_after=document.createElement("label");label_after.id=addId+"_label_after";label_after.innerHTML="自动审批:";td_bottom_left.appendChild(label_after);tr_bottom.appendChild(td_bottom_left);varinput_after=document.createElement("input");input_after.id=addId+"_input_after";input_after.style.cssText="width:50px";input_after.setAttribute("class","easyui-numberbox");input_after.setAttribute("data-options","min:1");td_bottom_right.appendChild(input_after);tr_bottom.appendChild(td_bottom_right);varlabel_after_day=document.createElement("label");label_after_day.innerHTML="天";td_bottom_right.appendChild(label_after_day);$.parser.parse(tr_bottom);table.appendChild(tr_bottom);varhiddenInput_p=document.createElement("input");hiddenInput_p.type="hidden";hiddenInput_p.name=addId;hiddenInput_p.className='personsValue';varhiddenInput_g=document.createElement("input");hiddenInput_g.type="hidden";hiddenInput_g.name=addId;hiddenInput_g.className='groupsValue';varhiddenInput_a=document.createElement("input");hiddenInput_a.type="hidden";hiddenInput_a.name=addId;hiddenInput_a.className='assigneeValue';table.appendChild(hiddenInput_p);table.appendChild(hiddenInput_g);table.appendChild(hiddenInput_a);varhiddenInput_parent=document.createElement("input");hiddenInput_parent.type="hidden";hiddenInput_parent.id=addId+"_parentId";hiddenInput_parent.value=id;table.appendChild(hiddenInput_parent);table.setAttribute("onclick","setPersonsGroupsValue('"+addId+"')");varaddjiedian=document.createElement("a");varaddjiedian_div=document.createElement("div");addjiedian_div.setAttribute("class","del_div");addjiedian.innerHTML="删除节点";addjiedian.href="#";addjiedian.setAttribute("class","easyui-linkbutton");addjiedian.setAttribute("data-options","plain:true");addjiedian.setAttribute("onclick","delSubNode('"+addId+"','"+id+"')");addjiedian_div.appendChild(addjiedian);td_top_right.appendChild(addjiedian_div);varhiddenInput_info=document.createElement("input");hiddenInput_info.type="hidden";hiddenInput_info.name="listConfig";hiddenInput_info.value=id+"_"+addId;table.appendChild(hiddenInput_info);if(addMap.containsKey(id)){varlist=addMap.get(id);id=list[list.length-1];list.push(addId);}else{varlist=newArray();list.push(addId);addMap.put(id,list);}varclickDiv=document.getElementById(id+"_div");clickDiv.parentNode.insertBefore(table,clickDiv.nextSibling);$.parser.parse('#'+addId+"_div");}functiondelSubNode(id,parentId){vardivId=id+"_div";document.getElementById(divId).remove();varlist=addMap.get(parentId);if(list.length==1){addMap.remove(parentId);}else{vardelIndex=0;for(variinlist){if(list[i]==id){list.splice(i,1);return;}}}}functionloadEcategory(pid){varparams={"typeCode":"MACHINETYPE","pid":pid};if(pid!=""){$.ajax({type:'POST',url:sCtx+'iDictionary/dicList',data:params,async:false,success:function(data){searchBoxCityInfo=data.data;$("#ecategory").combobox({data:searchBoxCityInfo,valueField:'dictId',textField:'dictName',onSelect:function(record){getParameter();clearEvariety();loadEvariety(record.dictId);//clearParameter2Div();}});}});}elseif(pid==""){$("#ecategory").combobox("clear");$("#ecategory").combobox("loadData","");$("#evariety").combobox("clear");$("#evariety").combobox("loadData","");//clearParameter2Div();}}functionloadEvariety(pid){varparams={"typeCode":"MACHINEVARIETY","pid":pid};if(pid!=""){$.ajax({type:'POST',url:sCtx+'iDictionary/dicList',data:params,async:false,success:function(data){searchBoxAreaInfo=data.data;$("#evariety").combobox({data:searchBoxAreaInfo,valueField:'dictId',textField:'dictName',onSelect:function(record){getParameter();//clearParameter2Div();}});}});}elseif(pid==""){$("#evariety").combobox("clear");$("#evariety").combobox("loadData","");//clearParameter2Div();}};functionclearParameter2Div(){document.getElementById("parameters_2").innerHTML="";}functionclearEcategory(){$("#ecategory").combobox("clear");$("#ecategory").combobox("loadData","");}functionclearEvariety(){$("#evariety").combobox("clear");$("#evariety").combobox("loadData","");}functionloadCity(pid){varparams={"pid":pid};if(pid!=""){$.ajax({type:'POST',url:sCtx+'iDictionary/getAllCITY',data:params,async:false,success:function(data){searchBoxCityInfo=data.data;$("#city").combobox({data:searchBoxCityInfo,valueField:'dictId',textField:'dictName',onSelect:function(record){clearArea();loadArea(record.dictId);}});}});}elseif(pid==""){$("#city").combobox("clear");$("#city").combobox("loadData","");$("#area").combobox("clear");$("#area").combobox("loadData","");}}functionloadArea(pid){varparams={"pid":pid};if(pid!=""){$.ajax({type:'POST',url:sCtx+'iDictionary/getAllREG',data:params,async:false,success:function(data){searchBoxAreaInfo=data.data;$("#area").combobox({data:searchBoxAreaInfo,valueField:'dictId',textField:'dictName'});}});}elseif(pid==""){$("#area").combobox("clear");$("#area").combobox("loadData","");}};functionclearCity(){$("#city").combobox("clear");$("#city").combobox("loadData","");}functionclearArea(){$("#area").combobox("clear");$("#area").combobox("loadData","");}vargetProcdefs=function(){varmap=newMap();$('input:checkbox[name="flowNode"]:checked').each(function(i,value){varmain=value.value.split(',')[0];varelement=value.value.split(',')[1];if(map.containsKey(main)){varele=newObject();ele.id=element.split('_')[0];ele.name=element.split('_')[1];map.get(main).push(ele);}else{varele=newObject();ele.id=element.split('_')[0];ele.name=element.split('_')[1];varlist=newArray();list.push(ele);map.put(main,list);}});varresult=newArray();for(vari=0;i<map.size();i++){varmainBean=newObject();mainBean.key=map.element(i).key.split("_")[0];mainBean.name=map.element(i).key.split("_")[1];mainBean.elements=map.element(i).value;result.push(mainBean);}returnJSON.stringify(result);}functionaddpost(){if(!$('#name').textbox('isValid')){$.messager.alert('系统提示',"未命名配置名",'info');return;}if(0==$('input:checkbox[name="flowNode"]:checked').length){$.messager.alert('系统提示',"未选择节点",'info');return;}if(!validateParameterValue()){$.messager.alert('系统提示',"未选择条件",'info');return;}if(!validatefixedNode()){$.messager.alert('系统提示',"固定节点配置有误",'info');return;}if(!validatelistNode()){$.messager.alert('系统提示',"新增节点配置有误",'info');return;}varvalidate=$("#cprocdefid").combobox('getValue');console.log(validate);if(validate==""){$.messager.alert('系统提示',"未选择子流程模板",'info');return;}$.ajax({type:"post",url:sCtx+"workflowexsi/add",data:JSON.stringify(GetJsonData()),contentType:"application/json;charset=utf-8",dataType:"json",success:function(data){if(data.status==0){clearing();$.messager.alert('系统提示',data.msg,'info');}else{$.messager.alert('错误信息',data.msg,'error');}}});functionGetJsonData(){varjson={"result":$('#cprocdefid').combobox('getValue'),"procdefs":getProcdefs(),"name":$.trim($('#name').textbox('getValue')),"config":getConfig(),"strategy":getParamConfig(),"etype":$('#etype').combobox('getValue'),"ecategory":$('#ecategory').combobox('getValue'),"evariety":$('#evariety').combobox('getValue'),"fixedconfig":getFixedconfig(),"listconfig":getListconfig()};returnjson;}}//校验固定子流程模板中人员或组的设置varvalidatefixedNode=function(){varflag=true;$('input:hidden[name="fixedConfig"]').each(function(i,data){varname=data.value;varperson=$('input:hidden[name='+name+'][class="personsValue"]').attr('value');vargroup=$('input:hidden[name='+name+'][class="groupsValue"]').attr('value');varassignee=$('input:hidden[name='+name+'][class="assigneeValue"]').attr('value');if(assignee&&""!=assignee){flag=true;}elseif(person&&""!=person){flag=true;}else{if(group&&""!=group){flag=true;}else{flag=false;returnflag;}}});returnflag;}//校验新增子流程模板中人员或组的设置varvalidatelistNode=function(){varflag=true;$('input:hidden[name="listConfig"]').each(function(i,data){varname=data.value.split("_")[1];varperson=$('input:hidden[name='+name+'][class="personsValue"]').attr('value');vargroup=$('input:hidden[name='+name+'][class="groupsValue"]').attr('value');varassignee=$('input:hidden[name='+name+'][class="assigneeValue"]').attr('value');varsubNodeName=$('#'+name+"_name_id").val();if($.trim(subNodeName)==""){flag=false;}elseif(assignee&&""!=assignee){flag=true;}elseif(person&&""!=person){flag=true;}else{if(group&&""!=group){flag=true;}else{flag=false;returnflag;}}});returnflag;}//获取固定节点vargetFixedconfig=function(){varflag=false;varresult={};$('input:hidden[name="fixedConfig"]').each(function(i,data){varname=data.value;varobj=newObject();//obj.users=$('input:hidden[name='+name+'][class="personsValue"]').val();obj.groups=$('input:hidden[name='+name+'][class="groupsValue"]').val();//obj.assignee=$('input:hidden[name='+name+'][class="assigneeValue"]').val();obj.after=$('#'+name+'_input_after').val();varkey=name;result[key]=obj;flag=true;});if(flag){returnJSON.stringify(result);}returnnull;}//获取新增节点vargetListconfig=function(){functionlistAddObj(name,list){varobj=newObject();varsubNodeName=name+"_name_id";obj.name=$('#'+subNodeName).textbox('getValue');//obj.users=$('input:hidden[name='+name+'][class="personsValue"]').val();obj.groups=$('input:hidden[name='+name+'][class="groupsValue"]').val();//obj.assignee=$('input:hidden[name='+name+'][class="assigneeValue"]').val();obj.after=$('#'+name+'_input_after').val();list.push(obj);}varmap=newMap();$('input:hidden[name="listConfig"]').each(function(i,data){varpid=data.value.split("_")[0];varname=data.value.split("_")[1];if(map.containsKey(pid)){varlist=map.get(pid);listAddObj(name,list);}else{varlist=newArray();listAddObj(name,list);map.put(pid,list);}});varresult={};varkeys=map.keys();for(variinkeys){varkey=keys[i];vartt=map.get(key);result[key]=tt;}if(!map.isEmpty()){returnJSON.stringify(result);}returnnull;}//获取配置类型vargetParamConfig=function(){varindex=$('#paramConfig').combobox('getValue');//varindex=$('#paramConfig').tabs('getTabIndex',tab);returnindex;}//动态生成复杂条件functiongetParameter(){varetype=$('#etype').combobox('getValue');varecategory=$('#ecategory').combobox('getValue');varevariety=$('#evariety').combobox('getValue');vargetNumberInput=function(key,index){varhtml="";varid="";if(index==0){id=key+"_start";}elseif(index==1){id=key+"_end";}html+='<inputid="'+id+'"name="param2"class="easyui-numberboxinputShort"precision="2">';varinput=$(html)[0];//varinput=document.createElement("input");//input.style.cssText="width:65px";//input.className="easyui-numberboxinputShort";//input.name="param2";//if(index==0){//input.id=key+"_start";//}elseif(index==1){//input.id=key+"_end";//}returninput;}vargetParametersDiv=function(key,d){vardiv=document.createElement("div");//div.style.cssText="width:202px";arr=d[key].split(",");//varlabel=document.createElement("label");//label.id=key;//varvalue=d[key];//label.innerHTML=value+":";//label.className="parameterHead";//div.appendChild(label);varnumberInput1=getNumberInput(key,0);div.appendChild(numberInput1);varlabel_line=document.createElement("label");label_line.innerHTML="-";//div.appendChild(label_line);vardivline=document.createElement("div");divline.appendChild(label_line);divline.setAttribute("class","parametersLine");div.appendChild(divline);varnumberInput2=getNumberInput(key,1);div.appendChild(numberInput2);vardiv_unit=document.createElement("div");div_unit.setAttribute("class","div_unit");varlabel_unit=document.createElement("label");label_unit.innerHTML=arr[1];div_unit.appendChild(label_unit);div.appendChild(div_unit);returndiv;}functionparemetersAddValidate(key){$('#'+key+"_start").numberbox({onChange:function(newValue,oldValue){varid=$(this).context.id.split("_")[0];varend=$('#'+id+"_end").numberbox('getValue');if(end!=""){if(parseFloat(newValue)>parseFloat(end)){$('#'+id+"_end").numberbox('setValue',newValue);}}}});$('#'+key+'_end').numberbox({onChange:function(newValue,oldValue){varid=$(this).context.id.split("_")[0];varstart=$('#'+id+"_start").numberbox('getValue');if(start!=""){if(parseFloat(newValue)<parseFloat(start)){$('#'+id+"_start").numberbox('setValue',newValue);}}}});//$('#'+key+'_start,#'+key+'_end').setAttribute("precision","2");////$('#'+key+'_start,#'+key+'_end').numberbox({////precision:2////});}$.ajax({type:"post",url:sCtx+"workflowexsi/parameter",data:{etype:etype,ecategory:ecategory,evariety:evariety},dataType:"json",success:function(data){if(data.status==0){vard=data.data;varparameters=document.getElementById("parameters_2");parameters.innerHTML="";varparametersTable=document.createElement("table");parameters.appendChild(parametersTable);parametersTable.setAttribute("class","parameters-table-smallBlue");vari=0;if(d){vararrkey=Object.keys(d);}for(varkeyind){arr=d[key].split(",");varlabel=document.createElement("label");varvalue=arr[0];label.id=key;label.innerHTML=value+":";label.className="parameterHead";i++;vardiv=getParametersDiv(key,d);if(i%2==1){vartr=document.createElement("tr");tr.id="table_tr"+ivartd1=document.createElement("td");vartd2=document.createElement("td");td1.setAttribute("class","tag");td2.setAttribute("class","content");parametersTable.appendChild(tr);tr.appendChild(td1);td1.appendChild(label);tr.appendChild(td2);td2.appendChild(div);if(d&&i==arrkey.length){vartd3=document.createElement("td");vartd4=document.createElement("td");td3.setAttribute("class","tag");td4.setAttribute("class","content");tr.appendChild(td3);tr.appendChild(td4);}}elseif(i%2==0){vartr=document.getElementById("table_tr"+(i-1));vartd1=document.createElement("td");vartd2=document.createElement("td");td1.setAttribute("class","tag");td2.setAttribute("class","content");tr.appendChild(td1);tr.appendChild(td2);td1.appendChild(label);td2.appendChild(div);}paremetersAddValidate(key);}$.parser.parse(parameters);}else{//$.messager.alert('错误信息',data.msg,'error');}}});}//获取配置条件vargetParameters2Value=function(){vararr=newArray();vars=$('label[class="parameterHead"]');for(vari=0;i<s.length;i++){varss=s[i].id;if(""!=$.trim($('#'+ss+"_start").textbox('getValue'))||""!=$.trim($('#'+ss+"_end").textbox('getValue'))){varparamValue=newObject();paramValue.id=ss;paramValue.start=$.trim($('#'+ss+"_start").textbox('getValue'));paramValue.end=$.trim($('#'+ss+"_end").textbox('getValue'));arr.push(paramValue);}}varresult=newObject();varnullFlag=false;if($('#province').combobox('getValue')!=""){varpcr=newObject();pcr.province=$('#province').combobox('getValue');pcr.city=$('#city').combobox('getValue');pcr.region=$('#area').combobox('getValue');result.area=pcr;nullFlag=true;}if(arr.length!=0){result.parameters=arr;nullFlag=true;}if(nullFlag){returnJSON.stringify(result);}returnnull;}vargetParameters1Value=function(){varids="";$('input:checkbox[name="param1"]:checked').each(function(i,checked){ids+=checked.value+",";});//去除结尾多余逗号if(ids&&ids.length>1){ids=ids.substr(0,ids.length-1);}else{returnnull;}returnids;}vargetConfig=function(){varindex=getParamConfig();varresult;if(index==0){result=getParameters1Value();}elseif(index==1){result=getParameters2Value();}returnresult;}functionclearing(){$('#addForm').form('clear');$('#name').textbox('clear');$("input[type=checkbox]").removeAttr("checked");$('#etype').combobox('unselect',$('#etype').combobox('getValue'));clearEcategory();clearEvariety();clearParameter2Div();$('#province').combobox('unselect',$('#province').combobox('getValue'));clearCity();clearArea();$("#cprocdefid").combobox('select',$("#cprocdefid").combobox('getData')[0].key);}varvalidateParameterValue=function(){if(0==getParamConfig()){vari=$("input:checkbox[name='param1']:checked").length;if(i<1)returnfalse;}elseif(1==getParamConfig()){varflag=false;$("input[name='param2']").each(function(index,data){if(data.value!=""){flag=true;}});if(isValidatePCR){varvalue=$("#province").combobox("getValue");if(value&&value!=""){flag=true;}}returnflag;}returntrue;}functionsetAssignee(){if(subFlowNodeSelectedId){$('input:hidden[name="'+subFlowNodeSelectedId+'"][class="personsValue"]').removeAttr('value');$('input:hidden[name="'+subFlowNodeSelectedId+'"][class="groupsValue"]').removeAttr('value');$('input:hidden[name="'+subFlowNodeSelectedId+'"][class="assigneeValue"]').val('申请人');if(document.getElementById(subFlowNodeSelectedId+"_label_person_left")&&document.getElementById(subFlowNodeSelectedId+"_label_person_right")){document.getElementById(subFlowNodeSelectedId+"_label_person_left").innerHTML="受理人:";document.getElementById(subFlowNodeSelectedId+"_label_person_right").innerHTML="申请人";}}}//functionshow(){//varl=validateParameter1Value();//console.info(l);//}
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。