| 1 |
- MWF.xApplication.Strategy=MWF.xApplication.Strategy||{};MWF.xDesktop.requireApp("Strategy","Template",null,false);MWF.xDesktop.requireApp("Template","MPopupForm",null,false);MWF.xDesktop.requireApp("Template","MForm",null,false);MWF.xDesktop.requireApp("Strategy","Attachment",null,false);MWF.xApplication.Strategy.KeyWorkForm=new Class({Extends:MPopupForm,Implements:[Options,Events],options:{style:"default",width:"90%",height:"100%",hasTop:true,hasIcon:false,hasBottom:false,title:"",draggable:false,closeAction:true},initialize:function(t,e,i,s){this.setOptions(s);this.explorer=t;this.app=t.app;this.lp=this.app.lp.keyWork.popupForm;this.actions=this.app.restActions;this.path="/x_component_Strategy/$KeyWorkForm/";this.cssPath=this.path+this.options.style+"/css.wcss";this._loadCss();this.options.title=this.lp.title;this.defaultYear=this.options.year;this.data=i||{};this.actions=e;this.orgActions=MWF.Actions.get("x_organization_assemble_control")},load:function(){var t=new Date;this.thisYear=t.getFullYear();if(this.options.isNew){this.create()}else if(this.options.isEdited){this.edit()}else{this.open()}},createTopNode:function(){if(!this.formTopNode){this.formTopNode=new Element("div.formTopNode",{styles:this.css.formTopNode}).inject(this.formNode);this.formTopTextNode=new Element("div",{styles:this.css.formTopTextNode,text:this.data.title?this.data.title:this.lp.addTitle}).inject(this.formTopNode);if(this.options.closeAction){this.formTopCloseActionNode=new Element("div",{styles:this.css.formTopCloseActionNode}).inject(this.formTopNode);this.formTopCloseActionNode.addEvent("click",function(){this.close()}.bind(this))}this._createTopContent()}},_createTopContent:function(){},_createTableContent:function(){this.getData(function(){this.createTableInfo()}.bind(this))},getData:function(t){if(!this.options.isNew){if(this.data.id){this.id=this.data.id}else if(this.options.id){this.id=this.options.id}this.actions.getKeyWorkById(this.id,function(e){this.data=e.data;this.formTopTextNode.set("text",this.data.strategydeploytitle);if(t)t()}.bind(this))}else{this.orgActions.listTopUnit(function(e){if(e.type=="success"){if(e.data&&e.data.length>0){this.data.deptlist=e.data[0].distinguishedName;if(t)t()}}}.bind(this))}},createTableInfo:function(){var t="<table styles='formTable'>"+"<tr>"+" <td styles='formTableTitle' lable='sequencenumber'></td>"+" <td styles='formTableValue' item='sequencenumber'></td>"+"</tr>"+"<tr>"+" <td styles='formTableTitle' lable='strategydeploytitle'></td>"+" <td styles='formTableValue' item='strategydeploytitle'></td>"+"</tr>"+"<tr>"+" <td styles='formTableTitle' lable='strategydeployyear'></td>"+" <td styles='formTableValue' item='strategydeployyear'></td>"+"</tr>"+"<tr style='display:none'>"+" <td styles='formTableTitle' lable='deptlist'></td>"+" <td styles='formTableValue' item='deptlist'></td>"+"</tr>"+"</table>";this.formTableArea.set("html",t);this.loadForm();if(this.options.isNew||this.options.isEdited){this.createActionBar()}},loadForm:function(){this.keyWorkForm=new MForm(this.formTableArea,this.data,{style:"default",isEdited:this.isEdited||this.isNew,itemTemplate:this.getItemTemplate(this.lp)},this.app,this.css);this.keyWorkForm.load();var t=this.formTableArea.getElements("textarea");t.setStyles({height:"100px"})},getItemTemplate:function(t){_self=this;return{sequencenumber:{text:t.sequencenumber+":",notEmpty:true},strategydeploytitle:{text:t.title+":",notEmpty:true},strategydeployyear:{text:t.year+":",notEmpty:true,type:this.options.isNew?"select":"innerText",value:this.defaultYear||this.thisYear,attr:{style:"width:100%;height:30px;border-radius:3px;"},selectValue:t.selectYears.split(","),selecTtext:t.selectYears.split(",")},deptlist:{text:t.department+":",isEdited:false,notEmpty:true,type:"org",orgType:"unit",name:"deptlist",count:0,attr:{readonly:true}},strategydeploydescribe:{type:"textarea",attr:{style:"height:100px"},text:t.description+":"}}},loadAttachment:function(t){},createActionBar:function(){this.actionContent=new Element("div.actionContent",{styles:this.css.actionContent}).inject(this.formTableContainer);this.actionBar=new Element("div.actionBar",{styles:this.css.actionBar}).inject(this.actionContent);this.saveAction=new Element("div.saveAction",{styles:this.css.saveAction,text:this.lp.saveAction}).inject(this.actionBar).addEvents({click:function(){this.save()}.bind(this)});this.cancelAction=new Element("div.cancelAction",{styles:this.css.cancelAction,text:this.lp.cancelAction}).inject(this.actionBar).addEvents({click:function(){this.close()}.bind(this)})},save:function(t){var e=this.keyWorkForm.getResult(true,",",true,false,true);if(e){this.app.createShade();e.deptlist=e.deptlist.split(",");this.actions.saveKeyWork(e,function(e){if(e.type=="success"){this.close();this.fireEvent("postSave",e)}else if(e.type=="error"){this.app.notice(e.message,"error")}this.app.destroyShade();if(t)t()}.bind(this),function(t,e,i){this.app.showErrorMessage(t,e,i);this.app.destroyShade()}.bind(this))}},createShade:function(t,e){var i=this.content;var s=t||i;var o=e||"loading...";if(this.shadeDiv){this.shadeDiv.destroy()}if(this["shadeTxtDiv"])this["shadeTxtDiv"].destroy();this.shadeDiv=new Element("div.shadeDiv").inject(s);this.inforDiv=new Element("div.inforDiv",{styles:{height:"16px",display:"inline-block",position:"absolute","background-color":"#000000","border-radius":"3px",padding:"5px 10px"}}).inject(this.shadeDiv);this.loadImg=new Element("img.loadImg",{styles:{width:"16px",height:"16px",float:"left"},src:this.path+"default/icon/loading.gif"}).inject(this.inforDiv);this.shadeTxtSpan=new Element("span.shadeTxtSpan").inject(this.inforDiv);this.shadeTxtSpan.set("text",o);this.shadeDiv.setStyles({width:"100%",height:"100%",position:"absolute",opacity:"0.6","background-color":"#cccccc","z-index":"999"});this.shadeTxtSpan.setStyles({color:"#ffffff","font-size":"12px",display:"inline-block","line-height":"16px","padding-left":"5px"});var a=s.getSize().x;var n=s.getSize().y;this.shadeDiv.setStyles({left:s.getLeft()-i.getLeft()+"px",top:s.getTop()-i.getTop()+"px",width:a+"px",height:n+"px"});if(s.getStyle("position")=="absolute"){this.shadeDiv.setStyles({left:"0px",top:"0px"})}this.inforDiv.setStyles({left:a/2+"px",top:n/2+"px"})},destroyShade:function(){if(this.shadeDiv)this.shadeDiv.destroy()},showErrorMessage:function(t,e,i){var s=i;var o;if(t)o=t.responseText;if(o!=""){var a=JSON.parse(o);if(a.message){this.notice(a.message,"error")}else{this.notice(s,"error")}}else{this.notice(s,"error")}}});
|