hy 7 năm trước cách đây
mục cha
commit
82a0a06df5

+ 14 - 8
frontend/saas-web/app/util/FormUtil.js

@@ -36,19 +36,25 @@ Ext.define('saas.util.FormUtil', {
                         if(item.xtype == 'detailGridField') {
                             var storeName = item.name || item.xtype + Ext.id();
                             item.bind = {
-                                store: {
-                                    data : '{' + storeName + '}'
-                                }
-                            };           
+                                store : '{' + storeName + '}'
+                            };   
 
-                            item.store = {
+                            var store = Ext.create('Ext.data.Store',{
                                 fields: item.columns ? item.columns.filter(function(c) {
                                     return !!c.dataIndex;
                                 }).map(function(c) {
-                                    return c.dataIndex;
+                                    var type = "string";
+                                    if(c.xtype!=""){
+                                        if(c.xtype=="numbercolumn"){
+                                            type = "float"
+                                        }
+                                    }
+                                    return {name: c.dataIndex,type:type};
                                 }) : [],
-                                data: []
-                            };
+                                data:[]
+                            });
+
+                            formModel.set(storeName,store);
                         }
                     });
                 }

+ 1 - 23
frontend/saas-web/app/view/core/form/FormPanel.js

@@ -36,31 +36,9 @@ Ext.define('saas.view.core.form.FormPanel', {
     initComponent: function() {
 
         var me = this;
-        //me.FormUtil.setItems(me);
-
-        //判断是否加载数据
-
-        if(me.initId&&me.initId!=0){
-            var url = me._dataModelUrl + me.initId,async=false;
-            me.BaseUtil.request({url,async })
-            .then(function(response) {
-                var res = Ext.decode(response.responseText);
-                if(res.success) {
-                    viewModel = me.getViewModel();
-                    viewModel.setData(res.data.main);
-                    viewModel.setData({'detailGridField':res.data.items});                   
-                }
-            })
-            .catch(function(response) {
-                console.error(response);
-            });
-        }else{
-            viewModel = me.getViewModel();
-            viewModel.setData({'detailGridField':[{},{}]});     
-        }
+        me.FormUtil.setItems(me);
 
         Ext.apply(me, {
-            items:me.defaultItems,
             dockedItems: [{
                 xtype: 'toolbar',
                 dock: 'top',

+ 6 - 6
frontend/saas-web/app/view/core/form/field/DetailGridField.js

@@ -64,12 +64,12 @@ Ext.define('saas.view.core.form.field.DetailGridField', {
     },
 
     listeners: {
-        // afterrender:function(grid){
-        //     var count = grid.store.getCount();
-        //     if(count==0){
-        //         grid.add10EmptyRow();
-        //     }
-        // },
+        afterrender:function(grid){
+            var count = grid.store.getCount();
+            if(count==0){
+                //grid.add10EmptyRow();
+            }
+        },
         itemClick: function(tableView, record, item, index, e, eOpts) {
             var grid = tableView.up('grid'),
                 store = grid.store,