message.js
2.95 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
(function () {
"use strict";
angular.module('xn.page', [])
/**
*
*消息列表控制器
*/
.controller("MessageIndexCtrl", function ($scope, $http, FoundationService, $modal) {
//获取id
var vm = $scope.vm = {
htmlSource: "",
showErrorType: 2 ,//集中显示
select:"全选"
};
//页面加载日志信息
$scope.getMessageList = function() {
FoundationService.getMessageList().success(function (data) {
$scope.messages = data.messageList;
});
};
$scope.getMessageList();
//页面加载已读消息
$scope.getReadedMessageList = function() {
FoundationService.getReadedMessageList().success(function (data) {
$scope.readedMessages = data.messageList;
});
};
$scope.getReadedMessageList();
//全选与非全选
$scope.selectAll = function () {
var app = $scope.select;
angular.forEach($scope.messages, function (f) {
f.selected = app;
});
};
//点击子节全部选中时上级节点被选中
$scope.selectItems = function () {
// 如果有任何一个子节点被选中,则让上级节点也选中
var i = 0;
var j = 0;
angular.forEach($scope.messages, function (f) {
i++;
if (true == f.selected) {
j++;
}
});
if (i == j) {
$scope.select = true;
}
else if (i > j) {
$scope.select = false;
}
};
// 标记已读
$scope.doRead = function () {
var messageIdList = [];
angular.forEach($scope.messages, function (f) {
if (f.selected) {
messageIdList.push(f.id);
}
});
//页面加载已读消息
FoundationService.doRead(messageIdList).success(function (data) {
$scope.getMessageList();
$scope.getReadedMessageList();
});
};
var cardFunction = function(templateUrl){
return function(id){
$scope.messageDetailId = id;
$modal.open({
controller:function ($scope,$modalInstance) {
$scope.cancel = function () {
$scope.getMessageList();
$scope.getReadedMessageList();
$modalInstance.dismiss("cancel");
};
},
scope:$scope,
templateUrl: templateUrl,
resolve: {data: function () {return {};}}
});
};
};
$scope.getMessageDetail = cardFunction("messageDetail.html");
});
})();