StrategyExplorerDeploy.min.js 6.7 KB

1
  1. MWF.xApplication.Report.StrategyExplorer.Deployment=new Class({Implements:[Options,Events],options:{style:"default",isEdited:true,isKeyworkEdited:true},initialize:function(t,e,s,i){this.setOptions(i);this.container=t;this.explorer=e;this.app=this.explorer.app;this.lp=this.app.lp;this.css=this.explorer.css;this.actions=this.app.restActions;this.data=s;this.path="/x_component_Report/$StrategyExplorer/"},load:function(){this.month=parseInt(this.data.month);this.node=new Element("div",{styles:this.css.deplymentNode}).inject(this.container);this.loadPerson();this.keyWorkContainer=new Element("div").inject(this.node);this.keyworkList=[];this.data.thisMonth_workList.each(function(t,e){this.loadKeyWork(t,e+1)}.bind(this))},loadPerson:function(){this.personNode=new Element("div.personDeployNode",{styles:this.css.personDeployNode}).inject(this.node);var t="<table width='96%' bordr='0' cellpadding='7' cellspacing='0' styles='formTable' >"+"<tr>"+" <td style='width: 15%;font-size: 14px;' styles='formTableTitleP10'>汇报填写人员</td>"+" <td style='width: 85%' item='workreportPersonList' styles='formTableValueP10'></td>"+"</tr>"+"</table>";this.personNode.set("html",t);MWF.xDesktop.requireApp("Template","MForm",function(){this.peronform=new MForm(this.personNode,this.data,{verifyType:"single",isEdited:this.options.isEdited,style:"report",itemTemplate:{workreportPersonList:{text:this.lp.targetPerson,type:"org",orgType:"identity",isEdited:this.options.isEdited,count:0,notEmpty:true,units:[this.data.targetUnit.split("@")[0]],event:{change:function(t){this.save(t.getElements()[0])}.bind(this)}}}},this.app);this.peronform.load()}.bind(this),true)},loadKeyWork:function(t,e){var s=new MWF.xApplication.Report.StrategyExplorer.Deployment.KeyWorkItem(this.keyWorkContainer,this,t,{reportId:this.data.id,isEdited:this.options.isKeyworkEdited&&this.options.isEdited,orderNumber:this.data.orderNumber||e});s.load();this.keyworkList.push(s)},getPersonString:function(){},arrayIsContains:function(t,e){for(var s=0;s<t.length;s++){if(t[s].woPerson.distinguishedName==e.woPerson.distinguishedName){return true}}return false},getPerson:function(){debugger;var t=this.peronform.getItem("workreportPersonList").dom.getData(true);var e=Object.clone((layout.desktop.session.user||layout.user).identityList[0]);var s=layout.desktop.session.user||layout.user;e.woPerson=s;var i=MWF.org.parseOrgData(e);if(!this.arrayIsContains(t,i)){t.push(i)}return t},submit:function(){if(this.errorNodeList){this.errorNodeList.each(function(t){t.destroy()})}var t=false;var e=this.getResult(true);if(e){var s=this.getPerson();var i=[];var r=[];debugger;s.each(function(t){var e=t.woPerson?t.woPerson.distinguishedName:t.distinguishedName;if(!i.contains(e)){i.push(e)}if(!r.contains(t.distinguishedName)){r.push(t.distinguishedName)}});e.workreportPersonList=r;var o=[];i.each(function(t){o.push({permission:"阅读",permissionObjectType:"人员",permissionObjectName:t})});e.readerList=o;var n=[];i.each(function(t){n.push({permission:"作者",permissionObjectType:"人员",permissionObjectName:t})});e.authorList=n;this.actions.submitWorkPerson(e,function(){t=true}.bind(this),null,false)}return t},save:function(t){var e=false;var s=this.getResult(false);if(s){this.actions.saveWorkPerson(s,function(){this.app.notice("保存并上传成功","success");e=true}.bind(this),null,false)}return e},getResult:function(r){var o=true;var t=this.peronform.getResult(r,null,true,false,true);if(r&&!t)o=false;if(this.options.isKeyworkEdited){var n=[];this.keyworkList.each(function(t){var e=t.getWorkTitle();if(!e||e.length==0){if(r){this.createErrorNode(t.workTitleInput,"请填写工作标题",{float:"left"});o=false}}var s=t.getMeasuresList();if(!s||s.length==0){if(r){this.createErrorNode(t.measureContentNode,"请选择举措");o=false}}n.push({id:t.data.id,orderNumber:t.options.orderNumber,workTitle:e,measuresList:s});if(r){var i=t.getPlanData();if(!i||i.length==0){this.createErrorNode(t.planListNode,"请填写计划");o=false}}}.bind(this));if(!o)return false;return{id:this.data.id,workreportPersonList:t.workreportPersonList,workList:n}}else{if(!o)return false;return{id:this.data.id,workreportPersonList:t.workreportPersonList}}},listPlan:function(e,t,s){if(!t&&this.planDataObject){if(s)s(this.planDataObject[e]||[])}else{this.actions.listPlan(this.data.id||this.options.id,function(t){this.planDataObject={};t.data.each(function(t){if(!this.planDataObject[t.workInfoId]){this.planDataObject[t.workInfoId]=[]}this.planDataObject[t.workInfoId].push(t)}.bind(this));if(s)s(this.planDataObject[e]||[])}.bind(this))}},createErrorNode:function(t,e,s){if(!this.errorNodeList)this.errorNodeList=[];var i=new Element("div",{text:e,styles:this.css.warningMessageNode}).inject(t,"after");if(s)i.setStyles(s);this.errorNodeList.push(i)}});MWF.xApplication.Report.StrategyExplorer.Deployment.KeyWorkItem=new Class({Implements:[Options,Events],options:{style:"default",reportId:"",isEdited:true,orderNumber:1},initialize:function(t,e,s,i){this.setOptions(i);this.container=t;this.explorer=e;this.app=this.explorer.app;this.lp=this.app.lp;this.css=this.explorer.css;this.actions=this.app.restActions;this.data=s},load:function(){var t=new Element("table",{width:"96%",border:"0",cellpadding:"5",cellspacing:"0",styles:this.css.formTable}).inject(this.container);var e=new Element("tr").inject(t);new Element("td",{rowspan:2,text:this.data.orderNumber||this.options.orderNumber,styles:this.css.formTableTitle}).inject(e);new Element("td",{text:"部门重点工作",width:"140",styles:this.css.formTableTitle}).inject(e);var s=new Element("td",{styles:this.css.formTableValue}).inject(e);if(this.options.isEdited){this.workTitleInput=new Element("input",{value:this.data.workTitle,styles:this.css.keyWorkTitleInput}).inject(s)}else{new Element("div",{html:this.app.common.replaceWithBr(this.data.workTitle),styles:{width:"870px",float:"left"}}).inject(s)}var i=new Element("input",{type:"button",styles:this.css.showMeasureNode,value:"查看举措"}).inject(s);var r=new MWF.xApplication.Report.ShowMeasureTooltip(this.app.content,i,this.app,this.explorer.data,{style:"report",position:{x:"auto",y:"auto"},event:"click"});r.measuresList=this.data.measuresList;e=new Element("tr").inject(t);new Element("td",{text:"工作计划",styles:this.css.formTableTitle}).inject(e);s=new Element("td",{styles:this.css.formTableValue,html:this.app.common.replaceWithBr(this.data.workPlanSummary)}).inject(e)},getWorkTitle:function(){return this.workTitleInput.get("value")},getMeasuresList:function(){return this.measuresList||this.data.measuresList},getPlanData:function(){return this.planDataList},loadMeasureTooltip:function(t,e){new MWF.xApplication.Report.MeasureTooltip(this.app.content,t,this.app,null,{position:{x:"right",y:"auto"},measureId:e,displayDelay:300})}});