Ext.QuickTips.init(); Ext.define('erp.controller.scm.purchase.VerifyApply', { extend: 'Ext.app.Controller', FormUtil: Ext.create('erp.util.FormUtil'), GridUtil: Ext.create('erp.util.GridUtil'), BaseUtil: Ext.create('erp.util.BaseUtil'), views:[ 'core.form.Panel','scm.purchase.VerifyApply','core.grid.Panel2','core.toolbar.Toolbar','core.form.MultiField', '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.button.TurnCheck','core.button.PrintBar', 'core.button.ClearSubpackage','core.button.Subpackage','core.button.ProduceBatch', 'core.button.GridWin','core.button.TurnPurcProdIO', 'core.trigger.DbfindTrigger','core.trigger.TextAreaTrigger','core.trigger.MultiDbfindTrigger','core.button.Barcode' ], init:function(){ var me = this; me.allowinsert = true; this.control({ 'erpGridPanel2': { itemclick: function(selModel, record){ if(record.data.vad_id > 0){ var btn = selModel.ownerCt.down('#erpEditSubpackageButton'); if(btn && !btn.hidden) btn.setDisabled(false); btn = selModel.ownerCt.down('#erpUpdateDetailWHCode'); if(btn && !btn.hidden) btn.setDisabled(false); } this.onGridItemClick(selModel, record); } }, 'erpGridWinButton':{ afterrender: function(btn){ var id = Ext.getCmp('va_id').value; btn.setConfig({ text: '费用明细', caller: 'ProdChargeDetail!AN', condition: 'pd_anid=' + id, paramConfig: { pd_anid: id } }); }, beforesave : function(btn) { var f = btn.ownerCt.ownerCt, p = f.down('field[name=va_turnstatuscode]'); if (p && 'TURNIN' == p.getValue()) { Ext.Msg.alert("提示","该单据已入库,不能修改费用明细!"); return false; } return true; } }, 'erpSaveButton': { click: function(btn){ var bool = true; if(Ext.getCmp('va_date').value > new Date()){ bool = false; showError('收料日期大于系统当前日期');return; } if(bool){ var form = me.getForm(btn); if(Ext.getCmp(form.codeField).value == null || Ext.getCmp(form.codeField).value == ''){ me.BaseUtil.getRandomNumber();//自动添加编号 } //保存之前的一些前台的逻辑判定 this.beforeSave(); } } }, 'erpDeleteButton' : { click: function(btn){ me.FormUtil.onDelete(Ext.getCmp('va_id').value); } }, '#erpEditSubpackageButton': { click: function(btn){ var record=btn.ownerCt.ownerCt.getSelectionModel().getLastSelected(); me.EditSubpackage(record); } }, 'erpUpdateButton': { afterrender: function(btn){ var status = Ext.getCmp('va_statuscode'); if(status && status.value != 'ENTERING' && status.value != 'COMMITED'){ btn.hide(); } }, click: function(btn){ me.beforeUpdate(); } }, 'erpAddButton': { click: function(){ me.FormUtil.onAdd('addVerifyApply', '新增委外收料单', 'jsps/scm/purchase/verifyApply.jsp?whoami='+caller); } }, 'erpCloseButton': { click: function(btn){ me.FormUtil.beforeClose(me); } }, 'erpSubmitButton': { afterrender: function(btn){ var status = Ext.getCmp('va_statuscode'); if(status && status.value != 'ENTERING'){ btn.hide(); } }, click: function(btn){ var bool = true; var grid = Ext.getCmp('grid'); var items = grid.store.data.items; if(Ext.getCmp('va_date').value > new Date()){ bool = false; showError('收料日期大于系统当前日期');return; } Ext.each(items, function(item){ if(item.dirty && item.data[grid.necessaryField] != null && item.data[grid.necessaryField] != ""){ if(item.data['vad_qty'] == null || item.data['vad_qty'] == '' || item.data['vad_qty'] == '0' || item.data['vad_qty'] == 0){ bool = false; showError('明细表第' + item.data['vad_detno'] + '行的数量为空或0');return; } } }); if(bool){ me.FormUtil.onSubmit(Ext.getCmp('va_id').value); } } }, 'erpResSubmitButton': { afterrender: function(btn){ var status = Ext.getCmp('va_statuscode'); if(status && status.value != 'COMMITED'){ btn.hide(); } }, click: function(btn){ me.FormUtil.onResSubmit(Ext.getCmp('va_id').value); } }, 'erpAuditButton': { afterrender: function(btn){ var status = Ext.getCmp('va_statuscode'); if(status && status.value != 'COMMITED'){ btn.hide(); } }, click: function(btn){ me.FormUtil.onAudit(Ext.getCmp('va_id').value); } }, 'erpResAuditButton': { afterrender: function(btn){ var status = Ext.getCmp('va_statuscode'); if(status && status.value != 'AUDITED'){ btn.hide(); } }, click: function(btn){ me.FormUtil.onResAudit(Ext.getCmp('va_id').value); } }, 'erpPrintButton': { click:function(btn){ var reportName="VerifyApply"; var condition='{VerifyApply.va_id}='+Ext.getCmp('va_id').value+''; var id=Ext.getCmp('va_id').value; me.FormUtil.onwindowsPrint2(id,reportName,condition); } }, 'erpTurnPurcProdIOButton':{ afterrender: function(btn){ var status = Ext.getCmp('va_statuscode'); if(status && status.value != 'AUDITED'){ btn.hide(); } }, click: function(btn){ warnMsg("确定要转入采购验收单吗?", function(btn){ if(btn == 'yes'){ var id = Ext.getCmp('va_id').value; me.FormUtil.setLoading(true);//loading... Ext.Ajax.request({ url : basePath + 'scm/purchase/turnStorage.action', params: { id: id }, method : 'post', callback : function(options,success,response){ me.FormUtil.setLoading(false); var r = new Ext.decode(response.responseText); if(r.exceptionInfo){ showError(r.exceptionInfo); } else { if(r.log) { showMessage('提示', r.log); var grid = Ext.getCmp('grid'); grid.GridUtil.loadNewStore(grid, { caller: caller, condition: 'vad_vaid=' + id }); } } } }); } }); } }, 'erpTurnCheckButton': { afterrender: function(btn){ var status = Ext.getCmp('va_statuscode'); if(status && status.value != 'AUDITED'){ btn.hide(); } }, buffer : 3000, click: function(btn){ var grid = Ext.getCmp('grid'),items = grid.store.data.items,data = new Array(); var vaclass = Ext.getCmp('va_class').value,url=""; if(vaclass == '采购收料单'){ url = "scm/purchase/turnIQC.action"; } else if(vaclass == '委外收料单'){ url = "pm/make/turnFQC.action"; } Ext.each(items, function(item){ data.push({vad_id: item.data.vad_id}); }); grid.setLoading(true);//loading... Ext.Ajax.request({ url : basePath + url, params: { 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); } window.location.reload(); } } }); } }, 'dbfindtrigger[name=vad_pucode]': { focus: function(t){ t.setHideTrigger(false); t.setReadOnly(false); if(Ext.getCmp('va_vendcode')){ var code = Ext.getCmp('va_vendcode').value; if(code == null || code == ''){ showError("请先选择供应商!"); t.setHideTrigger(true); t.setReadOnly(true); } else { var obj = me.getBaseCondition(); if(obj.vendor){ t.dbBaseCondition = obj.vendor + "='" + code + "'"; } } } } }, 'multidbfindtrigger[name=vad_pudetno]': { focus: function(t){ t.setHideTrigger(false); t.setReadOnly(false); var record = Ext.getCmp('grid').selModel.getLastSelected(); var code = record.data['vad_pucode']; if(code == null || code == ''){ showError("请先选择关联单号!"); t.setHideTrigger(true); t.setReadOnly(true); } else { var obj = me.getBaseCondition(); if(obj.field){ t.dbBaseCondition = obj.field + "='" + code + "'"; } } } }, 'dbfindtrigger[name=vad_pudetno]': { focus: function(t){ t.setHideTrigger(false); t.setReadOnly(false); var record = Ext.getCmp('grid').selModel.getLastSelected(); var code = record.data['vad_pucode']; if(code == null || code == ''){ showError("请先选择关联单号!"); t.setHideTrigger(true); t.setReadOnly(true); } else { var obj = me.getBaseCondition(); if(obj.field){ t.dbBaseCondition = obj.field + "='" + code + "'"; } } } }, 'erpProduceBatchButton':{ // afterrender:function(btn){ // var status=Ext.getCmp('va_statuscode'); // if(status && status.value !='ENTERING'){ // btn.hide(); // } // }, click:function(btn){ var id=Ext.getCmp('va_id').value; me.FormUtil.setLoading(true);//loading... Ext.Ajax.request({ url : basePath + 'scm/purchase/ProduceBatch.action', params: { id:id }, method : 'post', callback: function(opt, s, r) { me.FormUtil.setLoading(false); var rs = Ext.decode(r.responseText); if(rs.exceptionInfo) { showError(rs.exceptionInfo); } else { showMessage('提示', '产生批号成功!',1000); var grid=Ext.getCmp('grid'); var param={ caller:caller, condition:gridCondition }; me.GridUtil.loadNewStore(grid,param); } } }); } }, 'erpSubpackageButton':{ afterrender: function(btn){ var status = Ext.getCmp('va_statuscode'); if(status && status.value != 'AUDITED'){ btn.hide(); } }, click: function(btn){ warnMsg("确定分装?", function(btn){ if(btn == 'yes'){ me.FormUtil.setLoading(true);//loading... Ext.Ajax.request({ url : basePath + 'scm/purchase/Subpackage.action', params: { id: Ext.getCmp('va_id').value }, method : 'post', callback: function(opt, s, r) { me.FormUtil.setLoading(false); var rs = Ext.decode(r.responseText); if(rs.exceptionInfo) { showError(rs.exceptionInfo); } else { if(rs.log) showMessage('提示', rs.log); } } }); } }); } }, 'erpClearSubpackageButton':{ afterrender: function(btn){ var status = Ext.getCmp('va_statuscode'); if(status && status.value != 'AUDITED'){ btn.hide(); } }, click: function(btn){ warnMsg("确定清除分装?", function(btn){ if(btn == 'yes'){ me.FormUtil.setLoading(true);//loading... Ext.Ajax.request({ url : basePath + 'scm/purchase/ClearSubpackage.action', params: { id: Ext.getCmp('va_id').value }, method : 'post', callback: function(opt, s, r) { me.FormUtil.setLoading(false); var rs = Ext.decode(r.responseText); if(rs.exceptionInfo) { showError(rs.exceptionInfo); } else { if(rs.log) showMessage('提示', rs.log); } } }); } }); } }, 'erpPrintBarButton':{ click: function(btn){ var reportName = "bar_52"; var condition = '{VerifyApplyDetailP.vadp_vacode}=' +"'"+ Ext.getCmp('va_code').value + "'"; var id = Ext.getCmp('va_id').value; me.FormUtil.onwindowsPrint(id, reportName, condition); } }, '#erpUpdateDetailWHCode':{ click: function(btn) { var record = btn.ownerCt.ownerCt.getSelectionModel().getLastSelected(); this.UpdateDetailWHCode(record); } }, }); }, /** *修改明细仓库 * */ UpdateDetailWHCode:function(record){ var me = this; var win=Ext.create('Ext.window.Window', { width: 430, height: 250, closeAction: 'destroy', title: '