diff options
-rw-r--r-- | juick-server-core/src/main/java/com/juick/service/TagService.java | 9 | ||||
-rw-r--r-- | juick-server-jdbc/src/main/java/com/juick/service/TagServiceImpl.java | 19 |
2 files changed, 26 insertions, 2 deletions
diff --git a/juick-server-core/src/main/java/com/juick/service/TagService.java b/juick-server-core/src/main/java/com/juick/service/TagService.java index 78e8f563..7cd7768f 100644 --- a/juick-server-core/src/main/java/com/juick/service/TagService.java +++ b/juick-server-core/src/main/java/com/juick/service/TagService.java @@ -29,9 +29,9 @@ import java.util.stream.Stream; * Created by aalexeev on 11/13/16. */ public interface TagService { - com.juick.Tag getTag(int tid); + Tag getTag(int tid); - com.juick.Tag getTag(String tag, boolean autoCreate); + Tag getTag(String tag, boolean autoCreate); List<Tag> getTags(Stream<String> tags, boolean autoCreate); @@ -44,6 +44,7 @@ public interface TagService { List<String> getUserBLTags(int uid); List<String> getPopularTags(); + List<TagStats> getTagStats(); List<Tag> updateTags(int mid, Collection<Tag> newTags); @@ -55,4 +56,8 @@ public interface TagService { List<Integer> getMessageTagsIDs(int mid); boolean blacklistTag(User user, Tag tag); + + boolean isInBL(User user, Tag tag); + + boolean isSubscribed(User user, Tag tag); } diff --git a/juick-server-jdbc/src/main/java/com/juick/service/TagServiceImpl.java b/juick-server-jdbc/src/main/java/com/juick/service/TagServiceImpl.java index 9b89bca3..2540037a 100644 --- a/juick-server-jdbc/src/main/java/com/juick/service/TagServiceImpl.java +++ b/juick-server-jdbc/src/main/java/com/juick/service/TagServiceImpl.java @@ -274,4 +274,23 @@ public class TagServiceImpl extends BaseJdbcService implements TagService { new MapSqlParameterSource().addValue("tid", tag.TID) .addValue("uid", user.getUid())) > 0; } + + @Transactional(readOnly = true) + @Override + public boolean isInBL(User user, Tag tag) { + List<Integer> list = getJdbcTemplate().queryForList( + "SELECT 1 FROM bl_tags WHERE user_id = ? AND tag_id = ?", + Integer.class, user.getUid(), tag.TID); + return !list.isEmpty() && list.get(0) == 1; + } + + @Transactional(readOnly = true) + @Override + public boolean isSubscribed(User user, Tag tag) { + List<Integer> list = getJdbcTemplate().queryForList( + "SELECT 1 FROM subscr_tags WHERE suser_id = ? AND tag_id = ?", + Integer.class, user.getUid(), tag.TID); + return !list.isEmpty() && list.get(0) == 1; + } + } |