seimin 2 gadi atpakaļ
vecāks
revīzija
a7480742e2

+ 97 - 1
assets/js/controllers/desk/jry_emergencyCtrl.js

@@ -64,7 +64,7 @@ app.controller('jry_emergencyCtrl', ["$scope", "i18nService", "$rootScope", "$st
64 64
 
65 65
         var mun = $scope.gridOptions.paginationPageSize;
66 66
 
67
-        // $scope.gridOptions.rowTemplate = "<div ng-click=\"lookFunction(row)\" ng-repeat=\"(colRenderIndex, col) in colContainer.renderedColumns track by col.uid\" ui-grid-one-bind-id-grid=\"rowRenderIndex + '-' + col.uid + '-cell'\" class=\"ui-grid-cell\" ng-class=\"{ 'ui-grid-row-header-cell': col.isRowHeader }\" role=\"{{col.isRowHeader ? 'rowheader' : 'gridcell'}}\" ui-grid-cell></div>";
67
+        $scope.gridOptions.rowTemplate = "<div ng-click=\"lookFunction(row)\" ng-repeat=\"(colRenderIndex, col) in colContainer.renderedColumns track by col.uid\" ui-grid-one-bind-id-grid=\"rowRenderIndex + '-' + col.uid + '-cell'\" class=\"ui-grid-cell\" ng-class=\"{ 'ui-grid-row-header-cell': col.isRowHeader }\" role=\"{{col.isRowHeader ? 'rowheader' : 'gridcell'}}\" ui-grid-cell></div>";
68 68
 
69 69
 
70 70
 
@@ -268,6 +268,72 @@ app.controller('jry_emergencyCtrl', ["$scope", "i18nService", "$rootScope", "$st
268 268
 
269 269
         ];
270 270
 
271
+
272
+        //批量恢复
273
+        $scope.oneClickRecovery = function () {
274
+            console.log($scope.selected.items);
275
+            var modalInstance = $modal.open({
276
+                templateUrl: 'assets/views/delete.html',
277
+                controller: function ($scope, $modalInstance) {
278
+                    $scope.title = '批量恢复';
279
+                    $scope.connect = '确定要批量恢复?';
280
+                    $scope.ok = function () {
281
+                        $modalInstance.close("start");
282
+                    };
283
+
284
+                    $scope.cancel = function () {
285
+                        $modalInstance.dismiss('cancel');
286
+                    };
287
+                },
288
+                size: 'sm'
289
+            })
290
+
291
+            modalInstance.result.then(function (result) {
292
+                if (result) {
293
+                    if ($scope.selected.items.length != 0) {
294
+                        $rootScope.isMask = true;
295
+                    }
296
+                    var rmvList = [];
297
+                    angular.forEach($scope.selected.items, function (item) {
298
+                        rmvList.push(item.id);
299
+                    });
300
+
301
+                    if (rmvList.length > 0) {
302
+                        api_bpm_data.oneClickRecovery({ids: String(rmvList)}).then(function (response) {
303
+                            if (response.status == 200) {
304
+                                $rootScope.isMask = false;
305
+                                SweetAlert.swal({
306
+                                    title: "操作成功!",
307
+                                    type: "success",
308
+                                    confirmButtonColor: "#007AFF"
309
+                                }, function () {
310
+                                    $scope.myData = _.reject($scope.myData, function (o) {
311
+                                        return _.includes(rmvList, o.id);
312
+                                    });
313
+                                    $scope.selected = {
314
+                                        items: []
315
+                                    };
316
+                                });
317
+                                $scope.gridApi.selection.clearSelectedRows();
318
+                                $scope.refreshData('expand-right', $scope.fileData);
319
+                            } else {
320
+                                $rootScope.isMask = false;
321
+                                SweetAlert.swal({
322
+                                    title: "操作异常!",
323
+                                    text: "系统异常,请稍后重试,或者联系管理员!",
324
+                                    type: "error"
325
+                                });
326
+                            }
327
+                        })
328
+                    }
329
+
330
+                }
331
+
332
+            }, function () {
333
+                // $scope.ldloading[style.replace('-', '_')] = false;
334
+            });
335
+        }
336
+
271 337
         // console.log(row);
272 338
 
273 339
         $scope.wtwt = function(row) {
@@ -376,6 +442,36 @@ app.controller('jry_emergencyCtrl', ["$scope", "i18nService", "$rootScope", "$st
376 442
 
377 443
             });
378 444
 
445
+            //勾选行事件
446
+            gridApi.selection.on.rowSelectionChanged($scope, function (data) {
447
+                if (data.isSelected) {
448
+                    $scope.selected.items.push(data.entity);
449
+                } else {
450
+                    //objs:需要遍历的集合 data:遍历时当前的数据 index:遍历时当前索引 
451
+                    //array:需要遍历的集合,每次遍历时都会把objs原样的传一次。
452
+                    //angular.forEach(objs, function(data,index,array)
453
+                    angular.forEach($scope.selected.items, function (ObjIndex, index, destObj) {
454
+                        // console.log(ObjIndex);
455
+                        // console.log(index);
456
+                        // console.log(destObj);
457
+                        if (ObjIndex.id == data.entity.id) {
458
+                            destObj.splice(index, 1)
459
+                        }
460
+                    })
461
+                }
462
+            });
463
+
464
+            //批量全选
465
+            gridApi.selection.on.rowSelectionChangedBatch($scope, function (rows, event) {
466
+                angular.forEach(rows, function (ObjIndex, index, destObj) {
467
+                    if (ObjIndex.isSelected) {
468
+                        $scope.selected.items.push(ObjIndex.entity);
469
+                    } else {
470
+                        $scope.selected.items = [];
471
+                    }
472
+                });
473
+            });
474
+
379 475
 
380 476
 
381 477
             $scope.selected = {

+ 3 - 0
assets/js/controllers/incident/incidentCtrl.js

@@ -1854,6 +1854,7 @@ app.controller('incidentListCtrl', ["$scope", "$http", "i18nService", "$rootScop
1854 1854
         var filadata = angular.copy($scope.memoryfilterData);
1855 1855
         filadata.sum = 10000;
1856 1856
         console.log($scope.filadata)
1857
+        $rootScope.isMask = true;
1857 1858
         $http({
1858 1859
             url: api_bpm_data.downDataModel("incident", 3).getRequestedUrl(),
1859 1860
             method: 'POST',
@@ -1864,6 +1865,7 @@ app.controller('incidentListCtrl', ["$scope", "$http", "i18nService", "$rootScop
1864 1865
             },
1865 1866
             responseType: 'arraybuffer'
1866 1867
         }).success(function (data, status, headers, config) {
1868
+            $rootScope.isMask = false;
1867 1869
             // $scope.ldloading.zoom_in = false;
1868 1870
             var file = new Blob([data], {
1869 1871
                 type: 'application/vnd.ms-excel'
@@ -1878,6 +1880,7 @@ app.controller('incidentListCtrl', ["$scope", "$http", "i18nService", "$rootScop
1878 1880
             a.click();
1879 1881
         }).error(function (data, status, headers, config) {
1880 1882
             // $scope.ldloading.zoom_in = false;
1883
+            $rootScope.isMask = false;
1881 1884
             console.log(data);
1882 1885
         });
1883 1886
     }

+ 16 - 0
assets/js/controllers/mainCtrl.js

@@ -2964,6 +2964,22 @@ app.controller('AppCtrl', ['$rootScope', '$scope', '$state', '$translate', '$loc
2964 2964
               }
2965 2965
             })
2966 2966
           };
2967
+          // 一键已读
2968
+          $scope.redAllIn = function () {
2969
+            $rootScope.isMask = true;
2970
+            api_msg.oneClickRead({userId: $rootScope.user.id}).then(function (data) {
2971
+              $rootScope.isMask = false;
2972
+              if (data.status == 200) {
2973
+                $rootScope.msgData.messageStation.readStatus = 0,
2974
+                  api_msg.msgDataList($rootScope.msgData).then(function (data) {
2975
+                    $scope.wt_msgData = data
2976
+                    $rootScope.msg = data.list
2977
+                    $rootScope.all = data.pageCount;
2978
+                    $rootScope.noReadData = data.totalNum;
2979
+                  })
2980
+              }
2981
+            })
2982
+          };
2967 2983
         },
2968 2984
         size: 'lg',
2969 2985
         resolve: {

+ 7 - 0
assets/js/main.js

@@ -207,6 +207,9 @@ app.factory('api_msg', ['msgRestangular', function (msgRestangular) {
207 207
         updateDataList: function (data) {
208 208
             return msgService.customPOST(data, 'updateModel/messageStation', {});
209 209
         },
210
+        oneClickRead: function (data) {
211
+            return msgService.customPOST(data, 'oneClickRead', {});
212
+        },
210 213
     };
211 214
 }]);
212 215
 
@@ -948,6 +951,10 @@ app.factory('api_bpm_data', ['BpmRestangular', function (BpmRestangular) {
948 951
     var inspectionProcessActual = BpmRestangular.all("InspectionProcessActual");
949 952
     var solutionService = BpmRestangular.all("solution");
950 953
     return {
954
+        // 批量恢复
955
+        oneClickRecovery: function (data) {
956
+            return dataService.customPOST(data, 'oneClickRecovery');
957
+        },
951 958
         // 设置服务台积分规则
952 959
         setScoreRule: function (data) {
953 960
             return dataService.customPOST(data, 'setScoreRule');

+ 14 - 9
assets/views/desk/jry_emergency.html

@@ -8,18 +8,23 @@
8 8
     </div>
9 9
 </section>
10 10
 <div ng-controller="jry_emergencyCtrl">
11
-    <div class="btn-group">
12
-        <button class="btn btn-statebutton statebutton  keepleftbottom wtBtn" ng-click="onChange('')" ng-class="{'statecolor':searchstate==''}">全部</button>
13
-        <button class="btn btn-statebutton statebutton wtBtn" ng-class="{'statecolor':searchstate==dictionaryData[0]}" ng-click="onChange(dictionaryData[0])">未处理</button>
14
-        <button class="btn btn-statebutton statebutton wtBtn" ng-class="{'statecolor':searchstate==dictionaryData[1]}" ng-click="onChange(dictionaryData[1])">处理中</button>
15
-        <button class="btn btn-statebutton statebutton wtBtn" ng-class="{'statecolor':searchstate==dictionaryData[2]}" ng-click="onChange(dictionaryData[2])">不受理</button>
16
-        <button class="btn btn-statebutton statebutton keeprightbottom wtBtn" ng-class="{'statecolor':searchstate==dictionaryData[3]}" ng-click="onChange(dictionaryData[3])">暂不处理</button>
17
-        <button class="btn btn-statebutton statebutton keeprightbottom wtBtn" ng-class="{'statecolor':searchstate==dictionaryData[4]}" ng-click="onChange(dictionaryData[4])">已处理</button>
18
-        <button class="btn btn-statebutton statebutton keeprightbottom wtBtn" ng-class="{'statecolor':searchstate==dictionaryData[5]}" ng-click="onChange(dictionaryData[5])">已恢复</button>
11
+    <div style="display: flex; justify-content: space-between;">
12
+        <div class="btn-group">
13
+            <button class="btn btn-statebutton statebutton  keepleftbottom wtBtn" ng-click="onChange('')" ng-class="{'statecolor':searchstate==''}">全部</button>
14
+            <button class="btn btn-statebutton statebutton wtBtn" ng-class="{'statecolor':searchstate==dictionaryData[0]}" ng-click="onChange(dictionaryData[0])">未处理</button>
15
+            <button class="btn btn-statebutton statebutton wtBtn" ng-class="{'statecolor':searchstate==dictionaryData[1]}" ng-click="onChange(dictionaryData[1])">处理中</button>
16
+            <button class="btn btn-statebutton statebutton wtBtn" ng-class="{'statecolor':searchstate==dictionaryData[2]}" ng-click="onChange(dictionaryData[2])">不受理</button>
17
+            <button class="btn btn-statebutton statebutton keeprightbottom wtBtn" ng-class="{'statecolor':searchstate==dictionaryData[3]}" ng-click="onChange(dictionaryData[3])">暂不处理</button>
18
+            <button class="btn btn-statebutton statebutton keeprightbottom wtBtn" ng-class="{'statecolor':searchstate==dictionaryData[4]}" ng-click="onChange(dictionaryData[4])">已处理</button>
19
+            <button class="btn btn-statebutton statebutton keeprightbottom wtBtn" ng-class="{'statecolor':searchstate==dictionaryData[5]}" ng-click="onChange(dictionaryData[5])">已恢复</button>
20
+        </div>
21
+        <div>
22
+            <div class="btn btn_clean" ng-click="oneClickRecovery()" ng-disabled="selected.items.length==0" ng-show="searchstate.value === '0'">批量恢复</div>
23
+        </div>
19 24
     </div>
20 25
     <div class="wt_list">
21 26
         <div ui-i18n="{{lang}}" style="background: #fff;">
22
-            <div id="grid1" ui-grid="gridOptions" ui-grid-pagination external-scopes="$scope" ui-grid-resize-columns ui-grid-auto-resize
27
+            <div id="grid1" ui-grid="gridOptions" ui-grid-pagination external-scopes="$scope" ui-grid-resize-columns ui-grid-auto-resize ui-grid-selection
23 28
                 class="grid" style='    height: 610px;'></div>
24 29
         </div>
25 30
     </div>

+ 1 - 0
assets/views/wt_messages.html

@@ -49,6 +49,7 @@
49 49
 margin-top: 2%;padding-right: 2%;position: relative;">
50 50
     <!-- <my-pagination page-option="option"></my-pagination> -->
51 51
 
52
+    <button ng-click="redAllIn()" class="sBtn" ng-show="wt_msgData.list.length && message_type==2">一键已读</button>
52 53
     <button ng-click="sBtn()" class="sBtn" ng-hide="msgData.idx==0" id="sBtn1">上一页</button>
53 54
     <button ng-click="xBtn()" class="sBtn" ng-hide="wt_msgData.list.length<5" id="xBtn1">下一页</button>
54 55
     <button ng-click="closeModel()" class="sBtn">关闭</button>