| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267 |
- MWF.xApplication.Execution = MWF.xApplication.Execution || {};
- MWF.xDesktop.requireApp("Template", "Explorer", null, false);
- MWF.require("MWF.widget.Identity", null,false);
- MWF.xApplication.Execution.WorkTask = new Class({
- Extends: MWF.widget.Common,
- Implements: [Options, Events],
- options: {
- "style": "default",
- "workNavi1" : "",
- "workNavi2" : ""
- },
- initialize: function (node, app, actions, options) {
- this.setOptions(options);
- this.app = app;
- this.lp = app.lp;
- this.path = "/x_component_Execution/$WorkTask/";
- this.loadCss();
- this.actions = actions;
- this.node = $(node);
- },
- loadCss: function () {
- this.cssPath = "/x_component_Execution/$WorkTask/" + this.options.style + "/css.wcss";
- this._loadCss();
- },
- load: function () {
- if(!this.reportSwitch){
- var switchData = {};
- switchData.configCode = "REPORT_USERCREATE";
- this.actions.getProfileByCode(switchData,function(json){
- if(json.type == "success"){
- if(json.data && json.data.configValue){
- this.reportSwitch = json.data.configValue;
- }
- }
- //this.reportAuditLeader
- }.bind(this),null,false);
- }
- if(!this.appointSwitch){
- var switchData = {};
- switchData.configCode = "WORK_AUTHORIZE";
- this.actions.getProfileByCode(switchData,function(json){
- if(json.type == "success"){
- if(json.data && json.data.configValue){
- this.appointSwitch = json.data.configValue;
- }
- }
- }.bind(this),null,false);
- }
- if(!this.splitSwitch){
- var switchData = {};
- switchData.configCode = "WORK_DISMANTLING";
- this.actions.getProfileByCode(switchData,function(json){
- if(json.type == "success"){
- if(json.data && json.data.configValue){
- this.splitSwitch = json.data.configValue;
- }
- }
- }.bind(this),null,false);
- }
- this.tabLocation = ""
- this.middleContent = this.app.middleContent;
- this.middleContent.setStyles({"margin-top":"0px","border":"0px solid #f00"});
- this.createNaviContent();
- this.createContentDiv();
- this.resizeWindow();
- this.app.addEvent("resize", function(){
- this.resizeWindow();
- }.bind(this));
- },
- resizeWindow: function(){
- var size = this.app.middleContent.getSize();
- this.naviDiv.setStyles({"height":(size.y-60)+"px"});
- this.naviContentDiv.setStyles({"height":(size.y-180)+"px"});
- this.contentDiv.setStyles({"height":(size.y-60)+"px"});
- this.rightContentDiv.setStyles({"height":(size.y-40-140)+"px"});
- },
- createNaviContent: function(){
- this.naviDiv = new Element("div.naviDiv",{
- "styles":this.css.naviDiv
- }).inject(this.middleContent);
- this.naviTitleDiv = new Element("div.naviTitleDiv",{
- "styles":this.css.naviTitleDiv,
- "text":MWF.xApplication.Execution.LP.workTask.naviTitle
- }).inject(this.naviDiv);
- this.naviContentDiv = new Element("div.naviContentDiv",{"styles":this.css.naviContentDiv}).inject(this.naviDiv);
- this.naviBottomDiv = new Element("div.naviBottomDiv",{"styles":this.css.naviBottomDiv}).inject(this.naviDiv);
- var naviContentLi = new Element("li.naviContentLi",{"styles":this.css.naviContentLi}).inject(this.naviContentDiv)
- .addEvents({
- "click":function(){
- this.app.openWorkReport()
- }.bind(this)
- })
- var naviContentImg = new Element("img.naviContentImg",{
- "styles":this.css.naviContentImg,
- "src":"/x_component_Execution/$WorkReportList/default/icon/Prototype-100.png"
- }).inject(naviContentLi);
- var naviContentSpan = new Element("span.naviContentSpan",{
- "styles":this.css.naviContentSpan,
- "text":this.lp.workTask.naviItem.workReport
- }).inject(naviContentLi)
- //var naviContentLi = new Element("li.naviContentLi",{"styles":this.css.naviContentLi}).inject(this.naviContentDiv);
- //var naviContentImg = new Element("img.naviContentImg",{
- // "styles":this.css.naviContentImg,
- // "src":"/x_component_Execution/$WorkReportList/default/icon/Conference-100.png"
- //}).inject(naviContentLi);
- //var naviContentSpan = new Element("span.naviContentSpan",{
- // "styles":this.css.naviContentSpan,
- // "text":this.lp.workTask.naviItem.workConsult
- //}).inject(naviContentLi)
- //
- //var naviContentLi = new Element("li.naviContentLi",{"styles":this.css.naviContentLi}).inject(this.naviContentDiv);
- //var naviContentImg = new Element("img.naviContentImg",{
- // "styles":this.css.naviContentImg,
- // "src":"/x_component_Execution/$WorkReportList/default/icon/Department-100.png"
- //}).inject(naviContentLi);
- //var naviContentSpan = new Element("span.naviContentSpan",{
- // "styles":this.css.naviContentSpan,
- // "text":this.lp.workTask.naviItem.workStat
- //}).inject(naviContentLi)
- },
- createContentDiv: function(){
- this.contentDiv = new Element("div.contentDiv",{"styles":this.css.contentDiv}).inject(this.middleContent);
- this.createCategoryItemDiv();
- this.clickWorkTaskNavi( this.options.workNavi1 || "base", this.options.workNavi2 || "" );
- //if( this.options.workNavi1 == "base" ) {
- // this.createBaseWorkSearchDiv();
- //}else{
- // this.createCenterWorkSearchDiv();
- //}
- //this.createRightContentDiv( this.options.workNavi1 || "" , this.options.workNavi2 || "" );
- },
- createCategoryItemDiv: function(){
- this.rightCategoryDiv = new Element("div.rightCategoryDiv",{"styles":this.css.rightCategoryDiv}).inject(this.contentDiv);
- //新建权限
- var isCreate = false;
- var auditData = {};
- auditData.configCode = "COMPANY_WORK_ADMIN";
- this.actions.getProfileByCode(auditData,function(json){
- if(json.data){
- if(json.data.configValue == "" || json.data.configValue.indexOf(this.app.identity)>-1){
- isCreate = true;
- }
- }
- }.bind(this),null,false)
- if(isCreate){
- this.rightCategoryNewDiv = new Element("div.rightCategoryNewDiv",{
- "styles":this.css.rightCategoryNewDiv,
- "text":MWF.xApplication.Execution.LP.workTask.newTask
- }).inject(this.rightCategoryDiv)
- .addEvents({
- "click":function(){
- MWF.xDesktop.requireApp("Execution", "WorkDeploy", function(){
- this.explorer = new MWF.xApplication.Execution.WorkDeploy(this, this.actions,{},{
- "isEdited":true,
- "onReloadView" : function( data ){
- this.centerWorkLi.click()
- //this.createRightContentDiv();
- }.bind(this)
- });
- this.explorer.load();
- }.bind(this))
- }.bind(this)
- });
- }
- this.rightCategoryItemDiv = new Element("div.rightCategoryItemDiv",{"styles":this.css.rightCategoryItemDiv}).inject(this.rightCategoryDiv);
- var categoryJson;
- var categoryJsonUrl = this.path+"categoryNavi.json";
- this.centerWorkLi = new Element("li.centerWorkLi",{
- "styles":this.css.rightCategoryItemCurrentLi,
- "text": MWF.xApplication.Execution.LP.workTask.centerWork
- }).inject(this.rightCategoryItemDiv)
- .addEvents({
- "click":function(){
- //alert("中心工作点击");
- this.clickWorkTaskNavi("center")
- }.bind(this)
- })
- this.baseWorkLi = new Element("li.baseWorkLi",{
- "styles":this.css.rightCategoryItemLi,
- "text": MWF.xApplication.Execution.LP.workTask.baseWork
- }).inject(this.rightCategoryItemDiv)
- .addEvents({
- "click":function(){
- //alert("具体工作点击");
- this.clickWorkTaskNavi("base");
- }.bind(this)
- })
- this.rightSearchDiv = new Element("div.rightSearchDiv",{"styles":this.css.rightSearchDiv}).inject(this.contentDiv);
- },
- clickWorkTaskNavi : function( workNavi1, workNavi2 ){
- this.workNavi1 = workNavi1 || "base";
- if(this.rightSearchDiv)this.rightSearchDiv.empty();
- if(this.rightContentDiv)this.rightContentDiv.destroy();
- if( workNavi1 == "base" ){
- if(this.centerWorkLi)this.centerWorkLi.setStyles({"border-bottom":""});
- if(this.baseWorkLi)this.baseWorkLi.setStyles({"border-bottom":"2px solid #124c93"});
- this.createBaseWorkSearchDiv();
- this.createRightContentDiv( "base" , workNavi2 || "" );
- }else{
- if(this.centerWorkLi)this.centerWorkLi.setStyles({"border-bottom":"2px solid #124c93"});
- if(this.baseWorkLi)this.baseWorkLi.setStyles({"border-bottom":""});
- this.createCenterWorkSearchDiv();
- this.createRightContentDiv("center", workNavi2 || "" );
- }
- },
- createCenterWorkSearchDiv: function(){
- this.rightDrafterTabLi = new Element("li.rightDrafterTabLi", {
- "styles": this.css.rightDrafterTabLi,
- "text" : MWF.xApplication.Execution.LP.workTask.centerWorkDrafter
- }).inject(this.rightSearchDiv)
- .addEvents({
- "click":function(){
- this.clickCenterWorkTaskNavi("drafter")
- }.bind(this)
- })
- this.rightDeployTabLi = new Element("li.rightDeployTabLi", {
- "styles": this.css.rightDeployTabLi,
- "text" :MWF.xApplication.Execution.LP.workTask.centerWorkDeploy
- }).inject(this.rightSearchDiv)
- .addEvents({
- "click":function(){
- this.clickCenterWorkTaskNavi("deploy")
- }.bind(this)
- })
- this.rightArchiveTabLi = new Element("li.rightArchiveTabLi", {
- "styles": this.css.rightArchiveTabLi,
- "text" :MWF.xApplication.Execution.LP.workTask.centerWorkArchive
- }).inject(this.rightSearchDiv)
- .addEvents({
- "click":function(){
- this.clickCenterWorkTaskNavi("archive")
- }.bind(this)
- })
- rightSearchBarSpan = new Element("span.rightSearchBarSpan",{
- "styles":this.css.rightSearchBarSpan
- }).inject(this.rightSearchDiv);
- this.rightSearchBarInput = new Element("input",{
- "styles":this.css.rightSearchBarInput,
- "type":"text"
- }).inject(rightSearchBarSpan)
- .addEvents({
- "keyup": function(e){
- if(e.code == 13){
- this.searchAction();
- }
- }.bind(this)
- })
- this.rightSearchBarSearch = new Element("div.rightSearchBarSearch",{
- "styles":this.css.rightSearchBarSearch,
- "text" : MWF.xApplication.Execution.LP.workTask.search
- }).inject(rightSearchBarSpan)
- .addEvents({
- "click":function(){
- this.searchAction();
- }.bind(this)
- })
- },
- clickCenterWorkTaskNavi : function( str ){
- this.workNavi2 = str || "deploy";
- if( str == "drafter" ){
- this.rightContentDiv.empty();
- if(this.rightDrafterTabLi)this.rightDrafterTabLi.setStyles({"border-bottom":"2px solid #124c93"});
- if(this.rightDeployTabLi)this.rightDeployTabLi.setStyles({"border-bottom":""});
- if(this.rightArchiveTabLi)this.rightArchiveTabLi.setStyles({"border-bottom":""});
- this.loadCenterWorkList("drafter");
- }else if(str=="archive"){
- this.rightContentDiv.empty();
- if(this.rightArchiveTabLi)this.rightArchiveTabLi.setStyles({"border-bottom":"2px solid #124c93"});
- if(this.rightDeployTabLi)this.rightDeployTabLi.setStyles({"border-bottom":""});
- if(this.rightDrafterTabLi)this.rightDrafterTabLi.setStyles({"border-bottom":""});
- this.loadCenterWorkList("archive");
- }else{
- this.rightContentDiv.empty();
- if(this.rightDrafterTabLi)this.rightDrafterTabLi.setStyles({"border-bottom":""});
- if(this.rightArchiveTabLi)this.rightArchiveTabLi.setStyles({"border-bottom":""});
- if(this.rightDeployTabLi)this.rightDeployTabLi.setStyles({"border-bottom":"2px solid #124c93"});
- this.loadCenterWorkList("deploy");
- }
- },
- createBaseWorkSearchDiv:function(){
- //草稿
- this.baseDrafterTabLi = new Element("li.baseDrafterTabLi", {
- "styles": this.css.baseTabLi,
- "text" : MWF.xApplication.Execution.LP.workTask.baseWorkCategory.myDrafter
- }).inject(this.rightSearchDiv)
- .addEvents({
- "click":function(){
- this.clickBaseWorkTaskNavi("myDrafter")
- }.bind(this)
- })
- //我部署的
- this.baseDeployTabLi = new Element("li.baseDeployTabLi", {
- "styles": this.css.baseTabLi,
- "text" : MWF.xApplication.Execution.LP.workTask.baseWorkCategory.myDeploy
- }).inject(this.rightSearchDiv)
- .addEvents({
- "click":function(){
- this.clickBaseWorkTaskNavi("myDeploy");
- }.bind(this)
- })
- //我负责的
- this.baseDoTabLi = new Element("li.baseDoTabLi", {
- "styles": this.css.baseTabLi,
- "text" : MWF.xApplication.Execution.LP.workTask.baseWorkCategory.myDo
- }).inject(this.rightSearchDiv)
- .addEvents({
- "click":function(){
- this.clickBaseWorkTaskNavi("myDo");
- }.bind(this)
- })
- //我协助的
- this.baseAssistTabLi = new Element("li.baseAssistTabLi", {
- "styles": this.css.baseTabLi,
- "text" : MWF.xApplication.Execution.LP.workTask.baseWorkCategory.myAssist
- }).inject(this.rightSearchDiv)
- .addEvents({
- "click":function(){
- this.clickBaseWorkTaskNavi("myAssist");
- }.bind(this)
- })
- //我阅知的
- this.baseReadTabLi = new Element("li.baseReadTabLi", {
- "styles": this.css.baseTabLi,
- "text" : MWF.xApplication.Execution.LP.workTask.baseWorkCategory.myRead
- }).inject(this.rightSearchDiv)
- .addEvents({
- "click":function(){
- this.clickBaseWorkTaskNavi("myRead");
- }.bind(this)
- })
- if(this.appointSwitch && this.appointSwitch.toUpperCase() == "OPEN"){
- //我委派的
- this.baseAppointTabLi = new Element("li.baseAppointTabLi", {
- "styles": this.css.baseTabLi,
- "text" : MWF.xApplication.Execution.LP.workTask.baseWorkCategory.myAppoint
- }).inject(this.rightSearchDiv)
- .addEvents({
- "click":function(){
- this.clickBaseWorkTaskNavi("myAppoint");
- }.bind(this)
- })
- }
- //已归档
- this.baseArchiveTabLi = new Element("li.baseArchiveTabLi", {
- "styles": this.css.baseTabLi,
- "text" : MWF.xApplication.Execution.LP.workTask.baseWorkCategory.myArchive
- }).inject(this.rightSearchDiv)
- .addEvents({
- "click":function(){
- this.clickBaseWorkTaskNavi("myArchive");
- }.bind(this)
- })
- rightSearchBarSpan = new Element("span.rightSearchBarSpan",{
- "styles":this.css.rightSearchBarSpan
- }).inject(this.rightSearchDiv);
- this.rightSearchBarInput = new Element("input",{
- "styles":this.css.rightSearchBarInput,
- "type":"text"
- }).inject(rightSearchBarSpan)
- .addEvents({
- "keyup": function(e){
- if(e.code == 13){
- this.searchAction();
- }
- }.bind(this)
- })
- this.rightSearchBarSearch = new Element("div.rightSearchBarSearch",{
- "styles":this.css.rightSearchBarSearch,
- "text" : MWF.xApplication.Execution.LP.workTask.search
- }).inject(rightSearchBarSpan)
- .addEvents({
- "click":function(){
- this.searchAction();
- }.bind(this)
- })
- },
- clickBaseWorkTaskNavi : function( str ){
- this.workNavi2 = str || "myDo";
- if( str == "myDrafter" ) {
- this.changeBaseWork(this.baseDrafterTabLi)
- this.loadBaseWorkList("myDrafter");
- }else if(str =="myDeploy"){
- this.changeBaseWork(this.baseDeployTabLi);
- this.loadBaseWorkList("myDeploy");
- }else if( str == "myDo" ){
- this.changeBaseWork(this.baseDoTabLi);
- this.loadBaseWorkList("myDo");
- }else if( str == "myAssist" ){
- this.changeBaseWork(this.baseAssistTabLi)
- this.loadBaseWorkList("myAssist");
- }else if( str == "myRead" ){
- this.changeBaseWork(this.baseReadTabLi)
- this.loadBaseWorkList("myRead");
- }else if( str == "myAppoint") {
- this.changeBaseWork(this.baseAppointTabLi)
- this.loadBaseWorkList("myAppoint");
- }else if( str == "myArchive"){
- this.changeBaseWork(this.baseArchiveTabLi)
- this.loadBaseWorkList("myArchive");
- }else{
- this.changeBaseWork(this.baseDoTabLi)
- this.loadBaseWorkList("myDo");
- }
- },
- reloadRightContentDiv : function(){
- if(this.rightContentDiv)this.rightContentDiv.destroy();
- this.rightContentDiv = new Element("div.rightContentDiv",{
- "styles":this.css.rightContentDiv
- }).inject(this.contentDiv);
- },
- createRightContentDiv: function(workNavi1 , workNavi2 ){
- //alert(this.app.middleContent.getSize()-40-140+"px")
- if(this.rightContentDiv)this.rightContentDiv.destroy();
- this.rightContentDiv = new Element("div.rightContentDiv",{
- "styles":this.css.rightContentDiv
- }).inject(this.contentDiv);
- if(workNavi1=="base"){
- //this.changeBaseWork(this.baseDeployTabLi);
- //this.loadBaseWorkList("myDeploy");
- this.clickBaseWorkTaskNavi( workNavi2 );
- }else{
- //this.loadCenterWorkList("deploy");
- this.clickCenterWorkTaskNavi( workNavi2 );
- }
- },
- createTableContent:function(json,colsJson){
- var trHtml = "<tr>"
- trHtml+="<td>fffff</td>"
- trHtml += "</tr>";
- this.taskTable.set("html",this.taskTable.get("html")+trHtml)
- },
- loadCenterWorkList: function (str,filter) {
- if( this.baseView )delete this.baseView;
- //if(this.rightContentDiv) this.rightContentDiv.empty();
- this.reloadRightContentDiv();
- this.rightContentDiv.setStyles({"height":this.app.middleContent.getSize().y-40-140+"px"});
- if(this.scrollBar && this.scrollBar.scrollVAreaNode){
- this.scrollBar.scrollVAreaNode.destroy()
- }
- MWF.require("MWF.widget.ScrollBar", function () {
- //if(this.scrollBar) this.scrollBar.destroy()
- this.scrollBar = new MWF.widget.ScrollBar(this.rightContentDiv, {
- "indent": false,
- "style": "xApp_TaskList",
- "where": "before",
- "distance": 30,
- "friction": 4,
- "axis": {"x": false, "y": true},
- "onScroll": function (y) {
- var scrollSize = this.rightContentDiv.getScrollSize();
- var clientSize = this.rightContentDiv.getSize();
- var scrollHeight = scrollSize.y - clientSize.y;
- var view = this.baseView || this.centerView;
- if (y + 200 > scrollHeight && view && view.loadElementList) {
- if (! view.isItemsLoaded) view.loadElementList();
- }
- }.bind(this)
- });
- }.bind(this),false);
- templateUrl = this.path+"listItem.json";
- if(str == "drafter"){
- templateUrl = this.path+"listItemDrafter.json";
- }else if(str == "archive"){
- templateUrl = this.path+"listItemArchive.json";
- }
- this.centerView = new MWF.xApplication.Execution.WorkTask.CenterWorkView(this.rightContentDiv, this.app, {explorer:this,lp : this.lp.centerWorkView, css : this.css, actions : this.actions }, { templateUrl : templateUrl,category:str,filterData:filter } )
- this.centerView.load();
- },
- loadBaseWorkList: function (str,filter) {
- if( this.centerView )delete this.centerView;
- //if(this.rightContentDiv) this.rightContentDiv.empty()
- this.reloadRightContentDiv();
- this.rightContentDiv.setStyles({"height":this.app.middleContent.getSize().y-40-140+"px"});
- templateUrl= this.path+"listItemBase.json";
- if(str=="myDrafter"){
- templateUrl= this.path+"listItemBaseDrafter.json";
- }else if(str=="myDeploy"){
- templateUrl= this.path+"listItemBaseDeploy.json";
- }else if(str=="myDo"){
- templateUrl= this.path+"listItemBaseDo.json";
- }else if(str=="myAppoint"){
- templateUrl= this.path+"listItemBaseAppoint.json";
- }else if( str =="myArchive"){
- templateUrl= this.path+"listItemBaseArchive.json";
- }
- if(this.scrollBar && this.scrollBar.scrollVAreaNode){
- this.scrollBar.scrollVAreaNode.destroy()
- }
- MWF.require("MWF.widget.ScrollBar", function () {
- if(this.scrollBar) delete this.scrollBar
- this.scrollBar = new MWF.widget.ScrollBar(this.rightContentDiv, {
- "indent": false,
- "style": "xApp_TaskList",
- "where": "before",
- "distance": 30,
- "friction": 4,
- "axis": {"x": false, "y": true},
- "onScroll": function (y) {
- var scrollSize = this.rightContentDiv.getScrollSize();
- var clientSize = this.rightContentDiv.getSize();
- var scrollHeight = scrollSize.y - clientSize.y;
- var view = this.baseView || this.centerView;
- if (y + 200 > scrollHeight && view && view.loadElementList) {
- if (! view.isItemsLoaded) view.loadElementList();
- }
- }.bind(this)
- });
- }.bind(this),false);
- this.baseView = new MWF.xApplication.Execution.WorkTask.BaseWorkView(this.rightContentDiv, this.app, {lp : this.lp.baseWorkView, css : this.css, actions : this.actions }, { templateUrl : templateUrl,category:str,filterData:filter} )
- //this.baseView.options.templateUrl =
- this.baseView.load();
- },
- //切换具体工作tab页
- changeBaseWork: function(obj){
- var liObj = this.rightSearchDiv.getElements("li");
- liObj.setStyle("border-bottom","");
- obj.setStyle("border-bottom","2px solid #124c93");
- },
- searchAction : function(){
- //if(this.rightSearchBarInput && this.rightSearchBarInput.get("value")==""){
- // this.app.notice(this.lp.searchEmpty, "error");
- // this.rightSearchBarInput.focus();
- // return false;
- //}
- var filterData = {}
- filterData.workTitle = this.rightSearchBarInput.get("value");
- if(this.tabLocation == "centerDrafter"){
- this.app.workTask.loadCenterWorkList("drafter")
- this.loadCenterWorkList("drafter",filterData);
- }else if(this.tabLocation == "centerDeploy"){
- this.loadCenterWorkList("deploy",filterData);
- }else if(this.tabLocation == "centerArchive"){
- this.loadCenterWorkList("archive",filterData)
- }
- if(this.tabLocation == "baseDrafter"){
- this.loadBaseWorkList("myDrafter",filterData)
- }else if(this.tabLocation == "baseDeploy"){
- this.loadBaseWorkList("myDeploy",filterData)
- }else if(this.tabLocation == "baseDo"){
- this.loadBaseWorkList("myDo",filterData)
- }else if(this.tabLocation == "baseAssist"){
- this.loadBaseWorkList("myAssist",filterData)
- }else if(this.tabLocation == "baseRead"){
- this.loadBaseWorkList("myRead",filterData)
- }else if(this.tabLocation == "baseAppoint"){
- this.loadBaseWorkList("myAppoint",filterData)
- }else if(this.tabLocation == "baseArchive"){
- this.loadBaseWorkList("myArchive",filterData)
- }
- }
- })
- MWF.xApplication.Execution.WorkTask.WorkForm = new Class({
- Extends: MWF.xApplication.Template.Explorer.PopupForm,
- createTopNode: function(){
- if (!this.formTopNode) {
- this.formTopNode = new Element("div.formTopNode", {
- "styles": this.css.formTopNode
- }).inject(this.formNode);
- this.formTopImg = new Element("img.formTopImg",{
- "styles":this.css.formTopImg,
- "src":"/x_component_Execution/$Main/default/icon/Document-104.png"
- }).inject(this.formTopNode);
- this.formTopSpan = new Element("span.formTopSpan",{
- "styles": this.css.formTopSpan,
- "text":this.options.title
- }).inject(this.formTopNode);
- if( this.options.closeAction ){
- this.formTopCloseActionNode = new Element("div.formTopCloseActionNode", {"styles": this.css.formTopCloseActionNode}).inject(this.formTopNode);
- this.formTopCloseActionNode.addEvent("click", function () {
- this.close()
- }.bind(this))
- }
- }
- },
- _createTableContent: function(){
- this.createNewTaskDiv = new Element("div.createNewTaskDiv",{
- "styles":this.css.createNewTaskDiv,
- "text":MWF.xApplication.Execution.LP.workTask.popUp.createNewTask.title
- }).inject(this.formTableArea)
- .addEvents({
- "click":function(){
- this.close();
- MWF.xDesktop.requireApp("Execution", "CreateMainTask", function(){
- //this.clearContent();
- //this.explorerContent = new Element("div", {
- // "styles": this.css.rightContentNode
- //}).inject(this.node);
- this.explorer = new MWF.xApplication.Execution.CreateMainTask(this, this.explorer.app.restActions,{},{} );
- this.explorer.load();
- }.bind(this))
- }.bind(this)
- });
- this.createAddTaskDiv = new Element("div.createAddTaskDiv",{
- "styles":this.css.createAddTaskDiv,
- "text":MWF.xApplication.Execution.LP.workTask.popUp.createAddTask.title
- }).inject(this.formTableArea)
- .addEvents({
- "click":function(){
- }
- });
- },
- _createBottomContent: function(){
- var html = "<span style='color:#f59353'>"+MWF.xApplication.Execution.LP.workTask.popUp.createNewTask.title+"</span>:"+MWF.xApplication.Execution.LP.workTask.popUp.createNewTask.explain
- html += "<br><span style='color:#f59353'>"+MWF.xApplication.Execution.LP.workTask.popUp.createAddTask.title+"</span>:"+MWF.xApplication.Execution.LP.workTask.popUp.createAddTask.explain
- this.createExplainDiv = new Element("div.createExplainDiv",{
- "styles":this.css.createExplainDiv,
- "html":html
- }).inject(this.formBottomNode);
- }
- })
- MWF.xApplication.Execution.WorkTask.CenterWorkView = new Class({
- Extends: MWF.xApplication.Template.Explorer.ComplexView,
- _createDocument: function(data){
- return new MWF.xApplication.Execution.WorkTask.CenterWorkDocument(this.viewNode, data, this.explorer, this);
- },
- _getCurrentPageData: function(callback, count){
- var category = this.options.category;
- if (!count)count = 15;
- var id = (this.items.length) ? this.items[this.items.length - 1].data.id : "(0)";
- var filter = this.options.filterData || {};
- if(category=="deploy"){
- this.tabLocation = "centerDeploy"
- this.actions.getCenterWorkDeployListNext(id, count, filter, function (json) {
- if (callback)callback(json);
- }.bind(this))
- }else if(category=="drafter"){
- this.tabLocation = "centerDrafter"
- this.actions.getCenterWorkDrafterListNext(id, count, filter, function (json) {
- if (callback)callback(json);
- }.bind(this))
- //this.actions.getCenterWorkListNext(id, count, filter, function (json) {
- // if (callback)callback(json);
- //}.bind(this))
- }else if(category=="archive"){
- this.tabLocation = "centerArchive"
- this.actions.getCenterWorkArchiveListNext(id,count,filter,function(json){
- if(callback)callback(json)
- }.bind(this))
- }else{
- this.tabLocation = "centerDeploy"
- this.actions.getCenterWorkDeployListNext(id, count, filter, function (json) {
- if (callback)callback(json);
- }.bind(this))
- }
- this.app.workTask.tabLocation = this.tabLocation;
- },
- _removeDocument: function(documentData, all){
- this.actions.deleteCenterWork(documentData.id, function(json){
- if(this.tabLocation == "centerDrafter"){
- this.app.workTask.loadCenterWorkList("drafter")
- }else if(this.tabLocation == "centerDeploy"){
- this.app.workTask.loadCenterWorkList("deploy")
- }
- this.app.notice(this.app.lp.deleteDocumentOK, "success");
- }.bind(this));
- },
- _create: function(){
- },
- _openDocument: function( documentData ){
- MWF.xDesktop.requireApp("Execution", "WorkDeploy", function(){
- var isEditedBool = (this.tabLocation == "centerDrafter" || this.tabLocation == "baseDrafter") ? true : false
- this.workDeploy = new MWF.xApplication.Execution.WorkDeploy(this, this.actions,{"id":documentData.id},{
- "isEdited":isEditedBool,"centerWorkId":documentData.id,
- onReloadView : function( data ){
- tab = "deploy";
- if(data && data.tab && data.tab == "drafter") tab = "drafter"
- this.explorer.explorer.createRightContentDiv("center",tab);
- }.bind(this)
- } );
- this.workDeploy.load();
- }.bind(this))
- },
- _queryCreateViewNode: function(){
- },
- _postCreateViewNode: function( viewNode ){
- },
- _queryCreateViewHead:function(){
- },
- _postCreateViewHead: function( headNode ){
- }
- })
- MWF.xApplication.Execution.WorkTask.CenterWorkDocument = new Class({
- Extends: MWF.xApplication.Template.Explorer.ComplexDocument,
- action_open:function(){
- MWF.xDesktop.requireApp("Execution", "WorkDeploy", function(){
- var isEditedBool = (this.view.tabLocation == "centerDrafter" || this.view.tabLocation == "baseDrafter") ? true : false
- this.workDeploy = new MWF.xApplication.Execution.WorkDeploy(this.view, this.view.app.restActions,{"id":this.data.id},{"isEdited":isEditedBool,"centerWorkId":this.data.id} );
- this.workDeploy.load();
- }.bind(this))
- },
- _queryCreateDocumentNode:function( itemData ){
- },
- _postCreateDocumentNode: function( itemNode, itemData ){
- },
- removeCenterWork : function(itemData){
- //如果是拟稿人有删除部署的中心工作的权限
- if(itemData.processStatus && itemData.processStatus == this.view.app.lp.workTask.drafter){
- return true;
- }else{
- return false;
- }
- }
- //open: function(){
- // alert("open")
- //}
- })
- MWF.xApplication.Execution.WorkTask.BaseWorkView = new Class({
- Extends: MWF.xApplication.Template.Explorer.ComplexView,
- _createDocument: function(data){
- return new MWF.xApplication.Execution.WorkTask.BaseWorkDocument(this.viewNode, data, this.explorer, this);
- },
- _getCurrentPageData: function(callback, count){
- var category = this.category = this.options.category;
- if (!count)count = 15;
- var id = (this.items.length) ? this.items[this.items.length - 1].data.id : "(0)";
- var filter = this.options.filterData || {};
- if(category=="myDrafter"){ //我的草稿
- this.tabLocation = "baseDrafter"
- this.actions.getBaseWorkListMyDrafterNext(id, count, filter, function (json) {
- if (callback)callback(json);
- }.bind(this))
- }else if(category=="myDeploy"){ //我部署的
- this.tabLocation = "baseDeploy"
- this.actions.getBaseWorkListMyDeployNext(id, count, filter, function (json) {
- if (callback)callback(json);
- }.bind(this))
- }else if(category=="myDo"){ //我负责的
- this.tabLocation = "baseDo"
- this.actions.getBaseWorkListMyDoNext(id, count, filter, function (json) {
- if (callback)callback(json);
- }.bind(this))
- }else if(category=="myAssist"){ //我协助的
- this.tabLocation = "baseAssist"
- this.actions.getBaseWorkListMyAssistNext(id, count, filter, function (json) {
- if (callback)callback(json);
- }.bind(this))
- }else if(category=="myRead"){ //我阅知的
- this.tabLocation = "baseRead"
- this.actions.getBaseWorkListMyReadNext(id, count, filter, function (json) {
- if (callback)callback(json);
- }.bind(this))
- }else if(category=="myAppoint"){ //我委托的
- this.tabLocation = "baseAppoint"
- this.actions.getBaseWorkListMyAppointNext(id, count,filter,function(json){
- if (callback)callback(json)
- }.bind(this))
- }else if(category=="myArchive"){
- this.tabLocation = "baseArchive"
- this.actions.getBaseWorkListMyArchiveNext(id, count,filter,function(json){
- if (callback)callback(json)
- }.bind(this))
- }
- this.app.workTask.tabLocation = this.tabLocation;
- },
- _removeDocument: function(documentData, all){
- this.actions.deleteBaseWork(documentData.id, function(json){
- if(json.type && json.type=="success"){
- if(this.tabLocation == "baseDrafter"){
- this.app.workTask.loadBaseWorkList("myDrafter")
- }else if(this.tabLocation == "baseDeploy"){
- this.app.workTask.loadBaseWorkList("myDeploy")
- }
- this.app.notice(this.app.lp.deleteDocumentOK, "success");
- }
- }.bind(this),function(xhr,text,error){
- var errorText = error;
- if (xhr) errorMessage = xhr.responseText;
- var e = JSON.parse(errorMessage);
- if(e.message){
- this.app.notice( e.message,"error");
- }else{
- this.app.notice( errorText,"error");
- }
- }.bind(this));
- },
- _create: function(){
- },
- _openDocument: function( documentData ){
- if( this.tabLocation == "baseDrafter" ){
- MWF.xDesktop.requireApp("Execution", "WorkForm", function(){
- var isEditedBool = (this.tabLocation == "centerDrafter" || this.tabLocation == "baseDrafter") ? true : false
- var workform = new MWF.xApplication.Execution.WorkForm(this, this.app.restActions,documentData,{
- "isNew": false,
- "isEdited": isEditedBool,
- "tabLocation":this.category
- });
- workform.load();
- }.bind(this));
- }else{
- MWF.xDesktop.requireApp("Execution", "WorkDetail", function(){
- var workform = new MWF.xApplication.Execution.WorkDetail(this, this.app.restActions,documentData,{
- "isNew": false,
- "isEdited": false,
- "tabLocation":this.category
- });
- workform.load();
- }.bind(this));
- }
- },
- _queryCreateViewNode: function(){
- },
- _postCreateViewNode: function( viewNode ){
- },
- _queryCreateViewHead:function(){
- },
- _postCreateViewHead: function( headNode ){
- }
- })
- MWF.xApplication.Execution.WorkTask.BaseWorkDocument = new Class({
- Extends: MWF.xApplication.Template.Explorer.ComplexDocument,
- action_edit:function(){
- //this.workForm = new MWF.xApplication.Execution.WorkForm(this, this.actions, this.data, {
- // "isNew": true,
- // "isEdited": false
- //})
- //this.workForm.load();
- MWF.xDesktop.requireApp("Execution", "WorkForm", function(){
- var isEditedBool = (this.view.tabLocation == "centerDrafter" || this.view.tabLocation == "baseDrafter") ? true : false
- var workform = new MWF.xApplication.Execution.WorkForm(this, this.app.restActions,this.data,{
- "isNew": false,
- "isEdited": isEditedBool,
- "tabLocation":this.view.category,
- });
- workform.load();
- }.bind(this));
- },
- appointActionReturn : function(d){
- if(this.view.app.workTask.appointSwitch && this.view.app.workTask.appointSwitch.toUpperCase() == "OPEN"){
- return true;
- }
- return false
- },
- reportActionReturn : function(d){
- if(this.view.app.workTask.reportSwitch && this.view.app.workTask.reportSwitch == "OPEN"){
- return true;
- }
- return false;
- },
- splitActionReturn: function(d){
- if(this.view.app.workTask.splitSwitch && this.view.app.workTask.splitSwitch == "OPEN"){
- return true;
- }
- return false;
- },
- editActionReturn : function(d){
- if(d.workProcessStatus == this.lp.statusDraft){
- return true;
- }
- return false;
- },
- action_report: function(){
- MWF.xDesktop.requireApp("Execution", "WorkReport", function(){
- var data = {
- workId : this.data.id
- }
- var workReport = new MWF.xApplication.Execution.WorkReport(this, this.app.restActions,data,{
- "isNew": false,
- "isEdited": false,
- "tabLocation":this.view.category,
- "from":"drafter"
- });
- workReport.load();
- }.bind(this));
- },
- action_split:function(){
- MWF.xDesktop.requireApp("Execution", "WorkForm", function(){
- var data = {
- title : this.data.title,
- centerId : this.data.centerId,
- //centerTitle: this.data.centerTitle,
- parentWorkId : this.data.id,
- //parentWorkTitle : this.data.title,
- workType : this.data.workType,
- workLevel : this.data.workLevel,
- completeDateLimitStr : this.data.completeDateLimitStr,
- completeDateLimit : this.data.completeDateLimit,
- reportCycle: this.data.reportCycle,
- reportDayInCycle: this.data.reportDayInCycle
- }
- if(this.data.id){
- this.actions.getBaseWorkDetails(this.data.id, function (json) {
- data.workSplitAndDescription = json.data.workDetail
- data.specificActionInitiatives = json.data.progressAction
- data.cityCompanyDuty = json.data.dutyDescription
- data.milestoneMark = json.data.landmarkDescription
- data.importantMatters = json.data.majorIssuesDescription
- }.bind(this),null,false)
- }
- var workform = new MWF.xApplication.Execution.WorkForm(this, this.app.restActions,data,{
- "isNew": false,
- "isEdited": true,
- "tabLocation":this.view.category
- });
- workform.load();
- }.bind(this));
- },
- action_appoint:function(){
- data = {
- workId : this.data.id
- };
- var appointForm = new MWF.xApplication.Execution.WorkTask.Appoint(this.view.app,this.view.app.restActions,data,this.view.css,{
- "ieEdited": true,
- "onReloadView" : function( data ){
- this.view.app.workTask.createRightContentDiv("base","myAppoint");
- }.bind(this)
- });
- appointForm.load();
- },
- action_unAppoint:function(e){
- var _self = this
- _self.view.app.confirm("warn",e,_self.view.app.lp.workTask.submitWarn.warnTitle,_self.view.app.lp.workTask.submitWarn.warnContent,300,120,function(){
- data = {
- workId : _self.data.id
- };
- _self.actions.unAppointBaseWork(data,function(json){
- this.app.notice(_self.view.app.lp.workTask.prompt.tackbackBaseWork,"success");
- }.bind(_self),function(xhr,text,error){
- var errorText = error;
- if (xhr) errorMessage = xhr.responseText;
- var e = JSON.parse(errorMessage);
- if(e.message){
- this.app.notice( e.message,"error");
- }else{
- this.app.notice( errorText,"error");
- }
- }.bind(_self),false)
- _self.view.app.workTask.createRightContentDiv("base","myAppoint");
- this.close(0)
- },function(){
- this.close();
- })
- },
- _queryCreateDocumentNode:function( itemData ){
- },
- _postCreateDocumentNode: function( itemNode, itemData ){
- if(itemNode.getElements("div[name='appointDiv']")){
- if(itemData.okrWorkAuthorizeRecord){
- itemNode.getElements("div[name='appointDiv']").setStyle("display","")
- }
- }
- if(itemNode.getElements("div[styles='documentSubject']")){
- itemNode.getElements("div[styles='documentSubject']").set("title",itemData.shortWorkDetail)
- }
- }
- //open: function(){
- // alert("open")
- //}
- })
- MWF.xApplication.Execution.WorkTask.Appoint = new Class({
- Extends: MWF.xApplication.Template.Explorer.PopupForm,
- Implements: [Options, Events],
- options: {
- "style": "default",
- "width": "500",
- "height": "300",
- "hasTop": true,
- "hasIcon": false,
- "hasBottom": true,
- "title": "",
- "draggable": false,
- "closeAction": true,
- "closeText" : "",
- "needLogout" : false,
- "isNew": true
- },
- initialize: function (app, actions, data, css, options) {
- this.setOptions(options);
- this.app = app;
- this.actions = this.app.restActions;
- this.css = css;
- //this.options.title = this.app.lp.idenitySelectTitle;
- //
- //this.identities = identities;
- this.data = data || {};
- this.actions = actions;
- },
- load: function () {
- this.create();
- },
- createTopNode: function () {
- if (!this.formTopNode) {
- this.formTopNode = new Element("div.formTopNode", {
- "styles": this.css.formTopNode
- }).inject(this.formNode);
- this.formTopIconNode = new Element("div.formTopIconNode", {
- "styles": this.css.formTopIconNode
- }).inject(this.formTopNode)
- this.formTopTextNode = new Element("div.formTopTextNode", {
- "styles": this.css.formTopTextNode,
- "text": this.app.lp.workTask.appoint.appointTitle
- }).inject(this.formTopNode)
- if (this.options.closeAction) {
- this.formTopCloseActionNode = new Element("div.formTopCloseActionNode", {"styles": this.css.formTopCloseActionNode}).inject(this.formTopNode);
- this.formTopCloseActionNode.addEvent("click", function () {
- this.close()
- }.bind(this))
- }
- this.formTopContentNode = new Element("div.formTopContentNode", {
- "styles": this.css.formTopContentNode
- }).inject(this.formTopNode)
- //this._createTopContent();
- }
- },
- _createTableContent: function () {
- var table = new Element("table",{"width":"100%",border:"0",cellpadding:"5",cellspacing:"0"}).inject(this.formTableArea);
- table.setStyles({"margin-top":"40px"})
- var tr = new Element("tr").inject(table);
- var td = new Element("td",{
- text : this.app.lp.workTask.appoint.appointFor,
- valign:"middle",
- width:"20%"
- }).inject(tr);
- td = new Element("td",{width:"80%"}).inject(tr);
- this.appointPerson = new Element("input",{
- "readonly": true
- }).inject(td);
- this.appointPerson.setStyles({"width":"90%","height":"20px"})
- this.appointPerson.addEvents({
- "click":function(){
- this.selectPerson(this.appointPerson,"identity",1)
- }.bind(this)
- })
- tr = new Element("tr").inject(table);
- td = new Element("td",{
- "text" : this.app.lp.workTask.appoint.appointOpinion,
- valign:"middle"
- }).inject(tr);
- td = new Element("td").inject(tr);
- this.appointOpinion = new Element("textarea").inject(td)
- this.appointOpinion.setStyles({"width":"90%","height":"50px"})
- },
- _createBottomContent: function () {
- this.cancelActionNode = new Element("div.formCancelActionNode", {
- "styles": this.css.formCancelActionNode,
- "text": this.app.lp.workTask.appoint.appointCancel
- }).inject(this.formBottomNode);
- this.cancelActionNode.addEvent("click", function (e) {
- this.close();
- }.bind(this));
- this.okActionNode = new Element("div.formOkActionNode", {
- "styles": this.css.formOkActionNode,
- "text": this.app.lp.workTask.appoint.appointOK
- }).inject(this.formBottomNode);
- this.okActionNode.addEvent("click", function (e) {
- this.ok(e);
- }.bind(this));
- },
- ok:function(){
- if(this.appointPerson.get("value")==""){
- this.app.notice(this.app.lp.workTask.appoint.personEmpty,"error")
- return false;
- }
- if(this.appointOpinion.get("value")==""){
- this.app.notice(this.app.lp.workTask.appoint.opinionEmpty,"error")
- return false;
- }
- var submitData = {
- workId : this.data.workId,
- undertakerIdentity : this.appointPerson.get("value"),
- authorizeOpinion : this.appointOpinion.get("value")
- }
- this.actions.appointBaseWork(submitData,function(json){
- this.close();
- this.fireEvent("reloadView");
- }.bind(this),function(xhr,text,error){
- var errorText = error;
- if (xhr) errorMessage = xhr.responseText;
- var e = JSON.parse(errorMessage);
- if(e.message){
- this.app.notice( e.message,"error");
- }else{
- this.app.notice( errorText,"error");
- }
- }.bind(this),false)
- },
- selectPerson: function( item, type,count ) {
- MWF.xDesktop.requireApp("Organization", "Selector.package", null, false);
- this.fireEvent("querySelect", this);
- var value = item.get("value").split(this.valSeparator);
- var options = {
- "type": type,
- "title": this.app.lp.workTask.appoint.appointTitle,
- "count": count,
- "names": value || [],
- "onComplete": function (items) {
- var arr = [];
- items.each(function (item) {
- arr.push(item.data.name);
- }.bind(this));
- item.set("value", arr.join(","));
- }.bind(this)
- };
- var selector = new MWF.OrgSelector(this.app.content, options);
- }
- });
|