zhuth hace 6 años
padre
commit
5500f52246

+ 33 - 40
frontend/saas-web/app/view/money/verification/FormPanel.js

@@ -61,36 +61,41 @@ Ext.define('saas.view.money.verification.FormPanel', {
             me.fireEvent('afterSetItems', me, items);
         })
         .then(function () {
-            if(!me._loaded) {
-                me._loaded = true;
+            if(me.initId != 0) {
                 FormUtil.loadData(me);
             }else {
-                let viewModel = me.getViewModel();
-                let code = viewModel.get(me._codeField);
-                let detailGrids = me.query('detailGridField');
-
-                let o = {};
-                o[me._codeField] = code;
-
-                let formData = {main: {}};
-                Ext.apply(formData.main, o);
-                Ext.Array.each(detailGrids, function(grid, index) {
-                    let detno = 0;
-                    let detnoColumn = grid.detnoColumn;
-                    let datas = [];
-                    let emptyRows = grid.emptyRows;
-                    
-                    Ext.Array.each(new Array(emptyRows), function() {
-                        detno += 1;
-                        let data = {};
-                        data[detnoColumn] = detno;
-                        datas.push(data);
-                    })
-                    formData['detail' + index] = datas;
-                });
-
-                me.initFormData(formData);
-                me.fireEvent('load', me, formData);
+                // 防止新增打开界面取两次编号
+                if(!me._loaded) {
+                    me._loaded = true;
+                    FormUtil.loadData(me);
+                }else {
+                    let viewModel = me.getViewModel();
+                    let code = viewModel.get(me._codeField);
+                    let detailGrids = me.query('detailGridField');
+    
+                    let o = {};
+                    o[me._codeField] = code;
+    
+                    let formData = {main: {}};
+                    Ext.apply(formData.main, o);
+                    Ext.Array.each(detailGrids, function(grid, index) {
+                        let detno = 0;
+                        let detnoColumn = grid.detnoColumn;
+                        let datas = [];
+                        let emptyRows = grid.emptyRows;
+                        
+                        Ext.Array.each(new Array(emptyRows), function() {
+                            detno += 1;
+                            let data = {};
+                            data[detnoColumn] = detno;
+                            datas.push(data);
+                        })
+                        formData['detail' + index] = datas;
+                    });
+    
+                    me.initFormData(formData);
+                    me.fireEvent('load', me, formData);
+                }
             }
         })
     },
@@ -117,18 +122,6 @@ Ext.define('saas.view.money.verification.FormPanel', {
         return items;
     },
 
-    listeners: {
-        afterSetItems: function (form) {
-            var viewModel = form.getViewModel();
-            var init_vc_kind = form.init_vc_kind;
-
-            if (init_vc_kind) {
-                viewModel.set('vc_kind', init_vc_kind);
-                form.init_vc_kind = null;
-            }
-        }
-    },
-
     initEtcConfig: function () {
         Ext.apply(this, {
             etc: {

+ 0 - 2
frontend/saas-web/app/view/money/verification/FormPanelController.js

@@ -444,11 +444,9 @@ Ext.define('saas.view.money.verification.FormPanelController', {
     refresh: function() {
         var me = this,
         form = me.getView(),
-        viewModel = me.getViewModel(),
         xtype = form.xtype,
         _config = {
             initId: form.initId,
-            init_vc_kind: viewModel.get('vc_kind'),
         },
         currentTab = saas.util.BaseUtil.getCurrentTab();