Ext.QuickTips.init(); Ext.define('erp.controller.fa.gs.BillAR', { extend: 'Ext.app.Controller', FormUtil: Ext.create('erp.util.FormUtil'), BaseUtil: Ext.create('erp.util.BaseUtil'), views:[ 'fa.gs.BillAR','core.form.Panel','core.form.MultiField','core.form.FileField','core.form.MultiField', 'core.button.Add','core.button.Submit','core.button.Audit','core.button.Save','core.button.Close', 'core.button.ResSubmit','core.button.Update','core.button.Delete','core.button.Nullify','core.button.CopyAll', 'core.button.ResAudit','core.button.TurnRecBalance','core.button.Accounted','core.button.ResAccounted', 'core.button.UpdateInfo', 'core.trigger.TextAreaTrigger','core.trigger.DbfindTrigger','core.form.SeparNumber','core.form.YnField' ], init:function(){ var me = this; this.control({ 'field[name=bar_duedate]':{ beforerender: function(field){ field.readOnly=false; } }, 'erpSaveButton': { click: function(btn){ var form = me.getForm(btn); if(Ext.getCmp(form.codeField).value == null || Ext.getCmp(form.codeField).value == ''){ me.BaseUtil.getRandomNumber(); } this.FormUtil.beforeSave(me); } }, 'erpCloseButton': { click: function(btn){ this.FormUtil.beforeClose(this); } }, 'erpAddButton': { click: function(){ me.FormUtil.onAdd('addBillAR', '新增应收票据', 'jsps/fa/gs/billAR.jsp'); } }, 'erpUpdateButton': { click: function(btn){ this.FormUtil.onUpdate(this); } }, 'erpDeleteButton': { click: function(btn){ this.FormUtil.onDelete(Ext.getCmp('bar_id').value); } }, 'erpSubmitButton': { afterrender: function(btn){ var status = Ext.getCmp('bar_statuscode'); if(status && status.value != 'ENTERING'){ btn.hide(); } }, click: function(btn){ me.FormUtil.onSubmit(Ext.getCmp('bar_id').value); } }, 'erpResSubmitButton': { afterrender: function(btn){ var status = Ext.getCmp('bar_statuscode'); if(status && status.value != 'COMMITED'){ btn.hide(); } }, click: function(btn){ me.FormUtil.onResSubmit(Ext.getCmp('bar_id').value); } }, 'erpAuditButton': { afterrender: function(btn){ var status = Ext.getCmp('bar_statuscode'); if(status && status.value != 'COMMITED'){ btn.hide(); } }, click: function(btn){ me.FormUtil.onAudit(Ext.getCmp('bar_id').value); } }, 'erpResAuditButton': { afterrender: function(btn){ var status = Ext.getCmp('bar_statuscode'); if(status && status.value != 'AUDITED'){ btn.hide(); } }, click: function(btn){ me.FormUtil.onResAudit(Ext.getCmp('bar_id').value); } }, 'erpAccountedButton': { afterrender: function(btn){ var status = Ext.getCmp('bar_statuscode'); if(status && status.value != 'AUDITED'){ btn.hide(); } }, click: function(btn){ me.FormUtil.onAccounted(Ext.getCmp('ar_id').value); } }, 'erpResAccountedButton': { afterrender: function(btn){ var status = Ext.getCmp('bar_statuscode'); if(status && status.value != 'POSTED'){ btn.hide(); } }, click: function(btn){ me.FormUtil.onResAccounted(Ext.getCmp('ar_id').value); } }, 'erpNullifyButton': { afterrender: function(btn){ var status = Ext.getCmp('bar_nowstatus'); if(status && status.value != '已作废'){ btn.hide(); } }, click: function(btn){ me.FormUtil.onNullify(Ext.getCmp('bar_id').value); } }, 'erpCopyButton': { click: function(btn) { this.copy(); } }, 'textfield[name=bar_cmrate]':{ change: me.gettopaybalance }, 'textfield[name=bar_doublebalance]':{ change: me.gettopaybalance }, 'erpUpdateInfoButton':{ click:function(){ var text=Ext.getCmp('bar_duedate'); me.updateInfo(text.value,Ext.getCmp('bar_id').value); } }, }); }, gettopaybalance: function(){ if(Ext.getCmp('bar_doublebalance') && Ext.getCmp('bar_cmrate')) { var doublebalance = Ext.Number.from(Ext.getCmp('bar_doublebalance').getValue(), 0); var cmrate = Ext.Number.from(Ext.getCmp('bar_cmrate').getValue(), 0); Ext.getCmp('bar_topaybalance').setValue(Ext.Number.toFixed(doublebalance*cmrate, 2)); if (typeof (f = Ext.getCmp('bar_leftamount')) != 'undefined' ) { var v1 = (Ext.getCmp('bar_settleamount').value || 0); Ext.getCmp('bar_leftamount').setValue(Ext.Number.toFixed(doublebalance-v1, 2)); } } }, updateInfo:function(text,id){ Ext.Ajax.request({ url : basePath + 'fa/gs/billar/updateInfo.action', params: {text:text,id:id}, method : 'post', async:false, callback : function(options,success,response){ var res = new Ext.decode(response.responseText); if(res.exceptionInfo != null){ showError(res.exceptionInfo);return; } showMessage("提示", '更新成功!'); window.location.reload(); } }); }, copy: function(){ var me = this; var form = Ext.getCmp('form'); var v = form.down('#bar_id').value; if(v > 0) { form.setLoading(true); Ext.Ajax.request({ url: basePath + 'fa/gs/copyBillAR.action', params: { id: v }, callback: function(opt, s, r){ form.setLoading(false); var res = Ext.decode(r.responseText); if(res.ar) { turnSuccess(function(){ var id = res.ar.bar_id; var url = "jsps/fa/gs/billAR.jsp?formCondition=bar_idIS"+ id ; me.FormUtil.onAdd('billAR' + id, '应收票据' + id, url); }); } else { showError(res.exceptionInfo); } } }); } }, getForm: function(btn){ return btn.ownerCt.ownerCt; } });