Ext.QuickTips.init(); Ext.define('erp.controller.scm.purchase.Vendor', { extend: 'Ext.app.Controller', FormUtil: Ext.create('erp.util.FormUtil'), BaseUtil: Ext.create('erp.util.BaseUtil'), views:[ 'scm.purchase.Vendor','core.form.Panel','core.form.MultiField','core.form.FileField', 'core.button.Add','core.button.Submit','core.button.Audit','core.button.Save','core.button.Close','core.button.Print', 'core.button.Upload','core.button.Update','core.button.Delete','core.button.ResAudit','core.button.DownLoad','core.button.VendorLevel', 'core.button.ResSubmit','core.button.Banned','core.button.ResBanned','core.button.Flow','core.button.VendorUU', 'core.trigger.TextAreaTrigger','core.trigger.DbfindTrigger','core.form.YnField', 'core.button.Sync' ], init:function(){ var me = this; this.control({ 'erpSaveButton': { click: function(btn){ var form = me.getForm(btn), kind =Ext.getCmp('ve_kind').value, codeField = Ext.getCmp(form.codeField); if(codeField.value == null || codeField.value == ''){ //var res = me.getVendorCode(kind); var res = me.getCode(kind); if(res != null && res != ''){ codeField.setValue(res); } else me.BaseUtil.getRandomNumber('Vendor',10,null);//自动添加编号 } //保存之前的一些前台的逻辑判定 this.FormUtil.beforeSave(this); } }, 'erpDeleteButton' : { click: function(btn){ me.FormUtil.onDelete(Ext.getCmp('ve_id').value); } }, 'erpUpdateButton': { click: function(btn){ this.FormUtil.onUpdate(this); } }, 'erpAddButton': { click: function(){ me.FormUtil.onAdd('addVendor', '新增供应商基本资料', 'jsps/scm/purchase/vendor.jsp'); } }, 'erpCloseButton': { click: function(btn){ me.FormUtil.beforeClose(me); } }, 'erpSubmitButton': { afterrender: function(btn){ var status = Ext.getCmp('ve_auditstatuscode'); if(status && status.value != 'ENTERING'){ btn.hide(); } }, click: function(btn){ me.FormUtil.onSubmit(Ext.getCmp('ve_id').value); } }, 'erpResSubmitButton': { afterrender: function(btn){ var status = Ext.getCmp('ve_auditstatuscode'); if(status && status.value != 'COMMITED'){ btn.hide(); } }, click: function(btn){ me.FormUtil.onResSubmit(Ext.getCmp('ve_id').value); } }, 'erpAuditButton': { afterrender: function(btn){ var status = Ext.getCmp('ve_auditstatuscode'); if(status && status.value != 'COMMITED'){ btn.hide(); } }, click: function(btn){ me.FormUtil.onAudit(Ext.getCmp('ve_id').value); } }, 'erpResAuditButton': { afterrender: function(btn){ var status = Ext.getCmp('ve_auditstatuscode'); if(status && status.value != 'AUDITED'){ btn.hide(); } }, click: function(btn){ me.FormUtil.onResAudit(Ext.getCmp('ve_id').value); } }, 'erpPrintButton': { click: function(btn){ me.FormUtil.onPrint(Ext.getCmp('ve_id').value); } }, 'erpBannedButton': { afterrender: function(btn){ var status = Ext.getCmp('ve_auditstatuscode'); if(status && status.value == 'DISABLE'){ btn.hide(); } }, click: function(btn){ this.FormUtil.onBanned(Ext.getCmp('ve_id').value); } }, 'erpResBannedButton': { afterrender: function(btn){ var status = Ext.getCmp('ve_auditstatuscode'); if(status && status.value != 'DISABLE'){ btn.hide(); } }, click: function(btn){ this.FormUtil.onResBanned(Ext.getCmp('ve_id').value); } }, 'erpSyncButton': { afterrender: function(btn) { var form = btn.ownerCt.ownerCt, s = form.down('#ve_auditstatuscode'); if (s.getValue() != 'AUDITED') btn.hide(); } } }); }, getForm: function(btn){ return btn.ownerCt.ownerCt; }, getVendorCode: function(type) { var result = null; Ext.Ajax.request({ url : basePath + 'scm/purchase/getVendorCode.action', async: false, params: { kind:type }, method : 'post', callback : function(opt, s, res){ var r = new Ext.decode(res.responseText); if(r.exceptionInfo){ showError(r.exceptionInfo);return; } else if(r.success){ result = r.code; } } }); return result; }, getCode: function(type) { var result = null; Ext.Ajax.request({ url : basePath + 'scm/vendor/getVendorCodeNum.action', async: false, params: { ve_kind: type }, method : 'post', callback : function(opt, s, res){ var r = new Ext.decode(res.responseText); if(r.exceptionInfo){ showError(r.exceptionInfo);return; } else if(r.success){ result = r.number; } } }); return result; } });