Explorar o código

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

chenw %!s(int64=7) %!d(string=hai) anos
pai
achega
3f2e6d9c18

+ 1 - 1
frontend/saas-web/app/view/home/Home.js

@@ -47,7 +47,7 @@ Ext.define('saas.view.home.Home', {
             xtype: 'month-sale',
             xtype: 'month-sale',
             padding: '0 0 0 14',
             padding: '0 0 0 14',
         }, {
         }, {
-            xtype: 'month-purchase',
+            xtype: 'profit-detail',
             padding: '0 0 0 14',
             padding: '0 0 0 14',
         }, {
         }, {
             xtype: 'key-data',
             xtype: 'key-data',

+ 72 - 35
frontend/saas-web/app/view/home/HomeModel.js

@@ -87,41 +87,41 @@ Ext.define('saas.view.home.HomeModel', {
             }
             }
         },
         },
 
 
-        month_purchase: {
-            model: 'saas.model.chart.DataXY',
-            autoLoad: true,
-            proxy: {
-                type: 'ajax',
-                // url: 'http://192.168.253.58:8920/homePage/purchaseData?sixMonths=false',
-                url: '/api/commons/homePage/purchaseData?sixMonths=false',
-                timeout: 8000,
-                actionMethods: {
-                    read: 'GET'
-                },
-                reader: {
-                    type: 'json',
-                    rootProperty: 'data',
-                },
-                listeners: {
-                    exception: function(proxy, response, operation, eOpts) {
-                        var p = Ext.getCmp('month_purchase');
-                        p && p.setLoading(false);
-                    }
-                }
-            },
-            listeners: {
-                beforeload: function() {
-                    var p = Ext.getCmp('month_purchase');
-                        p && p.setLoading(true);
-                },
-                load: function(s, d) {
-                    var p = Ext.getCmp('month_purchase');
-                        p && p.setLoading(false);
-                    var sum = Ext.util.Format.number(s.sum('y'), '0.00') || 0;
-                    Ext.getCmp('home').getViewModel().set('month_purchase_amount', sum+'')
-                }
-            }
-        },
+        // month_purchase: {
+        //     model: 'saas.model.chart.DataXY',
+        //     autoLoad: true,
+        //     proxy: {
+        //         type: 'ajax',
+        //         // url: 'http://192.168.253.58:8920/homePage/purchaseData?sixMonths=false',
+        //         url: '/api/commons/homePage/purchaseData?sixMonths=false',
+        //         timeout: 8000,
+        //         actionMethods: {
+        //             read: 'GET'
+        //         },
+        //         reader: {
+        //             type: 'json',
+        //             rootProperty: 'data',
+        //         },
+        //         listeners: {
+        //             exception: function(proxy, response, operation, eOpts) {
+        //                 var p = Ext.getCmp('month_purchase');
+        //                 p && p.setLoading(false);
+        //             }
+        //         }
+        //     },
+        //     listeners: {
+        //         beforeload: function() {
+        //             var p = Ext.getCmp('month_purchase');
+        //                 p && p.setLoading(true);
+        //         },
+        //         load: function(s, d) {
+        //             var p = Ext.getCmp('month_purchase');
+        //                 p && p.setLoading(false);
+        //             var sum = Ext.util.Format.number(s.sum('y'), '0.00') || 0;
+        //             Ext.getCmp('home').getViewModel().set('month_purchase_amount', sum+'')
+        //         }
+        //     }
+        // },
 
 
         month_io: {
         month_io: {
             fields: ['x', 'main', 'other'],
             fields: ['x', 'main', 'other'],
@@ -315,5 +315,42 @@ Ext.define('saas.view.home.HomeModel', {
                 }
                 }
             } 
             } 
         },
         },
+
+        profit_detail: {
+            fields: ['x', 'y', 'z'],
+            autoLoad: true,
+            proxy: {
+                type: 'ajax',
+                // url: 'http://192.168.253.58:8560/api/commons/homePage/monthProfit',
+                url: '/api/commons/homePage/monthProfit',
+                timeout: 8000,
+                // header: {
+                //     Authorization: 'eyJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJnIiwiYXBwSWQiOiJ0cmFkZS1hcHAiLCJ1c2VySWQiOjM4LCJjb21wYW55SWQiOjIxLCJ1c2VyTmFtZSI6ImciLCJyZWFsTmFtZSI6Iue-pCIsImV4cCI6MTU0NjIyNTg5Mn0.oe6BmpVchOlL6PoR7UspHbThFEJ_HLlKTHBpV4P9wSA4YbL2Pv5sAah2U6M2q7nmu0J1DV5WwMaMClI19Us7n-8fSgNeQrl1IsVFO4sf5nSC3SrUJk0sraBq5dLAqONfAIj9qFOuyduL6tXkV2av5IfmikT1uMk8okTJKDtHj8U'
+                // },
+                actionMethods: {
+                    read: 'GET'
+                },
+                reader: {
+                    type: 'json',
+                    rootProperty: 'data',
+                },
+                listeners: {
+                    exception: function(proxy, response, operation, eOpts) {
+                        var p = Ext.getCmp('profit_detail');
+                        p && p.setLoading(false);
+                    }
+                }
+            },
+            listeners: {
+                beforeload: function() {
+                    var p = Ext.getCmp('profit_detail');
+                        p && p.setLoading(true);
+                },
+                load: function(s, d) {
+                    var p = Ext.getCmp('profit_detail');
+                        p && p.setLoading(false);
+                }
+            } 
+        },
     },
     },
 });
 });

+ 91 - 0
frontend/saas-web/app/view/home/charts/ProfitDetail.js

@@ -0,0 +1,91 @@
+Ext.define('saas.view.home.charts.ProfitDetail', {
+    extend: 'saas.view.core.chart.ChartBase',
+    xtype: 'profit-detail',
+
+    id: 'profit_detail',
+
+    bind: {
+        title: '毛利润分析(万元)'
+    },
+
+    initComponent: function() {
+        var me = this;
+
+        Ext.apply(me, {
+            items: [{
+                xtype: 'cartesian',
+                colors: [
+                    '#34BAF6'
+                ],
+                bind: {
+                    insetPadding: '{insetPadding}',
+                    store: '{profit_detail}',
+                },
+                axes: [{
+                    type: 'category',
+                    fields: ['x'],
+                    position: 'bottom',
+                    label: {
+                        fontSize: '12px',
+                        fillStyle: '#485465',
+                    },
+                    style: {
+                        fill: '#F7F8FA',
+                        strokeStyle: 'transparent'
+                    },
+                    renderer: me.onCategoryLabelRender
+                },{
+                    type: 'numeric',
+                    fields: ['y'],
+                    position: 'left',
+                    adjustByMajorUnit: true,
+                    grid: {
+                        even: {
+                            stroke: '#F7F8FA'
+                        },
+                        odd: {
+                            stroke: '#F7F8FA',
+                        }
+                    },
+                    label: {
+                        fontSize: '12px',
+                        fillStyle: '#485465',
+                        textAlign: 'end'
+                    },
+                    style: {
+                        fill: '#fff',
+                        strokeStyle: 'transparent'
+                    },
+                    minimum: 0
+                }],
+                series: [{
+                    type: 'bar',
+                    xField: 'x',
+                    yField: ['y'],
+                    bind: {
+                        style: {
+                            lineWidth: 0,
+                            strokeStyle: 'transparent',
+                            maxBarWidth: '{maxBarWidth}',
+                        },
+                    },
+                    tooltip: {
+                        trackMouse: true,
+                        renderer: me.onBarTipRender
+                    }
+                }]
+            }]
+        });
+
+        me.callParent(arguments);
+    },
+
+    onCategoryLabelRender: function(axis, label, layoutContent, lastLabel) {
+        return label.substr(0,2) + '...';
+    },
+
+    onBarTipRender: function (tooltip, record, item) {
+        tooltip.setHtml(record.get('x') + ': ' + record.get('y') + '万元');
+    },
+
+});

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

@@ -39,7 +39,7 @@ Ext.define('saas.view.money.fundtransfer.FormPanel', {
         xtype : "detailGridField", 
         xtype : "detailGridField", 
         storeModel:'saas.model.money.FundTransfer',
         storeModel:'saas.model.money.FundTransfer',
         detnoColumn:  'ftd_detno',
         detnoColumn:  'ftd_detno',
-        deleteDetailUrl:'/api/money/fundtransfer/deleteItem',
+        deleteDetailUrl:'/api/money/fundtransfer/deleteDetail',
         columnWidth : 1,
         columnWidth : 1,
         columns : [
         columns : [
             {
             {

+ 11 - 4
frontend/saas-web/app/view/sys/power/TreePanel.js

@@ -9,7 +9,7 @@ Ext.define('saas.view.sys.power.TreePanel', {
     initComponent: function () {
     initComponent: function () {
         var me = this;
         var me = this;
         me.store = Ext.create('Ext.data.TreeStore', {
         me.store = Ext.create('Ext.data.TreeStore', {
-            fields : ['name', 'id', 'description','code'],
+            fields : ['name', 'id', 'description','code','type'],
             autoLoad:false,
             autoLoad:false,
             root : {
             root : {
                 text : 'Root',
                 text : 'Root',
@@ -26,7 +26,7 @@ Ext.define('saas.view.sys.power.TreePanel', {
             width: 28,
             width: 28,
             iconCls: 'x-hidden icon x-fa fa-plus',
             iconCls: 'x-hidden icon x-fa fa-plus',
             getClass: function(v, meta, rec) {
             getClass: function(v, meta, rec) {
-                if(rec.get('code')=='ROLE_ADMIN'){
+                if(rec.get('type')=='0'){
                     return 'x-hidden icon x-fa fa-key';
                     return 'x-hidden icon x-fa fa-key';
                 }else if(rec.get('leaf')){
                 }else if(rec.get('leaf')){
                      return 'x-hidden icon x-fa fa-pencil';
                      return 'x-hidden icon x-fa fa-pencil';
@@ -43,7 +43,7 @@ Ext.define('saas.view.sys.power.TreePanel', {
             width: 36,
             width: 36,
             iconCls: 'x-hidden icon x-fa fa-trash-o',
             iconCls: 'x-hidden icon x-fa fa-trash-o',
             getClass: function(v, meta, rec) {
             getClass: function(v, meta, rec) {
-                if(rec.get('code')=='ROLE_ADMIN'){
+                if(rec.get('type')=='0'){
                     return '';
                     return '';
                 }else if(rec.get('leaf')){
                 }else if(rec.get('leaf')){
                      return 'x-hidden icon x-fa fa-trash-o';
                      return 'x-hidden icon x-fa fa-trash-o';
@@ -90,6 +90,12 @@ Ext.define('saas.view.sys.power.TreePanel', {
                 var grid = view.ownerCt.ownerCt.query('power-grid')[0];
                 var grid = view.ownerCt.ownerCt.query('power-grid')[0];
                 grid.initId = id;
                 grid.initId = id;
                 grid.store.load();
                 grid.store.load();
+                if(record.get('type')&&record.get('type')=='0'){
+                    grid.dockedItems.items[1].down('[name=savepower]').setDisabled(true)
+                }
+                if(record.get('type')&&record.get('type')=='1'){
+                    grid.dockedItems.items[1].down('[name=savepower]').setDisabled(false)
+                }
             }
             }
         }
         }
     },
     },
@@ -108,6 +114,7 @@ Ext.define('saas.view.sys.power.TreePanel', {
                     for (let index = 0; index < _data.length; index++) {
                     for (let index = 0; index < _data.length; index++) {
                         var o = {
                         var o = {
                             code:_data[index].code,
                             code:_data[index].code,
+                            type:_data[index].type,
                             id: _data[index].id,
                             id: _data[index].id,
                             text: _data[index].name,
                             text: _data[index].name,
                             name:_data[index].name,
                             name:_data[index].name,
@@ -151,7 +158,7 @@ Ext.define('saas.view.sys.power.TreePanel', {
         this.dialog.show();
         this.dialog.show();
     },
     },
     deleteItem:function(rec){
     deleteItem:function(rec){
-        if(rec&&(rec.get('code')=='ROLE_ADMIN'||!rec.get('leaf'))){
+        if(rec&&(rec.get('type')=='0'||!rec.get('leaf'))){
             return;
             return;
         }
         }
         var me = this;
         var me = this;