123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195 |
- Ext.define('erp.view.common.multiDbfind.Toolbar', {
- extend: 'Ext.toolbar.Paging',
- alias: 'widget.erpMultiDbfindToolbar',
- doRefresh:function(){
- var resgrid=Ext.getCmp('dbfindresultgrid');
- resgrid.selectObject=new Object();
- this.moveFirst(true);
- if(Ext.Object.getKeys(resgrid.selectObject).length==0){
- parent.Ext.getCmp('onlyChecked').hide();
- }
- },
- updateInfo : function(){
- var page=this.child('#inputItem').getValue();
- var me = this, displayItem = me.child('#displayItem'),
- pageData = me.getPageData();
- pageData.fromRecord=(page-1)*pageSize+1;
- pageData.toRecord=page*pageSize > dataCount ? dataCount : page*pageSize;
- pageData.total=dataCount;
- dataCount, msg;
- if (displayItem) {
- if (dataCount === 0) {
- msg = me.emptyMsg;
- } else {
- msg = Ext.String.format(
- me.displayMsg,
- pageData.fromRecord,
- pageData.toRecord,
- pageData.total
- );
- }
- displayItem.setText(msg);
- me.doComponentLayout();
- //修改表头全选checkbox选中状态
- var hd_checker = Ext.getCmp("dbfindGridPanel").getEl().select('div.x-column-header-checkbox');
- var hd = hd_checker.first();
- if(hd.hasCls('x-grid-hd-checker-on')){
- hd.removeCls('x-grid-hd-checker-on');
- }
- }
- },
- getPageData : function(){
- var store = this.store,
- totalCount = store.getTotalCount();
- totalCount=dataCount;
- return {
- total : totalCount,
- currentPage : store.currentPage,
- pageCount: Math.ceil(dataCount / pageSize),
- fromRecord: ((store.currentPage - 1) * store.pageSize) + 1,
- toRecord: Math.min(store.currentPage * store.pageSize, totalCount)
- };
- },
- onPagingKeyDown : function(field, e){
- var me = this,
- k = e.getKey(),
- pageData = me.getPageData(),
- increment = e.shiftKey ? 10 : 1,
- pageNum = 0;
- if (k == e.RETURN) {
- e.stopEvent();
- pageNum = me.readPageFromInput(pageData);
- if (pageNum !== false) {
- pageNum = Math.min(Math.max(1, pageNum), pageData.pageCount);
- me.child('#inputItem').setValue(pageNum);
- if(me.fireEvent('beforechange', me, pageNum) !== false){
- page = pageNum;
- Ext.getCmp("dbfindGridPanel").getColumnsAndStore(caller, condition, page, pageSize);
- }
-
- }
- } else if (k == e.HOME || k == e.END) {
- e.stopEvent();
- pageNum = k == e.HOME ? 1 : pageData.pageCount;
- field.setValue(pageNum);
- } else if (k == e.UP || k == e.PAGEUP || k == e.DOWN || k == e.PAGEDOWN) {
- e.stopEvent();
- pageNum = me.readPageFromInput(pageData);
- if (pageNum) {
- if (k == e.DOWN || k == e.PAGEDOWN) {
- increment *= -1;
- }
- pageNum += increment;
- if (pageNum >= 1 && pageNum <= pageData.pages) {
- field.setValue(pageNum);
- }
- }
- }
- me.updateInfo();
- fn(me,pageNum);
- },
- moveFirst : function(){
- var me = this;
- me.child('#inputItem').setValue(1);
- value=1;
- page = value;
- Ext.getCmp("dbfindGridPanel").headerfilter=true;//不出发grid取消全选
- Ext.getCmp("dbfindGridPanel").getColumnsAndStore(caller, condition, page, pageSize);
- me.updateInfo();
- fn(me,value);
- },
- movePrevious : function(){
- var me = this;
- me.child('#inputItem').setValue(me.child('#inputItem').getValue()-1);
- value=me.child('#inputItem').getValue();
- page = value;
- Ext.getCmp("dbfindGridPanel").headerfilter=true;
- Ext.getCmp("dbfindGridPanel").getColumnsAndStore(caller, condition, page, pageSize);
- me.updateInfo();
- fn(me,value);
-
- },
- moveNext : function(){
- var me = this,
- last = me.getPageData().pageCount;
- total=last;
- me.child('#inputItem').setValue(me.child('#inputItem').getValue()+1);
- value=me.child('#inputItem').getValue();
- page = value;
- Ext.getCmp("dbfindGridPanel").headerfilter=true;
- Ext.getCmp("dbfindGridPanel").getColumnsAndStore(caller, condition, page, pageSize);
- me.updateInfo();
- fn(me,value);
- },
- moveLast : function(){
- var me = this,
- last = me.getPageData().pageCount;
- total=last;
- me.child('#inputItem').setValue(last);
- value=me.child('#inputItem').getValue();
- page = value;
- Ext.getCmp("dbfindGridPanel").headerfilter=true;
- Ext.getCmp("dbfindGridPanel").getColumnsAndStore(caller, condition, page, pageSize);
- me.updateInfo();
- fn(me,value);
- },
- onLoad : function() {
- var e = this, d, b, c, a;
- if (!e.rendered) {
- return;
- }
- d = e.getPageData();
- b = d.currentPage;
- c = Math.ceil(dataCount / pageSize);
- a = Ext.String.format(e.afterPageText, isNaN(c) ? 1 : c);
- e.child("#afterTextItem").setText(a);
- e.child("#inputItem").setValue(b);
- e.child("#first").setDisabled(b === 1);
- e.child("#prev").setDisabled(b === 1);
- e.child("#next").setDisabled(b === c || c===1);//
- e.child("#last").setDisabled(b === c || c===1);
- e.child("#refresh").enable();
- e.updateInfo();
- e.fireEvent("change", e, d);
- },
- afterOnLoad : function() {
- var e = this, d, c, a;
- if (!e.rendered) {
- return;
- }
- d = e.getPageData();
- b = d.currentPage;
- c = Math.ceil(dataCount / pageSize);
- a = Ext.String.format(e.afterPageText, isNaN(c) ? 1 : c);
- e.child("#afterTextItem").setText(a);
- e.updateInfo();
- e.fireEvent("change", e, d);
- e.child('#last').setDisabled(c <= 1 || page == c);
- e.child('#next').setDisabled(c <= 1 || page == c);
- if(Ext.getCmp("dbfindGridPanel").noCount) {
- var m = e.down('#more');
- if(!m) {
- m = Ext.create('Ext.panel.Tool', {
- id: 'more',
- type: 'right',
- margin: '0 5 0 5',
- handler: function() {
- Ext.getCmp("dbfindGridPanel").getCount(null, null, true);
- m.hide();
- Ext.getCmp("dbfindGridPanel").noCount = false;
- }
- });
- e.add(m);
- } else {
- m.show();
- }
- }
- }
- });
- function fn(me,value){
- me.child('#last').setDisabled(value==total);
- me.child('#next').setDisabled(value==total);
- me.child('#first').setDisabled(value<=1);
- me.child('#prev').setDisabled(value<=1);
- }
|