Ext.QuickTips.init(); Ext.define('erp.controller.scm.product.ProductBatchUUId', { extend: 'Ext.app.Controller', FormUtil: Ext.create('erp.util.FormUtil'), GridUtil: Ext.create('erp.util.GridUtil'), BaseUtil: Ext.create('erp.util.BaseUtil'), views:[ 'scm.product.ProductBatchUUId','core.form.Panel','core.grid.Panel2','core.toolbar.Toolbar','core.button.Scan','core.button.Export', 'core.button.Save','core.button.Add','core.button.Submit','core.button.Print','core.button.Upload','core.button.ResAudit', 'core.button.Audit','core.button.Close','core.button.Delete','core.button.Update','core.button.DeleteDetail','core.button.ResSubmit', 'core.trigger.DbfindTrigger','core.trigger.TextAreaTrigger','core.button.CleanDetail','core.button.Confirm','core.button.GetB2CProductKind', 'scm.product.GetUUid.ComponentGrid','scm.product.GetUUid.Toolbar','core.button.LoadProd','core.button.RemoveUUId','core.button.GetUUId' ], init:function(){ var me = this; this.control({ 'erpGridPanel2': { itemclick: this.onGridItemClick, /*cellclick:function(view,td,cellIndex,record,tr,rowIndex,e,eOpts){ var field = view.ownerCt.columns[cellIndex].dataIndex; if (field == 'pub_uuidstr') { this.onCellItemClick(record); }; }*/ }, 'erpConfirmButton':{ beforerender:function(btn){ btn.text="更新"; btn.width=80; }, click:function(btn){ var stores = me.GridUtil.getGridStore(Ext.getCmp('grid')); if(stores.length != 0){// var errInfo = me.GridUtil.getUnFinish(Ext.getCmp('grid')); if(errInfo.length > 0){ showError('明细表有必填字段未完成填写
' + errInfo); }else{ me.batchUpdateUUId(stores); } }else{ showError("还未添加或修改数据."); } } }, 'erpCloseButton': { click: function(btn){ me.FormUtil.beforeClose(me); } }, 'gridcolumn[dataIndex=pub_uuidstr]': { afterrender: function(column) { column.renderer = function(val, meta, record) { if(val != null && val != "") { val = '有'; } else { val = '无'; } return val; } } }, 'erpGetB2CProductKindButton':{ click:function(btn){ var record = Ext.getCmp('grid').selModel.lastSelected; if(record && record.get("pub_prodcode")){ me.onCellItemClick(record); } }, afterrender:function(btn){ btn.setDisabled(true); } }, //清除明细 'erpCleanDetailButton' : { click: function(btn){ var param = me.GridUtil.getAllGridStore(Ext.getCmp('grid')); if(param == null || param == ''){ showError("没有需要清除的明细"); return ; } me.cleanDetail(); } }, 'erpLoadProdButton':{ click:function(btn){ var form=Ext.getCmp('form'); var KeyValue=Ext.getCmp("em_id").value; var me = this; var url = basePath + "jsps/scm/product/ProdResource.jsp"; var panel = Ext.getCmp("em_id=" +KeyValue); var main = parent.Ext.getCmp("content-panel"); var panelId= main.getActiveTab().id; var urlcondition=" pr_code not in (select pub_prodcode from ProductUUIDBatch)"; main.getActiveTab().currentGrid = Ext.getCmp('grid'); if(!panel){ var title = ""; if (KeyValue.toString().length>4) { title = KeyValue.toString().substring(KeyValue.toString().length-4); } else { title = KeyValue; } panel = { title:'标准料号设置物料来源(('+KeyValue+')', tag : 'iframe', tabConfig:{tooltip:'标准料号设置物料来源('+title+')'}, frame : true, border : false, layout : 'fit', iconCls : 'x-tree-icon-tab-tab', html : '', closable : true, listeners : { close : function(){ main.setActiveTab(main.getActiveTab().id); } } }; me.FormUtil.openTab(panel,"em_id=" + KeyValue); }else{ main.setActiveTab(panel); } } }, 'erpRemoveUUIdButton':{ click:function(btn){ var stores = me.GridUtil.getAllGridStore(Ext.getCmp('grid')); if(stores.length != 0){ me.removeUUId(); } } }, 'erpGetUUIdButton':{//自动匹配 click:function(btn){ var stores = me.GridUtil.getAllGridStore(Ext.getCmp('grid')); //grid.getStore() if(stores.length != 0){ me.getUUid(); } } }, 'erpDeleteDetailButton': { afterrender: function(btn){ btn.ownerCt.add({ xtype: 'erpGetB2CProductKindButton' }); } } }); }, onCellItemClick:function(record){ var me = this; // grid行选择 var str = record.data['pub_uuidstr']; var uuid = record.data['pub_uuid']; if(!record.dirty && !Ext.isEmpty(uuid)){ //根据uuid获取相关信息 me.getByUUid(uuid,function(data){ if(data != null){ me.createWin(data); } }); }else if(!Ext.isEmpty(str)){ me.getByUUid(str,function(data){ if( data != null){ me.createWin(data); } }); }else{ var win = me.uuWin; var linkCaller = 'Product'; if (!win) { var status= ''; me.uuWin = win = new Ext.window.Window({ id : 'uuWin', height : "100%", width : "80%", maximizable : true, closeAction : 'hide', buttonAlign : 'center', layout : 'anchor', title : '获取编号', items : [{ tag : 'iframe', anchor : '100% 100%', layout : 'fit', html : '' }] }); } win.show(); } }, createWin:function(data){ var me = this, win = me.orWin; me.data=data; if (!win) { me.orWin=win = Ext.create('Ext.Window',{ id : 'wind', title:'标准料号', height : '65%', width : '65%', maximizable : true, buttonAlign : 'center', closeAction:'hide', layout : 'anchor', items : [{ xtype:'erpComponentGrid', anchor: '100% 100%' }], bbar: ['->',{ text:'关闭', cls: 'x-btn-gray', iconCls: 'x-button-icon-close', listeners: { click: function(btn){ btn.up('window').close(); } } },'->'], listeners:{ beforeshow:function(win){ var g = win.down('erpComponentGrid'); g.store.loadData(me.data); dataCount = data.length; Ext.getCmp('pagingtoolbar').afterOnLoad(); } } }); } win.show(); }, getByUUid:function(str,callback){ Ext.Ajax.request({//获取匹配结果 url : basePath + "scm/product/getByUUIds.action", params :{ ids:str }, method : 'post', callback : function(opt, s, res){ var r = new Ext.decode(res.responseText); if(r && r.exceptionInfo){ showError(r.exceptionInfo); }else{ callback && callback.call(null, r.gridStore); } } }); }, cleanDetail: function(){ var grid=Ext.getCmp('grid'); grid.setLoading(true); Ext.Ajax.request({ url :basePath+ 'scm/product/clearUUDetail.action', params: { id:Ext.getCmp('em_id').value, caller : caller }, method : 'post', callback : function(options,success,response){ grid.setLoading(false); var localJson = new Ext.decode(response.responseText); if(localJson.success){ showMessage('提示', '操作成功!', 1000); //update成功后刷新页面进入可编辑的页面 window.location.reload(); } else if(localJson.exceptionInfo){ showError(localJson.exceptionInfo);return; } } }); }, onGridItemClick: function(selModel, record){//grid行选择 var btn= Ext.getCmp('getb2cproductkind'); if(btn && btn.disabled){ btn.setDisabled(false); } this.GridUtil.onGridItemClick(selModel, record); }, getForm: function(btn){ return btn.ownerCt.ownerCt; }, batchUpdateUUId:function(data){ var me = this; //有修改值 me.FormUtil.setLoading(true); Ext.Ajax.request({ url :basePath+ 'scm/product/batchUpdateUUId.action', params: { param:unescape(data) }, method : 'post', callback : function(options,success,response){ me.FormUtil.setLoading(false); var localJson = new Ext.decode(response.responseText); if(localJson.success){ showMessage('提示', '操作成功!', 1000); //update成功后刷新页面进入可编辑的页面 window.location.reload(); } else if(localJson.exceptionInfo){ showError(localJson.exceptionInfo);return; } } }); }, getUUid:function(){ var me = this; //有修改值 me.FormUtil.setLoading(true); Ext.Ajax.request({ url :basePath+ 'scm/product/getUUId.action', params: { caller : caller }, method : 'post', timeout:300000, callback : function(options,success,response){ me.FormUtil.setLoading(false); var localJson = new Ext.decode(response.responseText); if(localJson.success){ showMessage('提示', '操作成功!', 1000); //update成功后刷新页面进入可编辑的页面 window.location.reload(); } else if(localJson.exceptionInfo){ showError(localJson.exceptionInfo);return; } } }); }, removeUUId:function(){ var me = this; //有修改值 me.FormUtil.setLoading(true); Ext.Ajax.request({ url :basePath+ 'scm/product/removeUUId.action', params: { pub_emid:Ext.getCmp("em_id").value, caller : caller }, method : 'post', callback : function(options,success,response){ me.FormUtil.setLoading(false); var localJson = new Ext.decode(response.responseText); if(localJson.success){ showMessage('提示', '操作成功!', 1000); //update成功后刷新页面进入可编辑的页面 window.location.reload(); } else if(localJson.exceptionInfo){ showError(localJson.exceptionInfo);return; } } }); } });