Ext.QuickTips.init(); Ext.define('erp.controller.common.Query', { extend : 'Ext.app.Controller', views : ['common.query.Viewport', 'common.query.GridPanel', 'common.query.Form', 'core.trigger.DbfindTrigger', 'core.form.FtField', 'core.form.ConDateField', 'core.form.YnField', 'core.form.FtDateField','core.form.YearDateField', 'core.form.MonthDateField','core.form.FtFindField', 'core.grid.YnColumn', 'core.grid.TfColumn', 'core.button.Refresh', 'core.form.ConMonthDateField', 'core.trigger.TextAreaTrigger','core.form.ConDateHourMinuteFieldQ','core.form.ConDateHourMinuteField'], init : function() { var me=this; this.control({ 'erpQueryFormPanel' : { alladded : function(form) { var items = form.items.items, autoQuery = false; Ext.each(items, function() { var val = getUrlParam(this.name); if(!Ext.isEmpty(val)) { this.setValue(val); autoQuery = true; if(this.xtype == 'dbfindtrigger') { this.autoDbfind('form', caller, this.name, this.name + " like '%" + val + "%'"); } } }); if(autoQuery) { setTimeout(function(){ form.onQuery(); }, 1000); } } }, 'button[name=refresh]':{ click: function(btn){ var form = me.getForm(btn); if (caller == 'ALMonth!Query'){ var month = Ext.getCmp('am_yearmonth'); var condition=month.secondVal; Ext.Ajax.request({ url: basePath + 'fa/ars/CmQueryController/refreshQuery.action', params: { condition:condition }, method: 'post', callback: function(opt, s, r) { var rs = Ext.decode(r.responseText); if(rs.success) { form.onQuery(); }else{ } } }); }else{ form.onQuery(); } } }, 'erpQueryGridPanel' : { itemclick : this.onGridItemClick }, 'monthdatefield': { afterrender: function(f) { var type = ''; if(f.name == 'cd_yearmonth') { type = 'MONTH-T'; } if(f.name == 'cmc_yearmonth') { type = 'MONTH-A'; } if(f.name == 'cm_yearmonth') { type = 'MONTH-A'; } if(f.name == 'am_yearmonth') { type = 'MONTH-B'; } if(type != '' && Ext.isEmpty(getUrlParam(f.name))) { this.getCurrentMonth(f, type); } } }, 'conmonthdatefield': { afterrender: function(f) { var type = ''; if(f.name == 'cd_yearmonth') { type = 'MONTH-T'; } if(f.name == 'cmc_yearmonth') { type = 'MONTH-A'; } if(f.name == 'cm_yearmonth') { type = 'MONTH-A'; } if(f.name == 'am_yearmonth') { type = 'MONTH-B'; } if(type != '' && Ext.isEmpty(getUrlParam(f.name))) { this.getCurrentMonth(f, type); } } } }); }, onGridItemClick : function(selModel, record) { if (caller == 'CustMonth!ARLI!Query') { var cmid = record.data['cm_id']; if (cmid > 0) { var panel = Ext.getCmp(caller + "cm_id" + "=" + cmid); var main = parent.Ext.getCmp("content-panel"); if (!main) { main = parent.parent.Ext.getCmp("content-panel"); } if (!panel) { var title = ""; if (value.toString().length > 4) { title = value.toString().substring(value.toString().length - 4); } else { title = value; } var myurl = ''; if (me.BaseUtil.contains(url, '?', true)) { myurl = url + '&formCondition=' + formCondition + '&gridCondition=' + gridCondition; } else { myurl = url + '?formCondition=' + formCondition + '&gridCondition=' + gridCondition; } myurl += "&datalistId=" + main.getActiveTab().id; main.getActiveTab().currentStore = me.getCurrentStore(value);// 用于单据翻页 panel = { title : me.BaseUtil.getActiveTab().title + '(' + title + ')', tag : 'iframe', tabConfig : { tooltip : me.BaseUtil.getActiveTab().tabConfig.tooltip + '(' + keyField + "=" + value + ')' }, frame : true, border : false, layout : 'fit', iconCls : 'x-tree-icon-tab-tab1', html : '', closable : true, listeners : { close : function() { if (!main) { main = parent.parent.Ext.getCmp("content-panel"); } main.setActiveTab(main.getActiveTab().id); } } }; this.openTab(panel, caller + keyField + "=" + record.data[keyField]); } else { main.setActiveTab(panel); } } } if(caller=='Sale!saledetailDet'){ this.schedule(record); } }, schedule: function(record) { var width = Ext.isIE ? screen.width*0.7*0.9 : '80%', height = Ext.isIE ? screen.height*0.75 : '100%'; var sd_id = record.get('sd_id'); Ext.Ajax.request({ url : basePath + "scm/sale/checkSaleDetailDet.action", params: { whereString: "sd_id="+sd_id }, method : 'post', async: false, callback:function(options,success,response){ var res = new Ext.decode(response.responseText); if(res.exceptionInfo){ showError(res.exceptionInfo);return; } } }); Ext.create('Ext.Window', { width: width, height: height, autoShow: true, layout: 'anchor', items: [{ tag : 'iframe', frame : true, anchor : '100% 100%', layout : 'fit', html : '' }] }); }, getForm: function(btn){ return btn.ownerCt.ownerCt; }, getCurrentMonth: function(f, type) { Ext.Ajax.request({ url: basePath + 'fa/getMonth.action', params: { type: type }, callback: function(opt, s, r) { var rs = Ext.decode(r.responseText); if(rs.data) { f.setValue(rs.data.PD_DETNO); } } }); } });