Browse Source

Merge remote-tracking branch 'origin/dev' into dev

chenw 7 years ago
parent
commit
f60ba756dd
47 changed files with 1209 additions and 1073 deletions
  1. 1 1
      applications/document/document-server/src/main/resources/application.yml
  2. 1 13
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/PurchaseApplication.java
  3. 4 0
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/mapper/PurchasedetailMapper.java
  4. 2 2
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/service/impl/PurchaseServiceImpl.java
  5. 2 2
      frontend/saas-web/app/model/purchase/prodIODetail.js
  6. 17 7
      frontend/saas-web/app/util/FormUtil.js
  7. 25 1
      frontend/saas-web/app/view/core/dbfind/DbfindGridPanel.js
  8. 25 1
      frontend/saas-web/app/view/core/dbfind/MultiDbfindGridPanel.js
  9. 1 0
      frontend/saas-web/app/view/core/form/FormPanel.js
  10. 2 2
      frontend/saas-web/app/view/core/tab/Controller.js
  11. 13 1
      frontend/saas-web/app/view/document/kind/ChildForm.js
  12. 3 4
      frontend/saas-web/app/view/document/kind/Kind.js
  13. 2 1
      frontend/saas-web/app/view/document/kind/KindModel.js
  14. 0 21
      frontend/saas-web/app/view/money/othspendings/FormPanel.js
  15. 48 19
      frontend/saas-web/app/view/money/payBalance/QueryPanelController.js
  16. 48 19
      frontend/saas-web/app/view/money/recBalance/QueryPanelController.js
  17. 9 4
      frontend/saas-web/app/view/purchase/purchase/FormPanelController.js
  18. 48 19
      frontend/saas-web/app/view/purchase/purchase/QueryPanelController.js
  19. 1 1
      frontend/saas-web/app/view/purchase/purchaseIn/FormPanel.js
  20. 6 47
      frontend/saas-web/app/view/purchase/purchaseIn/FormPanelController.js
  21. 48 19
      frontend/saas-web/app/view/purchase/purchaseIn/QueryPanelController.js
  22. 15 6
      frontend/saas-web/app/view/purchase/purchaseOut/FormPanel.js
  23. 5 45
      frontend/saas-web/app/view/purchase/purchaseOut/FormPanelController.js
  24. 47 18
      frontend/saas-web/app/view/purchase/purchaseOut/QueryPanelController.js
  25. 4 2
      frontend/saas-web/app/view/sale/sale/FormPanel.js
  26. 61 68
      frontend/saas-web/app/view/sale/sale/FormPanelController.js
  27. 61 68
      frontend/saas-web/app/view/sale/sale/QueryPanelController.js
  28. 4 2
      frontend/saas-web/app/view/sale/saleIn/FormPanel.js
  29. 61 68
      frontend/saas-web/app/view/sale/saleIn/FormPanelController.js
  30. 61 68
      frontend/saas-web/app/view/sale/saleIn/QueryPanelController.js
  31. 4 2
      frontend/saas-web/app/view/sale/saleOut/FormPanel.js
  32. 61 68
      frontend/saas-web/app/view/sale/saleOut/FormPanelController.js
  33. 46 53
      frontend/saas-web/app/view/sale/saleOut/QueryPanelController.js
  34. 2 1
      frontend/saas-web/app/view/stock/appropriationInOut/FormPanel.js
  35. 6 46
      frontend/saas-web/app/view/stock/appropriationInOut/FormPanelController.js
  36. 48 26
      frontend/saas-web/app/view/stock/appropriationInOut/QueryPanelController.js
  37. 5 3
      frontend/saas-web/app/view/stock/make/FormPanel.js
  38. 102 36
      frontend/saas-web/app/view/stock/make/FormPanelController.js
  39. 42 140
      frontend/saas-web/app/view/stock/make/QueryPanel.js
  40. 49 23
      frontend/saas-web/app/view/stock/make/QueryPanelController.js
  41. 1 1
      frontend/saas-web/app/view/stock/otherIn/FormPanel.js
  42. 7 49
      frontend/saas-web/app/view/stock/otherIn/FormPanelController.js
  43. 49 23
      frontend/saas-web/app/view/stock/otherIn/QueryPanelController.js
  44. 1 1
      frontend/saas-web/app/view/stock/otherOut/FormPanel.js
  45. 7 49
      frontend/saas-web/app/view/stock/otherOut/FormPanelController.js
  46. 49 23
      frontend/saas-web/app/view/stock/otherOut/QueryPanelController.js
  47. 105 0
      frontend/saas-web/overrides/util/Collection.js

+ 1 - 1
applications/document/document-server/src/main/resources/application.yml

@@ -9,7 +9,7 @@ spring:
       password: select111***
   datasource:
     driver-class-name: com.mysql.cj.jdbc.Driver
-    url: jdbc:mysql://192.168.253.12:3306/saas_biz?characterEncoding=utf-8&useSSL=false
+    url: jdbc:mysql://192.168.253.12:3306/saas_biz?characterEncoding=utf-8&useSSL=false&allowMultiQueries=true
     username: root
     password: select111***
     hikari:

+ 1 - 13
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/PurchaseApplication.java

@@ -8,8 +8,6 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
 import org.springframework.cloud.openfeign.EnableFeignClients;
 import org.springframework.transaction.annotation.EnableTransactionManagement;
-import org.springframework.web.servlet.config.annotation.CorsRegistry;
-import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
 
 /**
  * @author yingp
@@ -21,19 +19,9 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter
 @EnableFeignClients("com.usoftchina.saas")
 @EnableAuthClient
 @MapperScan("com.usoftchina.saas.purchase.mapper")
-public class PurchaseApplication   extends WebMvcConfigurerAdapter{
+public class PurchaseApplication {
     public static void main(String[] args) {
         SpringApplication.run(PurchaseApplication.class, args);
     }
 
-    @Override
-    public void addCorsMappings(CorsRegistry registry) {
-
-        registry.addMapping("/**")
-                .allowCredentials(true)
-                .allowedHeaders("*")
-                .allowedOrigins("*")
-                .allowedMethods("*");
-    }
-
 }

+ 4 - 0
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/mapper/PurchasedetailMapper.java

@@ -27,4 +27,8 @@ public interface PurchasedetailMapper extends CommonBaseMapper<Purchase> {
 
 
     void calcPurchase(Long pu_id);
+
+//    void getVendorTaxrate(Long pu_id);
+//
+//    void getPrice(Long pu_id);
 }

+ 2 - 2
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/service/impl/PurchaseServiceImpl.java

@@ -194,11 +194,11 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
     }
 
     private void getVendorTaxrate(Long pu_id) {
-        purchasedetailMapper.getVendorTaxrate(pu_id);
+//        purchasedetailMapper.getVendorTaxrate(pu_id);
     }
 
     private void getPrice(Long pu_id) {
-        purchasedetailMapper.getPrice(pu_id);
+//        purchasedetailMapper.getPrice(pu_id);
     }
 
 

+ 2 - 2
frontend/saas-web/app/model/purchase/prodIODetail.js

@@ -13,8 +13,8 @@ Ext.define('saas.model.purchase.ProdIODetail', {
         { name: 'pd_prodid', type: 'int' },
         { name: 'pd_prodcode', type: 'string' },
         { name: 'pd_unit', type: 'string' },
-        { name: 'pd_inqty', type: 'int' },
-        { name: 'pd_outqty', type: 'int' },
+        { name: 'pd_inqty', type: 'float' },
+        { name: 'pd_outqty', type: 'float' },
         { name: 'pd_orderprice', type: 'float' },
         { name: 'pd_sendprice', type: 'float' },
         { name: 'pd_price', type: 'float' },

+ 17 - 7
frontend/saas-web/app/util/FormUtil.js

@@ -36,6 +36,18 @@ Ext.define('saas.util.FormUtil', {
                     });
                     Ext.Array.each(items, function(item) {
 
+                        // 设置必填
+                        if(item.allowBlank==false){
+                            // TODO 需要判断类型
+                            item.beforeLabelTextTpl = "<font color=\"red\" style=\"position:relative; top:2px;right:2px; font-weight: bolder;\">*</font>";
+                        }
+
+                        if(item.xtype == 'textfield') {
+                            Ext.applyIf(item, {
+                                maxLength: 50
+                            });
+                        }
+                        
                         if(item.xtype == 'datefield') {
                             Ext.applyIf(item, {
                                 format: 'Y-m-d'
@@ -51,12 +63,6 @@ Ext.define('saas.util.FormUtil', {
                             formModel.set(item.name, 0);
                         }
 
-                        // 设置必填
-                        if(item.allowBlank==false){
-                            // TODO 需要判断类型
-                            item.beforeLabelTextTpl = "<font color=\"red\" style=\"position:relative; top:2px;right:2px; font-weight: bolder;\">*</font>";
-                        }
-
                         // 如果是从表为其绑定store
                         if(item.xtype == 'detailGridField') {
                             var index = form.detailCount;
@@ -88,7 +94,11 @@ Ext.define('saas.util.FormUtil', {
                                     c.cls = 'x-grid-necessary';
                                 }
 
-                                if(c.xtype == 'datecolumn') {
+                                if(c.xtype == 'textfield') {
+                                    Ext.applyIf(c, {
+                                        maxLength: 50
+                                    });
+                                }else if(c.xtype == 'datecolumn') {
                                     Ext.applyIf(c, {
                                         format: 'Y-m-d'
                                     });

+ 25 - 1
frontend/saas-web/app/view/core/dbfind/DbfindGridPanel.js

@@ -55,7 +55,7 @@ Ext.define('saas.view.core.dbfind.DbfindGridPanel', {
                 dockedItems:[{
                     xtype:'toolbar',
                     dock:'top',
-                    items:me.dbSearchFields.concat([{
+                    items:me.getSearchFields().concat([{
                         xtype:'button',
                         text:'查询',
                         handler:function(b){
@@ -136,6 +136,30 @@ Ext.define('saas.view.core.dbfind.DbfindGridPanel', {
         });
     },
 
+    getSearchFields: function() {
+        var me = this,
+        searchFields = me.dbSearchFields;
+
+        Ext.Array.each(searchFields, function(f) {
+            f.enableKeyEvents = true;
+            f.listeners = {
+                keydown: function(th, e, eOpts) {
+                    if(e.keyCode == 13) {
+                        me.condition = '', items = [];
+                        Ext.Array.each(searchFields,function(f) {
+                            var field = th.ownerCt.down('[name='+f.name+']')
+                            items.push(field);
+                        });
+                        me.condition = me.getCondition(items);
+                        me.store.loadPage(1);
+                    }
+                }
+            }
+        });
+
+        return searchFields;
+    },
+
     /**
      * 获得过滤条件
      */

+ 25 - 1
frontend/saas-web/app/view/core/dbfind/MultiDbfindGridPanel.js

@@ -82,7 +82,7 @@ Ext.define('saas.view.core.dbfind.MultiDbfindGridPanel', {
                 dockedItems:[{
                     xtype:'toolbar',
                     dock:'top',
-                    items:me.dbSearchFields.concat([{
+                    items:me.getSearchFields().concat([{
                         xtype:'button',
                         text:'查询',
                         handler:function(b){
@@ -265,6 +265,30 @@ Ext.define('saas.view.core.dbfind.MultiDbfindGridPanel', {
         me.callParent(arguments);
     },
 
+    getSearchFields: function() {
+        var me = this,
+        searchFields = me.dbSearchFields;
+
+        Ext.Array.each(searchFields, function(f) {
+            f.enableKeyEvents = true;
+            f.listeners = {
+                keydown: function(th, e, eOpts) {
+                    if(e.keyCode == 13) {
+                        me.condition = '', items = [];
+                        Ext.Array.each(searchFields,function(f) {
+                            var field = th.ownerCt.down('[name='+f.name+']')
+                            items.push(field);
+                        });
+                        me.condition = me.getCondition(items);
+                        me.store.loadPage(1);
+                    }
+                }
+            }
+        });
+
+        return searchFields;
+    },
+
      /**
      * 获得过滤条件
      */

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

@@ -37,6 +37,7 @@ Ext.define('saas.view.core.form.FormPanel', {
     remoteConfig: true, // 是否需要从远端读取form配置
     toolBtns: [], // 自定义按钮
     codeInHeader: true, // 单据编号显示在toolbar
+    closeConfirm: true, // 关闭确认
 
     auditTexts: {
         auditCode: 'AUDITED',

+ 2 - 2
frontend/saas-web/app/view/core/tab/Controller.js

@@ -31,7 +31,7 @@ Ext.define('saas.view.core.tab.Controller', {
          
                 if (me.fireEvent('beforeclose', me) !== false) {
                     if (me.tabBar) {
-                        if(typeof tabView.isDirty == 'function' && tabView.isDirty()) {
+                        if(tabView.closeConfirm && tabView.isDirty()) {
                             showConfirm('提示', '表单数据有修改,确定要退出吗?')
                             .then(function(yes) {
                                 if(yes == 'yes') {
@@ -46,7 +46,7 @@ Ext.define('saas.view.core.tab.Controller', {
                             }
                         }
                     } else {
-                        if(typeof tabView.isDirty == 'function' && tabView.isDirty()) {
+                        if(tabView.closeConfirm == 'function' && tabView.isDirty()) {
                             showConfirm('提示', '表单数据有修改,确定要退出吗?')
                             .then(function(yes) {
                                 if(yes == 'yes') {

+ 13 - 1
frontend/saas-web/app/view/document/kind/ChildForm.js

@@ -89,6 +89,18 @@ Ext.define('KitchenSink.view.binding.ChildForm', {
                 name:'bk_thisamount',
                 allowBlank:false,
                 fieldLabel:'当前金额',
+            },{
+                xtype:'textfield',
+                name:'bk_type',
+                allowBlank:false,
+                fieldLabel:'账户类别',
+            },{
+                xtype:'datefield',
+                name:'bk_date',
+                readOnly:true,
+                fieldLabel:'建账日期',
+                format:'Y-m-d H:i:s',
+                value:new Date()
             }]
         },
         productbrand:{
@@ -274,7 +286,7 @@ Ext.define('KitchenSink.view.binding.ChildForm', {
         this.BaseUtil.request({
             url: belong.reqUrl,
             params: JSON.stringify(params),
-            method: 'POST',
+            method: 'POST'
         })
         .then(function(localJson) {
             me.setLoading(false);

+ 3 - 4
frontend/saas-web/app/view/document/kind/Kind.js

@@ -130,14 +130,13 @@ Ext.define('saas.view.document.kind.Kind', {
                 dataIndex: 'bk_bankname',
                 flex: 1
             },{
-                hidden:true,
                 xtype:'datecolumn',
-                text: '日期',
+                text: '建账日期',
+                format:'Y-m-d H:i:s',
                 dataIndex: 'bk_date',
                 flex: 1
             },{
-                hidden:true,
-                text: '账户类型',
+                text: '账户类别',
                 dataIndex: 'bk_type',
                 flex: 1
             },{

+ 2 - 1
frontend/saas-web/app/view/document/kind/KindModel.js

@@ -124,7 +124,8 @@ Ext.define('saas.view.document.kind.KindModel', {
                 {name: 'bk_type',  type: 'string'},
                 {name: 'bk_beginamount',  type: 'float'},
                 {name: 'bk_thisamount',  type: 'float'},
-                {name: 'bk_date',  type: 'date'}
+                {name: 'bk_date',  type: 'date'},
+                {name: 'updateTime', type: 'date'}
             ],
             proxy: {
                 type: 'ajax',

+ 0 - 21
frontend/saas-web/app/view/money/othspendings/FormPanel.js

@@ -120,27 +120,6 @@ Ext.define('saas.view.money.othspendings.FormPanel', {
                     var format = '0,000.' + xr.join();
                     return Ext.util.Format.number(v, format);
                 }
-            }, {
-                text : "单价", 
-                dataIndex : "sd_price", 
-                width : 120.0,
-                editor : {
-                    xtype : "numberfield",
-                    decimalPrecision: 8
-                },
-                renderer : function(v) {
-                    var arr = (v + '.').split('.');
-                    var xr = (new Array(arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
-                    return Ext.util.Format.number(v, format);
-                },
-                summaryType: 'sum',
-                summaryRenderer: function(v) {
-                    var arr = (v + '.').split('.');
-                    var xr = (new Array(arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
-                    return Ext.util.Format.number(v, format);
-                }
             }, {
                 text : "备注", 
                 dataIndex : "osd_remark",

+ 48 - 19
frontend/saas-web/app/view/money/payBalance/QueryPanelController.js

@@ -120,33 +120,62 @@ Ext.define('saas.view.money.paybalance.QueryPanelController', {
                             "hidden": true,
                             "dataIndex": "id",
                         }, {
-                            "text": "物料编号",
-                            "flex": 1,
+                            "text": "物料编号",       
                             "dataIndex": "pr_code",
-                            "width": 100,
-                            "xtype": "",
-                            "items": null
+                            "width": 200,
                         }, {
                             "text": "物料名称",
-                            "flex": 1,
+                            "width": 200,
                             "dataIndex": "pr_detail",
-                            "xtype": "",
-                            "items": null
                         }, {
-                            "text": "物料规格",
-                            "flex": 0,
+                            "text": "规格",
                             "dataIndex": "pr_spec",
-                            "width": 200,
-                            "xtype": "",
-                            "items": null
+                            "width": 100,
                         }, {
-                            "text": "物料单位",
-                            "flex": 0,
-                            "dataIndex": "pr_unit",
+                            "text": "单位",
+                            "dataIndex": "pr_spec",
+                            "width": 100,
+                        },{
+                            "text": "仓库id",
+                            "dataIndex": "pr_whid",
+                            "hidden": true,
+                        },{
+                            "text": "仓库编号",
+                            "dataIndex": "pr_whcode",
+                            "hidden": true,
+                        },{
+                            "text": "仓库",
+                            "dataIndex": "pr_whname",
                             "width": 200,
-                            "xtype": "",
-                            "items": null
-                        }]
+                        },{
+                            "text": "总库存数",
+                            "dataIndex": "po_onhand",
+                            "width": 100,
+                        },{
+                            "text": "类型",
+                            "dataIndex": "pr_kind",
+                            "width": 100,
+                        },{
+                            "text": "型号",
+                            "dataIndex": "pr_orispeccode",
+                            "width": 100,
+                        },{
+                            "text": "品牌",
+                            "dataIndex": "pr_brand",
+                            "width": 100,
+                        },{
+                            "text": "供应商",
+                            "dataIndex": "pr_vendname",
+                            "width": 100,
+                        },{
+                            "text": "最小包装",
+                            "dataIndex": "pr_zxbzs",
+                            "width": 100,
+                        },{
+                            "text": "L/T",
+                            "dataIndex": "pr_leadtime",
+                            "width": 100,
+                        }]   
                     }) ;   
 
                 }

+ 48 - 19
frontend/saas-web/app/view/money/recBalance/QueryPanelController.js

@@ -120,33 +120,62 @@ Ext.define('saas.view.money.recBalance.QueryPanelController', {
                             "hidden": true,
                             "dataIndex": "id",
                         }, {
-                            "text": "物料编号",
-                            "flex": 1,
+                            "text": "物料编号",       
                             "dataIndex": "pr_code",
-                            "width": 100,
-                            "xtype": "",
-                            "items": null
+                            "width": 200,
                         }, {
                             "text": "物料名称",
-                            "flex": 1,
+                            "width": 200,
                             "dataIndex": "pr_detail",
-                            "xtype": "",
-                            "items": null
                         }, {
-                            "text": "物料规格",
-                            "flex": 0,
+                            "text": "规格",
                             "dataIndex": "pr_spec",
-                            "width": 200,
-                            "xtype": "",
-                            "items": null
+                            "width": 100,
                         }, {
-                            "text": "物料单位",
-                            "flex": 0,
-                            "dataIndex": "pr_unit",
+                            "text": "单位",
+                            "dataIndex": "pr_spec",
+                            "width": 100,
+                        },{
+                            "text": "仓库id",
+                            "dataIndex": "pr_whid",
+                            "hidden": true,
+                        },{
+                            "text": "仓库编号",
+                            "dataIndex": "pr_whcode",
+                            "hidden": true,
+                        },{
+                            "text": "仓库",
+                            "dataIndex": "pr_whname",
                             "width": 200,
-                            "xtype": "",
-                            "items": null
-                        }]
+                        },{
+                            "text": "总库存数",
+                            "dataIndex": "po_onhand",
+                            "width": 100,
+                        },{
+                            "text": "类型",
+                            "dataIndex": "pr_kind",
+                            "width": 100,
+                        },{
+                            "text": "型号",
+                            "dataIndex": "pr_orispeccode",
+                            "width": 100,
+                        },{
+                            "text": "品牌",
+                            "dataIndex": "pr_brand",
+                            "width": 100,
+                        },{
+                            "text": "供应商",
+                            "dataIndex": "pr_vendname",
+                            "width": 100,
+                        },{
+                            "text": "最小包装",
+                            "dataIndex": "pr_zxbzs",
+                            "width": 100,
+                        },{
+                            "text": "L/T",
+                            "dataIndex": "pr_leadtime",
+                            "width": 100,
+                        }]   
                     }) ;   
 
                 }

+ 9 - 4
frontend/saas-web/app/view/purchase/purchase/FormPanelController.js

@@ -142,29 +142,33 @@ Ext.define('saas.view.purchase.purchase.FormPanelController', {
                             "hidden": true,
                             "dataIndex": "id",
                         }, {
-                            "text": "物料编号",
+                            "text": "物料编号",       
                             "dataIndex": "pr_code",
+                            "width": 200,
                         }, {
                             "text": "物料名称",
+                            "width": 200,
                             "dataIndex": "pr_detail",
                         }, {
                             "text": "规格",
                             "dataIndex": "pr_spec",
+                            "width": 100,
                         }, {
                             "text": "单位",
                             "dataIndex": "pr_spec",
                             "width": 100,
                         },{
                             "text": "仓库id",
-                            "hidden": true,
                             "dataIndex": "pr_whid",
+                            "hidden": true,
                         },{
                             "text": "仓库编号",
-                            "hidden": true,
                             "dataIndex": "pr_whcode",
+                            "hidden": true,
                         },{
                             "text": "仓库",
                             "dataIndex": "pr_whname",
+                            "width": 200,
                         },{
                             "text": "总库存数",
                             "dataIndex": "po_onhand",
@@ -184,6 +188,7 @@ Ext.define('saas.view.purchase.purchase.FormPanelController', {
                         },{
                             "text": "供应商",
                             "dataIndex": "pr_vendname",
+                            "width": 100,
                         },{
                             "text": "最小包装",
                             "dataIndex": "pr_zxbzs",
@@ -192,7 +197,7 @@ Ext.define('saas.view.purchase.purchase.FormPanelController', {
                             "text": "L/T",
                             "dataIndex": "pr_leadtime",
                             "width": 100,
-                        }]
+                        }]   
                     }) ;   
 
                 }

+ 48 - 19
frontend/saas-web/app/view/purchase/purchase/QueryPanelController.js

@@ -120,33 +120,62 @@ Ext.define('saas.view.purchase.purchase.QueryPanelController', {
                             "hidden": true,
                             "dataIndex": "id",
                         }, {
-                            "text": "物料编号",
-                            "flex": 1,
+                            "text": "物料编号",       
                             "dataIndex": "pr_code",
-                            "width": 100,
-                            "xtype": "",
-                            "items": null
+                            "width": 200,
                         }, {
                             "text": "物料名称",
-                            "flex": 1,
+                            "width": 200,
                             "dataIndex": "pr_detail",
-                            "xtype": "",
-                            "items": null
                         }, {
-                            "text": "物料规格",
-                            "flex": 0,
+                            "text": "规格",
                             "dataIndex": "pr_spec",
-                            "width": 200,
-                            "xtype": "",
-                            "items": null
+                            "width": 100,
                         }, {
-                            "text": "物料单位",
-                            "flex": 0,
-                            "dataIndex": "pr_unit",
+                            "text": "单位",
+                            "dataIndex": "pr_spec",
+                            "width": 100,
+                        },{
+                            "text": "仓库id",
+                            "dataIndex": "pr_whid",
+                            "hidden": true,
+                        },{
+                            "text": "仓库编号",
+                            "dataIndex": "pr_whcode",
+                            "hidden": true,
+                        },{
+                            "text": "仓库",
+                            "dataIndex": "pr_whname",
                             "width": 200,
-                            "xtype": "",
-                            "items": null
-                        }]
+                        },{
+                            "text": "总库存数",
+                            "dataIndex": "po_onhand",
+                            "width": 100,
+                        },{
+                            "text": "类型",
+                            "dataIndex": "pr_kind",
+                            "width": 100,
+                        },{
+                            "text": "型号",
+                            "dataIndex": "pr_orispeccode",
+                            "width": 100,
+                        },{
+                            "text": "品牌",
+                            "dataIndex": "pr_brand",
+                            "width": 100,
+                        },{
+                            "text": "供应商",
+                            "dataIndex": "pr_vendname",
+                            "width": 100,
+                        },{
+                            "text": "最小包装",
+                            "dataIndex": "pr_zxbzs",
+                            "width": 100,
+                        },{
+                            "text": "L/T",
+                            "dataIndex": "pr_leadtime",
+                            "width": 100,
+                        }]   
                     }) ;   
 
                 }

+ 1 - 1
frontend/saas-web/app/view/purchase/purchaseIn/FormPanel.js

@@ -219,7 +219,7 @@ Ext.define('saas.view.purchase.purchaseIn.FormPanel', {
                 text : "仓库", 
                 dataIndex : "pd_whname", 
                 width : 120.0, 
-                items : null,
+                allowBlank : false,
                 editor : {
                     displayField : "display", 
                     editable : true, 

+ 6 - 47
frontend/saas-web/app/view/purchase/purchaseIn/FormPanelController.js

@@ -146,102 +146,61 @@ Ext.define('saas.view.purchase.purchaseIn.FormPanelController', {
                         }, {
                             "text": "物料编号",       
                             "dataIndex": "pr_code",
-                            "width": 100,
-                            "xtype": "",
-                            "items": null
+                            "width": 200,
                         }, {
                             "text": "物料名称",
-                            "width": 100,
+                            "width": 200,
                             "dataIndex": "pr_detail",
-                            "xtype": "",
-                            "items": null
                         }, {
                             "text": "规格",
-                            "flex": 0,
                             "dataIndex": "pr_spec",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         }, {
                             "text": "单位",
-                            "flex": 0,
                             "dataIndex": "pr_spec",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "仓库id",
-                            "flex": 0,
                             "dataIndex": "pr_whid",
-                            "width": 0,
-                            "xtype": "",
-                            "items": null
+                            "hidden": true,
                         },{
                             "text": "仓库编号",
-                            "flex": 0,
                             "dataIndex": "pr_whcode",
-                            "width": 0,
-                            "xtype": "",
-                            "items": null
+                            "hidden": true,
                         },{
                             "text": "仓库",
-                            "flex": 0,
                             "dataIndex": "pr_whname",
-                            "width": 100,
-                            "xtype": "",
-                            "items": null
+                            "width": 200,
                         },{
                             "text": "总库存数",
-                            "flex": 0,
                             "dataIndex": "po_onhand",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "类型",
-                            "flex": 0,
                             "dataIndex": "pr_kind",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "型号",
-                            "flex": 0,
                             "dataIndex": "pr_orispeccode",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "品牌",
-                            "flex": 0,
                             "dataIndex": "pr_brand",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "供应商",
-                            "flex": 0,
                             "dataIndex": "pr_vendname",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "最小包装",
-                            "flex": 0,
                             "dataIndex": "pr_zxbzs",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "L/T",
-                            "flex": 0,
                             "dataIndex": "pr_leadtime",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         }]                    
-                    }) ;   
-
+                    });   
                 }
             },
 

+ 48 - 19
frontend/saas-web/app/view/purchase/purchaseIn/QueryPanelController.js

@@ -119,33 +119,62 @@ Ext.define('saas.view.purchase.purchaseIn.QueryPanelController', {
                             "hidden": true,
                             "dataIndex": "id",
                         }, {
-                            "text": "物料编号",
-                            "flex": 1,
+                            "text": "物料编号",       
                             "dataIndex": "pr_code",
-                            "width": 100,
-                            "xtype": "",
-                            "items": null
+                            "width": 200,
                         }, {
                             "text": "物料名称",
-                            "flex": 1,
+                            "width": 200,
                             "dataIndex": "pr_detail",
-                            "xtype": "",
-                            "items": null
                         }, {
-                            "text": "物料规格",
-                            "flex": 0,
+                            "text": "规格",
                             "dataIndex": "pr_spec",
-                            "width": 200,
-                            "xtype": "",
-                            "items": null
+                            "width": 100,
                         }, {
-                            "text": "物料单位",
-                            "flex": 0,
-                            "dataIndex": "pr_unit",
+                            "text": "单位",
+                            "dataIndex": "pr_spec",
+                            "width": 100,
+                        },{
+                            "text": "仓库id",
+                            "dataIndex": "pr_whid",
+                            "hidden": true,
+                        },{
+                            "text": "仓库编号",
+                            "dataIndex": "pr_whcode",
+                            "hidden": true,
+                        },{
+                            "text": "仓库",
+                            "dataIndex": "pr_whname",
                             "width": 200,
-                            "xtype": "",
-                            "items": null
-                        }]
+                        },{
+                            "text": "总库存数",
+                            "dataIndex": "po_onhand",
+                            "width": 100,
+                        },{
+                            "text": "类型",
+                            "dataIndex": "pr_kind",
+                            "width": 100,
+                        },{
+                            "text": "型号",
+                            "dataIndex": "pr_orispeccode",
+                            "width": 100,
+                        },{
+                            "text": "品牌",
+                            "dataIndex": "pr_brand",
+                            "width": 100,
+                        },{
+                            "text": "供应商",
+                            "dataIndex": "pr_vendname",
+                            "width": 100,
+                        },{
+                            "text": "最小包装",
+                            "dataIndex": "pr_zxbzs",
+                            "width": 100,
+                        },{
+                            "text": "L/T",
+                            "dataIndex": "pr_leadtime",
+                            "width": 100,
+                        }]   
                     }) ;   
 
                 }

+ 15 - 6
frontend/saas-web/app/view/purchase/purchaseOut/FormPanel.js

@@ -157,13 +157,22 @@ Ext.define('saas.view.purchase.purchaseOut.FormPanel', {
                 dataIndex : "pd_outqty", 
                 editor : {
                     xtype : "numberfield",
+                    decimalPrecision: 8,
                     minValue:0
                 },
-                width : 120.0, 
-                xtype : "numbercolumn", 
-                format:'0',
-                items : null,
-                summaryType: 'sum'
+                renderer : function(v) {
+                    var arr = (v + '.').split('.');
+                    var xr = (new Array(arr[1].length)).fill('0');
+                    var format = '0.' + xr.join();
+                    return Ext.util.Format.number(v, format);
+                },
+                summaryType: 'sum',
+                summaryRenderer: function(v) {
+                    var arr = (v + '.').split('.');
+                    var xr = (new Array(arr[1].length)).fill('0');
+                    var format = '0.' + xr.join();
+                    return Ext.util.Format.number(v, format);
+                }
             },            {
                 text : "已转数", 
                 dataIndex : "pd_yqty", 
@@ -187,7 +196,7 @@ Ext.define('saas.view.purchase.purchaseOut.FormPanel', {
                 text : "仓库", 
                 dataIndex : "pd_whname", 
                 width : 120.0, 
-                items : null,
+                allowBlank : false,
                 editor : {
                     displayField : "display", 
                     editable : true, 

+ 5 - 45
frontend/saas-web/app/view/purchase/purchaseOut/FormPanelController.js

@@ -145,99 +145,59 @@ Ext.define('saas.view.purchase.purchaseOut.FormPanelController', {
                         }, {
                             "text": "物料编号",       
                             "dataIndex": "pr_code",
-                            "width": 100,
-                            "xtype": "",
-                            "items": null
+                            "width": 200,
                         }, {
                             "text": "物料名称",
-                            "width": 100,
+                            "width": 200,
                             "dataIndex": "pr_detail",
-                            "xtype": "",
-                            "items": null
                         }, {
                             "text": "规格",
-                            "flex": 0,
                             "dataIndex": "pr_spec",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         }, {
                             "text": "单位",
-                            "flex": 0,
                             "dataIndex": "pr_spec",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "仓库id",
-                            "flex": 0,
                             "dataIndex": "pr_whid",
-                            "width": 0,
-                            "xtype": "",
-                            "items": null
+                            "hidden": true,
                         },{
                             "text": "仓库编号",
-                            "flex": 0,
                             "dataIndex": "pr_whcode",
-                            "width": 0,
-                            "xtype": "",
-                            "items": null
+                            "hidden": true,
                         },{
                             "text": "仓库",
-                            "flex": 0,
                             "dataIndex": "pr_whname",
-                            "width": 100,
-                            "xtype": "",
-                            "items": null
+                            "width": 200,
                         },{
                             "text": "总库存数",
-                            "flex": 0,
                             "dataIndex": "po_onhand",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "类型",
-                            "flex": 0,
                             "dataIndex": "pr_kind",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "型号",
-                            "flex": 0,
                             "dataIndex": "pr_orispeccode",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "品牌",
-                            "flex": 0,
                             "dataIndex": "pr_brand",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "供应商",
-                            "flex": 0,
                             "dataIndex": "pr_vendname",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "最小包装",
-                            "flex": 0,
                             "dataIndex": "pr_zxbzs",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "L/T",
-                            "flex": 0,
                             "dataIndex": "pr_leadtime",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         }]
                     }) ;   
 

+ 47 - 18
frontend/saas-web/app/view/purchase/purchaseOut/QueryPanelController.js

@@ -119,32 +119,61 @@ Ext.define('saas.view.purchase.purchaseOut.QueryPanelController', {
                             "hidden": true,
                             "dataIndex": "id",
                         }, {
-                            "text": "物料编号",
-                            "flex": 1,
+                            "text": "物料编号",       
                             "dataIndex": "pr_code",
-                            "width": 100,
-                            "xtype": "",
-                            "items": null
+                            "width": 200,
                         }, {
                             "text": "物料名称",
-                            "flex": 1,
+                            "width": 200,
                             "dataIndex": "pr_detail",
-                            "xtype": "",
-                            "items": null
                         }, {
-                            "text": "物料规格",
-                            "flex": 0,
+                            "text": "规格",
                             "dataIndex": "pr_spec",
-                            "width": 200,
-                            "xtype": "",
-                            "items": null
+                            "width": 100,
                         }, {
-                            "text": "物料单位",
-                            "flex": 0,
-                            "dataIndex": "pr_unit",
+                            "text": "单位",
+                            "dataIndex": "pr_spec",
+                            "width": 100,
+                        },{
+                            "text": "仓库id",
+                            "dataIndex": "pr_whid",
+                            "hidden": true,
+                        },{
+                            "text": "仓库编号",
+                            "dataIndex": "pr_whcode",
+                            "hidden": true,
+                        },{
+                            "text": "仓库",
+                            "dataIndex": "pr_whname",
                             "width": 200,
-                            "xtype": "",
-                            "items": null
+                        },{
+                            "text": "总库存数",
+                            "dataIndex": "po_onhand",
+                            "width": 100,
+                        },{
+                            "text": "类型",
+                            "dataIndex": "pr_kind",
+                            "width": 100,
+                        },{
+                            "text": "型号",
+                            "dataIndex": "pr_orispeccode",
+                            "width": 100,
+                        },{
+                            "text": "品牌",
+                            "dataIndex": "pr_brand",
+                            "width": 100,
+                        },{
+                            "text": "供应商",
+                            "dataIndex": "pr_vendname",
+                            "width": 100,
+                        },{
+                            "text": "最小包装",
+                            "dataIndex": "pr_zxbzs",
+                            "width": 100,
+                        },{
+                            "text": "L/T",
+                            "dataIndex": "pr_leadtime",
+                            "width": 100,
                         }]
                     }) ;   
 

+ 4 - 2
frontend/saas-web/app/view/sale/sale/FormPanel.js

@@ -114,7 +114,8 @@ Ext.define('saas.view.sale.sale.FormPanel', {
                 dataIndex : "sd_qty", 
                 editor : {
                     xtype : "numberfield",
-                    decimalPrecision: 8
+                    decimalPrecision: 8,
+                    minValue:0
                 },
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
@@ -158,7 +159,8 @@ Ext.define('saas.view.sale.sale.FormPanel', {
                 width : 120.0,
                 editor : {
                     xtype : "numberfield",
-                    decimalPrecision: 8
+                    decimalPrecision: 8,
+                    minValue:0
                 },
                 renderer : function(v) {
                     var arr = (v + '.').split('.');

+ 61 - 68
frontend/saas-web/app/view/sale/sale/FormPanelController.js

@@ -138,74 +138,67 @@ Ext.define('saas.view.sale.sale.FormPanelController', {
                             allowBlank : true, 
                             columnWidth : 0.25
                         }],
-                        dbColumns:[
-                            {
-                                "text": "物料ID",
-                                "hidden": true,
-                                "dataIndex": "id",
-                            },{
-                                "text": "物料编号",
-                                "flex": 1,
-                                "dataIndex": "pr_code",
-                                "width": 100,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "物料名称",
-                                "flex": 1,
-                                "dataIndex": "pr_detail",
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "规格",
-                                "flex": 1,
-                                "dataIndex": "pr_spec",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "单位",
-                                "flex": 1,
-                                "dataIndex": "pr_unit",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "品牌",
-                                "flex": 1,
-                                "dataIndex": "pr_brand",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "供应商ID",
-                                "flex": 0,
-                                "dataIndex": "pr_vendid",
-                                "width": 0,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "供应商编号",
-                                "flex": 1,
-                                "dataIndex": "pr_vendcode",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "供应商名称",
-                                "flex": 1,
-                                "dataIndex": "pr_vendname",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "最小包装量",
-                                "flex": 1,
-                                "dataIndex": "pr_zxbzs",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }]
+                        dbColumns:[{
+                            "text": "物料ID",
+                            "hidden": true,
+                            "dataIndex": "id",
+                        }, {
+                            "text": "物料编号",       
+                            "dataIndex": "pr_code",
+                            "width": 200,
+                        }, {
+                            "text": "物料名称",
+                            "width": 200,
+                            "dataIndex": "pr_detail",
+                        }, {
+                            "text": "规格",
+                            "dataIndex": "pr_spec",
+                            "width": 100,
+                        }, {
+                            "text": "单位",
+                            "dataIndex": "pr_spec",
+                            "width": 100,
+                        },{
+                            "text": "仓库id",
+                            "dataIndex": "pr_whid",
+                            "hidden": true,
+                        },{
+                            "text": "仓库编号",
+                            "dataIndex": "pr_whcode",
+                            "hidden": true,
+                        },{
+                            "text": "仓库",
+                            "dataIndex": "pr_whname",
+                            "width": 200,
+                        },{
+                            "text": "总库存数",
+                            "dataIndex": "po_onhand",
+                            "width": 100,
+                        },{
+                            "text": "类型",
+                            "dataIndex": "pr_kind",
+                            "width": 100,
+                        },{
+                            "text": "型号",
+                            "dataIndex": "pr_orispeccode",
+                            "width": 100,
+                        },{
+                            "text": "品牌",
+                            "dataIndex": "pr_brand",
+                            "width": 100,
+                        },{
+                            "text": "供应商",
+                            "dataIndex": "pr_vendname",
+                            "width": 100,
+                        },{
+                            "text": "最小包装",
+                            "dataIndex": "pr_zxbzs",
+                            "width": 100,
+                        },{
+                            "text": "L/T",
+                            "dataIndex": "pr_leadtime",
+                            "width": 100,
+                        }]
                     }) ;   
 
                 }

+ 61 - 68
frontend/saas-web/app/view/sale/sale/QueryPanelController.js

@@ -88,74 +88,67 @@ Ext.define('saas.view.sale.sale.QueryPanelController', {
                             allowBlank : true, 
                             columnWidth : 0.25
                         }],
-                        dbColumns:[
-                            {
-                                "text": "物料ID",
-                                "hidden": true,
-                                "dataIndex": "id",
-                            },{
-                                "text": "物料编号",
-                                "flex": 1,
-                                "dataIndex": "pr_code",
-                                "width": 100,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "物料名称",
-                                "flex": 1,
-                                "dataIndex": "pr_detail",
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "规格",
-                                "flex": 1,
-                                "dataIndex": "pr_spec",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "单位",
-                                "flex": 1,
-                                "dataIndex": "pr_unit",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "品牌",
-                                "flex": 1,
-                                "dataIndex": "pr_brand",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "供应商ID",
-                                "flex": 0,
-                                "dataIndex": "pr_vendid",
-                                "width": 0,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "供应商编号",
-                                "flex": 1,
-                                "dataIndex": "pr_vendcode",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "供应商名称",
-                                "flex": 1,
-                                "dataIndex": "pr_vendname",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "最小包装量",
-                                "flex": 1,
-                                "dataIndex": "pr_zxbzs",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }]
+                        dbColumns:[{
+                            "text": "物料ID",
+                            "hidden": true,
+                            "dataIndex": "id",
+                        }, {
+                            "text": "物料编号",       
+                            "dataIndex": "pr_code",
+                            "width": 200,
+                        }, {
+                            "text": "物料名称",
+                            "width": 200,
+                            "dataIndex": "pr_detail",
+                        }, {
+                            "text": "规格",
+                            "dataIndex": "pr_spec",
+                            "width": 100,
+                        }, {
+                            "text": "单位",
+                            "dataIndex": "pr_spec",
+                            "width": 100,
+                        },{
+                            "text": "仓库id",
+                            "dataIndex": "pr_whid",
+                            "hidden": true,
+                        },{
+                            "text": "仓库编号",
+                            "dataIndex": "pr_whcode",
+                            "hidden": true,
+                        },{
+                            "text": "仓库",
+                            "dataIndex": "pr_whname",
+                            "width": 200,
+                        },{
+                            "text": "总库存数",
+                            "dataIndex": "po_onhand",
+                            "width": 100,
+                        },{
+                            "text": "类型",
+                            "dataIndex": "pr_kind",
+                            "width": 100,
+                        },{
+                            "text": "型号",
+                            "dataIndex": "pr_orispeccode",
+                            "width": 100,
+                        },{
+                            "text": "品牌",
+                            "dataIndex": "pr_brand",
+                            "width": 100,
+                        },{
+                            "text": "供应商",
+                            "dataIndex": "pr_vendname",
+                            "width": 100,
+                        },{
+                            "text": "最小包装",
+                            "dataIndex": "pr_zxbzs",
+                            "width": 100,
+                        },{
+                            "text": "L/T",
+                            "dataIndex": "pr_leadtime",
+                            "width": 100,
+                        }]
                     }) ;   
 
                 }

+ 4 - 2
frontend/saas-web/app/view/sale/saleIn/FormPanel.js

@@ -111,7 +111,8 @@ Ext.define('saas.view.sale.saleIn.FormPanel', {
                 width : 120.0,
                 editor : {
                     xtype : "numberfield",
-                    decimalPrecision: 8
+                    decimalPrecision: 8,
+                    minValue:0
                 },
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
@@ -159,7 +160,8 @@ Ext.define('saas.view.sale.saleIn.FormPanel', {
                 width : 120.0, 
                 editor : {
                     xtype : "numberfield",
-                    decimalPrecision: 8
+                    decimalPrecision: 8,
+                    minValue:0
                 },
                 renderer : function(v) {
                     var arr = (v + '.').split('.');

+ 61 - 68
frontend/saas-web/app/view/sale/saleIn/FormPanelController.js

@@ -138,74 +138,67 @@ Ext.define('saas.view.sale.saleIn.FormPanelController', {
                             allowBlank : true, 
                             columnWidth : 0.25
                         }],
-                        dbColumns:[
-                            {
-                                "text": "物料ID",
-                                "hidden": true,
-                                "dataIndex": "id",
-                            },{
-                                "text": "物料编号",
-                                "flex": 1,
-                                "dataIndex": "pr_code",
-                                "width": 100,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "物料名称",
-                                "flex": 1,
-                                "dataIndex": "pr_detail",
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "规格",
-                                "flex": 1,
-                                "dataIndex": "pr_spec",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "单位",
-                                "flex": 1,
-                                "dataIndex": "pr_unit",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "品牌",
-                                "flex": 1,
-                                "dataIndex": "pr_brand",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "供应商ID",
-                                "flex": 0,
-                                "dataIndex": "pr_vendid",
-                                "width": 0,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "供应商编号",
-                                "flex": 1,
-                                "dataIndex": "pr_vendcode",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "供应商名称",
-                                "flex": 1,
-                                "dataIndex": "pr_vendname",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "最小包装量",
-                                "flex": 1,
-                                "dataIndex": "pr_zxbzs",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }]
+                        dbColumns:[{
+                            "text": "物料ID",
+                            "hidden": true,
+                            "dataIndex": "id",
+                        }, {
+                            "text": "物料编号",       
+                            "dataIndex": "pr_code",
+                            "width": 200,
+                        }, {
+                            "text": "物料名称",
+                            "width": 200,
+                            "dataIndex": "pr_detail",
+                        }, {
+                            "text": "规格",
+                            "dataIndex": "pr_spec",
+                            "width": 100,
+                        }, {
+                            "text": "单位",
+                            "dataIndex": "pr_spec",
+                            "width": 100,
+                        },{
+                            "text": "仓库id",
+                            "dataIndex": "pr_whid",
+                            "hidden": true,
+                        },{
+                            "text": "仓库编号",
+                            "dataIndex": "pr_whcode",
+                            "hidden": true,
+                        },{
+                            "text": "仓库",
+                            "dataIndex": "pr_whname",
+                            "width": 200,
+                        },{
+                            "text": "总库存数",
+                            "dataIndex": "po_onhand",
+                            "width": 100,
+                        },{
+                            "text": "类型",
+                            "dataIndex": "pr_kind",
+                            "width": 100,
+                        },{
+                            "text": "型号",
+                            "dataIndex": "pr_orispeccode",
+                            "width": 100,
+                        },{
+                            "text": "品牌",
+                            "dataIndex": "pr_brand",
+                            "width": 100,
+                        },{
+                            "text": "供应商",
+                            "dataIndex": "pr_vendname",
+                            "width": 100,
+                        },{
+                            "text": "最小包装",
+                            "dataIndex": "pr_zxbzs",
+                            "width": 100,
+                        },{
+                            "text": "L/T",
+                            "dataIndex": "pr_leadtime",
+                            "width": 100,
+                        }]
                     }) ;   
 
                 }

+ 61 - 68
frontend/saas-web/app/view/sale/saleIn/QueryPanelController.js

@@ -93,74 +93,67 @@ Ext.define('saas.view.sale.saleIn.QueryPanelController', {
                             allowBlank : true, 
                             columnWidth : 0.25
                         }],
-                        dbColumns:[
-                            {
-                                "text": "物料ID",
-                                "hidden": true,
-                                "dataIndex": "id",
-                            },{
-                                "text": "物料编号",
-                                "flex": 1,
-                                "dataIndex": "pr_code",
-                                "width": 100,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "物料名称",
-                                "flex": 1,
-                                "dataIndex": "pr_detail",
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "规格",
-                                "flex": 1,
-                                "dataIndex": "pr_spec",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "单位",
-                                "flex": 1,
-                                "dataIndex": "pr_unit",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "品牌",
-                                "flex": 1,
-                                "dataIndex": "pr_brand",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "供应商ID",
-                                "flex": 0,
-                                "dataIndex": "pr_vendid",
-                                "width": 0,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "供应商编号",
-                                "flex": 1,
-                                "dataIndex": "pr_vendcode",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "供应商名称",
-                                "flex": 1,
-                                "dataIndex": "pr_vendname",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "最小包装量",
-                                "flex": 1,
-                                "dataIndex": "pr_zxbzs",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }]
+                        dbColumns:[{
+                            "text": "物料ID",
+                            "hidden": true,
+                            "dataIndex": "id",
+                        }, {
+                            "text": "物料编号",       
+                            "dataIndex": "pr_code",
+                            "width": 200,
+                        }, {
+                            "text": "物料名称",
+                            "width": 200,
+                            "dataIndex": "pr_detail",
+                        }, {
+                            "text": "规格",
+                            "dataIndex": "pr_spec",
+                            "width": 100,
+                        }, {
+                            "text": "单位",
+                            "dataIndex": "pr_spec",
+                            "width": 100,
+                        },{
+                            "text": "仓库id",
+                            "dataIndex": "pr_whid",
+                            "hidden": true,
+                        },{
+                            "text": "仓库编号",
+                            "dataIndex": "pr_whcode",
+                            "hidden": true,
+                        },{
+                            "text": "仓库",
+                            "dataIndex": "pr_whname",
+                            "width": 200,
+                        },{
+                            "text": "总库存数",
+                            "dataIndex": "po_onhand",
+                            "width": 100,
+                        },{
+                            "text": "类型",
+                            "dataIndex": "pr_kind",
+                            "width": 100,
+                        },{
+                            "text": "型号",
+                            "dataIndex": "pr_orispeccode",
+                            "width": 100,
+                        },{
+                            "text": "品牌",
+                            "dataIndex": "pr_brand",
+                            "width": 100,
+                        },{
+                            "text": "供应商",
+                            "dataIndex": "pr_vendname",
+                            "width": 100,
+                        },{
+                            "text": "最小包装",
+                            "dataIndex": "pr_zxbzs",
+                            "width": 100,
+                        },{
+                            "text": "L/T",
+                            "dataIndex": "pr_leadtime",
+                            "width": 100,
+                        }]
                     }) ;   
 
                 }

+ 4 - 2
frontend/saas-web/app/view/sale/saleOut/FormPanel.js

@@ -121,7 +121,8 @@ Ext.define('saas.view.sale.saleout.FormPanel', {
                 allowBlank:false,
                 editor : {
                     xtype : "numberfield",
-                    decimalPrecision: 8
+                    decimalPrecision: 8,
+                    minValue:0
                 },
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
@@ -170,7 +171,8 @@ Ext.define('saas.view.sale.saleout.FormPanel', {
                 width : 120.0,
                 editor : {
                     xtype : "numberfield",
-                    decimalPrecision: 8
+                    decimalPrecision: 8,
+                    minValue:0
                 },
                 renderer : function(v) {
                     var arr = (v + '.').split('.');

+ 61 - 68
frontend/saas-web/app/view/sale/saleOut/FormPanelController.js

@@ -136,74 +136,67 @@ Ext.define('saas.view.sale.saleout.FormPanelController', {
                             allowBlank : true, 
                             columnWidth : 0.25
                         }],
-                        dbColumns:[
-                            {
-                                "text": "物料ID",
-                                "hidden": true,
-                                "dataIndex": "id",
-                            },{
-                                "text": "物料编号",
-                                "flex": 1,
-                                "dataIndex": "pr_code",
-                                "width": 100,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "物料名称",
-                                "flex": 1,
-                                "dataIndex": "pr_detail",
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "规格",
-                                "flex": 1,
-                                "dataIndex": "pr_spec",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "单位",
-                                "flex": 1,
-                                "dataIndex": "pr_unit",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "品牌",
-                                "flex": 1,
-                                "dataIndex": "pr_brand",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "供应商ID",
-                                "flex": 0,
-                                "dataIndex": "pr_vendid",
-                                "width": 0,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "供应商编号",
-                                "flex": 1,
-                                "dataIndex": "pr_vendcode",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "供应商名称",
-                                "flex": 1,
-                                "dataIndex": "pr_vendname",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }, {
-                                "text": "最小包装量",
-                                "flex": 1,
-                                "dataIndex": "pr_zxbzs",
-                                "width": 200,
-                                "xtype": "",
-                                "items": null
-                            }]
+                        dbColumns:[{
+                            "text": "物料ID",
+                            "hidden": true,
+                            "dataIndex": "id",
+                        }, {
+                            "text": "物料编号",       
+                            "dataIndex": "pr_code",
+                            "width": 200,
+                        }, {
+                            "text": "物料名称",
+                            "width": 200,
+                            "dataIndex": "pr_detail",
+                        }, {
+                            "text": "规格",
+                            "dataIndex": "pr_spec",
+                            "width": 100,
+                        }, {
+                            "text": "单位",
+                            "dataIndex": "pr_spec",
+                            "width": 100,
+                        },{
+                            "text": "仓库id",
+                            "dataIndex": "pr_whid",
+                            "hidden": true,
+                        },{
+                            "text": "仓库编号",
+                            "dataIndex": "pr_whcode",
+                            "hidden": true,
+                        },{
+                            "text": "仓库",
+                            "dataIndex": "pr_whname",
+                            "width": 200,
+                        },{
+                            "text": "总库存数",
+                            "dataIndex": "po_onhand",
+                            "width": 100,
+                        },{
+                            "text": "类型",
+                            "dataIndex": "pr_kind",
+                            "width": 100,
+                        },{
+                            "text": "型号",
+                            "dataIndex": "pr_orispeccode",
+                            "width": 100,
+                        },{
+                            "text": "品牌",
+                            "dataIndex": "pr_brand",
+                            "width": 100,
+                        },{
+                            "text": "供应商",
+                            "dataIndex": "pr_vendname",
+                            "width": 100,
+                        },{
+                            "text": "最小包装",
+                            "dataIndex": "pr_zxbzs",
+                            "width": 100,
+                        },{
+                            "text": "L/T",
+                            "dataIndex": "pr_leadtime",
+                            "width": 100,
+                        }]
                     }) ;   
 
                 }

+ 46 - 53
frontend/saas-web/app/view/sale/saleOut/QueryPanelController.js

@@ -125,73 +125,66 @@ Ext.define('saas.view.sale.saleout.QueryPanelController', {
                             allowBlank : true, 
                             columnWidth : 0.25
                         }],
-                        dbColumns:[
-                            {
-                                "text": "物料ID",
-                                "hidden": true,
-                                "dataIndex": "id",
-                            },{
-                            "text": "物料编号",
-                            "flex": 1,
+                        dbColumns:[{
+                            "text": "物料ID",
+                            "hidden": true,
+                            "dataIndex": "id",
+                        }, {
+                            "text": "物料编号",       
                             "dataIndex": "pr_code",
-                            "width": 100,
-                            "xtype": "",
-                            "items": null
+                            "width": 200,
                         }, {
                             "text": "物料名称",
-                            "flex": 1,
+                            "width": 200,
                             "dataIndex": "pr_detail",
-                            "xtype": "",
-                            "items": null
                         }, {
                             "text": "规格",
-                            "flex": 1,
                             "dataIndex": "pr_spec",
-                            "width": 200,
-                            "xtype": "",
-                            "items": null
+                            "width": 100,
                         }, {
                             "text": "单位",
-                            "flex": 1,
-                            "dataIndex": "pr_unit",
+                            "dataIndex": "pr_spec",
+                            "width": 100,
+                        },{
+                            "text": "仓库id",
+                            "dataIndex": "pr_whid",
+                            "hidden": true,
+                        },{
+                            "text": "仓库编号",
+                            "dataIndex": "pr_whcode",
+                            "hidden": true,
+                        },{
+                            "text": "仓库",
+                            "dataIndex": "pr_whname",
                             "width": 200,
-                            "xtype": "",
-                            "items": null
-                        }, {
+                        },{
+                            "text": "总库存数",
+                            "dataIndex": "po_onhand",
+                            "width": 100,
+                        },{
+                            "text": "类型",
+                            "dataIndex": "pr_kind",
+                            "width": 100,
+                        },{
+                            "text": "型号",
+                            "dataIndex": "pr_orispeccode",
+                            "width": 100,
+                        },{
                             "text": "品牌",
-                            "flex": 1,
                             "dataIndex": "pr_brand",
-                            "width": 200,
-                            "xtype": "",
-                            "items": null
-                        }, {
-                            "text": "供应商ID",
-                            "flex": 0,
-                            "dataIndex": "pr_vendid",
-                            "width": 0,
-                            "xtype": "",
-                            "items": null
-                        }, {
-                            "text": "供应商编号",
-                            "flex": 1,
-                            "dataIndex": "pr_vendcode",
-                            "width": 200,
-                            "xtype": "",
-                            "items": null
-                        }, {
-                            "text": "供应商名称",
-                            "flex": 1,
+                            "width": 100,
+                        },{
+                            "text": "供应商",
                             "dataIndex": "pr_vendname",
-                            "width": 200,
-                            "xtype": "",
-                            "items": null
-                        }, {
-                            "text": "最小包装量",
-                            "flex": 1,
+                            "width": 100,
+                        },{
+                            "text": "最小包装",
                             "dataIndex": "pr_zxbzs",
-                            "width": 200,
-                            "xtype": "",
-                            "items": null
+                            "width": 100,
+                        },{
+                            "text": "L/T",
+                            "dataIndex": "pr_leadtime",
+                            "width": 100,
                         }]
                     }) ;   
 

+ 2 - 1
frontend/saas-web/app/view/stock/appropriationInOut/FormPanel.js

@@ -165,7 +165,8 @@ Ext.define('saas.view.stock.appropriationInOut.FormPanel', {
                 width : 120.0,
                 editor : {
                     xtype : "numberfield",
-                    decimalPrecision: 8
+                    decimalPrecision: 8,
+                    minValue:0
                 },
                 renderer : function(v) {
                     var arr = (v + '.').split('.');

+ 6 - 46
frontend/saas-web/app/view/stock/appropriationInOut/FormPanelController.js

@@ -209,102 +209,62 @@ Ext.define('saas.view.stock.appropriationInOut.FormPanelController', {
                             "text": "物料ID",
                             "hidden": true,
                             "dataIndex": "id",
-                        },{
+                        }, {
                             "text": "物料编号",       
                             "dataIndex": "pr_code",
-                            "width": 100,
-                            "xtype": "",
-                            "items": null
+                            "width": 200,
                         }, {
                             "text": "物料名称",
-                            "width": 100,
+                            "width": 200,
                             "dataIndex": "pr_detail",
-                            "xtype": "",
-                            "items": null
                         }, {
                             "text": "规格",
-                            "flex": 0,
                             "dataIndex": "pr_spec",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         }, {
                             "text": "单位",
-                            "flex": 0,
                             "dataIndex": "pr_spec",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "仓库id",
-                            "flex": 0,
                             "dataIndex": "pr_whid",
-                            "width": 0,
-                            "xtype": "",
-                            "items": null
+                            "hidden": true,
                         },{
                             "text": "仓库编号",
-                            "flex": 0,
                             "dataIndex": "pr_whcode",
-                            "width": 0,
-                            "xtype": "",
-                            "items": null
+                            "hidden": true,
                         },{
                             "text": "仓库",
-                            "flex": 0,
                             "dataIndex": "pr_whname",
-                            "width": 100,
-                            "xtype": "",
-                            "items": null
+                            "width": 200,
                         },{
                             "text": "总库存数",
-                            "flex": 0,
                             "dataIndex": "po_onhand",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "类型",
-                            "flex": 0,
                             "dataIndex": "pr_kind",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "型号",
-                            "flex": 0,
                             "dataIndex": "pr_orispeccode",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "品牌",
-                            "flex": 0,
                             "dataIndex": "pr_brand",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "供应商",
-                            "flex": 0,
                             "dataIndex": "pr_vendname",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "最小包装",
-                            "flex": 0,
                             "dataIndex": "pr_zxbzs",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "L/T",
-                            "flex": 0,
                             "dataIndex": "pr_leadtime",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         }]
                     }) ;   
 

+ 48 - 26
frontend/saas-web/app/view/stock/appropriationInOut/QueryPanelController.js

@@ -117,40 +117,62 @@ Ext.define('saas.view.stock.appropriationInOut.QueryPanelController', {
                             "text": "物料ID",
                             "hidden": true,
                             "dataIndex": "id",
-                        },{
-                            "text": "物料ID",
-                            "flex": 0,
-                            "dataIndex": "pr_id",
-                            "width": 0,
-                            "xtype": "",
-                            "items": null
-                        },{
-                            "text": "物料编号",
-                            "flex": 1,
+                        }, {
+                            "text": "物料编号",       
                             "dataIndex": "pr_code",
-                            "width": 100,
-                            "xtype": "",
-                            "items": null
+                            "width": 200,
                         }, {
                             "text": "物料名称",
-                            "flex": 1,
+                            "width": 200,
                             "dataIndex": "pr_detail",
-                            "xtype": "",
-                            "items": null
                         }, {
-                            "text": "物料规格",
-                            "flex": 0,
+                            "text": "规格",
                             "dataIndex": "pr_spec",
-                            "width": 200,
-                            "xtype": "",
-                            "items": null
+                            "width": 100,
                         }, {
-                            "text": "物料单位",
-                            "flex": 0,
-                            "dataIndex": "pr_unit",
+                            "text": "单位",
+                            "dataIndex": "pr_spec",
+                            "width": 100,
+                        },{
+                            "text": "仓库id",
+                            "dataIndex": "pr_whid",
+                            "hidden": true,
+                        },{
+                            "text": "仓库编号",
+                            "dataIndex": "pr_whcode",
+                            "hidden": true,
+                        },{
+                            "text": "仓库",
+                            "dataIndex": "pr_whname",
                             "width": 200,
-                            "xtype": "",
-                            "items": null
+                        },{
+                            "text": "总库存数",
+                            "dataIndex": "po_onhand",
+                            "width": 100,
+                        },{
+                            "text": "类型",
+                            "dataIndex": "pr_kind",
+                            "width": 100,
+                        },{
+                            "text": "型号",
+                            "dataIndex": "pr_orispeccode",
+                            "width": 100,
+                        },{
+                            "text": "品牌",
+                            "dataIndex": "pr_brand",
+                            "width": 100,
+                        },{
+                            "text": "供应商",
+                            "dataIndex": "pr_vendname",
+                            "width": 100,
+                        },{
+                            "text": "最小包装",
+                            "dataIndex": "pr_zxbzs",
+                            "width": 100,
+                        },{
+                            "text": "L/T",
+                            "dataIndex": "pr_leadtime",
+                            "width": 100,
                         }]
                     }) ;   
 

+ 5 - 3
frontend/saas-web/app/view/stock/make/FormPanel.js

@@ -72,10 +72,11 @@ Ext.define('saas.view.stock.make.FormPanel', {
         columnWidth: 0.2
     },
     {
-        xtype : "textfield", 
+        xtype : "numberfield", 
         name : "ma_qty", 
         fieldLabel : "数量",
-        columnWidth: 0.2
+        columnWidth: 0.2,
+        minValue:0
     },{
         xtype : "hidden", 
         name : "ma_whid", 
@@ -162,7 +163,8 @@ Ext.define('saas.view.stock.make.FormPanel', {
                 width : 120.0,
                 editor : {
                     xtype : "numberfield",
-                    decimalPrecision: 8
+                    decimalPrecision: 8,
+                    minValue:0
                 },
                 renderer : function(v) {
                     var arr = (v + '.').split('.');

+ 102 - 36
frontend/saas-web/app/view/stock/make/FormPanelController.js

@@ -103,31 +103,64 @@ Ext.define('saas.view.stock.make.FormPanelController', {
                         //窗口列设置
                         dbColumns:[{
                             "text": "物料ID",
-                            "flex": 0,
-                            "dataIndex": "pr_id",
-                            "width": 0,
-                            "xtype": "",
-                            "items": null
-                        },{
-                            "text": "物料编号",
-                            "flex": 1,
+                            "hidden": true,
+                            "dataIndex": "id",
+                        }, {
+                            "text": "物料编号",       
                             "dataIndex": "pr_code",
-                            "width": 100,
-                            "xtype": "",
-                            "items": null
+                            "width": 200,
                         }, {
                             "text": "物料名称",
-                            "flex": 1,
+                            "width": 200,
                             "dataIndex": "pr_detail",
-                            "xtype": "",
-                            "items": null
                         }, {
-                            "text": "物料规格",
-                            "flex": 0,
+                            "text": "规格",
+                            "dataIndex": "pr_spec",
+                            "width": 100,
+                        }, {
+                            "text": "单位",
                             "dataIndex": "pr_spec",
+                            "width": 100,
+                        },{
+                            "text": "仓库id",
+                            "dataIndex": "pr_whid",
+                            "hidden": true,
+                        },{
+                            "text": "仓库编号",
+                            "dataIndex": "pr_whcode",
+                            "hidden": true,
+                        },{
+                            "text": "仓库",
+                            "dataIndex": "pr_whname",
                             "width": 200,
-                            "xtype": "",
-                            "items": null
+                        },{
+                            "text": "总库存数",
+                            "dataIndex": "po_onhand",
+                            "width": 100,
+                        },{
+                            "text": "类型",
+                            "dataIndex": "pr_kind",
+                            "width": 100,
+                        },{
+                            "text": "型号",
+                            "dataIndex": "pr_orispeccode",
+                            "width": 100,
+                        },{
+                            "text": "品牌",
+                            "dataIndex": "pr_brand",
+                            "width": 100,
+                        },{
+                            "text": "供应商",
+                            "dataIndex": "pr_vendname",
+                            "width": 100,
+                        },{
+                            "text": "最小包装",
+                            "dataIndex": "pr_zxbzs",
+                            "width": 100,
+                        },{
+                            "text": "L/T",
+                            "dataIndex": "pr_leadtime",
+                            "width": 100,
                         }]
                     }) ;   
 
@@ -168,31 +201,64 @@ Ext.define('saas.view.stock.make.FormPanelController', {
                         //窗口列设置
                         dbColumns:[{
                             "text": "物料ID",
-                            "flex": 0,
-                            "dataIndex": "pr_id",
-                            "width": 0,
-                            "xtype": "",
-                            "items": null
-                        },{
-                            "text": "物料编号",
-                            "flex": 1,
+                            "hidden": true,
+                            "dataIndex": "id",
+                        }, {
+                            "text": "物料编号",       
                             "dataIndex": "pr_code",
-                            "width": 100,
-                            "xtype": "",
-                            "items": null
+                            "width": 200,
                         }, {
                             "text": "物料名称",
-                            "flex": 1,
+                            "width": 200,
                             "dataIndex": "pr_detail",
-                            "xtype": "",
-                            "items": null
                         }, {
-                            "text": "物料规格",
-                            "flex": 0,
+                            "text": "规格",
+                            "dataIndex": "pr_spec",
+                            "width": 100,
+                        }, {
+                            "text": "单位",
                             "dataIndex": "pr_spec",
+                            "width": 100,
+                        },{
+                            "text": "仓库id",
+                            "dataIndex": "pr_whid",
+                            "hidden": true,
+                        },{
+                            "text": "仓库编号",
+                            "dataIndex": "pr_whcode",
+                            "hidden": true,
+                        },{
+                            "text": "仓库",
+                            "dataIndex": "pr_whname",
                             "width": 200,
-                            "xtype": "",
-                            "items": null
+                        },{
+                            "text": "总库存数",
+                            "dataIndex": "po_onhand",
+                            "width": 100,
+                        },{
+                            "text": "类型",
+                            "dataIndex": "pr_kind",
+                            "width": 100,
+                        },{
+                            "text": "型号",
+                            "dataIndex": "pr_orispeccode",
+                            "width": 100,
+                        },{
+                            "text": "品牌",
+                            "dataIndex": "pr_brand",
+                            "width": 100,
+                        },{
+                            "text": "供应商",
+                            "dataIndex": "pr_vendname",
+                            "width": 100,
+                        },{
+                            "text": "最小包装",
+                            "dataIndex": "pr_zxbzs",
+                            "width": 100,
+                        },{
+                            "text": "L/T",
+                            "dataIndex": "pr_leadtime",
+                            "width": 100,
                         }]
                     }) ;   
 

+ 42 - 140
frontend/saas-web/app/view/stock/make/QueryPanel.js

@@ -9,95 +9,30 @@ Ext.define('saas.view.stock.make.QueryPanel', {
     
     queryFormItems: [{
         xtype: 'hidden',
-        name: 'pu_id',
-        bind: '{pu_id}',
+        name: 'ma_id',
+        bind: '{ma_id}',
         fieldLabel: 'ID',
         allowBlank: true,
         getCondition: function(value) {
-            return 'pu_id=' + value;
+            return 'ma_id=' + value;
         }
-    }, {
+    },{
         xtype: 'textfield',
-        name: 'pu_code',
-        bind: '{pu_code}',
+        name: 'ma_code',
+        bind: '{ma_code}',
         fieldLabel: '单据编号'
-    }, {
-        xtype: 'condatefield',
-        name: 'pu_date',
-        bind: '{pu_date}',
-        fieldLabel: '采购日期',
-        columnWidth: 0.5,
-        operation: 'between'
-    }, {
-        xtype: 'dbfindtrigger',
-        name: 'pu_vendcode',
-        bind: '{pu_vendcode}',
-        fieldLabel: '供应商编号'
-    }, {
-        xtype: 'dbfindtrigger',
-        name: 'pu_vendname',
-        bind: '{pu_vendname}',
-        fieldLabel: '供应商名称'
-    }, {
-        xtype: 'dbfindtrigger',
-        name: 'pd_prodcode',
-        bind: '{pd_prodcode}',
-        fieldLabel: '物料编号',
-        showDetail: true
-    }, {
+    },{
         xtype: 'textfield',
-        name: 'pr_detail',
-        bind: '{pr_detail}',
-        fieldLabel: '物料名称',
-        showDetail: true
-    }, {
-        xtype: 'combobox',
-        name: 'pu_statuscode',
-        fieldLabel: '审核状态',
-        queryMode: 'local',
-        displayField: 'pu_status',
-        valueField: 'pu_statuscode',
-        editable:false,
-        store: Ext.create('Ext.data.ArrayStore', {
-            fields: ['pu_statuscode', 'pu_status'],
-            data: [
-                ["ALL", "全部"],
-                ["AUDITED", "已审核"],
-                ["UNAUDITED", "未审核"]
-            ]
-        }),
-        getCondition: function(value) {
-            if(value == 'ALL') {
-                return '1=1';
-            }else {
-                return 'pu_statuscode=\'' + value + '\'';
-            }
-        }
-    }, {
-        xtype: 'multicombo',
-        name: 'pu_acceptstatuscode',
-        bind: '{pu_acceptstatuscode}',
-        fieldLabel: '入库状态',
-        datas: [
-            ["TURNIN", "已入库"],
-            ["UNTURNIN", "未入库"],
-            ["PARTIN", "部分入库"]
-        ]
-    }],
-    moreQueryFormItems: [{
+        name: 'ma_type',
+        bind: '{ma_type}',
+        fieldLabel: '类型'
+    },{
         xtype: 'textfield',
-        name: 'pu_buyername',
-        fieldLabel: '采购员'
-    }, {
-        xtype: 'textfield',
-        name: 'pu_total',
-        fieldLabel: '金额'
-    }, {
-        xtype: 'condatefield',
-        name: 'pu_delivery',
-        fieldLabel: '交货日期',
-        columnWidth: 1
+        name: 'ma_prodcode',
+        bind: '{ma_prodcode}',
+        fieldLabel: '产品编号'
     }],
+    moreQueryFormItems: [],
     queryGridConfig: {
         idField: 'id',
         codeField: 'ma_code',
@@ -107,85 +42,52 @@ Ext.define('saas.view.stock.make.QueryPanel', {
         baseVastUrl: '/api/storage/make/',
         baseColumn: [{
             text: 'id',
-            dataIndex: 'pu_id',
+            dataIndex: 'id',
             width: 100,
             xtype: 'numbercolumn'
         }, {
             text: '单据编号',
-            dataIndex: 'pu_code',
+            dataIndex: 'ma_code',
             width: 200
         }, {
-            text: '单据状态',
-            dataIndex: 'pu_status',
+            text: '类型',
+            dataIndex: 'ma_type',
             width: 120
         }, {
-            text: '下单日期',
-            dataIndex: 'pu_indate',
-            xtype: 'datecolumn',
+            text: '产品编号',
+            dataIndex: 'ma_prodcode',
             width: 200
         }, {
-            text: '供应商名称',
-            dataIndex: 'pu_vendname',
+            text: '产品名称',
+            dataIndex: 'ma_proddetail',
             width: 120
         }, {
-            text: '含税金额',
-            dataIndex: 'pu_taxtotal',
-            xtype: 'numbercolumn',
+            text: '版本号',
+            dataIndex: 'ma_version',
             width: 120
         }, {
-            text: '金额',
-            dataIndex: 'pu_total',
+            text: '数量',
+            dataIndex: 'ma_qty',
             xtype: 'numbercolumn',
             width: 120,
             flex: 1
-        }],
-        relativeColumn: [{
-            text: 'id',
-            dataIndex: 'pu_id',
-            width: 100,
-            xtype: 'numbercolumn'
-        }, {
-            text: '单据编号',
-            dataIndex: 'pu_code',
-            width: 200
-        }, {
-            text: '单据状态',
-            dataIndex: 'pu_status',
-            width: 120
-        }, {
-            text: '下单日期',
-            dataIndex: 'pu_indate',
-            xtype: 'datecolumn',
-            width: 200
-        }, {
-            text: '供应商名称',
-            dataIndex: 'pu_vendname',
-            width: 120
-        }, {
-            text: '采购序号',
-            dataIndex: 'pd_detno',
-            xtype: 'numbercolumn',
-            width: 120
-        }, {
-            text: '物料编号',
-            dataIndex: 'pd_prodcode',
-            width: 120
-        }, {
-            text: '数量',
-            dataIndex: 'pd_qty',
-            xtype: 'numbercolumn',
-            width: 120
-        }, {
-            text: '单价',
-            dataIndex: 'pd_price',
-            xtype: 'numbercolumn',
-            width: 120
-        }, {
-            text: '已转数',
-            dataIndex: 'pd_ytqy',
+        },{
+            text: '单位',
+            dataIndex: 'ma_produnit',
+            width: 120,
+            flex: 1
+        },{
+            text: '单位成本',
+            dataIndex: 'ma_total',
             xtype: 'numbercolumn',
             width: 120,
             flex: 1
-        }]
+        },{
+            text: '状态',
+            dataIndex: 'ma_status',
+            width: 120,
+            flex: 1
+        }],
+        relativeColumn: []
     }
 });

+ 49 - 23
frontend/saas-web/app/view/stock/make/QueryPanelController.js

@@ -118,37 +118,63 @@ Ext.define('saas.view.stock.make.QueryPanelController', {
                         dbColumns:[{
                             "text": "物料ID",
                             "hidden": true,
-                            "dataIndex": "pr_id",
-                            "width": 0,
-                            "xtype": "",
-                            "items": null
-                        },{
-                            "text": "物料编号",
-                            "flex": 1,
+                            "dataIndex": "id",
+                        }, {
+                            "text": "物料编号",       
                             "dataIndex": "pr_code",
-                            "width": 100,
-                            "xtype": "",
-                            "items": null
+                            "width": 200,
                         }, {
                             "text": "物料名称",
-                            "flex": 1,
+                            "width": 200,
                             "dataIndex": "pr_detail",
-                            "xtype": "",
-                            "items": null
                         }, {
-                            "text": "物料规格",
-                            "flex": 0,
+                            "text": "规格",
                             "dataIndex": "pr_spec",
-                            "width": 200,
-                            "xtype": "",
-                            "items": null
+                            "width": 100,
                         }, {
-                            "text": "物料单位",
-                            "flex": 0,
-                            "dataIndex": "pr_unit",
+                            "text": "单位",
+                            "dataIndex": "pr_spec",
+                            "width": 100,
+                        },{
+                            "text": "仓库id",
+                            "dataIndex": "pr_whid",
+                            "hidden": true,
+                        },{
+                            "text": "仓库编号",
+                            "dataIndex": "pr_whcode",
+                            "hidden": true,
+                        },{
+                            "text": "仓库",
+                            "dataIndex": "pr_whname",
                             "width": 200,
-                            "xtype": "",
-                            "items": null
+                        },{
+                            "text": "总库存数",
+                            "dataIndex": "po_onhand",
+                            "width": 100,
+                        },{
+                            "text": "类型",
+                            "dataIndex": "pr_kind",
+                            "width": 100,
+                        },{
+                            "text": "型号",
+                            "dataIndex": "pr_orispeccode",
+                            "width": 100,
+                        },{
+                            "text": "品牌",
+                            "dataIndex": "pr_brand",
+                            "width": 100,
+                        },{
+                            "text": "供应商",
+                            "dataIndex": "pr_vendname",
+                            "width": 100,
+                        },{
+                            "text": "最小包装",
+                            "dataIndex": "pr_zxbzs",
+                            "width": 100,
+                        },{
+                            "text": "L/T",
+                            "dataIndex": "pr_leadtime",
+                            "width": 100,
                         }]
                     }) ;   
 

+ 1 - 1
frontend/saas-web/app/view/stock/otherIn/FormPanel.js

@@ -191,7 +191,7 @@ Ext.define('saas.view.stock.otherIn.FormPanel', {
                 text : "仓库", 
                 dataIndex : "pd_whname", 
                 width : 120.0, 
-                items : null,
+                allowBlank : false,
                 editor : {
                     displayField : "display", 
                     editable : true, 

+ 7 - 49
frontend/saas-web/app/view/stock/otherIn/FormPanelController.js

@@ -214,106 +214,64 @@ Ext.define('saas.view.stock.otherIn.FormPanelController', {
                         }],                        
                         dbColumns:[{
                             "text": "物料ID",
+                            "hidden": true,
                             "dataIndex": "id",
-                            "width": 0,
-                            "xtype": "",
-                            "hidden": true
-                        },{
+                        }, {
                             "text": "物料编号",       
                             "dataIndex": "pr_code",
-                            "width": 100,
-                            "xtype": "",
-                            "items": null
+                            "width": 200,
                         }, {
                             "text": "物料名称",
-                            "width": 100,
+                            "width": 200,
                             "dataIndex": "pr_detail",
-                            "xtype": "",
-                            "items": null
                         }, {
                             "text": "规格",
-                            "flex": 0,
                             "dataIndex": "pr_spec",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         }, {
                             "text": "单位",
-                            "flex": 0,
                             "dataIndex": "pr_spec",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "仓库id",
-                            "flex": 0,
                             "dataIndex": "pr_whid",
-                            "width": 0,
-                            "xtype": "",
-                            "items": null
+                            "hidden": true,
                         },{
                             "text": "仓库编号",
-                            "flex": 0,
                             "dataIndex": "pr_whcode",
-                            "width": 0,
-                            "xtype": "",
-                            "items": null
+                            "hidden": true,
                         },{
                             "text": "仓库",
-                            "flex": 0,
                             "dataIndex": "pr_whname",
-                            "width": 100,
-                            "xtype": "",
-                            "items": null
+                            "width": 200,
                         },{
                             "text": "总库存数",
-                            "flex": 0,
                             "dataIndex": "po_onhand",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "类型",
-                            "flex": 0,
                             "dataIndex": "pr_kind",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "型号",
-                            "flex": 0,
                             "dataIndex": "pr_orispeccode",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "品牌",
-                            "flex": 0,
                             "dataIndex": "pr_brand",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "供应商",
-                            "flex": 0,
                             "dataIndex": "pr_vendname",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "最小包装",
-                            "flex": 0,
                             "dataIndex": "pr_zxbzs",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "L/T",
-                            "flex": 0,
                             "dataIndex": "pr_leadtime",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         }]
                     });
 

+ 49 - 23
frontend/saas-web/app/view/stock/otherIn/QueryPanelController.js

@@ -117,37 +117,63 @@ Ext.define('saas.view.stock.otherIn.QueryPanelController', {
                         dbColumns:[{
                             "text": "物料ID",
                             "hidden": true,
-                            "dataIndex": "pr_id",
-                            "width": 0,
-                            "xtype": "",
-                            "items": null
-                        },{
-                            "text": "物料编号",
-                            "flex": 1,
+                            "dataIndex": "id",
+                        }, {
+                            "text": "物料编号",       
                             "dataIndex": "pr_code",
-                            "width": 100,
-                            "xtype": "",
-                            "items": null
+                            "width": 200,
                         }, {
                             "text": "物料名称",
-                            "flex": 1,
+                            "width": 200,
                             "dataIndex": "pr_detail",
-                            "xtype": "",
-                            "items": null
                         }, {
-                            "text": "物料规格",
-                            "flex": 0,
+                            "text": "规格",
                             "dataIndex": "pr_spec",
-                            "width": 200,
-                            "xtype": "",
-                            "items": null
+                            "width": 100,
                         }, {
-                            "text": "物料单位",
-                            "flex": 0,
-                            "dataIndex": "pr_unit",
+                            "text": "单位",
+                            "dataIndex": "pr_spec",
+                            "width": 100,
+                        },{
+                            "text": "仓库id",
+                            "dataIndex": "pr_whid",
+                            "hidden": true,
+                        },{
+                            "text": "仓库编号",
+                            "dataIndex": "pr_whcode",
+                            "hidden": true,
+                        },{
+                            "text": "仓库",
+                            "dataIndex": "pr_whname",
                             "width": 200,
-                            "xtype": "",
-                            "items": null
+                        },{
+                            "text": "总库存数",
+                            "dataIndex": "po_onhand",
+                            "width": 100,
+                        },{
+                            "text": "类型",
+                            "dataIndex": "pr_kind",
+                            "width": 100,
+                        },{
+                            "text": "型号",
+                            "dataIndex": "pr_orispeccode",
+                            "width": 100,
+                        },{
+                            "text": "品牌",
+                            "dataIndex": "pr_brand",
+                            "width": 100,
+                        },{
+                            "text": "供应商",
+                            "dataIndex": "pr_vendname",
+                            "width": 100,
+                        },{
+                            "text": "最小包装",
+                            "dataIndex": "pr_zxbzs",
+                            "width": 100,
+                        },{
+                            "text": "L/T",
+                            "dataIndex": "pr_leadtime",
+                            "width": 100,
                         }]
                     }) ;   
 

+ 1 - 1
frontend/saas-web/app/view/stock/otherOut/FormPanel.js

@@ -187,7 +187,7 @@ Ext.define('saas.view.stock.otherOut.FormPanel', {
                 text: "仓库",
                 dataIndex: "pd_whname",
                 width: 120.0,
-                items: null,
+                allowBlank : false,
                 editor: {
                     displayField: "display",
                     editable: true,

+ 7 - 49
frontend/saas-web/app/view/stock/otherOut/FormPanelController.js

@@ -202,106 +202,64 @@ Ext.define('saas.view.stock.otherOut.FormPanelController', {
                         }],                      
                         dbColumns:[{
                             "text": "物料ID",
+                            "hidden": true,
                             "dataIndex": "id",
-                            "width": 0,
-                            "xtype": "",
-                            "hidden": true
-                        },{
+                        }, {
                             "text": "物料编号",       
                             "dataIndex": "pr_code",
-                            "width": 100,
-                            "xtype": "",
-                            "items": null
+                            "width": 200,
                         }, {
                             "text": "物料名称",
-                            "width": 100,
+                            "width": 200,
                             "dataIndex": "pr_detail",
-                            "xtype": "",
-                            "items": null
                         }, {
                             "text": "规格",
-                            "flex": 0,
                             "dataIndex": "pr_spec",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         }, {
                             "text": "单位",
-                            "flex": 0,
                             "dataIndex": "pr_spec",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "仓库id",
-                            "flex": 0,
                             "dataIndex": "pr_whid",
-                            "width": 0,
-                            "xtype": "",
-                            "items": null
+                            "hidden": true,
                         },{
                             "text": "仓库编号",
-                            "flex": 0,
                             "dataIndex": "pr_whcode",
-                            "width": 0,
-                            "xtype": "",
-                            "items": null
+                            "hidden": true,
                         },{
                             "text": "仓库",
-                            "flex": 0,
                             "dataIndex": "pr_whname",
-                            "width": 100,
-                            "xtype": "",
-                            "items": null
+                            "width": 200,
                         },{
                             "text": "总库存数",
-                            "flex": 0,
                             "dataIndex": "po_onhand",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "类型",
-                            "flex": 0,
                             "dataIndex": "pr_kind",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "型号",
-                            "flex": 0,
                             "dataIndex": "pr_orispeccode",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "品牌",
-                            "flex": 0,
                             "dataIndex": "pr_brand",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "供应商",
-                            "flex": 0,
                             "dataIndex": "pr_vendname",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "最小包装",
-                            "flex": 0,
                             "dataIndex": "pr_zxbzs",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         },{
                             "text": "L/T",
-                            "flex": 0,
                             "dataIndex": "pr_leadtime",
                             "width": 100,
-                            "xtype": "",
-                            "items": null
                         }]
                     }) ;   
 

+ 49 - 23
frontend/saas-web/app/view/stock/otherOut/QueryPanelController.js

@@ -117,37 +117,63 @@ Ext.define('saas.view.stock.otherOut.QueryPanelController', {
                         dbColumns:[{
                             "text": "物料ID",
                             "hidden": true,
-                            "dataIndex": "pr_id",
-                            "width": 0,
-                            "xtype": "",
-                            "items": null
-                        },{
-                            "text": "物料编号",
-                            "flex": 1,
+                            "dataIndex": "id",
+                        }, {
+                            "text": "物料编号",       
                             "dataIndex": "pr_code",
-                            "width": 100,
-                            "xtype": "",
-                            "items": null
+                            "width": 200,
                         }, {
                             "text": "物料名称",
-                            "flex": 1,
+                            "width": 200,
                             "dataIndex": "pr_detail",
-                            "xtype": "",
-                            "items": null
                         }, {
-                            "text": "物料规格",
-                            "flex": 0,
+                            "text": "规格",
                             "dataIndex": "pr_spec",
-                            "width": 200,
-                            "xtype": "",
-                            "items": null
+                            "width": 100,
                         }, {
-                            "text": "物料单位",
-                            "flex": 0,
-                            "dataIndex": "pr_unit",
+                            "text": "单位",
+                            "dataIndex": "pr_spec",
+                            "width": 100,
+                        },{
+                            "text": "仓库id",
+                            "dataIndex": "pr_whid",
+                            "hidden": true,
+                        },{
+                            "text": "仓库编号",
+                            "dataIndex": "pr_whcode",
+                            "hidden": true,
+                        },{
+                            "text": "仓库",
+                            "dataIndex": "pr_whname",
                             "width": 200,
-                            "xtype": "",
-                            "items": null
+                        },{
+                            "text": "总库存数",
+                            "dataIndex": "po_onhand",
+                            "width": 100,
+                        },{
+                            "text": "类型",
+                            "dataIndex": "pr_kind",
+                            "width": 100,
+                        },{
+                            "text": "型号",
+                            "dataIndex": "pr_orispeccode",
+                            "width": 100,
+                        },{
+                            "text": "品牌",
+                            "dataIndex": "pr_brand",
+                            "width": 100,
+                        },{
+                            "text": "供应商",
+                            "dataIndex": "pr_vendname",
+                            "width": 100,
+                        },{
+                            "text": "最小包装",
+                            "dataIndex": "pr_zxbzs",
+                            "width": 100,
+                        },{
+                            "text": "L/T",
+                            "dataIndex": "pr_leadtime",
+                            "width": 100,
                         }]
                     }) ;   
 

+ 105 - 0
frontend/saas-web/overrides/util/Collection.js

@@ -0,0 +1,105 @@
+Ext.define('saas.override.util.Collection', {
+    override: 'Ext.util.Collection',
+
+    _aggregators: {
+        average: function (items, begin, end, property, root) {
+            var n = end - begin;
+            return n &&
+                   this._aggregators.sum.call(this, items, begin, end, property, root) / n;
+        },
+ 
+        bounds: function (items, begin, end, property, root) {
+            for (var value, max, min, i = begin; i < end; ++i) {
+                value = items[i];
+                value = (root ? value[root] : value)[property];
+ 
+                // First pass max and min are undefined and since nothing is less than 
+                // or greater than undefined we always evaluate these "if" statements as 
+                // true to pick up the first value as both max and min. 
+                if (!(value < max)) { // jshint ignore:line 
+                    max = value;
+                }
+                if (!(value > min)) { // jshint ignore:line 
+                    min = value;
+                }
+            }
+ 
+            return [min, max];
+        },
+        
+        count: function(items) {
+            return items.length;
+        },
+ 
+        extremes: function (items, begin, end, property, root) {
+            var most = null,
+                least = null,
+                i, item, max, min, value;
+ 
+            for (i = begin; i < end; ++i) {
+                item = items[i];
+                value = (root ? item[root] : item)[property];
+ 
+                // Same trick as "bounds" 
+                if (!(value < max)) { // jshint ignore:line 
+                    max = value;
+                    most = item;
+                }
+                if (!(value > min)) { // jshint ignore:line 
+                    min = value;
+                    least = item;
+                }
+            }
+ 
+            return [least, most];
+        },
+ 
+        max: function (items, begin, end, property, root) {
+            var b = this._aggregators.bounds.call(this, items, begin, end, property, root);
+            return b[1];
+        },
+ 
+        maxItem: function (items, begin, end, property, root) {
+            var b = this._aggregators.extremes.call(this, items, begin, end, property, root);
+            return b[1];
+        },
+ 
+        min: function (items, begin, end, property, root) {
+            var b = this._aggregators.bounds.call(this, items, begin, end, property, root);
+            return b[0];
+        },
+ 
+        minItem: function (items, begin, end, property, root) {
+            var b = this._aggregators.extremes.call(this, items, begin, end, property, root);
+            return b[0];
+        },
+ 
+        // override
+        sum: function (items, begin, end, property, root) {
+            for (var value, sum = 0, i = begin; i < end; ++i) {
+                value = items[i];
+                value = (root ? value[root] : value)[property];
+                
+                var num1 = sum + '';
+                var num2 = value + '';
+    
+                var baseNum, baseNum1, baseNum2; 
+                try { 
+                    baseNum1 = num1.split(".")[1].length; 
+                } catch (e) { 
+                    baseNum1 = 0; 
+                } 
+                try { 
+                    baseNum2 = num2.split(".")[1].length; 
+                } catch (e) { 
+                    baseNum2 = 0;
+                } 
+                baseNum = Math.pow(10, Math.max(baseNum1, baseNum2));
+    
+                sum = (num1 * baseNum + num2 * baseNum) / baseNum;
+            }
+    
+            return sum;
+        }
+    },
+});