ソースを参照

Merge branch 'dev' of ssh://10.10.100.21/source/saas-platform into dev

chenw 7 年 前
コミット
efdbf3a567
93 ファイル変更1421 行追加353 行削除
  1. 2 2
      applications/commons/commons-server/src/main/resources/mapper/HomePageMapper.xml
  2. 1 1
      applications/sale/sale-server/src/main/java/com/usoftchina/saas/sale/service/impl/ProdInOutServiceImpl.java
  3. 0 2
      base-servers/sms/sms-server/pom.xml
  4. 1 1
      base-servers/sms/sms-server/src/main/resources/application.yml
  5. 12 0
      base-servers/sms/sms-server/src/main/resources/config/application-docker-test.yml
  6. 10 0
      base-servers/sms/sms-server/src/main/resources/config/application-docker.yml
  7. 457 0
      frontend/saas-web/app/view/core/dbfind/AddMultiDbfindGridPanel.js
  8. 299 0
      frontend/saas-web/app/view/core/dbfind/AddMultiDbfindTrigger.js
  9. 2 2
      frontend/saas-web/app/view/core/dbfind/MultiDbfindTrigger.js
  10. 105 0
      frontend/saas-web/app/view/core/dbfind/types/ProductAddMultiDbfindTrigger.js
  11. 1 1
      frontend/saas-web/app/view/core/dbfind/types/ProductDbfindTrigger.js
  12. 1 1
      frontend/saas-web/app/view/core/dbfind/types/ProductMultiDbfindTrigger.js
  13. 1 1
      frontend/saas-web/app/view/core/dbfind/types/VendorDbfindTrigger.js
  14. 2 2
      frontend/saas-web/app/view/core/report/ReportPanel.js
  15. 4 1
      frontend/saas-web/app/view/core/report/ReportPanelController.js
  16. 1 1
      frontend/saas-web/app/view/document/address/DataList.js
  17. 2 2
      frontend/saas-web/app/view/document/bankinformation/DataList.js
  18. 2 2
      frontend/saas-web/app/view/document/bankinformation/Window.js
  19. 1 1
      frontend/saas-web/app/view/document/bom/FormController.js
  20. 2 2
      frontend/saas-web/app/view/document/bom/FormPanel.js
  21. 1 1
      frontend/saas-web/app/view/document/customer/BasePanel.js
  22. 4 4
      frontend/saas-web/app/view/document/customer/FormPanel.js
  23. 4 4
      frontend/saas-web/app/view/document/product/BasePanel.js
  24. 5 5
      frontend/saas-web/app/view/document/product/FormPanel.js
  25. 1 1
      frontend/saas-web/app/view/document/vendor/BasePanel.js
  26. 3 3
      frontend/saas-web/app/view/document/vendor/FormPanel.js
  27. 3 3
      frontend/saas-web/app/view/home/infoCardList/Payment.js
  28. 3 3
      frontend/saas-web/app/view/home/infoCardList/PurchaseIn.js
  29. 4 4
      frontend/saas-web/app/view/home/infoCardList/Recment.js
  30. 4 4
      frontend/saas-web/app/view/home/infoCardList/SaleOut.js
  31. 3 3
      frontend/saas-web/app/view/home/infoCardList/UnauditCheckIn.js
  32. 4 4
      frontend/saas-web/app/view/home/infoCardList/UnauditSaleOut.js
  33. 2 2
      frontend/saas-web/app/view/money/fundtransfer/FormPanel.js
  34. 1 1
      frontend/saas-web/app/view/money/fundtransfer/QueryPanel.js
  35. 2 2
      frontend/saas-web/app/view/money/othreceipts/FormPanel.js
  36. 1 1
      frontend/saas-web/app/view/money/othreceipts/FormPanelController.js
  37. 2 2
      frontend/saas-web/app/view/money/othreceipts/QueryPanel.js
  38. 2 2
      frontend/saas-web/app/view/money/othspendings/FormPanel.js
  39. 2 2
      frontend/saas-web/app/view/money/othspendings/FormPanelController.js
  40. 2 2
      frontend/saas-web/app/view/money/othspendings/QueryPanel.js
  41. 10 10
      frontend/saas-web/app/view/money/payBalance/FormPanel.js
  42. 2 2
      frontend/saas-web/app/view/money/payBalance/FormPanelController.js
  43. 1 1
      frontend/saas-web/app/view/money/payBalance/QueryPanel.js
  44. 10 10
      frontend/saas-web/app/view/money/recBalance/FormPanel.js
  45. 1 1
      frontend/saas-web/app/view/money/recBalance/FormPanelController.js
  46. 1 1
      frontend/saas-web/app/view/money/recBalance/QueryPanel.js
  47. 7 5
      frontend/saas-web/app/view/money/report/AccountBalance.js
  48. 4 2
      frontend/saas-web/app/view/money/report/AccountDetails.js
  49. 13 9
      frontend/saas-web/app/view/money/report/CustomerCheck.js
  50. 6 4
      frontend/saas-web/app/view/money/report/OtherIODetail.js
  51. 9 9
      frontend/saas-web/app/view/money/report/PayDetail.js
  52. 10 6
      frontend/saas-web/app/view/money/report/ProfitDetail.js
  53. 9 8
      frontend/saas-web/app/view/money/report/RecDetail.js
  54. 14 8
      frontend/saas-web/app/view/money/report/TotalPayDetail.js
  55. 13 7
      frontend/saas-web/app/view/money/report/TotalRecDetail.js
  56. 12 7
      frontend/saas-web/app/view/money/report/VendorCheck.js
  57. 16 16
      frontend/saas-web/app/view/money/verification/FormPanel.js
  58. 6 6
      frontend/saas-web/app/view/money/verification/FormPanelController.js
  59. 1 1
      frontend/saas-web/app/view/money/verification/QueryPanel.js
  60. 9 9
      frontend/saas-web/app/view/purchase/purchase/FormPanel.js
  61. 22 0
      frontend/saas-web/app/view/purchase/purchase/FormPanelController.js
  62. 3 3
      frontend/saas-web/app/view/purchase/purchase/QueryPanel.js
  63. 9 9
      frontend/saas-web/app/view/purchase/purchaseIn/FormPanel.js
  64. 3 3
      frontend/saas-web/app/view/purchase/purchaseIn/QueryPanel.js
  65. 7 7
      frontend/saas-web/app/view/purchase/purchaseOut/FormPanel.js
  66. 3 3
      frontend/saas-web/app/view/purchase/purchaseOut/QueryPanel.js
  67. 19 10
      frontend/saas-web/app/view/purchase/report/Purchase.js
  68. 8 7
      frontend/saas-web/app/view/purchase/report/PurchasePay.js
  69. 16 11
      frontend/saas-web/app/view/sale/report/Sale.js
  70. 15 8
      frontend/saas-web/app/view/sale/report/SaleProfit.js
  71. 8 5
      frontend/saas-web/app/view/sale/report/SaleRec.js
  72. 9 9
      frontend/saas-web/app/view/sale/sale/FormPanel.js
  73. 5 5
      frontend/saas-web/app/view/sale/sale/QueryPanel.js
  74. 7 7
      frontend/saas-web/app/view/sale/saleIn/FormPanel.js
  75. 6 6
      frontend/saas-web/app/view/sale/saleIn/QueryPanel.js
  76. 7 7
      frontend/saas-web/app/view/sale/saleOut/FormPanel.js
  77. 4 4
      frontend/saas-web/app/view/sale/saleOut/QueryPanel.js
  78. 2 2
      frontend/saas-web/app/view/stock/appropriationInOut/FormPanel.js
  79. 1 1
      frontend/saas-web/app/view/stock/appropriationInOut/QueryPanel.js
  80. 3 3
      frontend/saas-web/app/view/stock/inventory/EditDataList.js
  81. 7 7
      frontend/saas-web/app/view/stock/make/FormPanel.js
  82. 1 1
      frontend/saas-web/app/view/stock/make/QueryPanel.js
  83. 7 7
      frontend/saas-web/app/view/stock/otherIn/FormPanel.js
  84. 3 3
      frontend/saas-web/app/view/stock/otherIn/QueryPanel.js
  85. 7 7
      frontend/saas-web/app/view/stock/otherOut/FormPanel.js
  86. 3 3
      frontend/saas-web/app/view/stock/otherOut/QueryPanel.js
  87. 7 4
      frontend/saas-web/app/view/stock/report/DataList.js
  88. 16 8
      frontend/saas-web/app/view/stock/report/ProdinoutCount.js
  89. 6 5
      frontend/saas-web/app/view/stock/report/Prodiodetail.js
  90. 28 1
      frontend/saas-web/overrides/exporter/Stylesheet.js
  91. 56 0
      frontend/saas-web/overrides/exporter/file/Style.js
  92. BIN
      frontend/saas-web/resources/images/loading.gif
  93. 10 0
      pom.xml

+ 2 - 2
applications/commons/commons-server/src/main/resources/mapper/HomePageMapper.xml

@@ -126,7 +126,7 @@
         pi_custcode,max(pi_custname) custname,max(ifnull(cu_shortname,'')) shortname  from prodinout left join prodiodetail on pi_id=pd_piid left join customer on cu_id=pi_custid
         where
         pi_class in('出货单', '销售退货单') and pi_statuscode='AUDITED' and DATE_FORMAT(pi_date,'%Y%m')=DATE_FORMAT(CURDATE(),'%Y%m') and prodinout.companyid=#{componyId}
-        GROUP BY pi_custcode,prodinout.companyid order by profit desc  limit 0,4) t
+        GROUP BY pi_custcode,prodinout.companyid order by profit desc  limit 0,5) t
         )five_profit_,
 	  (
 	    #其它的数据
@@ -143,7 +143,7 @@
         pi_custcode,max(pi_custname) custname,prodinout.companyid from prodinout left join prodiodetail on pi_id=pd_piid left join customer on cu_id=pi_custid
          where
         pi_class in('出货单', '销售退货单') and pi_statuscode='AUDITED' and DATE_FORMAT(pi_date,'%Y%m')=DATE_FORMAT(CURDATE(),'%Y%m') and prodinout.companyid=#{componyId}
-        GROUP BY pi_custcode,prodinout.companyid order by profit desc  limit 0,4) b)a2_
+        GROUP BY pi_custcode,prodinout.companyid order by profit desc  limit 0,5) b)a2_
        )
        ) other_profit_
       )

+ 1 - 1
applications/sale/sale-server/src/main/java/com/usoftchina/saas/sale/service/impl/ProdInOutServiceImpl.java

@@ -414,7 +414,7 @@ public class ProdInOutServiceImpl extends CommonBaseServiceImpl<ProdInOutMapper,
         if (null == con) {
             con = "1=1";
         }
-        if (null == req || StringUtils.isEmpty(req.getMode()) || "Main".equals(req.getMode())) {
+        if (null == req || StringUtils.isEmpty(req.getMode()) || "MAIN".equals(req.getMode())) {
             list = prodInOutListMapper.selectProdInOutListByCondition(con, companyId);
         } else {
             list = prodInOutListMapper.selectProdInOutBycondition(con, companyId);

+ 0 - 2
base-servers/sms/sms-server/pom.xml

@@ -27,12 +27,10 @@
         <dependency>
             <groupId>com.usoftchina.saas</groupId>
             <artifactId>sms-dto</artifactId>
-            <version>1.0.0-SNAPSHOT</version>
         </dependency>
         <dependency>
             <groupId>com.usoftchina.saas</groupId>
             <artifactId>sms-api</artifactId>
-            <version>1.0.0-SNAPSHOT</version>
         </dependency>
         <dependency>
             <groupId>org.springframework.boot</groupId>

+ 1 - 1
base-servers/sms/sms-server/src/main/resources/application.yml

@@ -60,7 +60,7 @@ management:
     health:
       show-details: always
 server:
-  port: 8680
+  port: 8700
   tomcat:
     uri-encoding: UTF-8
 info:

+ 12 - 0
base-servers/sms/sms-server/src/main/resources/config/application-docker-test.yml

@@ -0,0 +1,12 @@
+eureka:
+  instance:
+    hostname: saas-sms-server-test
+    prefer-ip-address: false
+  client:
+    serviceUrl:
+      defaultZone: http://${spring.security.user.name}:${spring.security.user.password}@saas-eureka-server-test:8515/eureka/
+spring:
+  rabbitmq:
+    virtual-host: test
+server:
+  port: 8700

+ 10 - 0
base-servers/sms/sms-server/src/main/resources/config/application-docker.yml

@@ -0,0 +1,10 @@
+eureka:
+  instance:
+    hostname: saas-sms-server
+    prefer-ip-address: false
+  client:
+    serviceUrl:
+      defaultZone: http://${spring.security.user.name}:${spring.security.user.password}@saas-eureka-server:8500/eureka/
+spring:
+  rabbitmq:
+    virtual-host: docker

+ 457 - 0
frontend/saas-web/app/view/core/dbfind/AddMultiDbfindGridPanel.js

@@ -0,0 +1,457 @@
+Ext.define('saas.view.core.dbfind.AddMultiDbfindGridPanel', {
+    extend: 'Ext.grid.Panel',
+    xtype: 'addmultidbfindgridpanel',
+
+    dataUrl: '',
+    dbSearchFields: [],
+    condition:'',
+    selectRecordArr:[],
+
+    selModel: {
+        checkOnly:true,
+        type:'checkboxmodel',
+        ignoreRightMouseSelection : false,
+        listeners:{
+            select:function(selModel,record,c,d){
+                if(!selModel.noChange){
+                    var selectRecordArr = selModel.view.ownerCt.selectRecordArr;
+                    selectRecordArr.push(record);
+                }
+            },
+            deselect:function(selModel,record){
+                if(!selModel.noChange){
+                    var selectRecordArr = selModel.view.ownerCt.selectRecordArr;
+                    var index = -1;
+                    index = selectRecordArr.findIndex(function(f){
+                        return f.id==record.id
+                    });
+                    if(index>-1){
+                        selectRecordArr.splice(index,1);
+                    }
+                }
+            }
+         }
+    },
+    
+    listeners:{
+        boxready: function(grid, width, height, eOpts) {
+            var store = grid.getStore(),
+            gridBodyBox = grid.body.dom.getBoundingClientRect(),
+            gridBodyBoxHeight = gridBodyBox.height;
+
+            var pageSize = Math.floor(gridBodyBoxHeight / 33);
+
+            store.setPageSize(pageSize);
+        },
+        itemdblclick:function( view, record, item, index, e, eOpts ) {
+            var grid = view.ownerCt;
+            var index = -1;
+            index = grid.selectRecordArr.findIndex(function(f){
+                return f.id==record.id
+            });
+            grid.selModel.noChange = true;
+            if(index==-1){
+                grid.selectRecordArr.push(record);
+                grid.selModel.select(grid.selectRecordArr);
+                // grid.store.loadPage(grid.store.currentPage);
+                grid.updateLayout();
+                grid.view.updateLayout();
+                Ext.resumeLayouts();
+            }else{
+                grid.selectRecordArr.splice(index,1);
+                grid.selModel.deselect(record);
+            }
+            grid.selModel.noChange = false;
+        }
+    },
+
+    initComponent: function() {
+        var me = this;
+        me.selectRecordArr = [];
+        if(me.columns){
+            var fields = me.columns.map(column => column.dataIndex);
+            me.store = Ext.create('Ext.data.Store',{
+                fields:fields,
+                autoLoad: true,
+                pageSize: 6,
+                data: [],
+                proxy: {
+                    type: 'ajax',
+                    url: me.dataUrl,
+                    timeout:8000,
+                    actionMethods: {
+                        read: 'GET'
+                    },
+                    reader: {
+                        type: 'json',
+                        rootProperty: 'data.list',
+                        totalProperty: 'data.total',
+                    },
+                    listeners: {
+                        exception: function(proxy, response, operation, eOpts) {
+                            if(operation.success) {
+                                if(response.timedout) {
+                                    saas.util.BaseUtil.showErrorToast('请求超时');
+                                }
+                            }else {
+                                console.error('exception: ', response.responseJson);
+                                saas.util.BaseUtil.showErrorToast('查询失败:' + response.responseJson.message);
+                            }
+                        }
+                    }
+                },
+                listeners: {
+                    beforeload: function (store, op) {
+                        var condition = me.condition;
+                        if (Ext.isEmpty(condition)) {
+                            condition = [];
+                        }
+                        //添加默认条件
+                        if(me.ownerCt.trigger.defaultCondition) {
+                            condition.push({
+                                type: 'condition',
+                                value: me.ownerCt.trigger.defaultCondition
+                            });
+                        }
+                        Ext.apply(store.proxy.extraParams, {
+                            number: op._page,
+                            size: store.pageSize,
+                            condition: JSON.stringify(condition)
+                        });
+                    }
+                }
+            });
+
+            Ext.apply(me, {
+                dockedItems:[{
+                    xtype:'toolbar',
+                    dock:'top',
+                    items:me.getSearchFields().concat([{
+                        xtype:'button',
+                        text:'查询',
+                        handler:function(b){
+                            var grid = me,items=[];
+                            grid.condition = '';
+                            Ext.Array.each(grid.dbSearchFields,function(f) {
+                                var field = b.ownerCt.down('[name='+f.name+']')
+                                items.push(field);
+                            });
+                            grid.condition = grid.getCondition(items);
+                            grid.store.loadPage(1);
+                            grid.selModel.noChange = true;
+                            grid.selModel.deselectAll();
+                            grid.selModel.select(grid.selectRecordArr);
+                            grid.selModel.noChange = false;
+                        }
+                    },'->',{
+                        text:'确定',
+                        cls:'x-formpanel-btn-blue',
+                        handler:function(b){
+                            debugger
+                            var grid = me;//grid
+                            var selectRecordArr = grid.selectRecordArr;
+                            var dbfinds = grid.dbfinds;
+                            //点开放大镜的行
+                            var mainGrid = grid.dbfindtrigger.column.ownerCt.ownerCt;
+                            var rec = mainGrid.selModel.getLastSelected();
+                            var nowRec = mainGrid.store.getData().getByKey(rec.id);
+                            var v = '';
+                            Ext.Array.each(selectRecordArr,function(record,_index) {
+                                    v = v + record.get(dbfinds[0].from)+','
+                            });
+                            if(v.length>0){
+                                nowRec.set(dbfinds[0].to,v.substring(0,v.length-1));
+                            }
+                            mainGrid.up('detailGridField').fireEvent('edit');
+                            grid.ownerCt.close();
+                        }
+                    },{
+                        xtype:'button',
+                        text:'新增',
+                        handler:function(b){
+                            var grid = me;
+                            var trigger = grid.ownerCt.trigger;
+                            saas.util.BaseUtil.openTab(trigger.addXtype, '新增'+trigger.addTitle,trigger.addXtype + '_add');
+                        },
+                        listeners:{
+                            afterrender:function(b){
+                                var grid = me;
+                                var trigger = grid.ownerCt.trigger;
+                                if(!trigger.addXtype||trigger.addXtype==''){
+                                    b.hide();
+                                }
+                            }
+                        }
+                    }])
+                },{
+                    xtype: 'pagingtoolbar',
+                    dock: 'bottom',
+                    displayInfo: true,
+                    height:32,
+                    style:'padding: 0;',
+                    store: me.store,
+                    items:[{
+                        xtype:'checkbox',
+                        id:'showSelectRecord',
+                        boxLabel:'已选中数据',
+                        handler:function(b){
+                            var grid = me;
+                            if(b.checked){
+                                grid.store.loadData(grid.selectRecordArr);
+                                grid.selModel.noChange = true;
+                                grid.selModel.deselectAll();
+                                grid.selModel.select(grid.selectRecordArr);
+                                grid.selModel.noChange = false;
+                                //刷新展示数据
+                                var dataCount = grid.selectRecordArr.length,msg;
+                                var display = b.ownerCt.child('#displayItem');
+                                if (dataCount === 0) {
+                                    msg = b.ownerCt.emptyMsg;
+                                } else {
+                                    msg = Ext.String.format(
+                                        b.ownerCt.displayMsg,
+                                        1,
+                                        dataCount,
+                                        dataCount
+                                    );
+                                }
+                                display.setText(msg);
+                                b.ownerCt.child('#inputItem').setValue(1);
+                                b.ownerCt.child("#afterTextItem").setText('页,共'+dataCount+'页');
+                            }else{
+                                grid.selModel.noChange = true;
+                                grid.selModel.deselectAll();
+                                grid.selModel.select(grid.selectRecordArr);
+                                grid.selModel.noChange = false;
+                                grid.store.loadPage(1);
+                            }
+                        }
+                    }],
+                    moveFirst: function() {
+                        if(Ext.getCmp('showSelectRecord').checked==false){
+                            if (this.fireEvent('beforechange', this, 1) !== false) {
+                                this.store.loadPage(1);
+                                this.ownerCt.selModel.noChange = true;
+                                this.ownerCt.selModel.deselectAll();
+                                this.ownerCt.selModel.select(this.ownerCt.selectRecordArr);
+                                this.ownerCt.selModel.noChange = false;
+                                return true;
+                            }
+                        }
+                        return false;
+                    },
+                    movePrevious: function() {
+                        var me = this,
+                            store = me.store,
+                            prev = store.currentPage - 1;
+                        if(Ext.getCmp('showSelectRecord').checked==false){
+                            if (prev > 0) {
+                                if (me.fireEvent('beforechange', me, prev) !== false) {
+                                    store.previousPage();
+                                    this.ownerCt.selModel.noChange = true;
+                                    this.ownerCt.selModel.deselectAll();
+                                    this.ownerCt.selModel.select(this.ownerCt.selectRecordArr);
+                                    this.ownerCt.selModel.noChange = false;
+                                    return true;
+                                }
+                            }
+                        }
+                        return false;
+                    },
+                    moveNext: function() {
+                        var me = this,
+                            store = me.store,
+                            total = me.getPageData().pageCount,
+                            next = store.currentPage + 1;
+                        if(Ext.getCmp('showSelectRecord').checked==false){
+                            if (next <= total) {
+                                if (me.fireEvent('beforechange', me, next) !== false) {
+                                    store.nextPage();
+                                    this.ownerCt.selModel.noChange = true;
+                                    this.ownerCt.selModel.deselectAll();
+                                    this.ownerCt.selModel.select(this.ownerCt.selectRecordArr);
+                                    this.ownerCt.selModel.noChange = false;
+                                    return true;
+                                }
+                            }
+                        }
+                        return false;
+                    },
+                    moveLast: function() {
+                        var me = this,
+                            last = me.getPageData().pageCount;
+                        if(Ext.getCmp('showSelectRecord').checked==false){
+                            if (me.fireEvent('beforechange', me, last) !== false) {
+                                me.store.loadPage(last);
+                                this.ownerCt.selModel.noChange = true;
+                                this.ownerCt.selModel.deselectAll();
+                                this.ownerCt.selModel.select(this.ownerCt.selectRecordArr);
+                                this.ownerCt.selModel.noChange = false;
+                                return true;
+                            }
+                        }
+                        return false;
+                    },
+                    doRefresh: function() {
+                        var me = this,
+                            store = me.store,
+                            current = store.currentPage;
+                        if(Ext.getCmp('showSelectRecord').checked==false){
+                            if (me.fireEvent('beforechange', me, current) !== false) {
+                                store.loadPage(current);
+                                this.ownerCt.selModel.noChange = true;
+                                this.ownerCt.selModel.deselectAll();
+                                this.ownerCt.selModel.select(this.ownerCt.selectRecordArr);
+                                this.ownerCt.selModel.noChange = false;
+                                return true;
+                            }
+                        }
+                        return false;
+                    },
+                    updateInfo: function() {
+                        var me = this,
+                            displayItem = me.child('#displayItem'),
+                            store = me.store,
+                            pageData = me.getPageData(),
+                            count, msg;
+                        if (displayItem) {
+                            count = store.getCount();
+                            if (count === 0) {
+                                msg = me.emptyMsg;
+                            } else {
+                                msg = Ext.String.format(me.displayMsg, pageData.fromRecord, pageData.toRecord, pageData.total);
+                            }
+                            displayItem.setText(msg);
+                        }
+                    }
+                }]
+            });
+        }
+        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;
+    },
+
+     /**
+     * 获得过滤条件
+     */
+    getCondition: function(items) {
+        var me = this,
+        conditions = [];
+
+        for(var i = 0; i < items.length; i++) {
+            var item = items[i];
+            var field = item.name,
+            func = item.getCondition,
+            value = item.value,
+            condition;
+
+            if(value&&value!=''){
+                if(typeof func == 'function') {
+                    condition = {
+                        type: 'condition',
+                        value: func(value)
+                    }
+                }else {
+                    var xtype = item.xtype || 'textfield',
+                    type = item.fieldType || me.getDefaultFieldType(xtype),
+                    operation = item.operation || me.getDefaultFieldOperation(xtype),
+                    conditionValue = me.getConditionValue(xtype, value);
+        
+                    if(!conditionValue) {
+                        continue;
+                    }
+                    condition = {
+                        type: type,
+                        field: field,
+                        operation: operation,
+                        value: conditionValue
+                    }
+                }
+                conditions.push(condition);
+            }
+        };
+        return conditions;
+    },
+
+    getDefaultFieldType: function(xtype) {
+        var type;
+
+        if(Ext.Array.contains(['numberfield'], xtype)) {
+            type = 'number';
+        }else if(Ext.Array.contains(['datefield', 'condatefield'], xtype)) {
+            type = 'date';
+        }else if(Ext.Array.contains(['combobox', 'multicombo', 'combo', 'radiofield', 'radio'], xtype)) {
+            type = 'enum';
+        }else {
+            type = 'string';
+        }
+
+        return type;
+    },
+
+    getDefaultFieldOperation: function(xtype) {
+        var operation;
+
+        if(Ext.Array.contains(['numberfield'], xtype)) {
+            operation = '=';
+        }else if(Ext.Array.contains(['datefield'], xtype)) {
+            operation = '=';
+        }else if(Ext.Array.contains(['condatefield'], xtype)) {
+            operation = 'between';
+        }else if(Ext.Array.contains(['combobox', 'multicombo', 'combo'], xtype)) {
+            operation = 'in';
+        }else {
+            operation = 'like';
+        }
+
+        return operation;
+    },
+
+    /**
+     * 处理部分字段值
+     */
+    getConditionValue: function(xtype, value) {
+        var conditionValue;
+        if(xtype == 'datefield') {
+            conditionValue = Ext.Date.format(new Date(from), 'Y-m-d H:i:s');
+        }else if(xtype == 'condatefield') {
+            var from = value.from,
+            to = value.to;
+
+            conditionValue = Ext.Date.format(new Date(from), 'Y-m-d 00:00:00') + ',' + Ext.Date.format(new Date(to), 'Y-m-d 23:59:59');
+        }else if(xtype == 'combobox' || xtype == 'combo') {
+            conditionValue = '\'' + value + '\'';
+        }else if(xtype == 'multicombo') {
+            conditionValue = value.map(function(v) {
+                return '\'' + v.value + '\'';
+            }).join(',');
+        }else {
+            conditionValue = value;
+        }
+
+        return conditionValue;
+    }
+});

+ 299 - 0
frontend/saas-web/app/view/core/dbfind/AddMultiDbfindTrigger.js

@@ -0,0 +1,299 @@
+/**
+ *  选中的数据会按照主字段,号隔开
+ */
+Ext.define('saas.view.core.dbfind.AddMultiDbfindTrigger', {
+	extend: 'Ext.form.ComboBox',
+	alias: 'widget.addmultidbfindtrigger',
+	triggerCls: 'x-form-search-trigger',
+    queryMode: 'local',
+    displayField: 'dispaly',
+    valueField: 'value',
+    triggerCls: 'x-form-search-trigger',
+    minChars:1, // 设置用户输入字符多少时触发查询
+    tpl: '',
+    enableKeyEvents:true,
+    initComponent:function() {
+        var me = this;
+        me.store=Ext.create('Ext.data.Store', {
+            fields: ['display','value'],
+            data : [{
+                'display':me.value,
+                'value':me.value
+            }]
+        });
+        this.callParent();
+    },
+    //输入值之后进行模糊查询
+    doQuery: function(queryString, forceAll, rawQuery) {
+        if(!this.fireEvent('beforequery', this)) {
+            return;
+        };
+    	queryString = queryString || '';
+    	var me = this;
+        me.judge(me);
+        var field=[];
+        var sfield='';
+        var dbfinds=me.dbfinds;
+        var dbtpls=me.dbtpls;
+        me.lastQueryValue=queryString;
+        if(queryString.trim()==''){
+            me.collapse( );
+        }else{
+            if(!dbfinds||!dbtpls){
+                me.collapse( );
+            }else{                   
+                //加载tpl模板
+                if(dbtpls.length>0){
+                    var span="";
+                    var width=0;
+                    for(var i=0;i<dbtpls.length;i++){
+                        if(i==0){
+                            span=span+'<span style="width:'+dbtpls[i].width+'px;overflow: hidden;white-space: nowrap;text-overflow: ellipsis;float:left;">{'+dbtpls[i].field+'}</span>';//display:block;
+                        }else{
+                            span=span+'<span style="padding:0 0 0 20px;width:'+dbtpls[i].width+'px;overflow: hidden;white-space: nowrap;text-overflow: ellipsis;float:left;">{'+dbtpls[i].field+'}</span>';
+                        }
+                        if(dbtpls[i].dbField=="true"){
+                            me.searchFieldArray=dbtpls[i].field;
+                        }
+                        width=width+dbtpls[i].width+20;
+                        field.push(dbtpls[i].field);
+                        sfield=sfield+dbtpls[i].field+',';
+                    }
+                    me.defaultListConfig.minWidth=width+10;
+                    me.defaultListConfig.maxHeight=210;
+                    me.defaultListConfig.autoScroll=true;
+                    me.searchField=sfield.substring(0,sfield.length-1);
+                    me.tpl=Ext.create('Ext.XTemplate',
+                            '<ul style="padding-left: 0px;"><tpl for=".">',
+                            '<li role="option" class="x-boundlist-item" style="list-style:none;">' ,
+                            '<div style="height:30px;">',
+                            ''+span+'',
+                            '</li>',
+                        '</tpl></ul>'
+                    );
+                    me.store.setFields(field);
+                }
+            }
+            //加载数据
+            var data,dbCondition=[];
+            if(me.dbfinds){
+                var dbtplcondition = "";
+                for (let index = 0; index < dbfinds.length; index++) {
+                    var item = dbfinds[index].from;
+                    if(!dbfinds[index].ignore){
+                        dbtplcondition+= "upper("+item+") like '%"+queryString.toUpperCase()+"%' or ";
+                    }
+                }
+                dbtplcondition = "(" + dbtplcondition.substring(0,dbtplcondition.length-4) + ")";
+                if(dbtplcondition.length>0){
+                    dbCondition = [{
+                        type: 'condition',
+                        value:dbtplcondition
+                    }];
+                }
+            }
+            //添加默认条件
+            if(me.defaultCondition) {
+                dbCondition.push({
+                    type: 'condition',
+                    value: me.defaultCondition
+                });
+            }
+            Ext.Ajax.request({
+                url: me.dataUrl,
+                params: {
+                    number: 1,
+                    size: 10,
+                    condition:JSON.stringify(dbCondition),
+                    page: 1,
+                    start: 0,
+                    limit: 10
+                },
+                method: 'GET',
+                success: function(response, opts) {
+                    data = Ext.decode(response.responseText);
+                    data = data.data?data.data.list:[];
+                    if(data!=null && data.length>0 && me.store && field.length>0){
+                        me.store.loadData(data,false);
+                        me.expand();
+                    }else{
+                        me.store.removeAll();
+                        me.collapse();
+                    }
+                },
+                failure: function(response, opts) {}
+            });                
+        }
+        return true;
+    },
+    onTriggerClick:function(f){
+        if(!this.fireEvent('beforetriggerclick', this)) {
+            return;
+        };
+        f.blur(f);
+        //判断dbfindtrigger归属
+        f.judge(f);
+        var panel = f.up('core-tab-panel'),panelEl;
+        if(!f.column&&f.ownerCt.ownerCt.id.indexOf('window-')>-1){
+            panelEl = f.ownerCt.ownerCt.getEl();
+        }else{
+            panelEl = panel.getEl()
+        }
+        var box = panelEl.getBox();
+        var height = box.height;
+        var width = box.width;
+        var win = panel.add(Ext.create('Ext.window.Window', {   
+            cls:'x-window-dbfind', 
+            trigger:f,
+            belong:f.ownerCt,  
+            modal:true,
+            height: height * 0.8,
+            width: width * 0.8,
+            title: '查找' + f.addTitle,
+            scrollable: true,
+            bodyPadding: 10,
+            constrain: true,
+            closable: true,
+            layout:'fit',
+            renderTo:Ext.getCmp('main-tab-panel').getActiveTab().getEl(),
+            items:[{
+                xtype:'addmultidbfindgridpanel',
+                columns: f.dbColumns,
+                dataUrl: f.dataUrl,
+                dbfinds: f.dbfinds,
+                belong: f.belong,
+                dbSearchFields:f.dbSearchFields?f.dbSearchFields:[],
+                dbfindtrigger:f
+            }]
+        }));
+        win.show();
+    },
+
+    listeners: {
+        // blur:function(f,e){
+        //     var me = f,data;
+        //     var dbfinds = me.dbfinds;
+        //     if(f.value&&f.value!=''){
+        //         //添加默认条件
+        //         var searchField = null;
+        //         var dbCondition = [];
+        //         if(me.defaultCondition) {
+        //             dbCondition.push({
+        //                 type: 'condition',
+        //                 value: me.defaultCondition
+        //             });
+        //         }
+        //         for (let index = 0; index < dbfinds.length; index++) {
+        //             var item = dbfinds[index].to;
+        //             if(item==me.name){
+        //                 searchField = dbfinds[index].from;
+        //             }
+        //         }
+        //         dbCondition.push({
+        //             type: 'condition',
+        //             value: searchField + " like '%"+me.value+"%'"
+        //         });
+        //         Ext.Ajax.request({
+        //             url: me.dataUrl,
+        //             async:false,
+        //             params: {
+        //                 number: 1,
+        //                 size: 1,
+        //                 condition:JSON.stringify(dbCondition),
+        //                 page: 1,
+        //                 start: 0,
+        //                 limit: 10
+        //             },
+        //             method: 'GET',
+        //             success: function(response, opts) {
+        //                 data = Ext.decode(response.responseText);
+        //                 data = data.data?data.data.list:[];
+        //             },
+        //             failure: function(response, opts) {}
+        //         }); 
+        //     }
+        //     if(!f.value||f.value==''||data.length>1||data.length==0){
+        //         if(dbfinds&&dbfinds.length>0){
+        //             if(me.belong=='grid'){
+        //                 for (let index = 0; index < dbfinds.length; index++) {
+        //                     var item = dbfinds[index];
+        //                     var rec = me.column.ownerCt.ownerCt.selModel.getLastSelected();
+        //                     var nowRec = me.column.ownerCt.ownerCt.store.getData().getByKey(rec.id);
+        //                     if(nowRec.get(item.to)&&nowRec.get(item.to)!=""){
+        //                         nowRec.set(item.to,null);
+        //                     }
+        //                     if(nowRec.modified){
+        //                         delete nowRec.modified[item.to];
+        //                     }
+        //                     if(JSON.stringify(nowRec.modified)=="{}"){
+        //                         nowRec.dirty = false
+        //                     }
+        //                     if(me.name==item.to){
+        //                         me.column.getEditor().setValue('');
+        //                     }
+        //                 }
+        //             }
+        //         }
+        //     }else if(data.length==1){
+        //         if(dbfinds&&dbfinds.length>0){
+        //             if(me.belong=='grid'){
+        //                 for (let index = 0; index < dbfinds.length; index++) {
+        //                     var item = dbfinds[index];
+        //                     var rec = me.column.ownerCt.ownerCt.selModel.getLastSelected();
+        //                     var nowRec = me.column.ownerCt.ownerCt.store.getData().getByKey(rec.id);
+        //                     nowRec.set(item.to,data[0][item.from]);
+        //                     if(me.name==item.to){
+        //                         me.column.getEditor().setValue(data[0][item.from]);
+        //                     }
+        //                 }
+        //             }
+        //         }
+        //     }
+        // },
+        select:function(combo,record,eOpts){
+            var me = combo;
+            var dbfinds = me.dbfinds;
+            if(dbfinds&&dbfinds.length>0){
+                if(me.belong=='grid'){
+                    for (let index = 0; index < dbfinds.length; index++) {
+                        var item = dbfinds[index];
+                        var rec = me.column.ownerCt.ownerCt.selModel.getLastSelected();
+                        var nowRec = me.column.ownerCt.ownerCt.store.getData().getByKey(rec.id);
+                        nowRec.set(item.to,record.get(item.from));
+                        if(me.name==item.to){
+                            me.column.getEditor().setValue(record.get(item.from));
+                        }
+                    }
+                }else if(me.belong=='form'){
+                    for (let index = 0; index < dbfinds.length; index++) {
+                        var item = dbfinds[index];
+                        var field = me.ownerCt.down('[name='+item.to+']');
+                        if(field){
+                            var val = record.get(item.from);
+                            if(field.xtype=='dbfindtrigger'){
+                                field.setRawValue(val);
+                                field.value = val;
+                                field.lastTriggerValue=val;
+                            }else{
+                                field.setValue(val);
+                            }    
+                        }
+                    }
+                }
+            }
+        }
+    },
+
+    judge:function(f){
+        if(f.ownerCt.xtype.trim().toUpperCase().indexOf('QUERYFORMPANEL')>-1){
+            f.belong = 'form';
+            return f.ownerCt.ownerCt
+        }else if(f.ownerCt.xtype.trim().toUpperCase().indexOf('FORMPANEL')>-1){
+            f.belong = 'form';
+            return f.ownerCt
+        }else if(f.column){
+            f.belong = 'grid';
+            return f.column.ownerCt.ownerCt.ownerCt
+        }
+    }
+});

+ 2 - 2
frontend/saas-web/app/view/core/dbfind/MultiDbfindTrigger.js

@@ -148,8 +148,8 @@ Ext.define('saas.view.core.dbfind.MultiDbfindTrigger', {
             trigger:f,
             belong:f.ownerCt,  
             modal:true,
-            height: '80%',
-            width: '80%',
+            height: height * 0.8,
+            width: width * 0.8,
             title: '查找' + f.addTitle,
             scrollable: true,
             bodyPadding: 10,

+ 105 - 0
frontend/saas-web/app/view/core/dbfind/types/ProductAddMultiDbfindTrigger.js

@@ -0,0 +1,105 @@
+/**
+ * 物料资料放大镜(多选)
+ */
+Ext.define('saas.view.core.dbfind.types.ProductAddMultiDbfindTrigger', {
+    extend: 'saas.view.core.dbfind.AddMultiDbfindTrigger',
+    xtype: 'productAddMultiDbfindTrigger',
+
+    //数据接口
+    dataUrl: '/api/document/product/list',
+    addXtype: 'document-product-formpanel',
+    addTitle: '物料资料',
+    //联想设置
+    dbtpls: [{
+        field: 'pr_code',
+        width: 150
+    }, {
+        field: 'pr_detail',
+        width: 200
+    }],
+    defaultCondition: "pr_statuscode='ENABLE'",
+    dbSearchFields: [{
+        emptyText: '输入物料编号、名称或规格',
+        width: 200,
+        xtype: "textfield",
+        name: "search",
+        allowBlank: true,
+        width:300,
+        getCondition: function (v) {
+            return "(upper(pr_code) like '%" + v.toUpperCase() + "%' or upper(pr_detail) like '%" + v.toUpperCase() + "%' or upper(pr_spec) like '%" + v.toUpperCase() + "%')";
+        }
+    }],
+    //窗口列设置
+    dbColumns: [{
+        text: "物料ID",
+        hidden: true,
+        dataIndex: "id"
+    }, {
+        text: "物料编号",       
+        dataIndex: "pr_code",
+        width: 150
+    },{
+        text: "类型",
+        dataIndex: "pr_kind",
+        width: 110
+    },{
+        text: "物料名称",
+        width: 200,
+        dataIndex: "pr_detail"
+    }, {
+        text : "型号", 
+        dataIndex : "pr_orispeccode", 
+        width : 150.0
+    }, {
+        text : "规格", 
+        dataIndex : "pr_spec", 
+        width : 150.0
+    },{
+        text: "品牌",
+        dataIndex: "pr_brand",
+        width: 110
+    },{
+        text: "库存",
+        dataIndex: "po_onhand",
+        width: 110,
+        xtype: 'numbercolumn',
+        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);
+        },
+    },{
+        text: "单位",
+        dataIndex: "pr_unit",
+        width: 80
+    }, {
+        text: "采购提前期",
+        dataIndex: "pr_leadtime",
+        hidden: true
+    }, {
+        text: "仓库id",
+        dataIndex: "pr_whid",
+        hidden: true
+    }, {
+        text: "仓库编号",
+        dataIndex: "pr_whcode",
+        hidden: true
+    }, {
+        text: "仓库",
+        dataIndex: "pr_whname",
+        width: 200,
+        hidden: true
+    }, {
+        text: "最新采购单价",
+        dataIndex: "pr_purcprice",
+        xtype: 'numbercolumn',
+        hidden:true
+    }, {
+        text: "最新出货单价",
+        dataIndex: "pr_saleprice",
+        xtype: 'numbercolumn',
+        hidden:true
+    }]
+
+});

+ 1 - 1
frontend/saas-web/app/view/core/dbfind/types/ProductDbfindTrigger.js

@@ -61,7 +61,7 @@ Ext.define('saas.view.core.dbfind.types.ProductDbfindTrigger', {
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     },{

+ 1 - 1
frontend/saas-web/app/view/core/dbfind/types/ProductMultiDbfindTrigger.js

@@ -68,7 +68,7 @@ Ext.define('saas.view.core.dbfind.types.ProductMultiDbfindTrigger', {
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
     },{

+ 1 - 1
frontend/saas-web/app/view/core/dbfind/types/VendorDbfindTrigger.js

@@ -61,7 +61,7 @@ Ext.define('saas.view.core.dbfind.types.VendorDbfindTrigger', {
             }
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {

+ 2 - 2
frontend/saas-web/app/view/core/report/ReportPanel.js

@@ -334,11 +334,11 @@ Ext.define('saas.view.core.report.ReportPanel', {
                     renderer: function (v) {
                         var arr = (v + '.').split('.');
                         var xr = (new Array(arr[1].length)).fill('0');
-                        var format = '0.' + xr.join();
+                        var format = '0.' + xr.join('');
                         return Ext.util.Format.number(v, format);
                     },
                     exportStyle:{
-                        format: 'Total',
+                        format: c.exportFormat || 'Total',
                         alignment: {
                             horizontal: 'Right'
                         }

+ 4 - 1
frontend/saas-web/app/view/core/report/ReportPanelController.js

@@ -37,7 +37,10 @@ Ext.define('saas.view.core.report.ReportPanelController', {
         grid.store.load(function(records, operation, success) {
             if(btn.cfg.isPrint){
                 me.printHtml(grid.getDocumentData(cfg));
-            }else  grid.saveDocumentAs(cfg);
+            }else  {
+                debugger;
+                grid.saveDocumentAs(cfg);
+            }
             grid.store.exportPageSize = null;
             grid.store.exportNumber = null;
             grid.store.load(function(records, operation, success) {

+ 1 - 1
frontend/saas-web/app/view/document/address/DataList.js

@@ -7,7 +7,7 @@ Ext.define('saas.view.document.address.DataList', {
     viewModel: 'document-address-datalist',
     defaultType:'address',
     windowType:'document-address-window',
-    _openUrl:'api/',
+    _openUrl:'/api/document/address/setDefault',
     tbar: ['->',{
         xtype:'button',
         text:'新增',

+ 2 - 2
frontend/saas-web/app/view/document/bankinformation/DataList.js

@@ -41,7 +41,7 @@ Ext.define('saas.view.document.bankinformation.DataList', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 },
                 flex: 1
@@ -52,7 +52,7 @@ Ext.define('saas.view.document.bankinformation.DataList', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 },
                 flex: 1

+ 2 - 2
frontend/saas-web/app/view/document/bankinformation/Window.js

@@ -26,7 +26,7 @@ Ext.define('saas.view.document.bankinformation.Window', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             },
             flex: 1
@@ -37,7 +37,7 @@ Ext.define('saas.view.document.bankinformation.Window', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             },
             flex: 1

+ 1 - 1
frontend/saas-web/app/view/document/bom/FormController.js

@@ -42,7 +42,7 @@ Ext.define('saas.view.document.bom.FormController', {
                     }) ;   
                 }
             },
-            'productMultiDbfindTrigger[name=bd_replace]':{
+            'productAddMultiDbfindTrigger[name=bd_replace]':{
                 beforerender:function(f){
                     Ext.apply(f,{
                         //放大镜赋值设置

+ 2 - 2
frontend/saas-web/app/view/document/bom/FormPanel.js

@@ -169,7 +169,7 @@ Ext.define('saas.view.document.bom.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length)).fill('0');
-                    var format = '0.' + xr.join();
+                    var format = '0.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             }, {
@@ -187,7 +187,7 @@ Ext.define('saas.view.document.bom.FormPanel', {
                     queryMode : "local", 
                     store : null, 
                     valueField : "value", 
-                    xtype : "productMultiDbfindTrigger"
+                    xtype : "productAddMultiDbfindTrigger"
                 }
             }, {
                 text : "备注", 

+ 1 - 1
frontend/saas-web/app/view/document/customer/BasePanel.js

@@ -119,7 +119,7 @@ Ext.define('saas.view.document.customer.BasePanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {

+ 4 - 4
frontend/saas-web/app/view/document/customer/FormPanel.js

@@ -102,7 +102,7 @@ Ext.define('saas.view.document.customer.FormPanel', {
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
     },{ 
@@ -117,7 +117,7 @@ Ext.define('saas.view.document.customer.FormPanel', {
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },   
     },{
@@ -149,7 +149,7 @@ Ext.define('saas.view.document.customer.FormPanel', {
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
     }, {
@@ -203,7 +203,7 @@ Ext.define('saas.view.document.customer.FormPanel', {
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
     },{

+ 4 - 4
frontend/saas-web/app/view/document/product/BasePanel.js

@@ -102,7 +102,7 @@ Ext.define('saas.view.document.product.BasePanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                var format = '0.' + xr.join();
+                var format = '0.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         },{
@@ -117,7 +117,7 @@ Ext.define('saas.view.document.product.BasePanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {
@@ -128,7 +128,7 @@ Ext.define('saas.view.document.product.BasePanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-                var format = '0.' + xr.join();
+                var format = '0.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {
@@ -139,7 +139,7 @@ Ext.define('saas.view.document.product.BasePanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-                var format = '0.' + xr.join();
+                var format = '0.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {

+ 5 - 5
frontend/saas-web/app/view/document/product/FormPanel.js

@@ -272,14 +272,14 @@ Ext.define('saas.view.document.product.FormPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                var format = '0.' + xr.join();
+                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 > 3 ? 3 : arr[1].length)).fill('0');
-                var format = '0.' + xr.join();
+                var format = '0.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         },
@@ -301,7 +301,7 @@ Ext.define('saas.view.document.product.FormPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-                var format = '0.' + xr.join();
+                var format = '0.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             },
         },
@@ -315,14 +315,14 @@ Ext.define('saas.view.document.product.FormPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                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 > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }]

+ 1 - 1
frontend/saas-web/app/view/document/vendor/BasePanel.js

@@ -113,7 +113,7 @@ Ext.define('saas.view.document.vendor.BasePanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {

+ 3 - 3
frontend/saas-web/app/view/document/vendor/FormPanel.js

@@ -108,7 +108,7 @@ Ext.define('saas.view.document.vendor.FormPanel', {
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
     },{ 
@@ -123,7 +123,7 @@ Ext.define('saas.view.document.vendor.FormPanel', {
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },    
     },{
@@ -191,7 +191,7 @@ Ext.define('saas.view.document.vendor.FormPanel', {
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },  
     },

+ 3 - 3
frontend/saas-web/app/view/home/infoCardList/Payment.js

@@ -75,7 +75,7 @@ Ext.define('saas.view.home.infoCardList.Payment', {
         renderer: function (v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
     }, {
@@ -89,7 +89,7 @@ Ext.define('saas.view.home.infoCardList.Payment', {
         renderer: function (v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
         width: 110
@@ -109,7 +109,7 @@ Ext.define('saas.view.home.infoCardList.Payment', {
         renderer: function (v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
     }],

+ 3 - 3
frontend/saas-web/app/view/home/infoCardList/PurchaseIn.js

@@ -71,7 +71,7 @@ Ext.define('saas.view.home.infoCardList.PurchaseIn', {
         renderer: function (v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
     }, {
@@ -87,7 +87,7 @@ Ext.define('saas.view.home.infoCardList.PurchaseIn', {
         renderer: function (v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
@@ -106,7 +106,7 @@ Ext.define('saas.view.home.infoCardList.PurchaseIn', {
         renderer: function (v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {

+ 4 - 4
frontend/saas-web/app/view/home/infoCardList/Recment.js

@@ -76,7 +76,7 @@ Ext.define('saas.view.home.infoCardList.Recment', {
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
@@ -87,7 +87,7 @@ Ext.define('saas.view.home.infoCardList.Recment', {
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
@@ -98,7 +98,7 @@ Ext.define('saas.view.home.infoCardList.Recment', {
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
@@ -117,7 +117,7 @@ Ext.define('saas.view.home.infoCardList.Recment', {
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {

+ 4 - 4
frontend/saas-web/app/view/home/infoCardList/SaleOut.js

@@ -67,7 +67,7 @@ Ext.define('saas.view.home.infoCardList.SaleOut', {
         renderer: function (v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
     }, {
@@ -78,7 +78,7 @@ Ext.define('saas.view.home.infoCardList.SaleOut', {
         renderer: function (v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
     }, {
@@ -89,7 +89,7 @@ Ext.define('saas.view.home.infoCardList.SaleOut', {
         renderer: function (v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
     }, {
@@ -100,7 +100,7 @@ Ext.define('saas.view.home.infoCardList.SaleOut', {
         renderer: function (v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
     }, {

+ 3 - 3
frontend/saas-web/app/view/home/infoCardList/UnauditCheckIn.js

@@ -75,7 +75,7 @@ Ext.define('saas.view.home.infoCardList.UnauditCheckIn', {
         renderer: function (v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
     }, {
@@ -89,7 +89,7 @@ Ext.define('saas.view.home.infoCardList.UnauditCheckIn', {
         renderer: function (v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
         width: 110
@@ -109,7 +109,7 @@ Ext.define('saas.view.home.infoCardList.UnauditCheckIn', {
         renderer: function (v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
     }],

+ 4 - 4
frontend/saas-web/app/view/home/infoCardList/UnauditSaleOut.js

@@ -73,7 +73,7 @@ Ext.define('saas.view.home.infoCardList.UnauditSaleOut', {
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
@@ -84,7 +84,7 @@ Ext.define('saas.view.home.infoCardList.UnauditSaleOut', {
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
@@ -95,7 +95,7 @@ Ext.define('saas.view.home.infoCardList.UnauditSaleOut', {
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
@@ -114,7 +114,7 @@ Ext.define('saas.view.home.infoCardList.UnauditSaleOut', {
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {

+ 2 - 2
frontend/saas-web/app/view/money/fundtransfer/FormPanel.js

@@ -134,14 +134,14 @@ Ext.define('saas.view.money.fundtransfer.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    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 > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             }, {

+ 1 - 1
frontend/saas-web/app/view/money/fundtransfer/QueryPanel.js

@@ -106,7 +106,7 @@ Ext.define('saas.view.money.fundtransfer.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             },
         }, {

+ 2 - 2
frontend/saas-web/app/view/money/othreceipts/FormPanel.js

@@ -125,14 +125,14 @@ Ext.define('saas.view.money.othreceipts.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    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 > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             }, {

+ 1 - 1
frontend/saas-web/app/view/money/othreceipts/FormPanelController.js

@@ -59,7 +59,7 @@ Ext.define('saas.view.money.othreceipts.FormPanelController', {
                                 }
                                 var arr = (v + '.').split('.');
                                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                                var format = '0.' + xr.join();
+                                var format = '0.' + xr.join('');
                                 return Ext.util.Format.number(v, format);
                             }
                         }, {

+ 2 - 2
frontend/saas-web/app/view/money/othreceipts/QueryPanel.js

@@ -124,7 +124,7 @@ Ext.define('saas.view.money.othreceipts.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {
@@ -174,7 +174,7 @@ Ext.define('saas.view.money.othreceipts.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {

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

@@ -125,14 +125,14 @@ Ext.define('saas.view.money.othspendings.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    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 > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             }, {

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

@@ -37,7 +37,7 @@ Ext.define('saas.view.money.othspendings.FormPanelController', {
                                 }
                                 var arr = (v + '.').split('.');
                                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                                var format = '0.' + xr.join();
+                                var format = '0.' + xr.join('');
                                 return Ext.util.Format.number(v, format);
                             }
                         }, {
@@ -51,7 +51,7 @@ Ext.define('saas.view.money.othspendings.FormPanelController', {
                                 }
                                 var arr = (v + '.').split('.');
                                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                                var format = '0.' + xr.join();
+                                var format = '0.' + xr.join('');
                                 return Ext.util.Format.number(v, format);
                             }
                         },{

+ 2 - 2
frontend/saas-web/app/view/money/othspendings/QueryPanel.js

@@ -121,7 +121,7 @@ Ext.define('saas.view.money.othspendings.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {
@@ -171,7 +171,7 @@ Ext.define('saas.view.money.othspendings.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {

+ 10 - 10
frontend/saas-web/app/view/money/payBalance/FormPanel.js

@@ -131,14 +131,14 @@ Ext.define('saas.view.money.payBalance.FormPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                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 > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {
@@ -235,14 +235,14 @@ Ext.define('saas.view.money.payBalance.FormPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                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 > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {
@@ -254,14 +254,14 @@ Ext.define('saas.view.money.payBalance.FormPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                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 > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {
@@ -273,14 +273,14 @@ Ext.define('saas.view.money.payBalance.FormPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                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 > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {
@@ -296,14 +296,14 @@ Ext.define('saas.view.money.payBalance.FormPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                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 > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {

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

@@ -38,7 +38,7 @@ Ext.define('saas.view.money.payBalance.FormPanelController', {
                                 }
                                 var arr = (v + '.').split('.');
                                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                                var format = '0.' + xr.join();
+                                var format = '0.' + xr.join('');
                                 return Ext.util.Format.number(v, format);
                             }
                         }, {
@@ -52,7 +52,7 @@ Ext.define('saas.view.money.payBalance.FormPanelController', {
                                 }
                                 var arr = (v + '.').split('.');
                                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                                var format = '0.' + xr.join();
+                                var format = '0.' + xr.join('');
                                 return Ext.util.Format.number(v, format);
                             }
                         },{

+ 1 - 1
frontend/saas-web/app/view/money/payBalance/QueryPanel.js

@@ -141,7 +141,7 @@ Ext.define('saas.view.money.paybalance.QueryPanel', {
             renderer: function (v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             },
         } ,{

+ 10 - 10
frontend/saas-web/app/view/money/recBalance/FormPanel.js

@@ -135,14 +135,14 @@ Ext.define('saas.view.money.recBalance.FormPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                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 > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {
@@ -242,14 +242,14 @@ Ext.define('saas.view.money.recBalance.FormPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                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 > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {
@@ -261,14 +261,14 @@ Ext.define('saas.view.money.recBalance.FormPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                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 > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {
@@ -280,14 +280,14 @@ Ext.define('saas.view.money.recBalance.FormPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                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 > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {
@@ -303,14 +303,14 @@ Ext.define('saas.view.money.recBalance.FormPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                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 > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }]

+ 1 - 1
frontend/saas-web/app/view/money/recBalance/FormPanelController.js

@@ -59,7 +59,7 @@ Ext.define('saas.view.money.recBalance.FormPanelController', {
                                 }
                                 var arr = (v + '.').split('.');
                                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                                var format = '0.' + xr.join();
+                                var format = '0.' + xr.join('');
                                 return Ext.util.Format.number(v, format);
                             }
                         }, {

+ 1 - 1
frontend/saas-web/app/view/money/recBalance/QueryPanel.js

@@ -132,7 +132,7 @@ Ext.define('saas.view.money.recBalance.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {

+ 7 - 5
frontend/saas-web/app/view/money/report/AccountBalance.js

@@ -46,37 +46,39 @@ Ext.define('saas.view.money.report.AccountBalance', {
     }, {
         text: '收入',
         dataIndex: 'inamount',
+        exportFormat: 'Amount',
         xtype: 'numbercolumn',
         width: 110,
         renderer: function (v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            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 > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '支出',
         dataIndex: 'outamount',
         xtype: 'numbercolumn',
+        exportFormat: 'Amount',
         width: 110,
         renderer: function (v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            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 > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     },
@@ -88,7 +90,7 @@ Ext.define('saas.view.money.report.AccountBalance', {
     //     renderer: function (v) {
     //         var arr = (v + '.').split('.');
     //         var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-    //         var format = '0,000.' + xr.join();
+    //         var format = '0,000.' + xr.join('');
     //         return Ext.util.Format.number(v, format);
     //     }
     // },

+ 4 - 2
frontend/saas-web/app/view/money/report/AccountDetails.js

@@ -89,23 +89,25 @@ Ext.define('saas.view.money.report.AccountDetails', {
     }, {
         text: '本期核销金额',
         dataIndex: 'sl_amount',
+        exportFormat: 'Amount',
         xtype: 'numbercolumn',
         width: 130,
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '总金额',
         dataIndex: 'total',
         xtype: 'numbercolumn',
+        exportFormat: 'Amount',
         width: 110,
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }],

+ 13 - 9
frontend/saas-web/app/view/money/report/CustomerCheck.js

@@ -74,28 +74,31 @@ Ext.define('saas.view.money.report.CustomerCheckCheck', {
     }, {
         text: '数量',
         xtype: 'numbercolumn',
+        exportFormat: 'Quantity',
         dataIndex: 'qty',
         width: 110,
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '单价',
         dataIndex: 'pd_orderprice',
+        exportFormat: 'Price',
         xtype: 'numbercolumn',
         width: 110,
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '税率',
         dataIndex: 'pd_taxrate',
+        exportFormat: 'Integer',
         xtype: 'numbercolumn',
         width: 80,
         renderer: function(v) {
@@ -104,50 +107,51 @@ Ext.define('saas.view.money.report.CustomerCheckCheck', {
     }, {
         text: '金额',
         xtype: 'numbercolumn',
+        exportFormat: 'Amount',
         width: 110,
         dataIndex: 'pd_total',
-        xtype: 'numbercolumn',
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            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 > 2 ? 2 : arr[1].length)).fill('0');
-        //     var format = '0,000.' + xr.join();
+        //     var format = '0,000.' + xr.join('');
         //     return Ext.util.Format.number(v, format);
         // }
     }, {
         text: '不含税单价',
         width: 110,
         dataIndex: 'pd_netprice',
+        exportFormat: 'Price',
         xtype: 'numbercolumn',
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '不含税金额',
         width: 110,
         xtype: 'numbercolumn',
+        exportFormat: 'Amount',
         dataIndex: 'pd_nettotal',
-        xtype: 'numbercolumn',
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            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 > 2 ? 2 : arr[1].length)).fill('0');
-        //     var format = '0,000.' + xr.join();
+        //     var format = '0,000.' + xr.join('');
         //     return Ext.util.Format.number(v, format);
         // }
     }, {

+ 6 - 4
frontend/saas-web/app/view/money/report/OtherIODetail.js

@@ -82,35 +82,37 @@ Ext.define('saas.view.money.report.OtherIODetail', {
     }, {
         text: '收入',
         dataIndex: 'bl_income',
+        exportFormat: 'Amount',
         width: 150,
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            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 > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '支出',
         dataIndex: 'bl_spending',
+        exportFormat: 'Amount',
         width: 150,
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            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 > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {

+ 9 - 9
frontend/saas-web/app/view/money/report/PayDetail.js

@@ -61,58 +61,58 @@ Ext.define('saas.view.money.report.PayDetail', {
     },{
         text: '增加应付',
         xtype: 'numbercolumn',
+        exportFormat: 'Amount',
         dataIndex: 'pd_addpay',
-        xtype: 'numbercolumn',
         width: 180,
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            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 > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '增加预付',
         xtype: 'numbercolumn',
+        exportFormat: 'Amount',
         dataIndex: 'pd_addpre',
-        xtype: 'numbercolumn',
         width: 180,
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            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 > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '应付余额',
         xtype: 'numbercolumn',
+        exportFormat: 'Amount',
         dataIndex: 'pd_remain',
-        xtype: 'numbercolumn',
         width: 110,
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
         summaryType: 'last',
         summaryRenderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
         mySummaryRenderer: function(grid, column, datas) {

+ 10 - 6
frontend/saas-web/app/view/money/report/ProfitDetail.js

@@ -53,59 +53,63 @@ Ext.define('saas.view.money.report.ProfitDetail', {
     }, {
         text: '销售总额',
         dataIndex: 'saamount',
+        exportFormat: 'Amount',
         xtype: 'numbercolumn',
         width: 110,
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            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 > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '不含税金额',
         dataIndex: 'netamount',
+        exportFormat: 'Amount',
         xtype: 'numbercolumn',
         width: 110,
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
     }, {
         text: '成本金额',
         dataIndex: 'costamount',
+        exportFormat: 'Amount',
         xtype: 'numbercolumn',
         width: 110,
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
     }, {
         text: '毛利润',
         dataIndex: 'profit',
+        exportFormat: 'Amount',
         xtype: 'numbercolumn',
         width: 110,
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            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 > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {

+ 9 - 8
frontend/saas-web/app/view/money/report/RecDetail.js

@@ -68,57 +68,58 @@ Ext.define('saas.view.money.report.RecDetail', {
     },{
         text:'增加应收',
         dataIndex:'rd_addrec',
+        exportFormat: 'Amount',
         xtype: 'numbercolumn',
         width: 110,
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            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 > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     },{
         text:'增加预收',
         xtype: 'numbercolumn',
+        exportFormat: 'Amount',
         dataIndex:'rd_addpre',
-        xtype: 'numbercolumn',
         width: 180,
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            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 > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     },{
         text: '应收余额',
         xtype: 'numbercolumn',
+        exportFormat: 'Amount',
         dataIndex: 'rd_remain',
-        xtype: 'numbercolumn',
         width: 110,
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
         summaryType: 'last',
         summaryRenderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
         mySummaryRenderer: function(grid, column, datas) {

+ 14 - 8
frontend/saas-web/app/view/money/report/TotalPayDetail.js

@@ -44,81 +44,87 @@ Ext.define('saas.view.money.report.TotalPayDetail', {
     }, {
         text: '期初预付',
         xtype: 'numbercolumn',
+        exportFormat: 'Amount',
         dataIndex: 'vm_beginpreamount',
         width: 150,
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     },{
         text: '期初应付',
         xtype: 'numbercolumn',
+        exportFormat: 'Amount',
         dataIndex: 'vm_beginamount',
         width: 110,
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '本期应付',
         xtype: 'numbercolumn',
+        exportFormat: 'Amount',
         dataIndex: 'vm_nowamount',
         width: 110,
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '本期核销',
         xtype: 'numbercolumn',
+        exportFormat: 'Amount',
         dataIndex: 'vm_nowpayamount',
         width: 110,
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '预付余额',
         dataIndex: 'vm_endpreamount',
+        exportFormat: 'Amount',
         xtype: 'numbercolumn',
         width: 110,
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            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 > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     },{
         text: '应付余额',
         dataIndex: 'vm_endamount',
+        exportFormat: 'Amount',
         xtype: 'numbercolumn',
         width: 110,
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            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 > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {

+ 13 - 7
frontend/saas-web/app/view/money/report/TotalRecDetail.js

@@ -44,74 +44,80 @@ Ext.define('saas.view.money.report.TotalRecDetail', {
     }, {
         text: '期初预收',
         dataIndex: 'cm_beginpreamount',
+        exportFormat: 'Amount',
         xtype: 'numbercolumn',
         width: 150,
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     },{
         text: '期初应收',
         dataIndex: 'cm_beginamount',
+        exportFormat: 'Amount',
         xtype: 'numbercolumn',
         width: 150,
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '本期应收',
         xtype: 'numbercolumn',
+        exportFormat: 'Amount',
         dataIndex: 'cm_nowamount',
         width: 150,
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '本期核销',
         xtype: 'numbercolumn',
+        exportFormat: 'Amount',
         dataIndex: 'cm_nowpayamount',
         width: 150,
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '预收余额',
         xtype: 'numbercolumn',
+        exportFormat: 'Amount',
         dataIndex: 'cm_endpreamount',
         width: 150,
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '应收余额',
         dataIndex: 'cm_endamount',
+        exportFormat: 'Amount',
         xtype: 'numbercolumn',
         width: 150,
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            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 > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {

+ 12 - 7
frontend/saas-web/app/view/money/report/VendorCheck.js

@@ -84,28 +84,31 @@ Ext.define('saas.view.money.report.VendorCheck', {
     }, {
         text: '数量',
         dataIndex: 'qty',
+        exportFormat: 'Quantity',
         xtype: 'numbercolumn',
         width: 110,
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '单价',
         dataIndex: 'pd_orderprice',
+        exportFormat: 'Price',
         xtype: 'numbercolumn',
         width: 110,
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '税率',
         dataIndex: 'pd_taxrate',
+        exportFormat: 'Integer',
         xtype: 'numbercolumn',
         width: 80,
         renderer: function(v) {
@@ -114,42 +117,44 @@ Ext.define('saas.view.money.report.VendorCheck', {
     }, {
         text: '金额',
         xtype: 'numbercolumn',
+        exportFormat: 'Amount',
         dataIndex: 'pd_total',
-        xtype: 'numbercolumn',
         width: 110,
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            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 > 2 ? 2 : arr[1].length)).fill('0');
-        //     var format = '0,000.' + xr.join();
+        //     var format = '0,000.' + xr.join('');
         //     return Ext.util.Format.number(v, format);
         // }
     }, {
         text: '不含税单价',
         dataIndex: 'pd_netprice',
+        exportFormat: 'Price',
         xtype: 'numbercolumn',
         width: 110,
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '不含税金额',
         dataIndex: 'pd_nettotal',
+        exportFormat: 'Amount',
         xtype: 'numbercolumn',
         width: 110,
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
     }, {

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

@@ -108,14 +108,14 @@ Ext.define('saas.view.money.verification.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    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 > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             }, {
@@ -127,14 +127,14 @@ Ext.define('saas.view.money.verification.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    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 > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             }, {
@@ -146,14 +146,14 @@ Ext.define('saas.view.money.verification.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    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 > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             }, {
@@ -169,14 +169,14 @@ Ext.define('saas.view.money.verification.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    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 > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             }]
@@ -230,14 +230,14 @@ Ext.define('saas.view.money.verification.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    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 > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             }, {
@@ -249,14 +249,14 @@ Ext.define('saas.view.money.verification.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    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 > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             }, {
@@ -268,14 +268,14 @@ Ext.define('saas.view.money.verification.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    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 > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             }, {
@@ -291,14 +291,14 @@ Ext.define('saas.view.money.verification.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    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 > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             }]

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

@@ -60,7 +60,7 @@ Ext.define('saas.view.money.verification.FormPanelController', {
                                 }
                                 var arr = (v + '.').split('.');
                                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                                var format = '0.' + xr.join();
+                                var format = '0.' + xr.join('');
                                 return Ext.util.Format.number(v, format);
                             }
                         }, {
@@ -148,7 +148,7 @@ Ext.define('saas.view.money.verification.FormPanelController', {
                                 }
                                 var arr = (v + '.').split('.');
                                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                                var format = '0.' + xr.join();
+                                var format = '0.' + xr.join('');
                                 return Ext.util.Format.number(v, format);
                             }
                         }, {
@@ -214,7 +214,7 @@ Ext.define('saas.view.money.verification.FormPanelController', {
                                 }
                                 var arr = (v + '.').split('.');
                                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                                var format = '0.' + xr.join();
+                                var format = '0.' + xr.join('');
                                 return Ext.util.Format.number(v, format);
                             }
                         }, {
@@ -228,7 +228,7 @@ Ext.define('saas.view.money.verification.FormPanelController', {
                                 }
                                 var arr = (v + '.').split('.');
                                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                                var format = '0.' + xr.join();
+                                var format = '0.' + xr.join('');
                                 return Ext.util.Format.number(v, format);
                             }
                         },{
@@ -301,7 +301,7 @@ Ext.define('saas.view.money.verification.FormPanelController', {
                                 }
                                 var arr = (v + '.').split('.');
                                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                                var format = '0.' + xr.join();
+                                var format = '0.' + xr.join('');
                                 return Ext.util.Format.number(v, format);
                             }
                         }, {
@@ -315,7 +315,7 @@ Ext.define('saas.view.money.verification.FormPanelController', {
                                 }
                                 var arr = (v + '.').split('.');
                                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                                var format = '0.' + xr.join();
+                                var format = '0.' + xr.join('');
                                 return Ext.util.Format.number(v, format);
                             }
                         },{

+ 1 - 1
frontend/saas-web/app/view/money/verification/QueryPanel.js

@@ -126,7 +126,7 @@ Ext.define('saas.view.money.verification.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }]

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

@@ -145,14 +145,14 @@ Ext.define('saas.view.purchase.purchase.FormPanel', {
                         renderer : function(v) {
                             var arr = (v + '.').split('.');
                             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                            var format = '0.' + xr.join();
+                            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 > 3 ? 3 : arr[1].length)).fill('0');
-                            var format = '0.' + xr.join();
+                            var format = '0.' + xr.join('');
                             return Ext.util.Format.number(v, format);
                         }
                     },
@@ -169,7 +169,7 @@ Ext.define('saas.view.purchase.purchase.FormPanel', {
                         renderer : function(v) {
                             var arr = (v + '.').split('.');
                             var xr = (new Array(arr[1].length > 8 ? 8 :(arr[1].length < 2? 2 : arr[1].length))).fill('0');
-                            var format = '0,000.' + xr.join();
+                            var format = '0,000.' + xr.join('');
                             return Ext.util.Format.number(v, format);
                         },
                     },
@@ -187,14 +187,14 @@ Ext.define('saas.view.purchase.purchase.FormPanel', {
                         renderer : function(v) {
                             var arr = (v + '.').split('.');
                             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                            var format = '0.' + xr.join();
+                            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 > 3 ? 3 : arr[1].length)).fill('0');
-                            var format = '0.' + xr.join();
+                            var format = '0.' + xr.join('');
                             return Ext.util.Format.number(v, format);
                         }
                     }, 
@@ -236,14 +236,14 @@ Ext.define('saas.view.purchase.purchase.FormPanel', {
                         renderer : function(v) {
                             var arr = (v + '.').split('.');
                             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                            var format = '0,000.' + xr.join();
+                            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 > 2 ? 2 : arr[1].length)).fill('0');
-                            var format = '0,000.' + xr.join();
+                            var format = '0,000.' + xr.join('');
                             return Ext.util.Format.number(v, format);
                         }
                     }, 
@@ -260,14 +260,14 @@ Ext.define('saas.view.purchase.purchase.FormPanel', {
                         renderer : function(v) {
                             var arr = (v + '.').split('.');
                             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                            var format = '0,000.' + xr.join();
+                            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 > 2 ? 2 : arr[1].length)).fill('0');
-                            var format = '0,000.' + xr.join();
+                            var format = '0,000.' + xr.join('');
                             return Ext.util.Format.number(v, format);
                         }
                     },

+ 22 - 0
frontend/saas-web/app/view/purchase/purchase/FormPanelController.js

@@ -62,6 +62,28 @@ Ext.define('saas.view.purchase.purchase.FormPanelController', {
 
                 }
             },
+            'remotecombo[name=pu_shipaddresscode]':{
+                afterrender:function(f){
+                    if(f.ownerCt.initId==0){
+                        //读取默认地址
+                        saas.util.BaseUtil.request({
+                            url: '/api/document/address/getDefault',
+                            method: 'GET',
+                        })
+                        .then(function (localJson) {
+                            var data = localJson.data;
+                            if(data&&data.ad_address){
+                                f.setValue(data.ad_address)
+                            }else{
+                                saas.util.BaseUtil.showErrorToast('未设置默认采购交货地址,维护后新增会自动给采购交货地址赋默认值');
+                            }
+                        })
+                        .catch(function (res) {
+                            saas.util.BaseUtil.showErrorToast('获取默认采购交货地址失败' + res.message);
+                        });
+                    }
+                }
+            }
         });
     },
 

+ 3 - 3
frontend/saas-web/app/view/purchase/purchase/QueryPanel.js

@@ -207,7 +207,7 @@ Ext.define('saas.view.purchase.purchase.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             },
         }, {
@@ -223,7 +223,7 @@ Ext.define('saas.view.purchase.purchase.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {
@@ -242,7 +242,7 @@ Ext.define('saas.view.purchase.purchase.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         },{

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

@@ -169,14 +169,14 @@ Ext.define('saas.view.purchase.purchaseIn.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                    var format = '0.' + xr.join();
+                    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 > 3 ? 3 : arr[1].length)).fill('0');
-                    var format = '0.' + xr.join();
+                    var format = '0.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             }, {
@@ -192,14 +192,14 @@ Ext.define('saas.view.purchase.purchaseIn.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                    var format = '0.' + xr.join();
+                    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 > 3 ? 3 : arr[1].length)).fill('0');
-                    var format = '0.' + xr.join();
+                    var format = '0.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             },{
@@ -246,7 +246,7 @@ Ext.define('saas.view.purchase.purchaseIn.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 },
             }, {
@@ -276,14 +276,14 @@ Ext.define('saas.view.purchase.purchaseIn.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    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 > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             },
@@ -300,14 +300,14 @@ Ext.define('saas.view.purchase.purchaseIn.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    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 > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             },

+ 3 - 3
frontend/saas-web/app/view/purchase/purchaseIn/QueryPanel.js

@@ -216,7 +216,7 @@ Ext.define('saas.view.purchase.purchaseIn.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             },
         },{
@@ -230,7 +230,7 @@ Ext.define('saas.view.purchase.purchaseIn.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             },            
             width: 110
@@ -250,7 +250,7 @@ Ext.define('saas.view.purchase.purchaseIn.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             },
         }]

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

@@ -164,14 +164,14 @@ Ext.define('saas.view.purchase.purchaseOut.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                    var format = '0.' + xr.join();
+                    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 > 3 ? 3 : arr[1].length)).fill('0');
-                    var format = '0.' + xr.join();
+                    var format = '0.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             }, {
@@ -215,7 +215,7 @@ Ext.define('saas.view.purchase.purchaseOut.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 },
             }, {
@@ -241,14 +241,14 @@ Ext.define('saas.view.purchase.purchaseOut.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    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 > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             },
@@ -260,14 +260,14 @@ Ext.define('saas.view.purchase.purchaseOut.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    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 > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             }, {

+ 3 - 3
frontend/saas-web/app/view/purchase/purchaseOut/QueryPanel.js

@@ -215,7 +215,7 @@ Ext.define('saas.view.purchase.purchaseOut.QueryPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 },
             },{
@@ -229,7 +229,7 @@ Ext.define('saas.view.purchase.purchaseOut.QueryPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 },            
                 width: 110
@@ -249,7 +249,7 @@ Ext.define('saas.view.purchase.purchaseOut.QueryPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 },
             }]

+ 19 - 10
frontend/saas-web/app/view/purchase/report/Purchase.js

@@ -72,6 +72,7 @@ Ext.define('saas.view.purchase.report.Purchase', {
     }, {
         text: '序号',
         dataIndex: 'pd_detno',
+        exportFormat: 'Integer',
         xtype: 'numbercolumn',
         width: 80
     }, {
@@ -98,34 +99,37 @@ Ext.define('saas.view.purchase.report.Purchase', {
         text: '采购数量',
         dataIndex: 'pd_qty',
         xtype: 'numbercolumn',
+        exportFormat: 'Quantity',
         width: 110,
         summaryType: 'sum',
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
         summaryRenderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '单价',
         dataIndex: 'pd_price',
+        exportFormat: 'Price',
         width: 110,
         xtype: 'numbercolumn',
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '税率',
         dataIndex: 'pd_taxrate',
+        exportFormat: 'Integer',
         width: 80,
         xtype: 'numbercolumn',
         renderer: function(v) {
@@ -134,70 +138,75 @@ Ext.define('saas.view.purchase.report.Purchase', {
     }, {
         text: '金额',
         dataIndex: 'pd_total',
+        exportFormat: 'Amount',
         width: 110,
         xtype: 'numbercolumn',
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            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 > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '不含税单价',
         dataIndex: 'pd_taxprice',
+        exportFormat: 'Price',
         width: 110,
         xtype: 'numbercolumn',
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '不含税金额',
+        exportFormat: 'Amount',
         width: 110,
         dataIndex: 'pd_taxtotal',
         xtype: 'numbercolumn',
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '收货数量',
         dataIndex: 'pd_acceptqty',
+        exportFormat: 'Quantity',
         width: 110,
         xtype: 'numbercolumn',
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            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 > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '收货金额',
         dataIndex: 'pd_accepttotal',
+        exportFormat: 'Amount',
         width: 110,
         xtype: 'numbercolumn',
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
 

+ 8 - 7
frontend/saas-web/app/view/purchase/report/PurchasePay.js

@@ -64,45 +64,46 @@ Ext.define('saas.view.purchase.report.PurchasePay', {
     }, {//∑求和
         text: '采购金额',
         xtype: 'numbercolumn',
+        exportFormat: 'Amount',
         dataIndex: 'pbd_amount',
-        xtype: 'numbercolumn',
         width: 110,
         summaryType: 'sum',
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
         summaryRenderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {//∑求和
         text: '本次付款',
         dataIndex: 'pbd_nowbalance',
+        exportFormat: 'Amount',
         xtype: 'numbercolumn',
         width: 110,
         summaryType: 'sum',
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         },
         summaryRenderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '应付余额',
         xtype: 'numbercolumn',
+        exportFormat: 'Amount',
         dataIndex: 'pb_pbdamount',
-        xtype: 'numbercolumn',
         width: 110,
         hidden:true
     }, {
@@ -114,7 +115,7 @@ Ext.define('saas.view.purchase.report.PurchasePay', {
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {

+ 16 - 11
frontend/saas-web/app/view/sale/report/Sale.js

@@ -107,43 +107,47 @@ Ext.define('saas.view.sale.report.Sale', {
     }, {//∑数量
         text: '数量',
         dataIndex: 'sd_qty',
+        exportFormat: 'Quantity',
         xtype: 'numbercolumn',
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            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 > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '单价',
         dataIndex: 'sd_price',
+        exportFormat: 'Price',
         xtype: 'numbercolumn',
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '不含税单价',
         dataIndex: 'sd_netprice',
+        exportFormat: 'Price',
         xtype: 'numbercolumn',
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '税率',
         dataIndex: 'sd_taxrate',
+        exportFormat: 'Integer',
         width: 80,
         xtype: 'numbercolumn',
         renderer : function(v) {
@@ -152,48 +156,49 @@ Ext.define('saas.view.sale.report.Sale', {
     }, {//∑金额
         text: '金额',
         xtype: 'numbercolumn',
+        exportFormat: 'Amount',
         dataIndex: 'sd_total',
-        xtype: 'numbercolumn',
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            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 > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {//∑不含税金额
         text: '不含税金额',
         xtype: 'numbercolumn',
+        exportFormat: 'Amount',
         dataIndex: 'sd_nettotal',
-        xtype: 'numbercolumn',
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            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 > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             console.log(v, format, Ext.util.Format.number(v, format));
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '出货数量',
         dataIndex: 'sd_sendqty',
+        exportFormat: 'Quantity',
         xtype: 'numbercolumn',
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {

+ 15 - 8
frontend/saas-web/app/view/sale/report/SaleProfit.js

@@ -50,7 +50,7 @@ Ext.define('saas.view.sale.report.SaleProfit', {
     }, {
         text: '单据日期',
         xtype: 'datecolumn',
-        dataIndex: 'sa_date',
+        dataIndex: 'pi_date',
         width: 110
     }, {
         text: '单据编号',
@@ -83,28 +83,31 @@ Ext.define('saas.view.sale.report.SaleProfit', {
     }, {
         text: '数量',
         dataIndex: 'pd_outqty',
+        exportFormat: 'Quantity',
         xtype: 'numbercolumn',
         width: 110,
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
-        text: '单价',
+        text: '含税单价',
         dataIndex: 'pd_sendprice',
+        exportFormat: 'Price',
         xtype: 'numbercolumn',
         width: 110,
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '税率%',
         dataIndex: 'pd_taxrate',
+        exportFormat: 'Integer',
         xtype: 'numbercolumn',
         width: 90,
         renderer: function(v) {
@@ -117,35 +120,39 @@ Ext.define('saas.view.sale.report.SaleProfit', {
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '不含税单价',
+        exportFormat: 'Price',
         dataIndex: 'pd_netprice',
         xtype: 'numbercolumn'
     }, {
         text: '成本单价',
         dataIndex: 'pw_costprice',
+        exportFormat: 'Price',
         xtype: 'numbercolumn'
     }, {
         text: '成本金额',
         dataIndex: 'pd_total',
+        exportFormat: 'Amount',
         xtype: 'numbercolumn',
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '毛利润',
         dataIndex: 'pd_profit',
+        exportFormat: 'Amount',
         xtype: 'numbercolumn',
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
@@ -155,7 +162,7 @@ Ext.define('saas.view.sale.report.SaleProfit', {
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {

+ 8 - 5
frontend/saas-web/app/view/sale/report/SaleRec.js

@@ -58,39 +58,42 @@ Ext.define('saas.view.sale.report.SaleRec', {
     }, {
         text: '销售金额',
         xtype: 'numbercolumn',
+        exportFormat: 'Amount',
         dataIndex: 'rbd_amount',
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '收款金额',
         xtype: 'numbercolumn',
+        exportFormat: 'Amount',
         dataIndex: 'rbd_nowbalance',
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            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 > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '应收余额',
         xtype: 'numbercolumn',
+        exportFormat: 'Amount',
         dataIndex: 'rb_rbdamount',
         hidden:true,
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
@@ -100,7 +103,7 @@ Ext.define('saas.view.sale.report.SaleRec', {
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {

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

@@ -165,14 +165,14 @@ Ext.define('saas.view.sale.sale.FormPanel', {
                         renderer : function(v) {
                             var arr = (v + '.').split('.');
                             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                            var format = '0.' + xr.join();
+                            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 > 3 ? 3 : arr[1].length)).fill('0');
-                            var format = '0.' + xr.join();
+                            var format = '0.' + xr.join('');
                             return Ext.util.Format.number(v, format);
                         }
                     },  {
@@ -188,14 +188,14 @@ Ext.define('saas.view.sale.sale.FormPanel', {
                         renderer : function(v) {
                             var arr = (v + '.').split('.');
                             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                            var format = '0.' + xr.join();
+                            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 > 3 ? 3 : arr[1].length)).fill('0');
-                            var format = '0.' + xr.join();
+                            var format = '0.' + xr.join('');
                             return Ext.util.Format.number(v, format);
                         }
                     },
@@ -212,7 +212,7 @@ Ext.define('saas.view.sale.sale.FormPanel', {
                         renderer : function(v) {
                             var arr = (v + '.').split('.');
                             var xr = (new Array(arr[1].length > 8 ? 8 :(arr[1].length < 2? 2 : arr[1].length))).fill('0');
-                            var format = '0,000.' + xr.join();
+                            var format = '0,000.' + xr.join('');
                             return Ext.util.Format.number(v, format);
                        }
                     }, 
@@ -249,14 +249,14 @@ Ext.define('saas.view.sale.sale.FormPanel', {
                         renderer : function(v) {
                             var arr = (v + '.').split('.');
                             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                            var format = '0,000.' + xr.join();
+                            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 > 2 ? 2 : arr[1].length)).fill('0');
-                            var format = '0,000.' + xr.join();
+                            var format = '0,000.' + xr.join('');
                             return Ext.util.Format.number(v, format);
                         }
                     }, 
@@ -268,14 +268,14 @@ Ext.define('saas.view.sale.sale.FormPanel', {
                         renderer : function(v) {
                             var arr = (v + '.').split('.');
                             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                            var format = '0,000.' + xr.join();
+                            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 > 2 ? 2 : arr[1].length)).fill('0');
-                            var format = '0,000.' + xr.join();
+                            var format = '0,000.' + xr.join('');
                             return Ext.util.Format.number(v, format);
                         }
                     },{

+ 5 - 5
frontend/saas-web/app/view/sale/sale/QueryPanel.js

@@ -124,7 +124,7 @@ Ext.define('saas.view.sale.sale.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {
@@ -215,7 +215,7 @@ Ext.define('saas.view.sale.sale.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                var format = '0.' + xr.join();
+                var format = '0.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             },
         }, {
@@ -226,7 +226,7 @@ Ext.define('saas.view.sale.sale.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             },
         }, {
@@ -237,7 +237,7 @@ Ext.define('saas.view.sale.sale.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                var format = '0.' + xr.join();
+                var format = '0.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             },
         }, {
@@ -248,7 +248,7 @@ Ext.define('saas.view.sale.sale.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                var format = '0.' + xr.join();
+                var format = '0.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             },
         }, {

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

@@ -175,14 +175,14 @@ Ext.define('saas.view.sale.saleIn.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                    var format = '0.' + xr.join();
+                    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 > 3 ? 3 : arr[1].length)).fill('0');
-                    var format = '0.' + xr.join();
+                    var format = '0.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             }, {
@@ -225,7 +225,7 @@ Ext.define('saas.view.sale.saleIn.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 },
             }, 
@@ -237,14 +237,14 @@ Ext.define('saas.view.sale.saleIn.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    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 > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             }, {
@@ -270,14 +270,14 @@ Ext.define('saas.view.sale.saleIn.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    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 > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             },

+ 6 - 6
frontend/saas-web/app/view/sale/saleIn/QueryPanel.js

@@ -127,7 +127,7 @@ Ext.define('saas.view.sale.saleIn.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0.' + xr.join();
+                var format = '0.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {
@@ -161,7 +161,7 @@ Ext.define('saas.view.sale.saleIn.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0.' + xr.join();
+                var format = '0.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         },{
@@ -222,7 +222,7 @@ Ext.define('saas.view.sale.saleIn.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                var format = '0.' + xr.join();
+                var format = '0.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {
@@ -233,7 +233,7 @@ Ext.define('saas.view.sale.saleIn.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-                var format = '0.' + xr.join();
+                var format = '0.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {
@@ -244,7 +244,7 @@ Ext.define('saas.view.sale.saleIn.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                var format = '0.' + xr.join();
+                var format = '0.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {
@@ -263,7 +263,7 @@ Ext.define('saas.view.sale.saleIn.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-                var format = '0.' + xr.join();
+                var format = '0.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {

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

@@ -186,14 +186,14 @@ Ext.define('saas.view.sale.saleout.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                    var format = '0.' + xr.join();
+                    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 > 3 ? 3 : arr[1].length)).fill('0');
-                    var format = '0.' + xr.join();
+                    var format = '0.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             }, {
@@ -237,7 +237,7 @@ Ext.define('saas.view.sale.saleout.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 },
             }, 
@@ -249,14 +249,14 @@ Ext.define('saas.view.sale.saleout.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    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 > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             }, {
@@ -282,14 +282,14 @@ Ext.define('saas.view.sale.saleout.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    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();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             },

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

@@ -218,7 +218,7 @@ Ext.define('saas.view.sale.saleout.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                var format = '0.' + xr.join();
+                var format = '0.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {
@@ -229,7 +229,7 @@ Ext.define('saas.view.sale.saleout.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-                var format = '0.' + xr.join();
+                var format = '0.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {
@@ -240,7 +240,7 @@ Ext.define('saas.view.sale.saleout.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                var format = '0.' + xr.join();
+                var format = '0.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {
@@ -259,7 +259,7 @@ Ext.define('saas.view.sale.saleout.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-                var format = '0.' + xr.join();
+                var format = '0.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }, {

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

@@ -153,14 +153,14 @@ Ext.define('saas.view.stock.appropriationInOut.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                    var format = '0.' + xr.join();
+                    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 > 3 ? 3 : arr[1].length)).fill('0');
-                    var format = '0.' + xr.join();
+                    var format = '0.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             },{

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

@@ -199,7 +199,7 @@ Ext.define('saas.view.stock.appropriationInOut.QueryPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             },{

+ 3 - 3
frontend/saas-web/app/view/stock/inventory/EditDataList.js

@@ -168,7 +168,7 @@ Ext.define('saas.view.stock.inventory.EditDataList', {
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         } 
     },
@@ -196,7 +196,7 @@ Ext.define('saas.view.stock.inventory.EditDataList', {
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }            
     },
@@ -209,7 +209,7 @@ Ext.define('saas.view.stock.inventory.EditDataList', {
         renderer : function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }  
     }],

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

@@ -217,14 +217,14 @@ Ext.define('saas.view.stock.make.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                    var format = '0.' + xr.join();
+                    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 > 3 ? 3 : arr[1].length)).fill('0');
-                    var format = '0.' + xr.join();
+                    var format = '0.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             },
@@ -243,14 +243,14 @@ Ext.define('saas.view.stock.make.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length)).fill('0');
-                    var format = '0.' + xr.join();
+                    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();
+                    var format = '0.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             },            
@@ -300,7 +300,7 @@ Ext.define('saas.view.stock.make.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             },            {
@@ -316,14 +316,14 @@ Ext.define('saas.view.stock.make.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    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 > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             },{

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

@@ -139,7 +139,7 @@ Ext.define('saas.view.stock.make.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             },
         },{

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

@@ -164,14 +164,14 @@ Ext.define('saas.view.stock.otherIn.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                    var format = '0.' + xr.join();
+                    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 > 3 ? 3 : arr[1].length)).fill('0');
-                    var format = '0.' + xr.join();
+                    var format = '0.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             },{
@@ -217,7 +217,7 @@ Ext.define('saas.view.stock.otherIn.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 },
             }, 
@@ -234,14 +234,14 @@ Ext.define('saas.view.stock.otherIn.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    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 > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             }, {
@@ -272,14 +272,14 @@ Ext.define('saas.view.stock.otherIn.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    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 > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             },{

+ 3 - 3
frontend/saas-web/app/view/stock/otherIn/QueryPanel.js

@@ -192,7 +192,7 @@ Ext.define('saas.view.stock.otherIn.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             },
         },{
@@ -207,7 +207,7 @@ Ext.define('saas.view.stock.otherIn.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }         
         },{
@@ -226,7 +226,7 @@ Ext.define('saas.view.stock.otherIn.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         },{

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

@@ -142,14 +142,14 @@ Ext.define('saas.view.stock.otherOut.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length)).fill('0');
-                    var format = '0.' + xr.join();
+                    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();
+                    var format = '0.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             },{
@@ -195,7 +195,7 @@ Ext.define('saas.view.stock.otherOut.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             },
@@ -207,14 +207,14 @@ Ext.define('saas.view.stock.otherOut.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    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 > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             }, {
@@ -240,14 +240,14 @@ Ext.define('saas.view.stock.otherOut.FormPanel', {
                 renderer : function(v) {
                     var arr = (v + '.').split('.');
                     var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    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 > 2 ? 2 : arr[1].length)).fill('0');
-                    var format = '0,000.' + xr.join();
+                    var format = '0,000.' + xr.join('');
                     return Ext.util.Format.number(v, format);
                 }
             },{

+ 3 - 3
frontend/saas-web/app/view/stock/otherOut/QueryPanel.js

@@ -192,7 +192,7 @@ Ext.define('saas.view.stock.otherOut.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         },{
@@ -207,7 +207,7 @@ Ext.define('saas.view.stock.otherOut.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }         
         },{
@@ -226,7 +226,7 @@ Ext.define('saas.view.stock.otherOut.QueryPanel', {
             renderer : function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         },{

+ 7 - 4
frontend/saas-web/app/view/stock/report/DataList.js

@@ -74,12 +74,13 @@ Ext.define('saas.view.stock.report.DataList', {
     }, {
         text: "数量",
         xtype: 'numbercolumn',
+        exportFormat: 'Quantity',
         dataIndex: "rc_number",
         width: 120,
         renderer: function (v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     },{
@@ -89,6 +90,7 @@ Ext.define('saas.view.stock.report.DataList', {
     }, {
         text: "单价",
         xtype: 'numbercolumn',
+        exportFormat: 'Price',
         hidden: true,
         toggle: true,
         align: 'end',
@@ -97,25 +99,26 @@ Ext.define('saas.view.stock.report.DataList', {
         renderer: function (v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: "金额",
         xtype: 'numbercolumn',
         dataIndex: "rc_amount",
+        exportFormat: 'Amount',
         width: 120,
         renderer: function (v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            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 > 2 ? 2 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {

+ 16 - 8
frontend/saas-web/app/view/stock/report/ProdinoutCount.js

@@ -57,23 +57,25 @@ Ext.define('saas.view.stock.report.ProdinoutCount', {
         columns: [{
             text: '数量',
             dataIndex:'pwm_beginqty',
+            exportFormat: 'Quantity',
             xtype: 'numbercolumn',
             width:110,
             renderer: function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                var format = '0.' + xr.join();
+                var format = '0.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             },
         },{
             text: '成本',
             dataIndex:'pwm_beginamount',
+            exportFormat: 'Amount',
             xtype: 'numbercolumn',
             width:110,
             renderer: function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }]
@@ -82,23 +84,25 @@ Ext.define('saas.view.stock.report.ProdinoutCount', {
         columns: [{
             text: '数量',
             dataIndex:'pwm_nowinqty',
+            exportFormat: 'Quantity',
             xtype: 'numbercolumn',
             width:110,
             renderer: function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                var format = '0.' + xr.join();
+                var format = '0.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         },{
             text: '成本',
             dataIndex:'pwm_nowinamount',
+            exportFormat: 'Amount',
             xtype: 'numbercolumn',
             width:110,
             renderer: function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }]
@@ -107,23 +111,25 @@ Ext.define('saas.view.stock.report.ProdinoutCount', {
         columns: [{
             text: '数量',
             dataIndex:'pwm_nowoutqty',
+            exportFormat: 'Quantity',
             xtype: 'numbercolumn',
             width: 110,
             renderer: function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                var format = '0.' + xr.join();
+                var format = '0.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         },{
             text: '成本',
             dataIndex:'pwm_nowoutamount',
+            exportFormat: 'Amount',
             xtype: 'numbercolumn',
             width: 110,
             renderer: function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }]
@@ -132,23 +138,25 @@ Ext.define('saas.view.stock.report.ProdinoutCount', {
         columns: [{
             text: '数量',
             dataIndex:'pwm_endqty',
+            exportFormat: 'Quantity',
             xtype: 'numbercolumn',
             width: 110,
             renderer: function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-                var format = '0.' + xr.join();
+                var format = '0.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         },{
             text: '成本',
             dataIndex:'pwm_endamount',
+            exportFormat: 'Amount',
             xtype: 'numbercolumn',
             width: 110,
             renderer: function(v) {
                 var arr = (v + '.').split('.');
                 var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
-                var format = '0,000.' + xr.join();
+                var format = '0,000.' + xr.join('');
                 return Ext.util.Format.number(v, format);
             }
         }]

+ 6 - 5
frontend/saas-web/app/view/stock/report/Prodiodetail.js

@@ -102,35 +102,36 @@ Ext.define('saas.view.stock.report.Prodiodetail', {
     }, {
         text: '入库数量',
         xtype: 'numbercolumn',
+        exportFormat: 'Quantity',
         dataIndex: 'inqty',
-        xtype: 'numbercolumn',
         summaryType: 'sum',
         summaryRenderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '出库数量',
         xtype: 'numbercolumn',
+        exportFormat: 'Quantity',
         dataIndex: 'outqty',
-        xtype: 'numbercolumn',
         summaryType: 'sum',
         summaryRenderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
-            var format = '0.' + xr.join();
+            var format = '0.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     }, {
         text: '成本单价',
         xtype: 'numbercolumn',
+        exportFormat: 'Price',
         dataIndex: 'pd_price',
         renderer: function(v) {
             var arr = (v + '.').split('.');
             var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
-            var format = '0,000.' + xr.join();
+            var format = '0,000.' + xr.join('');
             return Ext.util.Format.number(v, format);
         }
     },{

+ 28 - 1
frontend/saas-web/overrides/exporter/Stylesheet.js

@@ -9,7 +9,34 @@ Ext.define('saas.override.exporter.Stylesheet', {
         'Scientific': 11,
         'Currency': '"$"#,##0.00',
         'Euro Currency': '"€"#,##0.00',
-        'Total':'#,##0.00'
+        /**  new  */
+        'Integer': function(v) {
+            return Ext.util.Format.number(v, '0');
+        },
+        'Total':function(v) {
+            var arr = (v + '.').split('.');
+            var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
+            var format = '0,000.' + xr.join('');
+            return Ext.util.Format.number(v, format);
+        },
+        'Amount': function(v) {
+            var arr = (v + '.').split('.');
+            var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
+            var format = '0,000.' + xr.join('');
+            return Ext.util.Format.number(v, format);
+        },
+        'Quantity': function(v) {
+            var arr = (v + '.').split('.');
+            var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
+            var format = '0.' + xr.join('');
+            return Ext.util.Format.number(v, format);
+        },
+        'Price': function(v) {
+            var arr = (v + '.').split('.');
+            var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
+            var format = '0,000.' + xr.join('');
+            return Ext.util.Format.number(v, format);
+        },
     }
 
 });

+ 56 - 0
frontend/saas-web/overrides/exporter/file/Style.js

@@ -0,0 +1,56 @@
+Ext.define('saas.override.exporter.file.Style', {
+    override: 'Ext.exporter.file.Style',
+
+    getFormattedValue: function(v){
+        var me = this,
+            f = me.getFormat(),
+            ret = v,
+            fmt = Ext.util.Format;
+
+        if(!f || f === 'General' || Ext.isEmpty(v)){
+            return ret;
+        }
+
+        if(f === 'Integer') { // new
+            return Ext.util.Format.number(v, '0');
+        }else if(f === 'Total') {
+            var arr = (v + '.').split('.');
+            var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
+            var format = '0,000.' + xr.join('');
+            return Ext.util.Format.number(v, format);
+        }else if(f === 'Amount') {
+            var arr = (v + '.').split('.');
+            var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
+            var format = '0,000.' + xr.join('');
+            return Ext.util.Format.number(v, format);
+        }else if(f === 'Quantity') {
+            var arr = (v + '.').split('.');
+            var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0');
+            var format = '0,000.' + xr.join('');
+            return Ext.util.Format.number(v, format);
+        }else if(f === 'Price') {
+            var arr = (v + '.').split('.');
+            var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0');
+            var format = '0,000.' + xr.join('');
+            return Ext.util.Format.number(v, format);
+        }else if(f === 'Currency'){
+            return fmt.currency(v);
+        }else if(f === 'Euro Currency') {
+            return fmt.currency(v, '€');
+        }else if(f === 'Percent'){
+            return fmt.number(v * 100, '0.00') + '%';
+        }else if(f === 'Scientific') {
+            return Number(v).toExponential();
+        }else if(me.datePatterns[f]){
+            return fmt.date(v, me.datePatterns[f]);
+        }else if(me.numberPatterns[f]){
+            return fmt.number(v, me.numberPatterns[f]);
+        }else if(me.booleanPatterns[f]){
+            return v ? me.booleanPatterns[f][0] : me.booleanPatterns[f][1];
+        }else if(Ext.isFunction(f)){
+            return f(v);
+        }
+        return fmt.number(v, f);
+    }
+
+});

BIN
frontend/saas-web/resources/images/loading.gif


+ 10 - 0
pom.xml

@@ -309,6 +309,16 @@
                 <artifactId>socket-api</artifactId>
                 <version>${project.release.version}</version>
             </dependency>
+            <dependency>
+                <groupId>com.usoftchina.saas</groupId>
+                <artifactId>sms-dto</artifactId>
+                <version>${project.release.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>com.usoftchina.saas</groupId>
+                <artifactId>sms-api</artifactId>
+                <version>${project.release.version}</version>
+            </dependency>
             <!-- file upload -->
             <dependency>
                 <groupId>io.github.openfeign.form</groupId>