Ext.QuickTips.init();
Ext.define('erp.controller.fa.gs.AccessChange', {
extend: 'Ext.app.Controller',
FormUtil: Ext.create('erp.util.FormUtil'),
GridUtil: Ext.create('erp.util.GridUtil'),
BaseUtil: Ext.create('erp.util.BaseUtil'),
views:[
'core.grid.Panel4','core.toolbar.Toolbar3','core.button.Save','core.button.Delete',
'core.trigger.DbfindTrigger','core.grid.YnColumn','fa.gs.AccessChange'
],
init:function(){
var me = this;
me.gridLastSelected = null;
this.control({
'erpGridPanel4': {
itemclick: this.onGridItemClick
},
'erpSaveButton': {
click: function(btn){
this.beforeUpdate();
}
},
'erpDeleteButton': {
click: function(btn){
this.GridUtil.deleteDetailForEditGrid(btn);
}
}
});
},
onGridItemClick: function(selModel, record){//grid行选择
this.gridLastSelected = record;
var grid = Ext.getCmp('grid');
if(record.data[grid.necessaryField] == null || record.data[grid.necessaryField] == ''){
this.gridLastSelected.findable = true;//空数据可以在输入完code,并移开光标后,自动调出该条数据
} else {
this.gridLastSelected.findable = false;
}
this.GridUtil.onGridItemClickForEditGrid(selModel, record);
},
beforeUpdate: function(){
var mm = this;
var s2 = '';
var grids = Ext.ComponentQuery.query('gridpanel');
if(grids.length > 0){//check所有grid是否已修改
Ext.each(grids, function(grid, index){
var msg = grid.GridUtil.checkGridDirty(grid);
if(msg.length > 0){
s2 = s2 + '
' + grid.GridUtil.checkGridDirty(grid);
}
});
}
var params = [];
if(grids.length > 0){
var param = grids[0].GridUtil.getGridStore();
if(grids[0].necessaryField.length > 0 && (param == null || param == '')){
warnMsg('明细表还未添加数据,是否继续?', function(btn){
if(btn == 'yes'){
params = unescape("[" + param.toString().replace(/\\/g,"%") + "]");
} else {
return;
}
});
} else {
params = unescape("[" + param.toString().replace(/\\/g,"%") + "]");
}
}
mm.update(params);
},
update:function(){
var params = new Object();
params.param = unescape(arguments[0].toString().replace(/\\/g,"%"));
for(var i=2; i