浏览代码

首页统计及其BUG

seimin 3 年之前
父节点
当前提交
e007f5471f

+ 2 - 2
assets/js/config.router.js

@@ -318,7 +318,7 @@ app.config(['$authProvider', '$httpProvider', '$stateProvider', '$urlRouterProvi
318 318
                     label: 'chart'
319 319
                 }
320 320
             }).state('app.desk.chart', {
321
-                url: '/chart',
321
+                url: '/chart/:tab',
322 322
                 templateUrl: "assets/views/desk/chart.html",
323 323
                 resolve: loadSequence('jquery-sparkline', 'ui.grid', 'moment', 'angularPrint', 'angularFileUpload', 'ui.select', 'multi.select.tree', 'angularBootstrapNavTree', 'chartCtrl'),
324 324
                 // resolve: loadSequence('jquery-sparkline', 'spin', 'ladda', 'angular-ladda', 'moment', 'mwl.calendar', 'ui.grid', 'chartCtrl'),
@@ -495,7 +495,7 @@ app.config(['$authProvider', '$httpProvider', '$stateProvider', '$urlRouterProvi
495 495
                     label: 'Incident'
496 496
                 }
497 497
             }).state('app.incident.list', {
498
-                url: '/list/{model}',
498
+                url: '/list/{model}/:tab/:state/:date',
499 499
                 templateUrl: "assets/views/incident/list.html",
500 500
                 resolve: loadSequence('jquery-sparkline', 'spin', 'ladda', 'angular-ladda', 'ui.grid', 'moment', 'angularPrint', 'angularFileUpload', 'ui.select', 'multi.select.tree', 'angularBootstrapNavTree', 'incidentCtrl'),
501 501
                 title: 'incident.LIST',

+ 15 - 1
assets/js/controllers/dashboard/newdash.js

@@ -1759,7 +1759,17 @@ appFormly.controller('newDashCtrl', ['$rootScope', '$auth', '$scope', '$parse',
1759 1759
         // setInterval(function() {
1760 1760
         //     getinternetknow({ "user": 23 });
1761 1761
         // }, 10000);
1762
-
1762
+        // 当前登录用户
1763
+        console.log($rootScope.user);
1764
+        // 判断首页统计页面是否显示
1765
+        if($rootScope.user.role.length){
1766
+            $scope.isShowTj = $rootScope.user.role.some(function(v){
1767
+                return v.rolecode === "incident-category-manager" || v.rolecode === "incident manager";
1768
+            })
1769
+        }else{
1770
+            $scope.isShowTj = false;
1771
+        }
1772
+        
1763 1773
         // 首页统计数据(新)
1764 1774
         $scope.managerIndexInfo = {};
1765 1775
         $scope.getDataIndex = function(){
@@ -1796,5 +1806,9 @@ appFormly.controller('newDashCtrl', ['$rootScope', '$auth', '$scope', '$parse',
1796 1806
             });
1797 1807
         }
1798 1808
         $scope.getDataIndex();
1809
+        // 跳转
1810
+        $scope.goTo = function(url,data){
1811
+            $state.go(url,data);
1812
+        }
1799 1813
     }
1800 1814
 ]);

+ 18 - 5
assets/js/controllers/desk/chartCtrl.js

@@ -736,15 +736,28 @@ app.controller('chartCtrl', ["$scope", "i18nService", "$rootScope", "$state", "$
736 736
     $scope.timer = $interval(function () {
737 737
         $scope.refreshData2('expand-right', $scope.fileData);
738 738
     }, $rootScope.refreshTime);
739
-    $scope.searchstate = 1650;
739
+    
740
+    console.log($state.params);
741
+    if($state.params.tab){
742
+        if($state.params.tab == '-1'){
743
+            $scope.searchstate = '';
744
+            $scope.fileData.wxincident = {};
745
+        }else{
746
+            $scope.searchstate = $state.params.tab;
747
+            $scope.fileData.wxincident.serviceState.id = $scope.searchstate;
748
+        }
749
+    }else{
750
+        //默认未转换
751
+        $scope.searchstate = 1650;
752
+        if (sessionStorage.getItem('jry_data')) {
753
+            $scope.searchstate = sessionStorage.getItem('jry_data');
754
+            $scope.fileData.wxincident.serviceState.id = sessionStorage.getItem('jry_data');
755
+        }
756
+    }
740 757
     $scope.$on('$destroy', function () {
741 758
         sessionStorage.setItem('jry_data', $scope.searchstate);
742 759
         $interval.cancel($scope.timer)
743 760
     });
744
-    if (sessionStorage.getItem('jry_data')) {
745
-        $scope.searchstate = sessionStorage.getItem('jry_data');
746
-        $scope.fileData.wxincident.serviceState.id = sessionStorage.getItem('jry_data');
747
-    }
748 761
     $scope.refreshData('expand-right', $scope.fileData);
749 762
 }]);
750 763
 app.controller('Wechatoperator', ['$rootScope', '$http', '$scope', '$modal', function ($rootScope, $http, $scope, $modal) {

+ 77 - 6
assets/js/controllers/incident/incidentCtrl.js

@@ -4,6 +4,7 @@ app.controller('incidentListCtrl', ["$scope", "$http", "i18nService", "$rootScop
4 4
     //保存报修主体
5 5
     $scope.repairMain = JSON.parse(sessionStorage.getItem("repair_main"));
6 6
     // ----------------分割线 start-----------------
7
+    console.log($state)
7 8
     // 故障地点下拉
8 9
     // $scope.addressModel = '';//文本输入内容
9 10
     $scope.address_arr = [];//故障地点所有数据
@@ -900,15 +901,15 @@ app.controller('incidentListCtrl', ["$scope", "$http", "i18nService", "$rootScop
900 901
         }
901 902
         // $scope.gridOptions.paginationCurrentPage = 1;
902 903
         if (item.acceptDate) {
903
-            item.acceptDate = moment(item.acceptDate).format('YYYY-MM-DD HH:mm:ss');
904
+            item.acceptDate = moment(item.acceptDate).format('YYYY-MM-DD 00:00:00');
904 905
         }
905 906
         if (item.acceptDateEnd) {
906
-            // item.acceptDateEnd = moment(item.acceptDateEnd).format('YYYY-MM-DD HH:mm:ss');
907
+            // item.acceptDateEnd = moment(item.acceptDateEnd).format('YYYY-MM-DD 00:00:00');
907 908
             item.acceptDateEnd = moment(item.acceptDateEnd).format('YYYY-MM-DD 23:59:59')
908 909
         }
909 910
         // if (parameters) {
910 911
         //     angular.extend(fildata, { 'idx': 0, 'sum': $scope.gridOptions.paginationPageSize })
911
-        //     angular.extend(fildata.incident, { 'acceptDate': moment(parameters.paramDateFrom).format('YYYY-MM-DD HH:mm:ss'), 'acceptDateEnd': moment(parameters.paramDateTo).format('YYYY-MM-DD 23:59:59') })
912
+        //     angular.extend(fildata.incident, { 'acceptDate': moment(parameters.paramDateFrom).format('YYYY-MM-DD 00:00:00'), 'acceptDateEnd': moment(parameters.paramDateTo).format('YYYY-MM-DD 23:59:59') })
912 913
         // }
913 914
         
914 915
         var transitiondata = angular.copy(item);
@@ -2459,7 +2460,12 @@ app.controller('incidentListCtrl', ["$scope", "$http", "i18nService", "$rootScop
2459 2460
 
2460 2461
     // }
2461 2462
     //事件类型筛选
2462
-    $scope.searchstate = 'todo';
2463
+    console.log($state);
2464
+    if($state.params.tab){
2465
+        $scope.searchstate = $state.params.tab;
2466
+    }else{
2467
+        $scope.searchstate = 'todo';//baba
2468
+    }
2463 2469
     $scope.onChange = function (searchType) {
2464 2470
         // console.log(defaultFilterData,'fanbu')
2465 2471
         if(defaultFilterData.incident){
@@ -2530,7 +2536,28 @@ app.controller('incidentListCtrl', ["$scope", "$http", "i18nService", "$rootScop
2530 2536
                     filterData.searchType = $scope.searchType;
2531 2537
                 }
2532 2538
                 $scope.gridOptions.paginationCurrentPage = 1 + filterData.idx;
2533
-                $scope.searchstate = filterData.searchType;
2539
+                if($state.params.tab){
2540
+                    $scope.searchstate = $state.params.tab;
2541
+                    filterData.searchType = $state.params.tab;
2542
+                    sessionStorage.setItem('searchincident',JSON.stringify(filterData));
2543
+                }else{
2544
+                    $scope.searchstate = filterData.searchType;
2545
+                }
2546
+                if($state.params.date == 'today'){
2547
+                    $scope.othcode = {};
2548
+                    $scope.searchkeys.acceptDate = new Date();
2549
+                    $scope.searchkeys.acceptDateEnd = new Date();
2550
+                    filterData.incident = {acceptDate:moment().format('YYYY-MM-DD 00:00:00'),acceptDateEnd:moment().format('YYYY-MM-DD 23:59:59')};
2551
+                    sessionStorage.setItem("searchincident",JSON.stringify(filterData));
2552
+                }
2553
+                if($state.params.state){
2554
+                    $scope.searchkeys.acceptDate = null;
2555
+                    $scope.searchkeys.acceptDateEnd = null;
2556
+                    var obj = $scope.state.find(function(v){return $state.params.state == v.id});
2557
+                    $scope.othcode = {state:obj};
2558
+                    filterData.incident = {statusId: $state.params.state};
2559
+                    sessionStorage.setItem("searchincident",JSON.stringify(filterData));
2560
+                }
2534 2561
                 if (filterData.incident && filterData.incident.category) {
2535 2562
                     delete filterData.incident.category
2536 2563
                 }
@@ -2542,6 +2569,28 @@ app.controller('incidentListCtrl', ["$scope", "$http", "i18nService", "$rootScop
2542 2569
                         $scope.searchstate = 'overDate';
2543 2570
                     }
2544 2571
                 }
2572
+                if($state.params.tab){
2573
+                    $scope.searchstate = $state.params.tab;
2574
+                    filterData.searchType = $state.params.tab;
2575
+                    sessionStorage.setItem('searchincident',JSON.stringify(filterData));
2576
+                }else{
2577
+                    $scope.searchstate = filterData.searchType;
2578
+                }
2579
+                if($state.params.date == 'today'){
2580
+                    $scope.othcode = {};
2581
+                    $scope.searchkeys.acceptDate = new Date();
2582
+                    $scope.searchkeys.acceptDateEnd = new Date();
2583
+                    filterData.incident = {acceptDate:moment().format('YYYY-MM-DD 00:00:00'),acceptDateEnd:moment().format('YYYY-MM-DD 23:59:59')};
2584
+                    sessionStorage.setItem("searchincident",JSON.stringify(filterData));
2585
+                }
2586
+                if($state.params.state){
2587
+                    $scope.searchkeys.acceptDate = null;
2588
+                    $scope.searchkeys.acceptDateEnd = null;
2589
+                    var obj = $scope.state.find(function(v){return $state.params.state == v.id});
2590
+                    $scope.othcode = {state:obj};
2591
+                    filterData.incident = {statusId: $state.params.state};
2592
+                    sessionStorage.setItem("searchincident",JSON.stringify(filterData));
2593
+                }
2545 2594
             }
2546 2595
         }
2547 2596
         // if (angular.isDefined($scope.searchTypes)) {
@@ -2609,7 +2658,29 @@ app.controller('incidentListCtrl', ["$scope", "$http", "i18nService", "$rootScop
2609 2658
                     filterData.searchType = $scope.searchType;
2610 2659
                 }
2611 2660
                 $scope.gridOptions.paginationCurrentPage = 1 + filterData.idx;
2612
-                $scope.searchstate = filterData.searchType;
2661
+                // $scope.searchstate = filterData.searchType;
2662
+                if($state.params.tab){
2663
+                    $scope.searchstate = $state.params.tab;
2664
+                    filterData.searchType = $state.params.tab;
2665
+                    sessionStorage.setItem('searchincident',JSON.stringify(filterData));
2666
+                }else{
2667
+                    $scope.searchstate = filterData.searchType;
2668
+                }
2669
+                if($state.params.date == 'today'){
2670
+                    $scope.othcode = {};
2671
+                    $scope.searchkeys.acceptDate = new Date();
2672
+                    $scope.searchkeys.acceptDateEnd = new Date();
2673
+                    filterData.incident = {acceptDate:moment().format('YYYY-MM-DD 00:00:00'),acceptDateEnd:moment().format('YYYY-MM-DD 23:59:59')};
2674
+                    sessionStorage.setItem("searchincident",JSON.stringify(filterData));
2675
+                }
2676
+                if($state.params.state){
2677
+                    $scope.searchkeys.acceptDate = null;
2678
+                    $scope.searchkeys.acceptDateEnd = null;
2679
+                    var obj = $scope.state.find(function(v){return $state.params.state == v.id});
2680
+                    $scope.othcode = {state:obj};
2681
+                    filterData.incident = {statusId: $state.params.state};
2682
+                    sessionStorage.setItem("searchincident",JSON.stringify(filterData));
2683
+                }
2613 2684
                 if (filterData.incident && filterData.incident.category) {
2614 2685
                     delete filterData.incident.category
2615 2686
                 }

+ 19 - 14
assets/views/dashboard/newdash.html

@@ -23,6 +23,11 @@
23 23
     .know-text-group .know-text-group_item{
24 24
         margin-left: 16px;
25 25
     }
26
+
27
+    .know-text-group .know-text-group_item .know-text-group_strong:hover{
28
+        text-decoration: underline;
29
+        cursor: pointer;
30
+    }
26 31
     
27 32
     .know-text-group-div {
28 33
         display: inline-block;
@@ -228,7 +233,7 @@
228 233
 <div ng-style="bodyheight">
229 234
     <div ng-controller="newDashCtrl" class="">
230 235
         <div class="listbote dashheadcolor margin-top-15">
231
-            <div class="list-controls clearfix">
236
+            <div class="list-controls clearfix" ng-if="isShowTj">
232 237
                 <!-- <div class="know-text-group"> -->
233 238
                     <!-- <div class="know-text-group-div pointfont center" ng-click="gowechart()" ng-if="thisuserrole=='admin'||thisuserrole=='center'">
234 239
                         <span class="know-text-color"><i class="icon  iconfontsmall icon-baozhangzhuanhuan ashy"></i>移动端报障</span>
@@ -271,30 +276,30 @@
271 276
                 <!-- </div> -->
272 277
                 <div class="know-text-group clearfix">
273 278
                     <div class="know-text-group_block fl">
274
-                        <div class="know-text-group_item fl">日应到人数:<strong>{{managerIndexInfo.usersCount}}</strong></div>
279
+                        <div class="know-text-group_item fl">日应到人数:<strong>{{managerIndexInfo.usersCount}}</strong></div>
275 280
                         <div class="know-text-group_item fl">实际上班人数:<strong>{{managerIndexInfo.onlineCount}}</strong></div>
276 281
                         <div class="know-text-group_item fl">迟到人数:<strong>{{managerIndexInfo.errorOnlineCount}}</strong></div>
277 282
                         <div class="know-text-group_item fl">未打卡人数:<strong>{{managerIndexInfo.unOnlineCount}}</strong></div>
278 283
                     </div>
279 284
                     <div class="know-text-group_block fr">
280
-                        <div class="know-text-group_item fl">当日工单情况<strong></strong></div>
281
-                        <div class="know-text-group_item fl">建单数:<strong>{{managerIndexInfo.createOrders}}</strong></div>
282
-                        <div class="know-text-group_item fl">待接单数:<strong>{{managerIndexInfo.waitOrders}}</strong></div>
283
-                        <div class="know-text-group_item fl">处理中:<strong>{{managerIndexInfo.doingOrders}}</strong></div>
285
+                        <div class="know-text-group_item fl">实时工单情况<strong></strong></div>
286
+                        <div class="know-text-group_item fl">今日建单数:<strong class="know-text-group_strong" ng-click="goTo('app.incident.list',{tab:'all',date:'today'})">{{managerIndexInfo.createOrders}}</strong></div>
287
+                        <div class="know-text-group_item fl">所有待接单数:<strong class="know-text-group_strong" ng-click="goTo('app.incident.list',{tab:'all',state:'1543'})">{{managerIndexInfo.waitOrders}}</strong></div>
288
+                        <div class="know-text-group_item fl">所有处理中:<strong class="know-text-group_strong" ng-click="goTo('app.incident.list',{tab:'all',state:'1544'})">{{managerIndexInfo.doingOrders}}</strong></div>
284 289
                     </div>
285 290
                 </div>
286 291
                 <div class="know-text-group clearfix">
287 292
                     <div class="know-text-group_block fl">
288
-                        <div class="know-text-group_item fl">日请求<strong></strong></div>
289
-                        <div class="know-text-group_item fl">web/微信:<strong>{{fetchWebList.req_total}}</strong></div>
290
-                        <div class="know-text-group_item fl">建单数:<strong>{{fetchWebList.req_trans}}</strong></div>
291
-                        <div class="know-text-group_item fl">不受理数:<strong>{{fetchWebList.req_reject}}</strong></div>
293
+                        <div class="know-text-group_item fl">日请求<strong></strong></div>
294
+                        <div class="know-text-group_item fl">web/微信:<strong class="know-text-group_strong" ng-click="goTo('app.desk.chart',{tab:-1})">{{fetchWebList.req_total}}</strong></div>
295
+                        <div class="know-text-group_item fl">转换建单数:<strong class="know-text-group_strong" ng-click="goTo('app.desk.chart',{tab:1651})">{{fetchWebList.req_trans}}</strong></div>
296
+                        <div class="know-text-group_item fl">不受理数:<strong class="know-text-group_strong" ng-click="goTo('app.desk.chart',{tab:1652})">{{fetchWebList.req_reject}}</strong></div>
292 297
                     </div>
293 298
                     <div class="know-text-group_block fr">
294
-                        <div class="know-text-group_item fl">日请求<strong></strong></div>
295
-                        <div class="know-text-group_item fl">当日来电数:<strong>{{fetchDhtjList.req_total}}</strong></div>
296
-                        <div class="know-text-group_item fl">接听数:<strong>{{fetchDhtjList.req_answer}}</strong></div>
297
-                        <div class="know-text-group_item fl">建单数:<strong>{{fetchDhtjList.p_total}}</strong></div>
299
+                        <div class="know-text-group_item fl">日请求<strong></strong></div>
300
+                        <div class="know-text-group_item fl">今日来电数:<strong class="know-text-group_strong" ng-click="goTo('app.desk.calllog',{})">{{fetchDhtjList.req_total}}</strong></div>
301
+                        <div class="know-text-group_item fl">接听数:<strong class="know-text-group_strong" ng-click="goTo('app.desk.calllog',{})">{{fetchDhtjList.req_answer}}</strong></div>
302
+                        <div class="know-text-group_item fl">转换建单数:<strong class="know-text-group_strong" ng-click="goTo('app.desk.calllog',{})">{{fetchDhtjList.p_total}}</strong></div>
298 303
                     </div>
299 304
                 </div>
300 305
             </div>