Ext.define('saas.view.document.uusetting.UUSettingController', { extend: 'Ext.app.ViewController', alias: 'controller.document-uusetting', onBoxReady: function(grid) { var me = this, vm = me.getViewModel(); var gridBodyBox = grid.body.dom.getBoundingClientRect(), gridBodyBoxHeight = gridBodyBox.height; var pageSize = Math.floor(gridBodyBoxHeight / 33); vm.getStore('vendorkind').setPageSize(pageSize); vm.getStore('customerkind').setPageSize(pageSize); }, loadDefualt:function(grid){ var me = this, view = me.getView(), vm = me.getViewModel(), defaultKind = view.defaultType; var etc = view.etc; var columns = etc[defaultKind].columns; var store = vm.getStore(defaultKind); store.load(); grid.reconfigure(store, Ext.Array.merge(columns, etc.common.columns)); grid.kind = defaultKind }, onToggle: function(container, button, pressed) { var me = this, view = me.getView(), vm = me.getViewModel(), kind = button.value, grid = view.down('grid'); var etc = view.etc; var columns = etc[kind].columns; var store = vm.getStore(kind); var items = view.dockedItems.items[0].query('[xtype=textfield]'); for(var x = 0; x < items.length; x++) { items[x].setVisible(items[x].name == kind); } store.condition = JSON.stringify(view.getConditions()); store.load(); grid.reconfigure(store, Ext.Array.merge(columns, etc.common.columns)); grid.kind = kind; }, onQuery: function() { var me = this, view = me.getView(), vm = me.getViewModel(), grid = view.down('grid'); var store = vm.getStore(grid.kind); store.condition = JSON.stringify(view.getConditions()); store.reload(); }, onUUSetting: function(tableView, rowIdx, colIdx, btn, e, record, tr) { var me = this; var grid = tableView.up('grid'); var kind = grid.kind; var config = { kind: kind }; if(kind == 'vendorkind') { if(!!record.get('ve_uu')) { return; } config.cname = record.get('ve_name'); }else { if(!!record.get('cu_uu')) { return; } config.cname = record.get('cu_name'); } this.getViewModel().setData(record.data); this.showUUSettingWin(config); }, showUUSettingWin: function(config) { var me = this, view = me.getView(); var win = Ext.getCmp(); if(!win) { win = Ext.create('saas.view.document.uusetting.UUSettingWin', Ext.Object.merge({ listView: view, }, config)); view.add(win); } win.show(); } });