From 6b8c2628cdef744521ef45f11e10828cfbbd4001 Mon Sep 17 00:00:00 2001 From: jinfeng.wang <jinfeng.wang@mobvista.com> Date: Tue, 13 Aug 2019 16:41:34 +0800 Subject: [PATCH] fix --- src/main/java/com/mobvista/apptag/controller/TagController.java | 10 ++++------ src/main/java/com/mobvista/apptag/service/TagService.java | 7 ++++++- src/main/java/com/mobvista/apptag/service/impl/TagServiceImpl.java | 48 ++++++++++++++++++++++++++++++++++++++++++++---- 3 files changed, 54 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/mobvista/apptag/controller/TagController.java b/src/main/java/com/mobvista/apptag/controller/TagController.java index 0683d9e..ee7b5c0 100644 --- a/src/main/java/com/mobvista/apptag/controller/TagController.java +++ b/src/main/java/com/mobvista/apptag/controller/TagController.java @@ -2,7 +2,6 @@ package com.mobvista.apptag.controller; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; -import com.github.pagehelper.PageHelper; import com.mobvista.apptag.config.WebSecurityConfig; import com.mobvista.apptag.entity.Feat; import com.mobvista.apptag.entity.Tag; @@ -88,7 +87,6 @@ public class TagController { @RequestParam(name = "ruleCode", required = false) String ruleCode, @RequestParam(name = "styleCode", required = false) String styleCode, @RequestParam(name = "themeCode", required = false) String themeCode) { - System.out.println("packageName=" + packageName + ",categoryCode=" + categoryCode); Map<String, String> codeMap = new HashMap<String, String>(); Map<String, String> featMap = featService.getMap(); @@ -142,10 +140,10 @@ public class TagController { @ResponseBody public PageUtil list(@SessionAttribute(WebSecurityConfig.SESSION_KEY) String userName, @RequestBody Query query, @RequestParam(name = "tag", required = false, defaultValue = "0") int tag) { - PageHelper.startPage(query.getOffset() / query.getLimit() + 1, query.getLimit()); - String search = query.getSearch(); - List<Tag> tags = tagDao.list(search, tag); - int total = tagDao.count(search, tag); + // PageHelper.startPage(query.getOffset() / query.getLimit() + 1, query.getLimit()); + // String search = query.getSearch(); + List<Tag> tags = tagService.list(userName, query); + int total = tagService.count(userName, query); PageUtil pageUtil = new PageUtil(tags, total); return pageUtil; } diff --git a/src/main/java/com/mobvista/apptag/service/TagService.java b/src/main/java/com/mobvista/apptag/service/TagService.java index 8c44c98..ef11302 100644 --- a/src/main/java/com/mobvista/apptag/service/TagService.java +++ b/src/main/java/com/mobvista/apptag/service/TagService.java @@ -1,6 +1,9 @@ package com.mobvista.apptag.service; import com.mobvista.apptag.entity.Tag; +import com.mobvista.apptag.utils.Query; + +import java.util.List; /** * @author wangjf @@ -11,5 +14,7 @@ public interface TagService { Tag find(String packageName); - // List<Tag> list(int pageNum, int pageSize); + List<Tag> list(String userId, Query query); + + int count(String userId, Query query); } \ No newline at end of file diff --git a/src/main/java/com/mobvista/apptag/service/impl/TagServiceImpl.java b/src/main/java/com/mobvista/apptag/service/impl/TagServiceImpl.java index 8b030ea..8c5c279 100644 --- a/src/main/java/com/mobvista/apptag/service/impl/TagServiceImpl.java +++ b/src/main/java/com/mobvista/apptag/service/impl/TagServiceImpl.java @@ -1,18 +1,17 @@ package com.mobvista.apptag.service.impl; +import com.github.pagehelper.PageHelper; import com.mobvista.apptag.entity.Tag; import com.mobvista.apptag.entity.User; import com.mobvista.apptag.mapper.TagDao; import com.mobvista.apptag.mapper.UserDao; import com.mobvista.apptag.service.TagService; +import com.mobvista.apptag.utils.Query; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.Arrays; -import java.util.Date; -import java.util.HashSet; -import java.util.Set; +import java.util.*; @Service("tagService") public class TagServiceImpl implements TagService { @@ -61,6 +60,47 @@ public class TagServiceImpl implements TagService { return tagDao.find(packageName); } + @Override + public List<Tag> list(String userId, Query query) { + User user = userDao.find(userId); + List<Tag> results; + PageHelper.startPage(query.getOffset() / query.getLimit() + 1, query.getLimit()); + results = tagDao.list(query.getSearch().toLowerCase(), 3); + List<Tag> results2 = new ArrayList<>(); + for (Tag tag : results) { + if (StringUtils.isBlank(tag.getUserId())) { + results2.add(tag); + } else { + String[] userIds = tag.getUserId().split(","); + Set<String> userSet = new HashSet<>(Arrays.asList(userIds)); + if (!userSet.contains(user.getUserId())) { + results2.add(tag); + } + } + } + return results2; + } + + @Override + public int count(String userId, Query query) { + User user = userDao.find(userId); + List<Tag> results; + results = tagDao.list(query.getSearch().toLowerCase(), 3); + int count = 0; + for (Tag tag : results) { + if (StringUtils.isBlank(tag.getUserId())) { + count += 1; + } else { + String[] userIds = tag.getUserId().split(","); + Set<String> userSet = new HashSet<>(Arrays.asList(userIds)); + if (!userSet.contains(user.getUserId())) { + count += 1; + } + } + } + return count; + } + /* @Override public List<Tag> list(int pageNum, int pageSize) { -- libgit2 0.27.1