From a8494f09496645b1c78ac5b04f33156a4b5889a6 Mon Sep 17 00:00:00 2001 From: luchenqun Date: Tue, 15 May 2018 11:20:00 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=AF=E4=BB=A5=E8=8E=B7=E5=8F=96=E5=85=B6?= =?UTF-8?q?=E4=BB=96=E4=BA=BA=E5=88=86=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- database/db.js | 6 +++++- routes/api.js | 4 +++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/database/db.js b/database/db.js index 7e734a7..25bb843 100644 --- a/database/db.js +++ b/database/db.js @@ -410,7 +410,11 @@ db.getUser = function(username) { }; db.getTags = function(user_id) { - var sql = "SELECT t.id, t.user_id, t.name, DATE_FORMAT(t.last_use, '%Y-%m-%d %H:%i:%s') as last_use, t.sort, tb.cnt, tg.ncnt FROM `tags` as t LEFT OUTER JOIN ( SELECT `tag_id`, COUNT(tag_id) as cnt FROM tags_bookmarks GROUP BY tag_id ) tb ON t.id = tb.tag_id LEFT OUTER JOIN ( SELECT `tag_id`, COUNT(tag_id) as ncnt FROM notes GROUP BY tag_id ) tg ON t.id = tg.tag_id WHERE t.user_id = '" + user_id + "' ORDER BY t.sort, t.last_use DESC"; + var sql = "SELECT t.id, t.user_id, t.name, DATE_FORMAT(t.last_use, '%Y-%m-%d %H:%i:%s') as last_use, t.sort, tb.cnt, tg.ncnt FROM `tags` as t LEFT OUTER JOIN ( SELECT `tag_id`, COUNT(tag_id) as cnt FROM tags_bookmarks GROUP BY tag_id ) tb ON t.id = tb.tag_id LEFT OUTER JOIN ( SELECT `tag_id`, COUNT(tag_id) as ncnt FROM notes GROUP BY tag_id ) tg ON t.id = tg.tag_id "; + if (user_id) { + sql += "WHERE t.user_id = '" + user_id + "' "; + } + sql += "ORDER BY t.sort, t.last_use DESC"; console.log('getTags sql = ', sql); return new Promise(function(resolve, reject) { client.query(sql, (err, result) => { diff --git a/routes/api.js b/routes/api.js index c7135f6..71d0242 100644 --- a/routes/api.js +++ b/routes/api.js @@ -516,6 +516,8 @@ api.get('/bookmarksByTag', function(req, res) { bookmarks: [], } + // -1 获取自己定制的 + // -2 获取全站定制的 var fun = (params.tagId <= -1) ? (params.tagId == -1 ? db.getBookmarksCostomTag : db.getBookmarksCostomAllUsersTag) : (db.getBookmarksByTag); fun((params.tagId <= -1) ? (userId) : (params), params.perPageItems) @@ -526,7 +528,7 @@ api.get('/bookmarksByTag', function(req, res) { }) .then((tbs) => { tagsBookmarks = tbs; - return db.getTags(userId); + return db.getTags(params.tagId >= -1 ? userId : null); }) .then((tags) => { // 获取每个书签的所有分类标签