From 5abc15e47e73e2bf3d7a7c7cc7ff3e6914b3b3e5 Mon Sep 17 00:00:00 2001 From: zxc <954985706@qq.com> Date: Wed, 3 Jun 2020 18:15:23 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B1=85=E6=B0=91=E7=AB=AF=E6=A0=87=E7=AD=BE?= =?UTF-8?q?=E7=BA=A7=E8=81=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/dto/feign/GovVoiceFeignClient.java | 19 ++++-- .../fallback/GovVoiceFeignClientFallBack.java | 12 +++- .../dto/form/CorrelationTagListFormDTO.java | 21 ++++++ .../epmet/dto/form/ResiTagListFormDto.java | 5 +- .../epmet/dto/form/TagCascadeListFormDTO.java | 37 ++++++++++ .../result/CorrelationTagListResultDTO.java | 27 ++++++++ .../epmet/dto/result/TagInfoResultDTO.java | 27 ++++++++ .../java/com/epmet/constant/TagConstant.java | 5 ++ .../com/epmet/controller/TagController.java | 39 +++++++---- .../main/java/com/epmet/dao/ArticleDao.java | 6 +- .../main/java/com/epmet/redis/TagRedis.java | 67 +++++++++++++++---- .../java/com/epmet/service/TagService.java | 24 ++++--- .../epmet/service/impl/TagServiceImpl.java | 30 ++++++--- .../src/main/resources/mapper/ArticleDao.xml | 2 +- .../epmet/dto/form/ResiTagListFormDto.java | 35 ---------- .../epmet/controller/ArticleController.java | 26 +++++-- .../com/epmet/service/ArticleService.java | 14 +++- .../service/impl/ArticleServiceImpl.java | 21 ++++-- .../com/epmet/feign/EpmetUserFeignClient.java | 43 ------------ .../EpmetUserFeignClientFallBack.java | 31 --------- 20 files changed, 311 insertions(+), 180 deletions(-) create mode 100644 epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/CorrelationTagListFormDTO.java create mode 100644 epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/TagCascadeListFormDTO.java create mode 100644 epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/CorrelationTagListResultDTO.java create mode 100644 epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/TagInfoResultDTO.java delete mode 100644 epmet-module/resi-voice/resi-voice-client/src/main/java/com/epmet/dto/form/ResiTagListFormDto.java delete mode 100644 epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserFeignClient.java delete mode 100644 epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserFeignClientFallBack.java diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/feign/GovVoiceFeignClient.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/feign/GovVoiceFeignClient.java index dd71cfc082..189c43de65 100644 --- a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/feign/GovVoiceFeignClient.java +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/feign/GovVoiceFeignClient.java @@ -3,12 +3,12 @@ package com.epmet.dto.feign; import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.feign.fallback.GovVoiceFeignClientFallBack; -import com.epmet.dto.form.ResiTagListFormDto; -import com.epmet.dto.result.TagInfoResultDto; +import com.epmet.dto.form.ResiTagListFormDTO; +import com.epmet.dto.form.TagCascadeListFormDTO; +import com.epmet.dto.result.TagInfoResultDTO; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.ResponseBody; import java.util.List; @@ -17,7 +17,7 @@ import java.util.List; * @CreateTime 2020/6/2 16:05 * , url = "localhost:8105" */ -//@FeignClient(name = ServiceConstant.GOV_VOICE_SERVER, fallback = GovVoiceFeignClientFallBack.class, url = "localhost:8105") +//@FeignClient(name = ServiceConstant.GOV_VOICE_SERVER, fallback = GovVoiceFeignClientFallBack.class,url = "localhost:8105") @FeignClient(name = ServiceConstant.GOV_VOICE_SERVER, fallback = GovVoiceFeignClientFallBack.class) public interface GovVoiceFeignClient { @@ -27,6 +27,15 @@ public interface GovVoiceFeignClient { * @author zxc */ @PostMapping("/gov/voice/tag/resitaglist") - Result> resiTagList(@RequestBody ResiTagListFormDto formDto); + Result> resiTagList(@RequestBody ResiTagListFormDTO formDto); + + /** + * @Description 标签级联查询——居民端 + * @param formDto + * @author zxc + */ + @PostMapping("/gov/voice/tag/tagcascadelist") + Result> tagCascadeList(@RequestBody TagCascadeListFormDTO formDto); + } diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/feign/fallback/GovVoiceFeignClientFallBack.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/feign/fallback/GovVoiceFeignClientFallBack.java index a8ad4e7af3..25cafda2ba 100644 --- a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/feign/fallback/GovVoiceFeignClientFallBack.java +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/feign/fallback/GovVoiceFeignClientFallBack.java @@ -4,8 +4,9 @@ import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.utils.ModuleUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.feign.GovVoiceFeignClient; -import com.epmet.dto.form.ResiTagListFormDto; -import com.epmet.dto.result.TagInfoResultDto; +import com.epmet.dto.form.ResiTagListFormDTO; +import com.epmet.dto.form.TagCascadeListFormDTO; +import com.epmet.dto.result.TagInfoResultDTO; import org.springframework.stereotype.Component; import java.util.List; @@ -17,7 +18,12 @@ import java.util.List; @Component public class GovVoiceFeignClientFallBack implements GovVoiceFeignClient { @Override - public Result> resiTagList(ResiTagListFormDto formDto) { + public Result> resiTagList(ResiTagListFormDTO formDto) { return ModuleUtils.feignConError(ServiceConstant.GOV_VOICE_SERVER, "resiTagList", formDto); } + + @Override + public Result> tagCascadeList(TagCascadeListFormDTO formDto) { + return ModuleUtils.feignConError(ServiceConstant.GOV_VOICE_SERVER, "tagCascadeList", formDto); + } } diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/CorrelationTagListFormDTO.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/CorrelationTagListFormDTO.java new file mode 100644 index 0000000000..29a698f504 --- /dev/null +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/CorrelationTagListFormDTO.java @@ -0,0 +1,21 @@ +package com.epmet.dto.form; + +import lombok.Data; +import java.io.Serializable; +import java.util.List; + +/** + * @Author zxc + * @CreateTime 2020/6/3 9:39 + */ +@Data +public class CorrelationTagListFormDTO implements Serializable { + + private static final long serialVersionUID = -1588825995685146967L; + + /** + * 标签id集合 + */ + private List tagIdList; + +} diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/ResiTagListFormDto.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/ResiTagListFormDto.java index 6c31e69e71..f91cb8f355 100644 --- a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/ResiTagListFormDto.java +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/ResiTagListFormDto.java @@ -11,7 +11,7 @@ import java.io.Serializable; * @CreateTime 2020/6/2 15:50 */ @Data -public class ResiTagListFormDto implements Serializable { +public class ResiTagListFormDTO implements Serializable { private static final long serialVersionUID = 4337657473061285656L; @@ -21,12 +21,13 @@ public class ResiTagListFormDto implements Serializable { /** * 网格id */ - @NotBlank(message = "网格id不能为空",groups = {ResiTagListForm.class,ResiTagListFormWeb.class}) + @NotBlank(message = "网格id不能为空",groups = {ResiTagListForm.class}) private String gridId; /** * 用户id */ + @NotBlank(message = "客户id不能为空",groups = {ResiTagListForm.class}) private String customerId; /** diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/TagCascadeListFormDTO.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/TagCascadeListFormDTO.java new file mode 100644 index 0000000000..2c914dd6aa --- /dev/null +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/TagCascadeListFormDTO.java @@ -0,0 +1,37 @@ +package com.epmet.dto.form; + +import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.List; + +/** + * @Author zxc + * @CreateTime 2020/6/3 13:16 + */ +@Data +public class TagCascadeListFormDTO implements Serializable { + + private static final long serialVersionUID = -727325750715567406L; + + public interface TagCascadeList{} + public interface TagCascadeListWeb extends CustomerClientShowGroup {} + + /** + * 网格id + */ + @NotBlank(message = "网格id不能为空",groups = {TagCascadeList.class}) + private String gridId; + + /** + * 标签id集合 + */ + private List tagIdList; + + /** + * 客户id + */ + private String customerId; +} diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/CorrelationTagListResultDTO.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/CorrelationTagListResultDTO.java new file mode 100644 index 0000000000..c614999e66 --- /dev/null +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/CorrelationTagListResultDTO.java @@ -0,0 +1,27 @@ +package com.epmet.dto.result; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * @CreateTime 2020/6/3 9:41 + */ +@JsonIgnoreProperties(ignoreUnknown = true) +@Data +public class CorrelationTagListResultDTO implements Serializable { + + private static final long serialVersionUID = 5536953304816455733L; + + /** + * 标签id + */ + private String tagId; + + /** + * 标签名称 + */ + private String tagName; +} diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/TagInfoResultDTO.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/TagInfoResultDTO.java new file mode 100644 index 0000000000..a547af8767 --- /dev/null +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/TagInfoResultDTO.java @@ -0,0 +1,27 @@ +package com.epmet.dto.result; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * @CreateTime 2020/6/2 9:47 + */ +@JsonIgnoreProperties(ignoreUnknown = true) +@Data +public class TagInfoResultDTO implements Serializable { + + private static final long serialVersionUID = 4366515668545958124L; + + /** + * 标签id + */ + private String tagId; + + /** + * 标签名称 + */ + private String tagName; +} diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/constant/TagConstant.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/constant/TagConstant.java index 30697d832c..15c6267b3a 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/constant/TagConstant.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/constant/TagConstant.java @@ -30,6 +30,11 @@ public interface TagConstant { */ String GRID_TAG_KEY = "epmet:grid:articletag:"; + /** + * 政府——关联标签 key的前缀 【set】 + */ + String GRID_RETAG_KEY ="epmet:grid:article:retag:"; + /** * 冒号 */ diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/TagController.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/TagController.java index d672d4f7d5..5dbec6fa20 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/TagController.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/TagController.java @@ -1,13 +1,16 @@ package com.epmet.controller; import com.epmet.commons.tools.annotation.LoginUser; +import com.epmet.commons.tools.annotation.RequirePermission; +import com.epmet.commons.tools.enums.RequirePermissionEnum; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; -import com.epmet.dto.form.CorrelationTagListFormDto; -import com.epmet.dto.form.ResiTagListFormDto; -import com.epmet.dto.result.CorrelationTagListResultDto; -import com.epmet.dto.result.TagInfoResultDto; +import com.epmet.dto.form.CorrelationTagListFormDTO; +import com.epmet.dto.form.ResiTagListFormDTO; +import com.epmet.dto.form.TagCascadeListFormDTO; +import com.epmet.dto.result.CorrelationTagListResultDTO; +import com.epmet.dto.result.TagInfoResultDTO; import com.epmet.service.TagService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; @@ -30,9 +33,9 @@ public class TagController { * @author zxc */ @PostMapping("taglist") - public Result> tagList(@LoginUser TokenDto tokenDto){ - ValidatorUtils.validateEntity(tokenDto); - return new Result>().ok(tagService.tagList(tokenDto)); +// @RequirePermission(requirePermission = RequirePermissionEnum.WORK_PARTY_VOICE_PUBLISHED_LIST) + public Result> tagList(@LoginUser TokenDto tokenDto){ + return new Result>().ok(tagService.tagList(tokenDto)); } /** @@ -41,9 +44,9 @@ public class TagController { * @author zxc */ @PostMapping("resitaglist") - public Result> resiTagList(@RequestBody ResiTagListFormDto formDto){ - ValidatorUtils.validateEntity(formDto, ResiTagListFormDto.ResiTagListForm.class, ResiTagListFormDto.ResiTagListFormWeb.class); - return new Result>().ok(tagService.resiTagList(formDto)); + public Result> resiTagList(@RequestBody ResiTagListFormDTO formDto){ + ValidatorUtils.validateEntity(formDto, ResiTagListFormDTO.ResiTagListForm.class); + return new Result>().ok(tagService.resiTagList(formDto)); } /** @@ -53,8 +56,20 @@ public class TagController { * @author zxc */ @PostMapping("correlationtaglist") - public Result> correlationTagList(@LoginUser TokenDto tokenDto, @RequestBody CorrelationTagListFormDto formDto){ - return new Result>().ok(tagService.correlationTagList(tokenDto,formDto)); +// @RequirePermission(requirePermission = RequirePermissionEnum.WORK_PARTY_VOICE_PUBLISHED_LIST) + public Result> correlationTagList(@LoginUser TokenDto tokenDto, @RequestBody CorrelationTagListFormDTO formDto){ + ValidatorUtils.validateEntity(formDto); + return new Result>().ok(tagService.correlationTagList(tokenDto,formDto)); + } + + /** + * @Description 标签级联查询——居民端 + * @param formDto + * @author zxc + */ + @PostMapping("tagcascadelist") + public Result> tagCascadeList(@RequestBody TagCascadeListFormDTO formDto){ + return new Result>().ok(tagService.tagCascadeList(formDto)); } } diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/dao/ArticleDao.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/dao/ArticleDao.java index 0c1e7f1a41..f65c49f289 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/dao/ArticleDao.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/dao/ArticleDao.java @@ -17,7 +17,9 @@ package com.epmet.dao; import com.epmet.commons.mybatis.annotation.DataFilter; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.dto.result.*; -import com.epmet.dto.form.ResiTagListFormDto; +import com.epmet.dto.form.ResiTagListFormDTO; +import com.epmet.dto.result.GovArticleContentDTO; +import com.epmet.dto.result.GovArticleDetailResultDTO; import com.epmet.entity.ArticleEntity; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -55,7 +57,7 @@ public interface ArticleDao extends BaseDao { * @param formDto * @author zxc */ - Integer checkPublishArticle(ResiTagListFormDto formDto); + Integer checkPublishArticle(ResiTagListFormDTO formDto); /** * 已发布列表---组织工作人员 diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/redis/TagRedis.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/redis/TagRedis.java index 5d16236d83..9de49830ba 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/redis/TagRedis.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/redis/TagRedis.java @@ -17,14 +17,13 @@ package com.epmet.redis; -import com.alibaba.druid.sql.visitor.functions.Concat; -import com.epmet.commons.tools.constant.Constant; import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.redis.RedisUtils; import com.epmet.constant.TagConstant; -import com.epmet.dto.form.CorrelationTagListFormDto; -import com.epmet.dto.result.CorrelationTagListResultDto; -import com.epmet.dto.result.TagInfoResultDto; +import com.epmet.dto.form.CorrelationTagListFormDTO; +import com.epmet.dto.form.TagCascadeListFormDTO; +import com.epmet.dto.result.CorrelationTagListResultDTO; +import com.epmet.dto.result.TagInfoResultDTO; import com.fasterxml.jackson.databind.ObjectMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -47,7 +46,13 @@ public class TagRedis { } - public List get(String customerId, CorrelationTagListFormDto formDto){ + /** + * @Description 已发布列表页-获取关联标签——政府端 + * @param customerId + * @param formDto + * @author zxc + */ + public List get(String customerId, CorrelationTagListFormDTO formDto){ List tagIdList = formDto.getTagIdList(); Set objects ; Collection keys = new ArrayList<>(); @@ -63,13 +68,13 @@ public class TagRedis { String key = TagConstant.GOV_RETAG_KEY+customerId+TagConstant.COLON+tagIdList.get(0); objects = redisUtils.sMembers(key); } - List resultList = new ArrayList<>(); + List resultList = new ArrayList<>(); if (objects.size()==NumConstant.ZERO){ return resultList; } ObjectMapper objectMapper = new ObjectMapper(); for (Object object : objects) { - CorrelationTagListResultDto correlationTag = objectMapper.convertValue(object, CorrelationTagListResultDto.class); + CorrelationTagListResultDTO correlationTag = objectMapper.convertValue(object, CorrelationTagListResultDTO.class); resultList.add(correlationTag); } return resultList; @@ -81,7 +86,7 @@ public class TagRedis { * @param key == customerId * @author zxc */ - public List zRevRange(String key){ + public List zRevRange(String key){ long start = 0; long end = -1; String tagKey = TagConstant.GOV_TAG_KEY+key; @@ -89,10 +94,10 @@ public class TagRedis { if (objects.size()== NumConstant.ZERO){ return new ArrayList<>(); } - List result = new ArrayList(); + List result = new ArrayList(); ObjectMapper objectMapper = new ObjectMapper(); for (Object object : objects) { - TagInfoResultDto tagInfoResultDto = objectMapper.convertValue(object, TagInfoResultDto.class); + TagInfoResultDTO tagInfoResultDto = objectMapper.convertValue(object, TagInfoResultDTO.class); result.add(tagInfoResultDto); } return result; @@ -103,7 +108,7 @@ public class TagRedis { * @param key == gridId * @author zxc */ - public List zGridRevRange(String key){ + public List zGridRevRange(String key){ long start = 0; long end = -1; String tagKey = TagConstant.GRID_TAG_KEY+key; @@ -111,13 +116,47 @@ public class TagRedis { if (objects.size()== NumConstant.ZERO){ return new ArrayList<>(); } - List result = new ArrayList(); + List result = new ArrayList(); ObjectMapper objectMapper = new ObjectMapper(); for (Object object : objects) { - TagInfoResultDto tagInfoResultDto = objectMapper.convertValue(object, TagInfoResultDto.class); + TagInfoResultDTO tagInfoResultDto = objectMapper.convertValue(object, TagInfoResultDTO.class); result.add(tagInfoResultDto); } return result; } + /** + * @Description + * @param formDto + * @author zxc + */ + public List getResiTag(TagCascadeListFormDTO formDto){ + List tagIdList = formDto.getTagIdList(); + String gridId = formDto.getGridId(); + Set objects ; + Collection keys = new ArrayList<>(); + if (tagIdList.size() > 1){ + for (int i = NumConstant.ONE; i < tagIdList.size(); i++) { + String tagId = tagIdList.get(i); + tagId = TagConstant.GRID_RETAG_KEY+gridId+TagConstant.COLON+tagId; + keys.add(tagId); + } + String key = TagConstant.GRID_RETAG_KEY+gridId+TagConstant.COLON+tagIdList.get(0); + objects = redisUtils.sUnion(key, keys); + }else { + String key = TagConstant.GRID_RETAG_KEY+gridId+TagConstant.COLON+tagIdList.get(0); + objects = redisUtils.sMembers(key); + } + List resultList = new ArrayList<>(); + if (objects.size()==NumConstant.ZERO){ + return resultList; + } + ObjectMapper objectMapper = new ObjectMapper(); + for (Object object : objects) { + TagInfoResultDTO tagInfo = objectMapper.convertValue(object, TagInfoResultDTO.class); + resultList.add(tagInfo); + } + return resultList; + } + } \ No newline at end of file diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/TagService.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/TagService.java index b0c4bcf534..b78a9f837a 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/TagService.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/TagService.java @@ -1,12 +1,11 @@ package com.epmet.service; -import com.epmet.commons.tools.annotation.LoginUser; import com.epmet.commons.tools.security.dto.TokenDto; -import com.epmet.dto.form.CorrelationTagListFormDto; -import com.epmet.dto.form.ResiTagListFormDto; -import com.epmet.dto.result.CorrelationTagListResultDto; -import com.epmet.dto.result.TagInfoResultDto; -import org.springframework.web.bind.annotation.RequestBody; +import com.epmet.dto.form.CorrelationTagListFormDTO; +import com.epmet.dto.form.ResiTagListFormDTO; +import com.epmet.dto.form.TagCascadeListFormDTO; +import com.epmet.dto.result.CorrelationTagListResultDTO; +import com.epmet.dto.result.TagInfoResultDTO; import java.util.List; @@ -17,14 +16,14 @@ public interface TagService { * @param tokenDto * @author zxc */ - List tagList(TokenDto tokenDto); + List tagList(TokenDto tokenDto); /** * @Description 已发布列表页的标签——居民端 * @param formDto * @author zxc */ - List resiTagList( ResiTagListFormDto formDto); + List resiTagList( ResiTagListFormDTO formDto); /** * @Description 已发布列表页-获取关联标签——政府端 @@ -32,6 +31,13 @@ public interface TagService { * @param formDto * @author zxc */ - List correlationTagList(TokenDto tokenDto, CorrelationTagListFormDto formDto); + List correlationTagList(TokenDto tokenDto, CorrelationTagListFormDTO formDto); + + /** + * @Description 标签级联查询——居民端 + * @param formDto + * @author zxc + */ + List tagCascadeList(TagCascadeListFormDTO formDto); } \ No newline at end of file diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/TagServiceImpl.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/TagServiceImpl.java index 83d66cd9cb..340516bfb6 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/TagServiceImpl.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/TagServiceImpl.java @@ -3,11 +3,11 @@ package com.epmet.service.impl; import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.dao.ArticleDao; -import com.epmet.dto.form.CorrelationTagListFormDto; -import com.epmet.dto.form.ResiTagListFormDto; -import com.epmet.dto.result.CorrelationTagListResultDto; -import com.epmet.dto.result.TagInfoResultDto; -import com.epmet.feign.EpmetUserFeignClient; +import com.epmet.dto.form.CorrelationTagListFormDTO; +import com.epmet.dto.form.ResiTagListFormDTO; +import com.epmet.dto.form.TagCascadeListFormDTO; +import com.epmet.dto.result.CorrelationTagListResultDTO; +import com.epmet.dto.result.TagInfoResultDTO; import com.epmet.redis.TagRedis; import com.epmet.service.TagService; import org.springframework.beans.factory.annotation.Autowired; @@ -22,8 +22,6 @@ public class TagServiceImpl implements TagService { @Autowired private TagRedis tagRedis; @Autowired - private EpmetUserFeignClient epmetUserFeignClient; - @Autowired private ArticleDao articleDao; /** @@ -32,9 +30,9 @@ public class TagServiceImpl implements TagService { * @author zxc */ @Override - public List tagList(TokenDto tokenDto) { + public List tagList(TokenDto tokenDto) { String customerId = tokenDto.getCustomerId(); - List resultDtos = tagRedis.zRevRange(customerId); + List resultDtos = tagRedis.zRevRange(customerId); return resultDtos; } @@ -44,7 +42,7 @@ public class TagServiceImpl implements TagService { * @author zxc */ @Override - public List resiTagList(ResiTagListFormDto formDto) { + public List resiTagList(ResiTagListFormDTO formDto) { //校验 在本网格是否发布过文章 Integer articleCounts = articleDao.checkPublishArticle(formDto); if (articleCounts== NumConstant.ZERO){ @@ -60,8 +58,18 @@ public class TagServiceImpl implements TagService { * @author zxc */ @Override - public List correlationTagList(TokenDto tokenDto, CorrelationTagListFormDto formDto) { + public List correlationTagList(TokenDto tokenDto, CorrelationTagListFormDTO formDto) { String customerId = tokenDto.getCustomerId(); return tagRedis.get(customerId,formDto); } + + /** + * @Description 标签级联查询——居民端 + * @param formDto + * @author zxc + */ + @Override + public List tagCascadeList(TagCascadeListFormDTO formDto) { + return tagRedis.getResiTag(formDto); + } } \ No newline at end of file diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/ArticleDao.xml b/epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/ArticleDao.xml index c41efbb8dd..6ec32143db 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/ArticleDao.xml +++ b/epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/ArticleDao.xml @@ -34,7 +34,7 @@ ORDER BY ac.ORDER_NUM ASC - SELECT COUNT(*) AS articleCounts FROM diff --git a/epmet-module/resi-voice/resi-voice-client/src/main/java/com/epmet/dto/form/ResiTagListFormDto.java b/epmet-module/resi-voice/resi-voice-client/src/main/java/com/epmet/dto/form/ResiTagListFormDto.java deleted file mode 100644 index 6a084c31b3..0000000000 --- a/epmet-module/resi-voice/resi-voice-client/src/main/java/com/epmet/dto/form/ResiTagListFormDto.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.epmet.dto.form; - -import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; -import lombok.Data; - -import javax.validation.constraints.NotBlank; -import java.io.Serializable; - -/** - * @Author zxc - * @CreateTime 2020/6/2 15:50 - */ -@Data -public class ResiTagListFormDto implements Serializable { - private static final long serialVersionUID = -794399801200532922L; - - public interface ResiTagList{} - public interface ResiTagListWeb extends CustomerClientShowGroup {} - - /** - * 网格id - */ - @NotBlank(message = "网格id不能为空",groups = {ResiTagList.class,ResiTagListWeb.class}) - private String gridId; - - /** - * 客户id - */ - private String customerId; - - /** - * 用户id - */ - private String userId; -} diff --git a/epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/controller/ArticleController.java b/epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/controller/ArticleController.java index 3fa602cfea..acccfad232 100644 --- a/epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/controller/ArticleController.java +++ b/epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/controller/ArticleController.java @@ -1,11 +1,14 @@ package com.epmet.controller; import com.epmet.commons.tools.annotation.LoginUser; +import com.epmet.commons.tools.annotation.RequirePermission; +import com.epmet.commons.tools.enums.RequirePermissionEnum; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; -import com.epmet.dto.form.ResiTagListFormDto; -import com.epmet.dto.result.TagInfoResultDto; +import com.epmet.dto.form.ResiTagListFormDTO; +import com.epmet.dto.form.TagCascadeListFormDTO; +import com.epmet.dto.result.TagInfoResultDTO; import com.epmet.service.ArticleService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; @@ -28,9 +31,22 @@ public class ArticleController { * @author zxc */ @PostMapping("taglist") - public Result> resiTagList(@LoginUser TokenDto tokenDto, @RequestBody ResiTagListFormDto formDto){ - ValidatorUtils.validateEntity(formDto, ResiTagListFormDto.ResiTagList.class, ResiTagListFormDto.ResiTagListWeb.class); - return new Result>().ok(articleService.resiTagList(tokenDto,formDto)); +// @RequirePermission(requirePermission = RequirePermissionEnum.WORK_PARTY_VOICE_PUBLISHED_LIST) + public Result> resiTagList(@LoginUser TokenDto tokenDto, @RequestBody ResiTagListFormDTO formDto){ + ValidatorUtils.validateEntity(formDto, ResiTagListFormDTO.ResiTagListForm.class); + return new Result>().ok(articleService.resiTagList(tokenDto,formDto)); + } + + /** + * @Description 标签级联查询——居民端 + * @param formDto + * @author zxc + */ + @PostMapping("tagcascadelist") +// @RequirePermission(requirePermission = RequirePermissionEnum.WORK_PARTY_VOICE_PUBLISHED_LIST) + public Result> tagCascadeList(@LoginUser TokenDto tokenDto, @RequestBody TagCascadeListFormDTO formDto){ + ValidatorUtils.validateEntity(formDto, TagCascadeListFormDTO.TagCascadeList.class); + return new Result>().ok(articleService.tagCascadeList(tokenDto,formDto)); } } diff --git a/epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/service/ArticleService.java b/epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/service/ArticleService.java index 5d58c7f4cd..853e0a3579 100644 --- a/epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/service/ArticleService.java +++ b/epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/service/ArticleService.java @@ -1,8 +1,9 @@ package com.epmet.service; import com.epmet.commons.tools.security.dto.TokenDto; -import com.epmet.dto.form.ResiTagListFormDto; -import com.epmet.dto.result.TagInfoResultDto; +import com.epmet.dto.form.ResiTagListFormDTO; +import com.epmet.dto.form.TagCascadeListFormDTO; +import com.epmet.dto.result.TagInfoResultDTO; import java.util.List; @@ -17,5 +18,12 @@ public interface ArticleService { * @param formDto * @author zxc */ - List resiTagList(TokenDto tokenDto, ResiTagListFormDto formDto); + List resiTagList(TokenDto tokenDto, ResiTagListFormDTO formDto); + + /** + * @Description 标签级联查询——居民端 + * @param formDto + * @author zxc + */ + List tagCascadeList(TokenDto tokenDto, TagCascadeListFormDTO formDto); } diff --git a/epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java b/epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java index 96f8addfd4..7fb0e57bdb 100644 --- a/epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java +++ b/epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java @@ -2,14 +2,16 @@ package com.epmet.service.impl; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.dto.feign.GovVoiceFeignClient; -import com.epmet.dto.form.ResiTagListFormDto; -import com.epmet.dto.result.TagInfoResultDto; +import com.epmet.dto.form.ResiTagListFormDTO; +import com.epmet.dto.form.TagCascadeListFormDTO; +import com.epmet.dto.result.TagInfoResultDTO; import com.epmet.service.ArticleService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; + /** * @Author zxc * @CreateTime 2020/6/2 16:00 @@ -26,9 +28,20 @@ public class ArticleServiceImpl implements ArticleService { * @author zxc */ @Override - public List resiTagList(TokenDto tokenDto, ResiTagListFormDto formDto) { - formDto.setCustomerId(tokenDto.getCustomerId()); + public List resiTagList(TokenDto tokenDto, ResiTagListFormDTO formDto) { +// formDto.setCustomerId(tokenDto.getCustomerId()); formDto.setUserId(tokenDto.getUserId()); return govVoiceFeignClient.resiTagList(formDto).getData(); } + + /** + * @Description 标签级联查询——居民端 + * @param formDto + * @author zxc + */ + @Override + public List tagCascadeList(TokenDto tokenDto, TagCascadeListFormDTO formDto) { +// formDto.setCustomerId(tokenDto.getCustomerId()); + return govVoiceFeignClient.tagCascadeList(formDto).getData(); + } } diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserFeignClient.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserFeignClient.java deleted file mode 100644 index b06cfefc18..0000000000 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserFeignClient.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.epmet.feign; - -import com.epmet.commons.tools.constant.ServiceConstant; -import com.epmet.commons.tools.utils.Result; -import com.epmet.dto.form.TagCustomerFormDTO; -import com.epmet.dto.result.CustomerStaffRoleResultDTO; -import com.epmet.dto.result.TagCustomerResultDTO; -import com.epmet.feign.fallback.EpmetUserFeignClientFallBack; -import org.springframework.cloud.openfeign.FeignClient; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; - -import java.util.List; - -/** - * @Author zxc - * @CreateTime 2020/6/2 14:05 - * , url = "localhost:8087" - */ -//@FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallback = EpmetUserFeignClientFallBack.class, url = "localhost:8087") -@FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallback = EpmetUserFeignClientFallBack.class) -public interface EpmetUserFeignClient { - - /** - * @Description 根据userId获取customerId - * @param formDTO - * @author zxc - */ - @PostMapping("/epmetuser/user/getcustomeridbyuserid") - Result getCustomerIdByUserId(@RequestBody TagCustomerFormDTO formDTO); - - /** - * 根据staffId查询人员拥有的所有角色信息 - * @author zhaoqifeng - * @date 2020/6/2 16:11 - * @param staffId - * @return com.epmet.commons.tools.utils.Result> - */ - @PostMapping("/epmetuser/staffrole/staffroles/{staffId}") - Result> getStaffRoles(@PathVariable String staffId); - -} diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserFeignClientFallBack.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserFeignClientFallBack.java deleted file mode 100644 index cb1cc2e572..0000000000 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserFeignClientFallBack.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.epmet.feign.fallback; - -import com.epmet.commons.tools.constant.ServiceConstant; -import com.epmet.commons.tools.utils.ModuleUtils; -import com.epmet.commons.tools.utils.Result; -import com.epmet.dto.form.TagCustomerFormDTO; -import com.epmet.dto.result.CustomerStaffRoleResultDTO; -import com.epmet.dto.result.TagCustomerResultDTO; -import com.epmet.feign.EpmetUserFeignClient; -import org.springframework.stereotype.Component; - -import java.util.List; - -/** - * @Description 居民端-陌生人导览 调用gov-org服务 - * @Author sun - * @Date 2020/3/16 - */ -@Component -public class EpmetUserFeignClientFallBack implements EpmetUserFeignClient { - - @Override - public Result getCustomerIdByUserId(TagCustomerFormDTO formDTO) { - return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getCustomerIdByUserId", formDTO); - } - - @Override - public Result> getStaffRoles(String staffId) { - return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getStaffRoles", staffId); - } -}