Browse Source

居民端标签级联

master
zxc 5 years ago
parent
commit
5abc15e47e
  1. 19
      epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/feign/GovVoiceFeignClient.java
  2. 12
      epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/feign/fallback/GovVoiceFeignClientFallBack.java
  3. 21
      epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/CorrelationTagListFormDTO.java
  4. 5
      epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/ResiTagListFormDto.java
  5. 37
      epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/TagCascadeListFormDTO.java
  6. 27
      epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/CorrelationTagListResultDTO.java
  7. 27
      epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/TagInfoResultDTO.java
  8. 5
      epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/constant/TagConstant.java
  9. 39
      epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/TagController.java
  10. 6
      epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/dao/ArticleDao.java
  11. 67
      epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/redis/TagRedis.java
  12. 24
      epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/TagService.java
  13. 30
      epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/TagServiceImpl.java
  14. 2
      epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/ArticleDao.xml
  15. 35
      epmet-module/resi-voice/resi-voice-client/src/main/java/com/epmet/dto/form/ResiTagListFormDto.java
  16. 26
      epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/controller/ArticleController.java
  17. 14
      epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/service/ArticleService.java
  18. 21
      epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java
  19. 43
      epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserFeignClient.java
  20. 31
      epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserFeignClientFallBack.java

19
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.constant.ServiceConstant;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.feign.fallback.GovVoiceFeignClientFallBack; import com.epmet.dto.feign.fallback.GovVoiceFeignClientFallBack;
import com.epmet.dto.form.ResiTagListFormDto; import com.epmet.dto.form.ResiTagListFormDTO;
import com.epmet.dto.result.TagInfoResultDto; import com.epmet.dto.form.TagCascadeListFormDTO;
import com.epmet.dto.result.TagInfoResultDTO;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.List; import java.util.List;
@ -17,7 +17,7 @@ import java.util.List;
* @CreateTime 2020/6/2 16:05 * @CreateTime 2020/6/2 16:05
* , url = "localhost:8105" * , 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) @FeignClient(name = ServiceConstant.GOV_VOICE_SERVER, fallback = GovVoiceFeignClientFallBack.class)
public interface GovVoiceFeignClient { public interface GovVoiceFeignClient {
@ -27,6 +27,15 @@ public interface GovVoiceFeignClient {
* @author zxc * @author zxc
*/ */
@PostMapping("/gov/voice/tag/resitaglist") @PostMapping("/gov/voice/tag/resitaglist")
Result<List<TagInfoResultDto>> resiTagList(@RequestBody ResiTagListFormDto formDto); Result<List<TagInfoResultDTO>> resiTagList(@RequestBody ResiTagListFormDTO formDto);
/**
* @Description 标签级联查询居民端
* @param formDto
* @author zxc
*/
@PostMapping("/gov/voice/tag/tagcascadelist")
Result<List<TagInfoResultDTO>> tagCascadeList(@RequestBody TagCascadeListFormDTO formDto);
} }

12
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.ModuleUtils;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.feign.GovVoiceFeignClient; import com.epmet.dto.feign.GovVoiceFeignClient;
import com.epmet.dto.form.ResiTagListFormDto; import com.epmet.dto.form.ResiTagListFormDTO;
import com.epmet.dto.result.TagInfoResultDto; import com.epmet.dto.form.TagCascadeListFormDTO;
import com.epmet.dto.result.TagInfoResultDTO;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.List; import java.util.List;
@ -17,7 +18,12 @@ import java.util.List;
@Component @Component
public class GovVoiceFeignClientFallBack implements GovVoiceFeignClient { public class GovVoiceFeignClientFallBack implements GovVoiceFeignClient {
@Override @Override
public Result<List<TagInfoResultDto>> resiTagList(ResiTagListFormDto formDto) { public Result<List<TagInfoResultDTO>> resiTagList(ResiTagListFormDTO formDto) {
return ModuleUtils.feignConError(ServiceConstant.GOV_VOICE_SERVER, "resiTagList", formDto); return ModuleUtils.feignConError(ServiceConstant.GOV_VOICE_SERVER, "resiTagList", formDto);
} }
@Override
public Result<List<TagInfoResultDTO>> tagCascadeList(TagCascadeListFormDTO formDto) {
return ModuleUtils.feignConError(ServiceConstant.GOV_VOICE_SERVER, "tagCascadeList", formDto);
}
} }

21
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<String> tagIdList;
}

5
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 * @CreateTime 2020/6/2 15:50
*/ */
@Data @Data
public class ResiTagListFormDto implements Serializable { public class ResiTagListFormDTO implements Serializable {
private static final long serialVersionUID = 4337657473061285656L; private static final long serialVersionUID = 4337657473061285656L;
@ -21,12 +21,13 @@ public class ResiTagListFormDto implements Serializable {
/** /**
* 网格id * 网格id
*/ */
@NotBlank(message = "网格id不能为空",groups = {ResiTagListForm.class,ResiTagListFormWeb.class}) @NotBlank(message = "网格id不能为空",groups = {ResiTagListForm.class})
private String gridId; private String gridId;
/** /**
* 用户id * 用户id
*/ */
@NotBlank(message = "客户id不能为空",groups = {ResiTagListForm.class})
private String customerId; private String customerId;
/** /**

37
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<String> tagIdList;
/**
* 客户id
*/
private String customerId;
}

27
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;
}

27
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;
}

5
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:"; String GRID_TAG_KEY = "epmet:grid:articletag:";
/**
* 政府关联标签 key的前缀 set
*/
String GRID_RETAG_KEY ="epmet:grid:article:retag:";
/** /**
* 冒号 * 冒号
*/ */

39
epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/TagController.java

@ -1,13 +1,16 @@
package com.epmet.controller; package com.epmet.controller;
import com.epmet.commons.tools.annotation.LoginUser; 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.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.dto.form.CorrelationTagListFormDto; import com.epmet.dto.form.CorrelationTagListFormDTO;
import com.epmet.dto.form.ResiTagListFormDto; import com.epmet.dto.form.ResiTagListFormDTO;
import com.epmet.dto.result.CorrelationTagListResultDto; import com.epmet.dto.form.TagCascadeListFormDTO;
import com.epmet.dto.result.TagInfoResultDto; import com.epmet.dto.result.CorrelationTagListResultDTO;
import com.epmet.dto.result.TagInfoResultDTO;
import com.epmet.service.TagService; import com.epmet.service.TagService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
@ -30,9 +33,9 @@ public class TagController {
* @author zxc * @author zxc
*/ */
@PostMapping("taglist") @PostMapping("taglist")
public Result<List<TagInfoResultDto>> tagList(@LoginUser TokenDto tokenDto){ // @RequirePermission(requirePermission = RequirePermissionEnum.WORK_PARTY_VOICE_PUBLISHED_LIST)
ValidatorUtils.validateEntity(tokenDto); public Result<List<TagInfoResultDTO>> tagList(@LoginUser TokenDto tokenDto){
return new Result<List<TagInfoResultDto>>().ok(tagService.tagList(tokenDto)); return new Result<List<TagInfoResultDTO>>().ok(tagService.tagList(tokenDto));
} }
/** /**
@ -41,9 +44,9 @@ public class TagController {
* @author zxc * @author zxc
*/ */
@PostMapping("resitaglist") @PostMapping("resitaglist")
public Result<List<TagInfoResultDto>> resiTagList(@RequestBody ResiTagListFormDto formDto){ public Result<List<TagInfoResultDTO>> resiTagList(@RequestBody ResiTagListFormDTO formDto){
ValidatorUtils.validateEntity(formDto, ResiTagListFormDto.ResiTagListForm.class, ResiTagListFormDto.ResiTagListFormWeb.class); ValidatorUtils.validateEntity(formDto, ResiTagListFormDTO.ResiTagListForm.class);
return new Result<List<TagInfoResultDto>>().ok(tagService.resiTagList(formDto)); return new Result<List<TagInfoResultDTO>>().ok(tagService.resiTagList(formDto));
} }
/** /**
@ -53,8 +56,20 @@ public class TagController {
* @author zxc * @author zxc
*/ */
@PostMapping("correlationtaglist") @PostMapping("correlationtaglist")
public Result<List<CorrelationTagListResultDto>> correlationTagList(@LoginUser TokenDto tokenDto, @RequestBody CorrelationTagListFormDto formDto){ // @RequirePermission(requirePermission = RequirePermissionEnum.WORK_PARTY_VOICE_PUBLISHED_LIST)
return new Result<List<CorrelationTagListResultDto>>().ok(tagService.correlationTagList(tokenDto,formDto)); public Result<List<CorrelationTagListResultDTO>> correlationTagList(@LoginUser TokenDto tokenDto, @RequestBody CorrelationTagListFormDTO formDto){
ValidatorUtils.validateEntity(formDto);
return new Result<List<CorrelationTagListResultDTO>>().ok(tagService.correlationTagList(tokenDto,formDto));
}
/**
* @Description 标签级联查询居民端
* @param formDto
* @author zxc
*/
@PostMapping("tagcascadelist")
public Result<List<TagInfoResultDTO>> tagCascadeList(@RequestBody TagCascadeListFormDTO formDto){
return new Result<List<TagInfoResultDTO>>().ok(tagService.tagCascadeList(formDto));
} }
} }

6
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.annotation.DataFilter;
import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.result.*; 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 com.epmet.entity.ArticleEntity;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
@ -55,7 +57,7 @@ public interface ArticleDao extends BaseDao<ArticleEntity> {
* @param formDto * @param formDto
* @author zxc * @author zxc
*/ */
Integer checkPublishArticle(ResiTagListFormDto formDto); Integer checkPublishArticle(ResiTagListFormDTO formDto);
/** /**
* 已发布列表---组织工作人员 * 已发布列表---组织工作人员

67
epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/redis/TagRedis.java

@ -17,14 +17,13 @@
package com.epmet.redis; 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.constant.NumConstant;
import com.epmet.commons.tools.redis.RedisUtils; import com.epmet.commons.tools.redis.RedisUtils;
import com.epmet.constant.TagConstant; import com.epmet.constant.TagConstant;
import com.epmet.dto.form.CorrelationTagListFormDto; import com.epmet.dto.form.CorrelationTagListFormDTO;
import com.epmet.dto.result.CorrelationTagListResultDto; import com.epmet.dto.form.TagCascadeListFormDTO;
import com.epmet.dto.result.TagInfoResultDto; import com.epmet.dto.result.CorrelationTagListResultDTO;
import com.epmet.dto.result.TagInfoResultDTO;
import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectMapper;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
@ -47,7 +46,13 @@ public class TagRedis {
} }
public List<CorrelationTagListResultDto> get(String customerId, CorrelationTagListFormDto formDto){ /**
* @Description 已发布列表页-获取关联标签政府端
* @param customerId
* @param formDto
* @author zxc
*/
public List<CorrelationTagListResultDTO> get(String customerId, CorrelationTagListFormDTO formDto){
List<String> tagIdList = formDto.getTagIdList(); List<String> tagIdList = formDto.getTagIdList();
Set<Object> objects ; Set<Object> objects ;
Collection<String> keys = new ArrayList<>(); Collection<String> keys = new ArrayList<>();
@ -63,13 +68,13 @@ public class TagRedis {
String key = TagConstant.GOV_RETAG_KEY+customerId+TagConstant.COLON+tagIdList.get(0); String key = TagConstant.GOV_RETAG_KEY+customerId+TagConstant.COLON+tagIdList.get(0);
objects = redisUtils.sMembers(key); objects = redisUtils.sMembers(key);
} }
List<CorrelationTagListResultDto> resultList = new ArrayList<>(); List<CorrelationTagListResultDTO> resultList = new ArrayList<>();
if (objects.size()==NumConstant.ZERO){ if (objects.size()==NumConstant.ZERO){
return resultList; return resultList;
} }
ObjectMapper objectMapper = new ObjectMapper(); ObjectMapper objectMapper = new ObjectMapper();
for (Object object : objects) { for (Object object : objects) {
CorrelationTagListResultDto correlationTag = objectMapper.convertValue(object, CorrelationTagListResultDto.class); CorrelationTagListResultDTO correlationTag = objectMapper.convertValue(object, CorrelationTagListResultDTO.class);
resultList.add(correlationTag); resultList.add(correlationTag);
} }
return resultList; return resultList;
@ -81,7 +86,7 @@ public class TagRedis {
* @param key == customerId * @param key == customerId
* @author zxc * @author zxc
*/ */
public List<TagInfoResultDto> zRevRange(String key){ public List<TagInfoResultDTO> zRevRange(String key){
long start = 0; long start = 0;
long end = -1; long end = -1;
String tagKey = TagConstant.GOV_TAG_KEY+key; String tagKey = TagConstant.GOV_TAG_KEY+key;
@ -89,10 +94,10 @@ public class TagRedis {
if (objects.size()== NumConstant.ZERO){ if (objects.size()== NumConstant.ZERO){
return new ArrayList<>(); return new ArrayList<>();
} }
List<TagInfoResultDto> result = new ArrayList<TagInfoResultDto>(); List<TagInfoResultDTO> result = new ArrayList<TagInfoResultDTO>();
ObjectMapper objectMapper = new ObjectMapper(); ObjectMapper objectMapper = new ObjectMapper();
for (Object object : objects) { for (Object object : objects) {
TagInfoResultDto tagInfoResultDto = objectMapper.convertValue(object, TagInfoResultDto.class); TagInfoResultDTO tagInfoResultDto = objectMapper.convertValue(object, TagInfoResultDTO.class);
result.add(tagInfoResultDto); result.add(tagInfoResultDto);
} }
return result; return result;
@ -103,7 +108,7 @@ public class TagRedis {
* @param key == gridId * @param key == gridId
* @author zxc * @author zxc
*/ */
public List<TagInfoResultDto> zGridRevRange(String key){ public List<TagInfoResultDTO> zGridRevRange(String key){
long start = 0; long start = 0;
long end = -1; long end = -1;
String tagKey = TagConstant.GRID_TAG_KEY+key; String tagKey = TagConstant.GRID_TAG_KEY+key;
@ -111,13 +116,47 @@ public class TagRedis {
if (objects.size()== NumConstant.ZERO){ if (objects.size()== NumConstant.ZERO){
return new ArrayList<>(); return new ArrayList<>();
} }
List<TagInfoResultDto> result = new ArrayList<TagInfoResultDto>(); List<TagInfoResultDTO> result = new ArrayList<TagInfoResultDTO>();
ObjectMapper objectMapper = new ObjectMapper(); ObjectMapper objectMapper = new ObjectMapper();
for (Object object : objects) { for (Object object : objects) {
TagInfoResultDto tagInfoResultDto = objectMapper.convertValue(object, TagInfoResultDto.class); TagInfoResultDTO tagInfoResultDto = objectMapper.convertValue(object, TagInfoResultDTO.class);
result.add(tagInfoResultDto); result.add(tagInfoResultDto);
} }
return result; return result;
} }
/**
* @Description
* @param formDto
* @author zxc
*/
public List<TagInfoResultDTO> getResiTag(TagCascadeListFormDTO formDto){
List<String> tagIdList = formDto.getTagIdList();
String gridId = formDto.getGridId();
Set<Object> objects ;
Collection<String> 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<TagInfoResultDTO> 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;
}
} }

24
epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/TagService.java

@ -1,12 +1,11 @@
package com.epmet.service; package com.epmet.service;
import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.dto.form.CorrelationTagListFormDto; import com.epmet.dto.form.CorrelationTagListFormDTO;
import com.epmet.dto.form.ResiTagListFormDto; import com.epmet.dto.form.ResiTagListFormDTO;
import com.epmet.dto.result.CorrelationTagListResultDto; import com.epmet.dto.form.TagCascadeListFormDTO;
import com.epmet.dto.result.TagInfoResultDto; import com.epmet.dto.result.CorrelationTagListResultDTO;
import org.springframework.web.bind.annotation.RequestBody; import com.epmet.dto.result.TagInfoResultDTO;
import java.util.List; import java.util.List;
@ -17,14 +16,14 @@ public interface TagService {
* @param tokenDto * @param tokenDto
* @author zxc * @author zxc
*/ */
List<TagInfoResultDto> tagList(TokenDto tokenDto); List<TagInfoResultDTO> tagList(TokenDto tokenDto);
/** /**
* @Description 已发布列表页的标签居民端 * @Description 已发布列表页的标签居民端
* @param formDto * @param formDto
* @author zxc * @author zxc
*/ */
List<TagInfoResultDto> resiTagList( ResiTagListFormDto formDto); List<TagInfoResultDTO> resiTagList( ResiTagListFormDTO formDto);
/** /**
* @Description 已发布列表页-获取关联标签政府端 * @Description 已发布列表页-获取关联标签政府端
@ -32,6 +31,13 @@ public interface TagService {
* @param formDto * @param formDto
* @author zxc * @author zxc
*/ */
List<CorrelationTagListResultDto> correlationTagList(TokenDto tokenDto, CorrelationTagListFormDto formDto); List<CorrelationTagListResultDTO> correlationTagList(TokenDto tokenDto, CorrelationTagListFormDTO formDto);
/**
* @Description 标签级联查询居民端
* @param formDto
* @author zxc
*/
List<TagInfoResultDTO> tagCascadeList(TagCascadeListFormDTO formDto);
} }

30
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.constant.NumConstant;
import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.dao.ArticleDao; import com.epmet.dao.ArticleDao;
import com.epmet.dto.form.CorrelationTagListFormDto; import com.epmet.dto.form.CorrelationTagListFormDTO;
import com.epmet.dto.form.ResiTagListFormDto; import com.epmet.dto.form.ResiTagListFormDTO;
import com.epmet.dto.result.CorrelationTagListResultDto; import com.epmet.dto.form.TagCascadeListFormDTO;
import com.epmet.dto.result.TagInfoResultDto; import com.epmet.dto.result.CorrelationTagListResultDTO;
import com.epmet.feign.EpmetUserFeignClient; import com.epmet.dto.result.TagInfoResultDTO;
import com.epmet.redis.TagRedis; import com.epmet.redis.TagRedis;
import com.epmet.service.TagService; import com.epmet.service.TagService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -22,8 +22,6 @@ public class TagServiceImpl implements TagService {
@Autowired @Autowired
private TagRedis tagRedis; private TagRedis tagRedis;
@Autowired @Autowired
private EpmetUserFeignClient epmetUserFeignClient;
@Autowired
private ArticleDao articleDao; private ArticleDao articleDao;
/** /**
@ -32,9 +30,9 @@ public class TagServiceImpl implements TagService {
* @author zxc * @author zxc
*/ */
@Override @Override
public List<TagInfoResultDto> tagList(TokenDto tokenDto) { public List<TagInfoResultDTO> tagList(TokenDto tokenDto) {
String customerId = tokenDto.getCustomerId(); String customerId = tokenDto.getCustomerId();
List<TagInfoResultDto> resultDtos = tagRedis.zRevRange(customerId); List<TagInfoResultDTO> resultDtos = tagRedis.zRevRange(customerId);
return resultDtos; return resultDtos;
} }
@ -44,7 +42,7 @@ public class TagServiceImpl implements TagService {
* @author zxc * @author zxc
*/ */
@Override @Override
public List<TagInfoResultDto> resiTagList(ResiTagListFormDto formDto) { public List<TagInfoResultDTO> resiTagList(ResiTagListFormDTO formDto) {
//校验 在本网格是否发布过文章 //校验 在本网格是否发布过文章
Integer articleCounts = articleDao.checkPublishArticle(formDto); Integer articleCounts = articleDao.checkPublishArticle(formDto);
if (articleCounts== NumConstant.ZERO){ if (articleCounts== NumConstant.ZERO){
@ -60,8 +58,18 @@ public class TagServiceImpl implements TagService {
* @author zxc * @author zxc
*/ */
@Override @Override
public List<CorrelationTagListResultDto> correlationTagList(TokenDto tokenDto, CorrelationTagListFormDto formDto) { public List<CorrelationTagListResultDTO> correlationTagList(TokenDto tokenDto, CorrelationTagListFormDTO formDto) {
String customerId = tokenDto.getCustomerId(); String customerId = tokenDto.getCustomerId();
return tagRedis.get(customerId,formDto); return tagRedis.get(customerId,formDto);
} }
/**
* @Description 标签级联查询居民端
* @param formDto
* @author zxc
*/
@Override
public List<TagInfoResultDTO> tagCascadeList(TagCascadeListFormDTO formDto) {
return tagRedis.getResiTag(formDto);
}
} }

2
epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/ArticleDao.xml

@ -34,7 +34,7 @@
ORDER BY ORDER BY
ac.ORDER_NUM ASC ac.ORDER_NUM ASC
</select> </select>
<select id="checkPublishArticle" resultType="integer" parameterType="com.epmet.dto.form.ResiTagListFormDto"> <select id="checkPublishArticle" resultType="integer" parameterType="com.epmet.dto.form.ResiTagListFormDTO">
SELECT SELECT
COUNT(*) AS articleCounts COUNT(*) AS articleCounts
FROM FROM

35
epmet-module/resi-voice/resi-voice-client/src/main/java/com/epmet/dto/form/ResiTagListFormDto.java

@ -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;
}

26
epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/controller/ArticleController.java

@ -1,11 +1,14 @@
package com.epmet.controller; package com.epmet.controller;
import com.epmet.commons.tools.annotation.LoginUser; 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.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.dto.form.ResiTagListFormDto; import com.epmet.dto.form.ResiTagListFormDTO;
import com.epmet.dto.result.TagInfoResultDto; import com.epmet.dto.form.TagCascadeListFormDTO;
import com.epmet.dto.result.TagInfoResultDTO;
import com.epmet.service.ArticleService; import com.epmet.service.ArticleService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
@ -28,9 +31,22 @@ public class ArticleController {
* @author zxc * @author zxc
*/ */
@PostMapping("taglist") @PostMapping("taglist")
public Result<List<TagInfoResultDto>> resiTagList(@LoginUser TokenDto tokenDto, @RequestBody ResiTagListFormDto formDto){ // @RequirePermission(requirePermission = RequirePermissionEnum.WORK_PARTY_VOICE_PUBLISHED_LIST)
ValidatorUtils.validateEntity(formDto, ResiTagListFormDto.ResiTagList.class, ResiTagListFormDto.ResiTagListWeb.class); public Result<List<TagInfoResultDTO>> resiTagList(@LoginUser TokenDto tokenDto, @RequestBody ResiTagListFormDTO formDto){
return new Result<List<TagInfoResultDto>>().ok(articleService.resiTagList(tokenDto,formDto)); ValidatorUtils.validateEntity(formDto, ResiTagListFormDTO.ResiTagListForm.class);
return new Result<List<TagInfoResultDTO>>().ok(articleService.resiTagList(tokenDto,formDto));
}
/**
* @Description 标签级联查询居民端
* @param formDto
* @author zxc
*/
@PostMapping("tagcascadelist")
// @RequirePermission(requirePermission = RequirePermissionEnum.WORK_PARTY_VOICE_PUBLISHED_LIST)
public Result<List<TagInfoResultDTO>> tagCascadeList(@LoginUser TokenDto tokenDto, @RequestBody TagCascadeListFormDTO formDto){
ValidatorUtils.validateEntity(formDto, TagCascadeListFormDTO.TagCascadeList.class);
return new Result<List<TagInfoResultDTO>>().ok(articleService.tagCascadeList(tokenDto,formDto));
} }
} }

14
epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/service/ArticleService.java

@ -1,8 +1,9 @@
package com.epmet.service; package com.epmet.service;
import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.dto.form.ResiTagListFormDto; import com.epmet.dto.form.ResiTagListFormDTO;
import com.epmet.dto.result.TagInfoResultDto; import com.epmet.dto.form.TagCascadeListFormDTO;
import com.epmet.dto.result.TagInfoResultDTO;
import java.util.List; import java.util.List;
@ -17,5 +18,12 @@ public interface ArticleService {
* @param formDto * @param formDto
* @author zxc * @author zxc
*/ */
List<TagInfoResultDto> resiTagList(TokenDto tokenDto, ResiTagListFormDto formDto); List<TagInfoResultDTO> resiTagList(TokenDto tokenDto, ResiTagListFormDTO formDto);
/**
* @Description 标签级联查询居民端
* @param formDto
* @author zxc
*/
List<TagInfoResultDTO> tagCascadeList(TokenDto tokenDto, TagCascadeListFormDTO formDto);
} }

21
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.commons.tools.security.dto.TokenDto;
import com.epmet.dto.feign.GovVoiceFeignClient; import com.epmet.dto.feign.GovVoiceFeignClient;
import com.epmet.dto.form.ResiTagListFormDto; import com.epmet.dto.form.ResiTagListFormDTO;
import com.epmet.dto.result.TagInfoResultDto; import com.epmet.dto.form.TagCascadeListFormDTO;
import com.epmet.dto.result.TagInfoResultDTO;
import com.epmet.service.ArticleService; import com.epmet.service.ArticleService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List; import java.util.List;
/** /**
* @Author zxc * @Author zxc
* @CreateTime 2020/6/2 16:00 * @CreateTime 2020/6/2 16:00
@ -26,9 +28,20 @@ public class ArticleServiceImpl implements ArticleService {
* @author zxc * @author zxc
*/ */
@Override @Override
public List<TagInfoResultDto> resiTagList(TokenDto tokenDto, ResiTagListFormDto formDto) { public List<TagInfoResultDTO> resiTagList(TokenDto tokenDto, ResiTagListFormDTO formDto) {
formDto.setCustomerId(tokenDto.getCustomerId()); // formDto.setCustomerId(tokenDto.getCustomerId());
formDto.setUserId(tokenDto.getUserId()); formDto.setUserId(tokenDto.getUserId());
return govVoiceFeignClient.resiTagList(formDto).getData(); return govVoiceFeignClient.resiTagList(formDto).getData();
} }
/**
* @Description 标签级联查询居民端
* @param formDto
* @author zxc
*/
@Override
public List<TagInfoResultDTO> tagCascadeList(TokenDto tokenDto, TagCascadeListFormDTO formDto) {
// formDto.setCustomerId(tokenDto.getCustomerId());
return govVoiceFeignClient.tagCascadeList(formDto).getData();
}
} }

43
epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserFeignClient.java

@ -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<TagCustomerResultDTO> getCustomerIdByUserId(@RequestBody TagCustomerFormDTO formDTO);
/**
* 根据staffId查询人员拥有的所有角色信息
* @author zhaoqifeng
* @date 2020/6/2 16:11
* @param staffId
* @return com.epmet.commons.tools.utils.Result<java.util.List<com.epmet.dto.result.CustomerStaffRoleResultDTO>>
*/
@PostMapping("/epmetuser/staffrole/staffroles/{staffId}")
Result<List<CustomerStaffRoleResultDTO>> getStaffRoles(@PathVariable String staffId);
}

31
epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserFeignClientFallBack.java

@ -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<TagCustomerResultDTO> getCustomerIdByUserId(TagCustomerFormDTO formDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getCustomerIdByUserId", formDTO);
}
@Override
public Result<List<CustomerStaffRoleResultDTO>> getStaffRoles(String staffId) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getStaffRoles", staffId);
}
}
Loading…
Cancel
Save