实时更新点击时间与点击次数
This commit is contained in:
parent
9bebbb40fc
commit
cbcc4f7e23
|
|
@ -564,7 +564,11 @@ db.getBookmarksTable = function(params) {
|
|||
if (err) {
|
||||
reject(err);
|
||||
} else {
|
||||
var bookmarksClickCount, bookmarksCreatedAt, bookmarksLatestClick;
|
||||
var temp = [];
|
||||
var bookmarks = [];
|
||||
var begin = (params.currentPage - 1) * params.perPageItems;
|
||||
var end = params.currentPage * params.perPageItems;
|
||||
|
||||
result.sort((a, b) => {
|
||||
var click1 = parseInt(a.click_count);
|
||||
var click2 = parseInt(b.click_count);
|
||||
|
|
@ -576,19 +580,50 @@ db.getBookmarksTable = function(params) {
|
|||
return 1;
|
||||
}
|
||||
})
|
||||
bookmarksClickCount = result.slice((params.currentPage - 1) * params.perPageItems, params.currentPage * params.perPageItems);
|
||||
temp = result.slice(begin, end);
|
||||
temp.forEach((b1) => {
|
||||
var find = false;
|
||||
bookmarks.forEach((b2) => {
|
||||
if (b1.id == b2.id) {
|
||||
find = true;
|
||||
}
|
||||
})
|
||||
if (!find) {
|
||||
bookmarks.push(b1);
|
||||
}
|
||||
})
|
||||
|
||||
result.sort((a, b) => a.created_at >= b.created_at ? -1 : 1);
|
||||
bookmarksCreatedAt = result.slice((params.currentPage - 1) * params.perPageItems, params.currentPage * params.perPageItems);
|
||||
temp = result.slice(begin, end);
|
||||
temp.forEach((b1) => {
|
||||
var find = false;
|
||||
bookmarks.forEach((b2) => {
|
||||
if (b1.id == b2.id) {
|
||||
find = true;
|
||||
}
|
||||
})
|
||||
if (!find) {
|
||||
bookmarks.push(b1);
|
||||
}
|
||||
})
|
||||
|
||||
result.sort((a, b) => a.last_click >= b.last_click ? -1 : 1);
|
||||
bookmarksLatestClick = result.slice((params.currentPage - 1) * params.perPageItems, params.currentPage * params.perPageItems);
|
||||
temp = result.slice(begin, end);
|
||||
temp.forEach((b1) => {
|
||||
var find = false;
|
||||
bookmarks.forEach((b2) => {
|
||||
if (b1.id == b2.id) {
|
||||
find = true;
|
||||
}
|
||||
})
|
||||
if (!find) {
|
||||
bookmarks.push(b1);
|
||||
}
|
||||
})
|
||||
|
||||
var bookmarksData = {
|
||||
totalItems: result.length,
|
||||
bookmarksClickCount: bookmarksClickCount,
|
||||
bookmarksCreatedAt: bookmarksCreatedAt,
|
||||
bookmarksLatestClick: bookmarksLatestClick,
|
||||
bookmarks: bookmarks,
|
||||
}
|
||||
resolve(bookmarksData);
|
||||
}
|
||||
|
|
@ -608,7 +643,11 @@ db.getBookmarksByTag = function(params) {
|
|||
if (err) {
|
||||
reject(err);
|
||||
} else {
|
||||
var bookmarksClickCount, bookmarksCreatedAt, bookmarksLatestClick;
|
||||
var temp = [];
|
||||
var bookmarks = [];
|
||||
var begin = (params.currentPage - 1) * params.perPageItems;
|
||||
var end = params.currentPage * params.perPageItems;
|
||||
|
||||
result.sort((a, b) => {
|
||||
var click1 = parseInt(a.click_count);
|
||||
var click2 = parseInt(b.click_count);
|
||||
|
|
@ -620,19 +659,50 @@ db.getBookmarksByTag = function(params) {
|
|||
return 1;
|
||||
}
|
||||
})
|
||||
bookmarksClickCount = result.slice((params.currentPage - 1) * params.perPageItems, params.currentPage * params.perPageItems);
|
||||
temp = result.slice(begin, end);
|
||||
temp.forEach((b1) => {
|
||||
var find = false;
|
||||
bookmarks.forEach((b2) => {
|
||||
if (b1.id == b2.id) {
|
||||
find = true;
|
||||
}
|
||||
})
|
||||
if (!find) {
|
||||
bookmarks.push(b1);
|
||||
}
|
||||
})
|
||||
|
||||
result.sort((a, b) => a.created_at >= b.created_at ? -1 : 1);
|
||||
bookmarksCreatedAt = result.slice((params.currentPage - 1) * params.perPageItems, params.currentPage * params.perPageItems);
|
||||
temp = result.slice(begin, end);
|
||||
temp.forEach((b1) => {
|
||||
var find = false;
|
||||
bookmarks.forEach((b2) => {
|
||||
if (b1.id == b2.id) {
|
||||
find = true;
|
||||
}
|
||||
})
|
||||
if (!find) {
|
||||
bookmarks.push(b1);
|
||||
}
|
||||
})
|
||||
|
||||
result.sort((a, b) => a.last_click >= b.last_click ? -1 : 1);
|
||||
bookmarksLatestClick = result.slice((params.currentPage - 1) * params.perPageItems, params.currentPage * params.perPageItems);
|
||||
temp = result.slice(begin, end);
|
||||
temp.forEach((b1) => {
|
||||
var find = false;
|
||||
bookmarks.forEach((b2) => {
|
||||
if (b1.id == b2.id) {
|
||||
find = true;
|
||||
}
|
||||
})
|
||||
if (!find) {
|
||||
bookmarks.push(b1);
|
||||
}
|
||||
})
|
||||
|
||||
var bookmarksData = {
|
||||
totalItems: result.length,
|
||||
bookmarksClickCount: bookmarksClickCount,
|
||||
bookmarksCreatedAt: bookmarksCreatedAt,
|
||||
bookmarksLatestClick: bookmarksLatestClick,
|
||||
bookmarks: bookmarks,
|
||||
}
|
||||
resolve(bookmarksData);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@ app.controller('bookmarkInfoCtr', ['$scope', '$state', '$timeout', '$sce', '$win
|
|||
id: id
|
||||
});
|
||||
$scope.bookmark.click_count += 1;
|
||||
$scope.bookmark.last_click = $filter("date")(new Date(), "yyyy-MM-dd");
|
||||
$scope.bookmark.last_click = $filter("date")(new Date(), "yyyy-MM-dd HH:mm:ss");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -30,6 +30,7 @@ app.controller('bookmarksCtr', ['$scope', '$state', '$stateParams', '$filter', '
|
|||
clicked: false,
|
||||
name: '最多使用'
|
||||
}]
|
||||
var timeagoInstance = timeago();
|
||||
|
||||
updateShowStyle();
|
||||
getBookmarks();
|
||||
|
|
@ -58,7 +59,9 @@ app.controller('bookmarksCtr', ['$scope', '$state', '$stateParams', '$filter', '
|
|||
$scope.bookmarks.forEach(function(bookmark) {
|
||||
if (bookmark.id == id) {
|
||||
bookmark.click_count += 1;
|
||||
bookmark.last_click = $filter("date")(new Date(), "yyyy-MM-dd");
|
||||
bookmark.last_click = $filter("date")(new Date(), "yyyy-MM-dd HH:mm:ss");
|
||||
$("#time"+bookmark.id).attr('data-timeago', bookmark.last_click);
|
||||
timeagoInstance.render(document.querySelectorAll("#time"+bookmark.id), 'zh_CN');
|
||||
}
|
||||
})
|
||||
}
|
||||
|
|
@ -109,15 +112,10 @@ app.controller('bookmarksCtr', ['$scope', '$state', '$stateParams', '$filter', '
|
|||
var bookmark = $.extend(true, {}, b); // 利用jQuery执行深度拷贝
|
||||
bookmark.own = true;
|
||||
if ($scope.showStyle == 'navigate') {
|
||||
bookmark.last_click = bookmark.last_click.substring(0, 10);
|
||||
bookmark.created_at = bookmark.created_at.substring(0, 10);
|
||||
bookmark.tags = [{
|
||||
id: bookmark.tag_id,
|
||||
name: bookmark.tag_name
|
||||
}];
|
||||
} else if ($scope.showStyle == 'card') {
|
||||
bookmark.last_click = bookmark.last_click.substring(0, 10);
|
||||
bookmark.created_at = bookmark.created_at.substring(0, 10);
|
||||
}
|
||||
pubSubService.publish('TagCtr.showBookmarkInfo', bookmark);
|
||||
bookmarkService.clickBookmark({
|
||||
|
|
@ -183,16 +181,21 @@ app.controller('bookmarksCtr', ['$scope', '$state', '$stateParams', '$filter', '
|
|||
}
|
||||
$scope.order = $scope.order.map(() => false);
|
||||
$scope.order[index] = true;
|
||||
var begin = ($scope.currentPage - 1) * perPageItems;
|
||||
var end = $scope.currentPage * perPageItems;
|
||||
if ($scope.order[0]) {
|
||||
$scope.bookmarks = $scope.bookmarkData.bookmarksClickCount;
|
||||
$scope.bookmarkData.bookmarks.sort(clickCmp)
|
||||
$scope.bookmarks = $scope.bookmarkData.bookmarks.slice(begin, end);
|
||||
} else if ($scope.order[1]) {
|
||||
$scope.bookmarks = $scope.bookmarkData.bookmarksCreatedAt;
|
||||
$scope.bookmarkData.bookmarks.sort((a, b) => a.created_at >= b.created_at ? -1 : 1);
|
||||
$scope.bookmarks = $scope.bookmarkData.bookmarks.slice(begin, end);
|
||||
} else {
|
||||
$scope.bookmarks = $scope.bookmarkData.bookmarksLatestClick;
|
||||
$scope.bookmarkData.bookmarks.sort((a, b) => a.last_click >= b.last_click ? -1 : 1);
|
||||
$scope.bookmarks = $scope.bookmarkData.bookmarks.slice(begin, end);
|
||||
}
|
||||
|
||||
$timeout(function() {
|
||||
var timeagoInstance = timeago();
|
||||
timeagoInstance.cancel();
|
||||
timeagoInstance.render(document.querySelectorAll('.need_to_be_rendered'), 'zh_CN');
|
||||
}, 100)
|
||||
}
|
||||
|
|
@ -209,17 +212,7 @@ app.controller('bookmarksCtr', ['$scope', '$state', '$stateParams', '$filter', '
|
|||
} else if (index == 1) {
|
||||
$scope.bookmarkData.sort((a, b) => a.created_at >= b.created_at ? -1 : 1);
|
||||
} else {
|
||||
$scope.bookmarkData.sort((a, b) => {
|
||||
var click1 = parseInt(a.click_count);
|
||||
var click2 = parseInt(b.click_count);
|
||||
if (click1 > click2) {
|
||||
return -1;
|
||||
} else if (click1 == click2) {
|
||||
return a.created_at >= b.created_at ? -1 : 1;
|
||||
} else {
|
||||
return 1;
|
||||
}
|
||||
})
|
||||
$scope.bookmarkData.sort(clickCmp)
|
||||
}
|
||||
$scope.bookmarks = $scope.bookmarkData.slice(0, 68);
|
||||
}
|
||||
|
|
@ -248,7 +241,7 @@ app.controller('bookmarksCtr', ['$scope', '$state', '$stateParams', '$filter', '
|
|||
if (!params.showStyle) {
|
||||
bookmarkService.userInfo({})
|
||||
.then((user) => {
|
||||
$scope.showStyle = user && user.show_style;
|
||||
$scope.showStyle = (user && user.show_style) || 'navigate';
|
||||
updateShowStyle();
|
||||
getBookmarks(); // 拿到默认显示风格了,继续取获取书签
|
||||
})
|
||||
|
|
@ -363,4 +356,16 @@ app.controller('bookmarksCtr', ['$scope', '$state', '$stateParams', '$filter', '
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
function clickCmp(a, b){
|
||||
var click1 = parseInt(a.click_count);
|
||||
var click2 = parseInt(b.click_count);
|
||||
if (click1 > click2) {
|
||||
return -1;
|
||||
} else if (click1 == click2) {
|
||||
return a.created_at >= b.created_at ? -1 : 1;
|
||||
} else {
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
}]);
|
||||
|
|
|
|||
|
|
@ -21,6 +21,7 @@ app.controller('searchCtr', ['$scope', '$state', '$stateParams', '$filter', '$wi
|
|||
$scope.loading = false;
|
||||
$scope.waitDelBookmark = {};
|
||||
$scope.searchHotBookmarks = false;
|
||||
var timeagoInstance = timeago();
|
||||
|
||||
$scope.changeCurrentPage = function(currentPage) {
|
||||
currentPage = parseInt(currentPage) || 0;
|
||||
|
|
@ -62,9 +63,11 @@ app.controller('searchCtr', ['$scope', '$state', '$stateParams', '$filter', '$wi
|
|||
id: id
|
||||
});
|
||||
$scope.bookmarks.forEach(function(bookmark) {
|
||||
if (bookmark.id == id) {
|
||||
if (bookmark.id == id && bookmark.own) {
|
||||
bookmark.click_count += 1;
|
||||
bookmark.last_click = $filter("date")(new Date(), "yyyy-MM-dd");
|
||||
bookmark.last_click = $filter("date")(new Date(), "yyyy-MM-dd HH:mm:ss");
|
||||
$("#time"+bookmark.id).attr('data-timeago', bookmark.last_click);
|
||||
timeagoInstance.render(document.querySelectorAll("#time"+bookmark.id), 'zh_CN');
|
||||
}
|
||||
})
|
||||
}
|
||||
|
|
@ -274,7 +277,6 @@ app.controller('searchCtr', ['$scope', '$state', '$stateParams', '$filter', '$wi
|
|||
|
||||
function transition() {
|
||||
$timeout(function() {
|
||||
var timeagoInstance = timeago();
|
||||
timeagoInstance.render(document.querySelectorAll('.need_to_be_rendered'), 'zh_CN');
|
||||
}, 100)
|
||||
var className = 'js-table-search';
|
||||
|
|
|
|||
|
|
@ -22,6 +22,7 @@ app.controller('tagsCtr', ['$scope', '$filter', '$window', '$stateParams', '$tim
|
|||
$scope.waitDelTag = {};
|
||||
$scope.waitDelBookmark = {};
|
||||
$scope.bookmarkData = {};
|
||||
var timeagoInstance = timeago();
|
||||
|
||||
pubSubService.subscribe('MenuCtr.tags', $scope, function(event, data) {
|
||||
console.log('subscribe MenuCtr.tags', data);
|
||||
|
|
@ -34,15 +35,21 @@ app.controller('tagsCtr', ['$scope', '$filter', '$window', '$stateParams', '$tim
|
|||
}
|
||||
$scope.order = $scope.order.map(() => false);
|
||||
$scope.order[index] = true;
|
||||
var begin = ($scope.currentPage - 1) * perPageItems;
|
||||
var end = $scope.currentPage * perPageItems;
|
||||
|
||||
if ($scope.order[0]) {
|
||||
$scope.bookmarks = $scope.bookmarkData.bookmarksClickCount;
|
||||
$scope.bookmarkData.bookmarks.sort(clickCmp)
|
||||
$scope.bookmarks = $scope.bookmarkData.bookmarks.slice(begin, end);;
|
||||
} else if ($scope.order[1]) {
|
||||
$scope.bookmarks = $scope.bookmarkData.bookmarksCreatedAt;
|
||||
$scope.bookmarkData.bookmarks.sort((a, b) => a.created_at >= b.created_at ? -1 : 1);
|
||||
$scope.bookmarks = $scope.bookmarkData.bookmarks.slice(begin, end);;
|
||||
} else {
|
||||
$scope.bookmarks = $scope.bookmarkData.bookmarksLatestClick;
|
||||
$scope.bookmarkData.bookmarks.sort((a, b) => a.last_click >= b.last_click ? -1 : 1);
|
||||
$scope.bookmarks = $scope.bookmarkData.bookmarks.slice(begin, end);;
|
||||
}
|
||||
$timeout(function() {
|
||||
var timeagoInstance = timeago();
|
||||
timeagoInstance.cancel();
|
||||
timeagoInstance.render(document.querySelectorAll('.need_to_be_rendered'), 'zh_CN');
|
||||
}, 100)
|
||||
}
|
||||
|
|
@ -104,10 +111,12 @@ app.controller('tagsCtr', ['$scope', '$filter', '$window', '$stateParams', '$tim
|
|||
bookmarkService.clickBookmark({
|
||||
id: id
|
||||
});
|
||||
$scope.bookmarks.forEach(function(bookmark) {
|
||||
$scope.bookmarks.forEach(function(bookmark, index) {
|
||||
if (bookmark.id == id) {
|
||||
bookmark.click_count += 1;
|
||||
bookmark.last_click = $filter("date")(new Date(), "yyyy-MM-dd");
|
||||
bookmark.last_click = $filter("date")(new Date(), "yyyy-MM-dd HH:mm:ss");
|
||||
$("#time"+bookmark.id).attr('data-timeago', bookmark.last_click);
|
||||
timeagoInstance.render(document.querySelectorAll("#time"+bookmark.id), 'zh_CN');
|
||||
}
|
||||
})
|
||||
}
|
||||
|
|
@ -469,4 +478,16 @@ app.controller('tagsCtr', ['$scope', '$filter', '$window', '$stateParams', '$tim
|
|||
duration: 500,
|
||||
});
|
||||
}
|
||||
|
||||
function clickCmp(a, b){
|
||||
var click1 = parseInt(a.click_count);
|
||||
var click2 = parseInt(b.click_count);
|
||||
if (click1 > click2) {
|
||||
return -1;
|
||||
} else if (click1 == click2) {
|
||||
return a.created_at >= b.created_at ? -1 : 1;
|
||||
} else {
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
}]);
|
||||
|
|
|
|||
|
|
@ -106,7 +106,7 @@
|
|||
<span title="{{bookmark.created_at}}" class="need_to_be_rendered" data-timeago="{{bookmark.created_at}}"></span>
|
||||
</td>
|
||||
<td>
|
||||
<span title="{{bookmark.last_click}}" class="need_to_be_rendered" data-timeago="{{bookmark.last_click}}"></span>
|
||||
<span id="time{{bookmark.id}}" title="{{bookmark.last_click}}" class="need_to_be_rendered" data-timeago="{{bookmark.last_click}}"></span>
|
||||
</td>
|
||||
<td>
|
||||
<div class="ui label" ng-repeat="tag in bookmark.tags" tag-id="{{ tag.id }}" ng-click="jumpToTags(tag.id)">
|
||||
|
|
|
|||
|
|
@ -157,7 +157,7 @@
|
|||
<span title="{{bookmark.created_at}}" class="need_to_be_rendered" data-timeago="{{bookmark.created_at}}"></span>
|
||||
</td>
|
||||
<td>
|
||||
<span title="{{bookmark.last_click}}" class="need_to_be_rendered" data-timeago="{{bookmark.last_click}}"></span>
|
||||
<span id="time{{bookmark.id}}" title="{{bookmark.last_click}}" class="need_to_be_rendered" data-timeago="{{bookmark.last_click}}"></span>
|
||||
</td>
|
||||
<td>
|
||||
<div class="ui label" ng-repeat="tag in bookmark.tags" tag-id="{{ tag.id }}" ng-if="!searchHotBookmarks">
|
||||
|
|
|
|||
|
|
@ -76,7 +76,7 @@
|
|||
<span title="{{bookmark.created_at}}" class="need_to_be_rendered" data-timeago="{{bookmark.created_at}}"></span>
|
||||
</td>
|
||||
<td>
|
||||
<span title="{{bookmark.last_click}}" class="need_to_be_rendered" data-timeago="{{bookmark.last_click}}"></span>
|
||||
<span id="time{{bookmark.id}}" title="{{bookmark.last_click}}" class="need_to_be_rendered" data-timeago="{{bookmark.last_click}}"></span>
|
||||
</td>
|
||||
<td>
|
||||
<div class="ui label" ng-repeat="tag in bookmark.tags" tag-id="{{ tag.id }}" ng-click="getBookmarks(tag.id, 1)">
|
||||
|
|
|
|||
|
|
@ -315,6 +315,8 @@ api.get('/bookmarks', function(req, res) {
|
|||
tag.bookmarks = [];
|
||||
}
|
||||
tag.click += bookmark.click_count;
|
||||
bookmark.created_at = new Date(bookmark.created_at).format("yyyy-MM-dd hh:mm:ss");
|
||||
bookmark.last_click = new Date(bookmark.last_click).format("yyyy-MM-dd hh:mm:ss");
|
||||
tag.bookmarks.push(bookmark);
|
||||
});
|
||||
if (result && result.length > 0) {
|
||||
|
|
@ -367,19 +369,14 @@ api.get('/bookmarks', function(req, res) {
|
|||
var tagsBookmarks = [];
|
||||
var sendData = {
|
||||
totalItems: 0,
|
||||
bookmarksClickCount: [],
|
||||
bookmarksCreatedAt: [],
|
||||
bookmarksLatestClick: [],
|
||||
bookmarks: [],
|
||||
}
|
||||
|
||||
params.userId = userId;
|
||||
db.getBookmarksTable(params)
|
||||
.then((bookmarksData) => {
|
||||
sendData = bookmarksData;
|
||||
var bookmarkIds = []
|
||||
.concat(sendData.bookmarksClickCount.map((bookmark) => bookmark.id))
|
||||
.concat(sendData.bookmarksCreatedAt.map((bookmark) => bookmark.id))
|
||||
.concat(sendData.bookmarksLatestClick.map((bookmark) => bookmark.id))
|
||||
var bookmarkIds = sendData.bookmarks.map((bookmark) => bookmark.id)
|
||||
return db.getTagsBookmarks(bookmarkIds);
|
||||
})
|
||||
.then((tbs) => {
|
||||
|
|
@ -387,22 +384,20 @@ api.get('/bookmarks', function(req, res) {
|
|||
return db.getTags(userId);
|
||||
})
|
||||
.then((tags) => {
|
||||
var objectName = ['bookmarksClickCount', 'bookmarksCreatedAt', 'bookmarksLatestClick'];
|
||||
objectName.forEach((name) => {
|
||||
sendData[name].forEach(function(bookmark, index) {
|
||||
var bookmarkTags = [];
|
||||
tagsBookmarks.forEach(function(tb) {
|
||||
if (tb.bookmark_id == bookmark.id) {
|
||||
tags.forEach(function(tag) {
|
||||
if (tb.tag_id == tag.id) {
|
||||
bookmarkTags.push(tag)
|
||||
}
|
||||
})
|
||||
}
|
||||
});
|
||||
sendData[name][index].tags = bookmarkTags;
|
||||
})
|
||||
sendData.bookmarks.forEach(function(bookmark, index) {
|
||||
var bookmarkTags = [];
|
||||
tagsBookmarks.forEach(function(tb) {
|
||||
if (tb.bookmark_id == bookmark.id) {
|
||||
tags.forEach(function(tag) {
|
||||
if (tb.tag_id == tag.id) {
|
||||
bookmarkTags.push(tag)
|
||||
}
|
||||
})
|
||||
}
|
||||
});
|
||||
sendData.bookmarks[index].tags = bookmarkTags;
|
||||
})
|
||||
|
||||
res.json(sendData);
|
||||
})
|
||||
.catch((err) => console.log('bookmarks table or card err', err))
|
||||
|
|
@ -440,17 +435,12 @@ api.get('/bookmarksByTag', function(req, res) {
|
|||
var totalItems = 0;
|
||||
var sendData = {
|
||||
totalItems: 0,
|
||||
bookmarksClickCount: [],
|
||||
bookmarksCreatedAt: [],
|
||||
bookmarksLatestClick: [],
|
||||
bookmarks: [],
|
||||
}
|
||||
db.getBookmarksByTag(params)
|
||||
.then((bookmarksData) => {
|
||||
sendData = bookmarksData;
|
||||
var bookmarkIds = []
|
||||
.concat(sendData.bookmarksClickCount.map((bookmark) => bookmark.id))
|
||||
.concat(sendData.bookmarksCreatedAt.map((bookmark) => bookmark.id))
|
||||
.concat(sendData.bookmarksLatestClick.map((bookmark) => bookmark.id))
|
||||
var bookmarkIds = sendData.bookmarks.map((bookmark) => bookmark.id)
|
||||
return db.getTagsBookmarks(bookmarkIds);
|
||||
})
|
||||
.then((tbs) => {
|
||||
|
|
@ -459,25 +449,22 @@ api.get('/bookmarksByTag', function(req, res) {
|
|||
})
|
||||
.then((tags) => {
|
||||
// 获取每个书签的所有分类标签
|
||||
var objectName = ['bookmarksClickCount', 'bookmarksCreatedAt', 'bookmarksLatestClick'];
|
||||
objectName.forEach((name) => {
|
||||
sendData[name].forEach(function(bookmark, index) {
|
||||
var bookmarkTags = [];
|
||||
tagsBookmarks.forEach(function(tb) {
|
||||
if (tb.bookmark_id == bookmark.id) {
|
||||
tags.forEach(function(tag) {
|
||||
if (tb.tag_id == tag.id) {
|
||||
bookmarkTags.push(tag)
|
||||
}
|
||||
})
|
||||
}
|
||||
});
|
||||
sendData[name][index].tags = bookmarkTags;
|
||||
})
|
||||
sendData.bookmarks.forEach(function(bookmark, index) {
|
||||
var bookmarkTags = [];
|
||||
tagsBookmarks.forEach(function(tb) {
|
||||
if (tb.bookmark_id == bookmark.id) {
|
||||
tags.forEach(function(tag) {
|
||||
if (tb.tag_id == tag.id) {
|
||||
bookmarkTags.push(tag)
|
||||
}
|
||||
})
|
||||
}
|
||||
});
|
||||
sendData.bookmarks[index].tags = bookmarkTags;
|
||||
})
|
||||
res.json(sendData);
|
||||
})
|
||||
.catch((err) => console.log('bookmarks table or card err', err))
|
||||
.catch((err) => console.log('getBookmarksByTag err', err))
|
||||
|
||||
});
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue