| 1 |
- MWF.xDesktop.requireApp("Template","MForm",null,false);MWF.xApplication.Attendance.AppSetting=new Class({Extends:MWF.widget.Common,options:{style:"default"},initialize:function(e,t,i){this.setOptions(i);this.app=e;this.path="/x_component_Attendance/$AppSetting/";this.cssPath="/x_component_Attendance/$AppSetting/"+this.options.style+"/css.wcss";this._loadCss();this.actions=t;this.load()},load:function(){this.app.restActions.listSetting(function(e){if(e.data&&e.data.length>0){this.data=e.data}}.bind(this),null,false);if(!this.data){this.data=[]}},decodeData:function(e){var t={};this.dataJson={};e.each(function(e){t[e.configCode]=e.configValue;this.dataJson[e.configCode]=e}.bind(this));return t},encodeData:function(e,t){var i=[];for(var s in t){if(this.itemTemplate[s]){var a=false;for(var n=0;n<e.length;n++){if(e[n].configCode==s){a=true;e[n].configValue=t[s];i.push(Object.clone(e[n]))}}if(!a){i.push({configCode:s,configValue:t[s],configName:this.itemTemplate[s].text})}}}return i},open:function(e){this.isNew=false;this.isEdited=false;this._open()},create:function(){this.isNew=true;this._open()},edit:function(){this.isEdited=true;this._open()},_open:function(){this.createMarkNode=new Element("div",{styles:this.css.createMarkNode,events:{mouseover:function(e){e.stopPropagation()},mouseout:function(e){e.stopPropagation()}}}).inject(this.app.content,"after");this.createAreaNode=new Element("div",{styles:this.css.createAreaNode});this.createNode();this.createAreaNode.inject(this.createMarkNode,"after");this.createAreaNode.fade("in");this.setCreateNodeSize();this.setCreateNodeSizeFun=this.setCreateNodeSize.bind(this);this.addEvent("resize",this.setCreateNodeSizeFun)},createNode:function(){var e=this;this.createNode=new Element("div",{styles:this.css.createNode}).inject(this.createAreaNode);this.createContainerNode=new Element("div",{styles:this.css.createContainerNode}).inject(this.createNode);this.setScrollBar(this.createContainerNode);this.createFormNode=new Element("div",{styles:this.css.createFormNode}).inject(this.createContainerNode);this.createTableContainer=new Element("div",{styles:this.css.createTableContainer}).inject(this.createFormNode);this.createTableArea=new Element("div",{styles:this.css.createTableArea}).inject(this.createTableContainer);var t=new Element("table",{width:"100%",border:"0",cellpadding:"5",cellspacing:"0",styles:this.css.editTable,class:"editTable"}).inject(this.createTableArea);var i=this.decodeData(this.data);var s="<table width='100%' bordr='0' cellpadding='5' cellspacing='0' styles='formTable'>"+"<tr><td colspan='4' styles='formTableHead'>系统设置</td></tr>"+"<tr><td styles='formTableTitle' lable='APPEALABLE'></td>"+" <td styles='formTableValue' item='APPEALABLE'></td>"+"<tr><td styles='formTableTitle' lable='APPEAL_AUDITOR_TYPE'></td>"+" <td styles='formTableValue' item='APPEAL_AUDITOR_TYPE'></td>"+"<tr item='valueArea' style='display:"+(i.APPEAL_AUDITOR_TYPE=="汇报对象"?"none":"")+"' ><td styles='formTableTitle' lable='APPEAL_AUDITOR_VALUE'></td>"+" <td styles='formTableValue' item='APPEAL_AUDITOR_VALUE'></td>"+"</table>";this.createTableArea.set("html",s);this.itemTemplate={APPEALABLE:{text:"申诉及审批功能启用状态",type:"select",value:i.APPEALABLE||"true",selectText:["开启","关闭"],selectValue:["true","false"]},APPEAL_AUDITOR_TYPE:{text:"申诉审核人确定方式",type:"select",value:i.APPEAL_AUDITOR_TYPE,selectValue:this.dataJson.APPEAL_AUDITOR_TYPE.selectContent.split("|"),event:{change:function(e,t){this.createTableArea.getElement("[item='valueArea']").setStyle("display",e.getValue()=="汇报对象"?"none":"")}.bind(this)}},APPEAL_AUDITOR_VALUE:{text:"申诉审核人确定内容",type:"text",value:i.APPEAL_AUDITOR_VALUE,defaultValue:"直属领导"}};this.document=new MForm(this.createTableArea,this.data,{style:"popup",isEdited:this.isEdited||this.isNew,itemTemplate:this.itemTemplate},this.app,this.css);this.document.load();this.cancelActionNode=new Element("div",{styles:this.css.createCancelActionNode,text:"取消"}).inject(this.createFormNode);this.cancelActionNode.addEvent("click",function(e){this.cancelCreate(e)}.bind(this));if(this.isNew||this.isEdited){this.createOkActionNode=new Element("div",{styles:this.css.createOkActionNode,text:"确定"}).inject(this.createFormNode);this.createOkActionNode.addEvent("click",function(e){this.okCreate(e)}.bind(this))}},setCreateNodeSize:function(){var e=this.app.node.getSize();var t=this.app.content.getSize();var i="470";var s="600";this.createAreaNode.setStyles({width:""+e.x+"px",height:""+e.y+"px"});var a=i;var n=(e.y-i)/2;this.createNode.setStyles({height:""+a+"px","margin-top":""+n+"px",width:""+s+"px"});this.createContainerNode.setStyles({height:""+a+"px"});var o=this.createIconNode?this.createIconNode.getSize():{x:0,y:0};var r=a-o.y-60;this.createFormNode.setStyles({height:""+r+"px","margin-top":""+60+"px"})},cancelCreate:function(e){this.createMarkNode.destroy();this.createAreaNode.destroy();delete this},okCreate:function(e){var t=this.document.getResult(true,",",true,false,false);if(t){var i=this.encodeData(this.data,t);this.save(i)}},save:function(e){var t=true;e.each(function(e){this.app.restActions.saveSetting(e,function(e){if(e.type=="ERROR"){this.app.notice(e.message,"error");t=false}}.bind(this),null,false)}.bind(this));if(t){this.createMarkNode.destroy();this.createAreaNode.destroy();this.app.notice("保存成功","success")}}});
|