Ext.define('erp.view.common.DeskTop.FlowPortal',{ extend: 'erp.view.common.DeskTop.Portlet', alias: 'widget.flowportal', title: '
审批流程
', iconCls: 'main-todo', enableTools:true, animCollapse: false, pageCount:10, activeRefresh:true, autoRefresh:true, itemConfig:{ toDo:'待办', toLaunch:'待发起', alreadyDo:'已办理', alreadyLaunch:'已发起' }, initComponent : function(){ var me=this; Ext.apply(this,{ items:[Ext.widget('tabpanel',{ autoShow: true, tabPosition:'top', minHeight:200, frame:true, items:me._initItems() })] }); this.callParent(arguments); }, _initItems:function(){ var me=this,items=new Array(),conf=me.itemConfig; for(var c in conf){ var component=me['_'+c].apply(me,[c,conf[c]]); component.addListener('activate',function(c){ c.getStore().load({params:{ count:me.pageCount }}); }); items.push(component); } return items; }, _toDo:function(){ var me=this,fields=['JP_STATUS','JP_NODEID','JP_NAME','JP_NODENAME','JP_LAUNCHTIME','JP_LAUNCHERNAME','JP_CODEVALUE','JP_PROCESSNOTE','CURRENTMASTER','JP_STATUS','TYPECODE']; return Ext.widget('gridpanel',{ title:arguments[1], layout:'fit', columns:[{ text:'标题', cls:'x-grid-header-simple', dataIndex:'JP_NODEID', flex:1, id: 'topic', renderer:function(val,meta,record){ var note=record.get('JP_PROCESSNOTE'),remindImg='',url='jsps/common/jprocessDeal.jsp',CURRENTMASTER=record.get('CURRENTMASTER'),TYPECODE=record.get('TYPECODE'); if(note==null || note =='' || note=='null') { note=''; } else note='
'+note+''; if(TYPECODE=='procand'){ url='jsps/common/jtaketask.jsp'; remindImg=''; }else if(TYPECODE=='unprocess'){ url+='?_do=1'; remindImg=''; } else remindImg=''; return Ext.String.format('{5}{0} {1}{2}', record.get('JP_NAME'), record.get('JP_CODEVALUE'), note, record.get('JP_NODEID'), CURRENTMASTER, remindImg,url ); } },{ text:'发起人', cls:'x-grid-header-simple', width:80, dataIndex:'JP_LAUNCHERNAME' },{ text:'发起时间', cls:'x-grid-header-simple', width:150, dataIndex:'JP_LAUNCHTIME', xtype:'datecolumn', renderer:function(value){ return Ext.Date.format(new Date(value),'Y-m-d H:i:s'); } }], viewConfig :{ stripeRows:false, trackOver: false, plugins: [{ ptype: 'preview', expanded: true, pluginId: 'preview' }] }, store:me.getQueryStore(fields,arguments[0]) }); }, _toLaunch:function(){ var me=this,fields=['TITLE','CODE','PAGELINK']; return Ext.widget('gridpanel',{ title:arguments[1], columns:[{ text:'单据编号', id:'topic', cls:'x-grid-header-simple', flex:0.5, dataIndex:'CODE', renderer:function(val,meta,record){ return Ext.String.format('{1}', record.get('PAGELINK'), record.get('CODE') ); } },{ text:'标题', cls:'x-grid-header-simple', dataIndex:'TITLE', flex:0.5 }], store:me.getQueryStore(fields,arguments[0]) }); }, _alreadyDo:function(){ var me=this,fields=['JP_NAME','JP_STATUS','JP_NODEID','JP_CODEVALUE','JN_NAME','JN_DEALRESULT','JN_DEALTIME','JN_NODEDESCRIPTION']; return Ext.widget('gridpanel',{ title:arguments[1], layout:'fit', columns:[{ text:'标题', dataIndex:'JP_NODEID', cls:'x-grid-header-simple', id: 'topic', flex:1, renderer:function(val,meta,record){ var description=record.get('JN_NODEDESCRIPTION'); if(description==null || description =='' || description=='null') { description=''; } else description='
'+description+''; return Ext.String.format('{0} {1}{2}', record.get('JP_NAME'), record.get('JP_CODEVALUE'), description, record.get('JP_NODEID') ); } },{ text:'处理结果', cls:'x-grid-header-simple', dataIndex:'JN_DEALRESULT' },{ text:'处理时间', dataIndex:'JN_DEALTIME', cls:'x-grid-header-simple', width:150 }], store:me.getQueryStore(fields,arguments[0]) }); }, _alreadyLaunch:function(){ var me=this,fields=['JP_STATUS','JP_NODEID','JP_NAME','JP_NODENAME','JP_NODEDEALMANNAME','JP_LAUNCHTIME','JP_LAUNCHERNAME','JP_CODEVALUE']; return Ext.widget('gridpanel',{ title:arguments[1], columns:[{ text:'标题', cls:'x-grid-header-simple', flex:1, dataIndex:'JP_NAME', id:'topic', renderer:function(val,meta,record){ var description=record.get('JN_NODEDESCRIPTION'); if(description==null || description =='' || description=='null') { description=''; } else description='
'+description+''; return Ext.String.format('{0} {1}{2}', record.get('JP_NAME'), record.get('JP_CODEVALUE'), description, record.get('JP_NODEID') ); } },{ text:'当前节点', dataIndex:'JP_NODENAME', cls:'x-grid-header-simple', flex:0.5 },{ text:'状态', dataIndex:'JP_STATUS', cls:'x-grid-header-simple', width:60 },{ text:'处理人', dataIndex:'JP_NODEDEALMANNAME', cls:'x-grid-header-simple', width:80 }], store:me.getQueryStore(fields,arguments[0]) }); }, _alreadyCommunicate:function(){ return Ext.widget('gridpanel',{ title:'已沟通', columns:[{ text:'标题' },{ text:'沟通节点' },{ text:'状态' }] }); }, getQueryStore:function(fields,type,autoLoad){ var me=this; return Ext.create('Ext.data.Store',{ fields:fields, proxy: { type: 'ajax', url : basePath + 'common/desktop/process/'+type+'.action', method : 'GET', extraParams:{ count:me.pageCount }, reader: { type: 'json', root: 'data' } }, autoLoad:false }); }, getMore:function(){ openTable(null,null,'更多流程',"jsps/common/moreflow.jsp",null,null); }, _dorefresh:function(panel){ var activeTab=panel.down('tabpanel').getActiveTab(); if(activeTab) activeTab.fireEvent('activate',activeTab); } });