Ext.QuickTips.init();
Ext.define('erp.controller.oa.knowledge.KnowledgeModule', {
extend: 'Ext.app.Controller',
requires: ['erp.util.FormUtil', 'erp.util.GridUtil', 'erp.util.BaseUtil', 'erp.util.RenderUtil'],
views:[
'oa.knowledge.KnowledgeModule','oa.knowledge.KnowledgeGrid','core.button.Save'
],
init:function(){
this.control({
'button[id=add]':{
click:function(btn){
var win = new Ext.window.Window({
id : 'win',
height: '300',
width: '450',
maximizable : true,
buttonAlign : 'center',
layout : 'anchor',
items: [{
tag : 'iframe',
frame : true,
anchor : '100% 100%',
layout : 'fit',
html : ''
}],
});
win.show();
}
},
'button[id=sort]':{
click:function(){
var win = new Ext.window.Window({
id : 'wingrid',
height: '300',
width: '450',
maximizable : true,
buttonAlign : 'center',
layout : 'anchor',
items: [{
tag : 'iframe',
frame : true,
anchor : '100% 100%',
layout : 'fit',
html : ''
}],
buttons : [{
text : $I18N.common.button.erpConfirmButton,
iconCls: 'x-button-icon-confirm',
cls: 'x-btn-gray',
handler : function(){
var grid = Ext.getCmp('wingrid').items.items[0].body.dom.getElementsByTagName('iframe')[0].contentWindow.Ext.getCmp("editorColumnGridPanel");
var data = grid.getEffectData();
if(data != null){
grid.setLoading(true);
Ext.Ajax.request({
url : basePath + 'oa/knowledge/VastSaveModuleDetno.action',
params: {
caller: caller,
data: Ext.encode(data)
},
method : 'post',
callback : function(options,success,response){
grid.setLoading(false);
var localJson = new Ext.decode(response.responseText);
if(localJson.exceptionInfo){
showError(localJson.exceptionInfo);
return "";
}
if(localJson.success){
if(localJson.log){
showMessage("提示", localJson.log);
}
Ext.Msg.alert("提示", "处理成功!", function(){
win.close();
var detailgrid= Ext.getCmp('wingrid');
gridParam = {caller: 'SaleForecast', condition: condition};
me.GridUtil.getGridColumnsAndStore(detailgrid, 'common/singleGridPanel.action', gridParam, "")
});
}
}
});
}
}
}, {
text : $I18N.common.button.erpCloseButton,
iconCls: 'x-button-icon-close',
cls: 'x-btn-gray',
handler : function(){
Ext.getCmp('wingrid').close();
}
}]
});
win.show();
}
},
'button[id=delete]':{
click:function(btn){
var grid = Ext.getCmp('knowledgeGridPanel');
var items = grid.selModel.getSelection();
Ext.each(items, function(item, index){
if(this.data[grid.keyField] != null && this.data[grid.keyField] != ''
&& this.data[grid.keyField] != '0' && this.data[grid.keyField] != 0){
grid.multiselected.push(item);
}
});
var records = Ext.Array.unique(grid.multiselected);
if(records.length > 0){
var params = new Object();
params.caller = caller;
var data = new Array();
var bool = false;
Ext.each(records, function(record, index){
if((grid.keyField && this.data[grid.keyField] != null && this.data[grid.keyField] != ''
&& this.data[grid.keyField] != '0' && this.data[grid.keyField] != 0) ){
bool = true;
var o = new Object();
if(grid.keyField){
o[grid.keyField] = record.data[grid.keyField];
} else {
params.id[index] = record.data[form.fo_detailMainKeyField];
}
if(grid.toField){
Ext.each(grid.toField, function(f, index){
var v = Ext.getCmp(f).value;
if(v != null && v.toString().trim() != '' && v.toString().trim() != 'null'){
o[f] = v;
}
});
}
if(grid.necessaryFields){
Ext.each(grid.necessaryFields, function(f, index){
var v = record.data[f];
if(Ext.isDate(v)){
v = Ext.Date.toString(v);
}
o[f] = v;
});
}
data.push(o);
}
});
if(bool){
params.data = Ext.encode(data);
var main = parent.Ext.getCmp("content-panel");
main.getActiveTab().setLoading(true);//loading...
Ext.Ajax.request({
url : basePath +'oa/knowledge/VastDeleteKnowledgeModule.action',
params: params,
method : 'post',
callback : function(options,success,response){
main.getActiveTab().setLoading(false);
var localJson = new Ext.decode(response.responseText);
if(localJson.exceptionInfo){
showError(localJson.exceptionInfo);
return "";
}
if(localJson.success){
if(localJson.log){
showMessage("提示", localJson.log);
}
Ext.Msg.alert("提示", "删除成功!", function(){
grid.multiselected = new Array();
var gridParam = {caller: caller, condition: condition};
grid.GridUtil.getGridColumnsAndStore(grid, 'common/singleGridPanel.action', gridParam, "");
});
}
}
});
} else {
showError("没有需要处理的数据!");
}
}
}
}
});
}
});