From ed65e9d40287370acc86086ac81ca987ecccec45 Mon Sep 17 00:00:00 2001 From: zhaoqifeng Date: Fri, 16 Jul 2021 14:01:53 +0800 Subject: [PATCH 1/6] =?UTF-8?q?=E4=B8=93=E9=A2=98=E7=AE=A1=E7=90=86-?= =?UTF-8?q?=E7=83=AD=E9=97=A8=E6=A0=87=E7=AD=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/dto/form/HotSubjectTagFormDTO.java | 18 ++++ .../com/epmet/dto/form/PreviewFormDTO.java | 19 ++++ .../controller/SpecialSubjectController.java | 19 ++++ .../epmet/service/SpecialSubjectService.java | 74 +++++++++++++++ .../impl/SpecialSubjectServiceImpl.java | 92 +++++++++++++++++++ 5 files changed, 222 insertions(+) create mode 100644 epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/HotSubjectTagFormDTO.java create mode 100644 epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/PreviewFormDTO.java diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/HotSubjectTagFormDTO.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/HotSubjectTagFormDTO.java new file mode 100644 index 0000000000..7f82d796ad --- /dev/null +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/HotSubjectTagFormDTO.java @@ -0,0 +1,18 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @author zhaoqifeng + * @dscription + * @date 2021/7/16 10:14 + */ +@Data +public class HotSubjectTagFormDTO implements Serializable { + private static final long serialVersionUID = -5526800827207175876L; + private String customerId; + private String orgId; + private String pids; +} diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/PreviewFormDTO.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/PreviewFormDTO.java new file mode 100644 index 0000000000..d1e8b137b7 --- /dev/null +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/PreviewFormDTO.java @@ -0,0 +1,19 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * @author zhaoqifeng + * @dscription + * @date 2021/7/16 9:41 + */ +@Data +public class PreviewFormDTO implements Serializable { + private static final long serialVersionUID = -3764759458780976123L; + private List tagIdList; + private Integer pageSize; + private Integer pageNo; +} diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/SpecialSubjectController.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/SpecialSubjectController.java index db715e55d0..2bddb1c281 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/SpecialSubjectController.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/SpecialSubjectController.java @@ -17,6 +17,11 @@ package com.epmet.controller; +import com.epmet.commons.tools.annotation.LoginUser; +import com.epmet.commons.tools.security.dto.TokenDto; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.HotSubjectTagFormDTO; +import com.epmet.dto.result.TagInfoResultDTO; import com.epmet.commons.tools.annotation.LoginUser; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; @@ -29,6 +34,7 @@ import com.epmet.dto.result.WorkSpecialSubjectResultDTO; import com.epmet.service.SpecialSubjectService; import org.springframework.beans.factory.annotation.Autowired; 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.RequestMapping; import org.springframework.web.bind.annotation.RestController; @@ -93,4 +99,17 @@ public class SpecialSubjectController { ValidatorUtils.validateEntity(formDTO, QuerySpecialSubFormDTO.AddUserInternalGroup.class); return new Result>().ok(specialSubjectService.queryExistedList(formDTO)); } + + /** + * 热门标签列表 + * @author zhaoqifeng + * @date 2021/7/15 15:36 + * @param tokenDto + * @return com.epmet.commons.tools.utils.Result> + */ + @PostMapping("hot-subject-taglist") + public Result> hotSubjectTagList(@LoginUser TokenDto tokenDto, HotSubjectTagFormDTO formDTO) { + formDTO.setCustomerId(tokenDto.getCustomerId()); + return new Result>().ok(specialSubjectService.hotSubjectTagList(formDTO)); + } } \ No newline at end of file diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/SpecialSubjectService.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/SpecialSubjectService.java index 4c81af3ef1..933c7856ce 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/SpecialSubjectService.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/SpecialSubjectService.java @@ -18,6 +18,10 @@ package com.epmet.service; import com.epmet.commons.mybatis.service.BaseService; +import com.epmet.commons.tools.page.PageData; +import com.epmet.dto.SpecialSubjectDTO; +import com.epmet.dto.form.HotSubjectTagFormDTO; +import com.epmet.dto.result.TagInfoResultDTO; import com.epmet.dto.form.AddSpecialSubjectFormDTO; import com.epmet.dto.form.DelSpecialSubjectFormDTO; import com.epmet.dto.form.QuerySpecialSubFormDTO; @@ -34,6 +38,76 @@ import java.util.List; * @since v1.0.0 2021-07-15 */ public interface SpecialSubjectService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2021-07-15 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2021-07-15 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return SpecialSubjectDTO + * @author generator + * @date 2021-07-15 + */ + SpecialSubjectDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2021-07-15 + */ + void save(SpecialSubjectDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2021-07-15 + */ + void update(SpecialSubjectDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2021-07-15 + */ + void delete(String[] ids); + + /** + * 热门标签列表 + * @author zhaoqifeng + * @date 2021/7/15 15:35 + * @param customerId + * @return java.util.List + */ + List hotSubjectTagList(HotSubjectTagFormDTO formDTO); + /** * 添加专题 * diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java index 6df20a9ce6..23523ebe9d 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java @@ -17,7 +17,12 @@ package com.epmet.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; +import com.epmet.commons.tools.constant.FieldConstant; +import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.constant.StrConstant; import com.epmet.commons.tools.exception.EpmetErrorCode; @@ -26,6 +31,8 @@ import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.dao.SpecialSubjectDao; import com.epmet.dto.SpecialSubjectDTO; +import com.epmet.dto.form.HotSubjectTagFormDTO; +import com.epmet.dto.result.TagInfoResultDTO; import com.epmet.dto.TagCustomerDTO; import com.epmet.dto.form.AddSpecialSubjectFormDTO; import com.epmet.dto.form.DelSpecialSubjectFormDTO; @@ -35,18 +42,22 @@ import com.epmet.dto.result.AddSpecialSubjectResultDTO; import com.epmet.dto.result.MineResultDTO; import com.epmet.dto.result.WorkSpecialSubjectResultDTO; import com.epmet.entity.SpecialSubjectEntity; +import com.epmet.redis.TagRedis; import com.epmet.feign.GovOrgOpenFeignClient; import com.epmet.service.SpecialSubjectService; +import org.apache.commons.collections4.CollectionUtils; import com.epmet.service.TagCustomerService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import javax.annotation.Resource; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; +import java.util.stream.Stream; /** * 专题表 @@ -59,6 +70,61 @@ import java.util.stream.Collectors; public class SpecialSubjectServiceImpl extends BaseServiceImpl implements SpecialSubjectService { @Autowired private TagCustomerService tagCustomerService; + + @Resource + private TagRedis tagRedis; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, SpecialSubjectDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, SpecialSubjectDTO.class); + } + + private QueryWrapper getWrapper(Map params){ + String id = (String)params.get(FieldConstant.ID_HUMP); + + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); + + return wrapper; + } + + @Override + public SpecialSubjectDTO get(String id) { + SpecialSubjectEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, SpecialSubjectDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(SpecialSubjectDTO dto) { + SpecialSubjectEntity entity = ConvertUtils.sourceToTarget(dto, SpecialSubjectEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(SpecialSubjectDTO dto) { + SpecialSubjectEntity entity = ConvertUtils.sourceToTarget(dto, SpecialSubjectEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } @Autowired private GovOrgOpenFeignClient govOrgOpenFeignClient; @@ -178,4 +244,30 @@ public class SpecialSubjectServiceImpl extends BaseServiceImpl + * @author zhaoqifeng + * @date 2021/7/15 15:35 + */ + @Override + public List hotSubjectTagList(HotSubjectTagFormDTO formDTO) { + + List list = tagRedis.zRevRange(formDTO.getCustomerId()); + List orgIds = Stream.of(formDTO.getPids().split(StrConstant.COLON)).collect(Collectors.toList()); + orgIds.add(formDTO.getOrgId()); + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(SpecialSubjectEntity :: getCustomerId, formDTO.getCustomerId()); + wrapper.eq(SpecialSubjectEntity :: getDelFlag, NumConstant.ZERO_STR); + wrapper.in(SpecialSubjectEntity :: getAddOrgId, orgIds); + List specialSubjectList = baseDao.selectList(wrapper); + if (CollectionUtils.isNotEmpty(specialSubjectList)) { + List tags = specialSubjectList.stream().map(SpecialSubjectEntity :: getTagId).distinct().collect(Collectors.toList()); + list = list.stream().filter(item -> !tags.contains(item.getTagId())).collect(Collectors.toList()); + } + return list; + } + } \ No newline at end of file From 00223ce39c94a01f9094b9847418269858d054c1 Mon Sep 17 00:00:00 2001 From: zhaoqifeng Date: Fri, 16 Jul 2021 14:06:10 +0800 Subject: [PATCH 2/6] =?UTF-8?q?=E4=B8=93=E9=A2=98=E7=AE=A1=E7=90=86-?= =?UTF-8?q?=E7=83=AD=E9=97=A8=E6=A0=87=E7=AD=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/service/SpecialSubjectService.java | 3 ++- .../service/impl/SpecialSubjectServiceImpl.java | 16 +++++++--------- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/SpecialSubjectService.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/SpecialSubjectService.java index 933c7856ce..42b1831117 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/SpecialSubjectService.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/SpecialSubjectService.java @@ -30,6 +30,7 @@ import com.epmet.dto.result.WorkSpecialSubjectResultDTO; import com.epmet.entity.SpecialSubjectEntity; import java.util.List; +import java.util.Map; /** * 专题表 @@ -103,7 +104,7 @@ public interface SpecialSubjectService extends BaseService * 热门标签列表 * @author zhaoqifeng * @date 2021/7/15 15:35 - * @param customerId + * @param formDTO * @return java.util.List */ List hotSubjectTagList(HotSubjectTagFormDTO formDTO); diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java index 23523ebe9d..a4cff4251e 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java @@ -23,39 +23,37 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.constant.NumConstant; -import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.constant.StrConstant; import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.RenException; +import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.dao.SpecialSubjectDao; import com.epmet.dto.SpecialSubjectDTO; -import com.epmet.dto.form.HotSubjectTagFormDTO; -import com.epmet.dto.result.TagInfoResultDTO; import com.epmet.dto.TagCustomerDTO; -import com.epmet.dto.form.AddSpecialSubjectFormDTO; -import com.epmet.dto.form.DelSpecialSubjectFormDTO; -import com.epmet.dto.form.QuerySpecialSubFormDTO; -import com.epmet.dto.form.StaffInfoFromDTO; +import com.epmet.dto.form.*; import com.epmet.dto.result.AddSpecialSubjectResultDTO; import com.epmet.dto.result.MineResultDTO; +import com.epmet.dto.result.TagInfoResultDTO; import com.epmet.dto.result.WorkSpecialSubjectResultDTO; import com.epmet.entity.SpecialSubjectEntity; -import com.epmet.redis.TagRedis; import com.epmet.feign.GovOrgOpenFeignClient; +import com.epmet.redis.TagRedis; import com.epmet.service.SpecialSubjectService; -import org.apache.commons.collections4.CollectionUtils; import com.epmet.service.TagCustomerService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.util.ArrayList; import java.util.Arrays; import java.util.List; +import java.util.Map; import java.util.stream.Collectors; import java.util.stream.Stream; From ae054cf0ee29fc1b98098f710b644c4ab61304f7 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Fri, 16 Jul 2021 15:06:34 +0800 Subject: [PATCH 3/6] hot-subject-taglist --- .../com/epmet/controller/SpecialSubjectController.java | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/SpecialSubjectController.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/SpecialSubjectController.java index 2bddb1c281..32d54beb1d 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/SpecialSubjectController.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/SpecialSubjectController.java @@ -17,24 +17,20 @@ package com.epmet.controller; -import com.epmet.commons.tools.annotation.LoginUser; -import com.epmet.commons.tools.security.dto.TokenDto; -import com.epmet.commons.tools.utils.Result; -import com.epmet.dto.form.HotSubjectTagFormDTO; -import com.epmet.dto.result.TagInfoResultDTO; import com.epmet.commons.tools.annotation.LoginUser; 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.AddSpecialSubjectFormDTO; import com.epmet.dto.form.DelSpecialSubjectFormDTO; +import com.epmet.dto.form.HotSubjectTagFormDTO; import com.epmet.dto.form.QuerySpecialSubFormDTO; import com.epmet.dto.result.AddSpecialSubjectResultDTO; +import com.epmet.dto.result.TagInfoResultDTO; import com.epmet.dto.result.WorkSpecialSubjectResultDTO; import com.epmet.service.SpecialSubjectService; import org.springframework.beans.factory.annotation.Autowired; 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.RequestMapping; import org.springframework.web.bind.annotation.RestController; @@ -108,7 +104,7 @@ public class SpecialSubjectController { * @return com.epmet.commons.tools.utils.Result> */ @PostMapping("hot-subject-taglist") - public Result> hotSubjectTagList(@LoginUser TokenDto tokenDto, HotSubjectTagFormDTO formDTO) { + public Result> hotSubjectTagList(@LoginUser TokenDto tokenDto, @RequestBody HotSubjectTagFormDTO formDTO) { formDTO.setCustomerId(tokenDto.getCustomerId()); return new Result>().ok(specialSubjectService.hotSubjectTagList(formDTO)); } From f49e0c52b4fe3b233469fc39e6bb86013d2ea2e5 Mon Sep 17 00:00:00 2001 From: zhaoqifeng Date: Fri, 16 Jul 2021 15:55:13 +0800 Subject: [PATCH 4/6] =?UTF-8?q?=E4=B8=93=E9=A2=98=E7=AE=A1=E7=90=86-?= =?UTF-8?q?=E7=83=AD=E9=97=A8=E6=A0=87=E7=AD=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/dto/result/PreviewResultDTO.java | 19 ++++++++++ .../controller/SpecialSubjectController.java | 18 +++++++-- .../main/java/com/epmet/dao/ArticleDao.java | 2 + .../java/com/epmet/dao/SpecialSubjectDao.java | 3 ++ .../epmet/entity/SpecialSubjectEntity.java | 2 +- .../com/epmet/service/ArticleService.java | 11 ++++++ .../epmet/service/SpecialSubjectService.java | 15 ++++++-- .../service/impl/ArticleServiceImpl.java | 15 ++++++++ .../impl/SpecialSubjectServiceImpl.java | 38 +++++++++++++++---- .../src/main/resources/mapper/ArticleDao.xml | 29 ++++++++++++++ .../resources/mapper/SpecialSubjectDao.xml | 11 ++++++ 11 files changed, 147 insertions(+), 16 deletions(-) create mode 100644 epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/PreviewResultDTO.java diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/PreviewResultDTO.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/PreviewResultDTO.java new file mode 100644 index 0000000000..16681096c8 --- /dev/null +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/PreviewResultDTO.java @@ -0,0 +1,19 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * @author zhaoqifeng + * @dscription + * @date 2021/7/16 14:26 + */ +@Data +public class PreviewResultDTO implements Serializable { + private static final long serialVersionUID = 4801322472642418941L; + private String specialSubjectId; + private String tagName; + private List articleList; +} diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/SpecialSubjectController.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/SpecialSubjectController.java index 32d54beb1d..315a0e54cf 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/SpecialSubjectController.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/SpecialSubjectController.java @@ -21,11 +21,9 @@ import com.epmet.commons.tools.annotation.LoginUser; 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.AddSpecialSubjectFormDTO; -import com.epmet.dto.form.DelSpecialSubjectFormDTO; -import com.epmet.dto.form.HotSubjectTagFormDTO; -import com.epmet.dto.form.QuerySpecialSubFormDTO; +import com.epmet.dto.form.*; import com.epmet.dto.result.AddSpecialSubjectResultDTO; +import com.epmet.dto.result.PreviewResultDTO; import com.epmet.dto.result.TagInfoResultDTO; import com.epmet.dto.result.WorkSpecialSubjectResultDTO; import com.epmet.service.SpecialSubjectService; @@ -108,4 +106,16 @@ public class SpecialSubjectController { formDTO.setCustomerId(tokenDto.getCustomerId()); return new Result>().ok(specialSubjectService.hotSubjectTagList(formDTO)); } + + /** + * 效果预览 + * @author zhaoqifeng + * @date 2021/7/16 15:54 + * @param formDTO + * @return com.epmet.commons.tools.utils.Result> + */ + @PostMapping("preview") + public Result> preview(@RequestBody PreviewFormDTO formDTO) { + return new Result>().ok(specialSubjectService.preview(formDTO)); + } } \ No newline at end of file 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 82d269b257..1650ee5fb2 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 @@ -131,6 +131,8 @@ public interface ArticleDao extends BaseDao { **/ List selectArticleList(@Param("gridId") String gridId, @Param("tagIdList") List tagIdList); + List selectArticleListByTag(@Param("tagId") String tagId, @Param("pageNo") Integer pageNo, @Param("pageSize") Integer pageSize); + /** * @param gridId * @param articleId diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/dao/SpecialSubjectDao.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/dao/SpecialSubjectDao.java index fe2da402c6..0ada844144 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/dao/SpecialSubjectDao.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/dao/SpecialSubjectDao.java @@ -37,4 +37,7 @@ public interface SpecialSubjectDao extends BaseDao { int delSpecialSubject(@Param("id") String id, @Param("userId") String userId); List queryExistedList(@Param("orgId") String orgId,@Param("notList")List notList); + + SpecialSubjectEntity getInfo(@Param("tagId") String tagId); + } \ No newline at end of file diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/entity/SpecialSubjectEntity.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/entity/SpecialSubjectEntity.java index 6f0f61ed9a..315224b46f 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/entity/SpecialSubjectEntity.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/entity/SpecialSubjectEntity.java @@ -44,7 +44,7 @@ public class SpecialSubjectEntity extends BaseEpmetEntity { * 标签id */ private String tagId; - + private String tagName; /** * 新增此专题的用户id */ diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/ArticleService.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/ArticleService.java index 96da85b8b9..db03b3a0c5 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/ArticleService.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/ArticleService.java @@ -232,4 +232,15 @@ public interface ArticleService extends BaseService { * @date 2021/7/15 5:22 下午 */ List subjectList(SubjectListFormDTO formDTO); + + /** + * 根据tag查找文章列表 + * @author zhaoqifeng + * @date 2021/7/16 14:50 + * @param tagId + * @param pageNo + * @param pageSize + * @return java.util.List + */ + List getArticleListByTag(String tagId, Integer pageNo, Integer pageSize); } \ No newline at end of file diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/SpecialSubjectService.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/SpecialSubjectService.java index 42b1831117..8fa6bd1aa7 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/SpecialSubjectService.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/SpecialSubjectService.java @@ -20,11 +20,9 @@ package com.epmet.service; import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.page.PageData; import com.epmet.dto.SpecialSubjectDTO; -import com.epmet.dto.form.HotSubjectTagFormDTO; +import com.epmet.dto.form.*; +import com.epmet.dto.result.PreviewResultDTO; import com.epmet.dto.result.TagInfoResultDTO; -import com.epmet.dto.form.AddSpecialSubjectFormDTO; -import com.epmet.dto.form.DelSpecialSubjectFormDTO; -import com.epmet.dto.form.QuerySpecialSubFormDTO; import com.epmet.dto.result.AddSpecialSubjectResultDTO; import com.epmet.dto.result.WorkSpecialSubjectResultDTO; import com.epmet.entity.SpecialSubjectEntity; @@ -138,4 +136,13 @@ public interface SpecialSubjectService extends BaseService * @date 2021-07-15 */ List queryExistedList(QuerySpecialSubFormDTO formDTO); + + /** + * 效果预览 + * @author zhaoqifeng + * @date 2021/7/16 14:28 + * @param formDTO + * @return java.util.List + */ + List preview(PreviewFormDTO formDTO); } \ No newline at end of file diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java index 01855ac3a7..d4bacc8197 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java @@ -1419,4 +1419,19 @@ public class ArticleServiceImpl extends BaseServiceImpl(); } + + /** + * 根据tag查找文章列表 + * + * @param tagId + * @param pageNo + * @param pageSize + * @return java.util.List + * @author zhaoqifeng + * @date 2021/7/16 14:47 + */ + @Override + public List getArticleListByTag(String tagId, Integer pageNo, Integer pageSize) { + return baseDao.selectArticleListByTag(tagId, pageNo, pageSize); + } } diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java index a4cff4251e..7228c102f8 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java @@ -33,13 +33,11 @@ import com.epmet.dao.SpecialSubjectDao; import com.epmet.dto.SpecialSubjectDTO; import com.epmet.dto.TagCustomerDTO; import com.epmet.dto.form.*; -import com.epmet.dto.result.AddSpecialSubjectResultDTO; -import com.epmet.dto.result.MineResultDTO; -import com.epmet.dto.result.TagInfoResultDTO; -import com.epmet.dto.result.WorkSpecialSubjectResultDTO; +import com.epmet.dto.result.*; import com.epmet.entity.SpecialSubjectEntity; import com.epmet.feign.GovOrgOpenFeignClient; import com.epmet.redis.TagRedis; +import com.epmet.service.ArticleService; import com.epmet.service.SpecialSubjectService; import com.epmet.service.TagCustomerService; import lombok.extern.slf4j.Slf4j; @@ -68,9 +66,12 @@ import java.util.stream.Stream; public class SpecialSubjectServiceImpl extends BaseServiceImpl implements SpecialSubjectService { @Autowired private TagCustomerService tagCustomerService; - @Resource private TagRedis tagRedis; + @Autowired + private GovOrgOpenFeignClient govOrgOpenFeignClient; + @Resource + private ArticleService articleService; @Override public PageData page(Map params) { @@ -123,8 +124,7 @@ public class SpecialSubjectServiceImpl extends BaseServiceImpl + * @author zhaoqifeng + * @date 2021/7/16 14:28 + */ + @Override + public List preview(PreviewFormDTO formDTO) { + List result = new ArrayList<>(); + formDTO.getTagIdList().forEach(tagId -> { + PreviewResultDTO previewResultDTO = new PreviewResultDTO(); + SpecialSubjectEntity subjectEntity = baseDao.getInfo(tagId); + previewResultDTO.setSpecialSubjectId(subjectEntity.getId()); + previewResultDTO.setTagName(subjectEntity.getTagName()); + previewResultDTO.setArticleList(articleService.getArticleListByTag(tagId, formDTO.getPageNo(), formDTO.getPageSize())); + result.add(previewResultDTO); + }); + return result; + + } + } \ 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 dd57d15464..103a6d7135 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 @@ -388,5 +388,34 @@ #{pid} + diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/SpecialSubjectDao.xml b/epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/SpecialSubjectDao.xml index d78a75baea..706460004d 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/SpecialSubjectDao.xml +++ b/epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/SpecialSubjectDao.xml @@ -27,4 +27,15 @@ order by ss.CREATED_TIME desc + \ No newline at end of file From f2769bb15cfacc30e33978722aa4d57ab489c34f Mon Sep 17 00:00:00 2001 From: jianjun Date: Fri, 16 Jul 2021 17:00:59 +0800 Subject: [PATCH 5/6] =?UTF-8?q?=E6=A0=87=E7=AD=BE=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E9=A2=9C=E8=89=B2=E5=AD=97=E6=AE=B5=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/resources/db/migration/V0.0.5__add_tag_color.sql | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 epmet-module/gov-voice/gov-voice-server/src/main/resources/db/migration/V0.0.5__add_tag_color.sql diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/resources/db/migration/V0.0.5__add_tag_color.sql b/epmet-module/gov-voice/gov-voice-server/src/main/resources/db/migration/V0.0.5__add_tag_color.sql new file mode 100644 index 0000000000..393a6b484c --- /dev/null +++ b/epmet-module/gov-voice/gov-voice-server/src/main/resources/db/migration/V0.0.5__add_tag_color.sql @@ -0,0 +1,8 @@ +ALTER TABLE `epmet_gov_voice`.`tag_default` + ADD COLUMN `TAG_COLOR` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '标签颜色' AFTER `TAG_NAME`, + DROP PRIMARY KEY, + ADD PRIMARY KEY (`ID`) USING BTREE; +ALTER TABLE `epmet_gov_voice`.`tag_customer` + ADD COLUMN `TAG_COLOR` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '标签颜色' AFTER `TAG_NAME`, + DROP PRIMARY KEY, + ADD PRIMARY KEY (`ID`) USING BTREE; From 460599f156108757b1f6bfe61a14bace52743989 Mon Sep 17 00:00:00 2001 From: jianjun Date: Fri, 16 Jul 2021 17:01:23 +0800 Subject: [PATCH 6/6] =?UTF-8?q?Revert=20"=E6=A0=87=E7=AD=BE=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E9=A2=9C=E8=89=B2=E5=AD=97=E6=AE=B5=EF=BC=9B"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit f2769bb1 --- .../main/resources/db/migration/V0.0.5__add_tag_color.sql | 8 -------- 1 file changed, 8 deletions(-) delete mode 100644 epmet-module/gov-voice/gov-voice-server/src/main/resources/db/migration/V0.0.5__add_tag_color.sql diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/resources/db/migration/V0.0.5__add_tag_color.sql b/epmet-module/gov-voice/gov-voice-server/src/main/resources/db/migration/V0.0.5__add_tag_color.sql deleted file mode 100644 index 393a6b484c..0000000000 --- a/epmet-module/gov-voice/gov-voice-server/src/main/resources/db/migration/V0.0.5__add_tag_color.sql +++ /dev/null @@ -1,8 +0,0 @@ -ALTER TABLE `epmet_gov_voice`.`tag_default` - ADD COLUMN `TAG_COLOR` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '标签颜色' AFTER `TAG_NAME`, - DROP PRIMARY KEY, - ADD PRIMARY KEY (`ID`) USING BTREE; -ALTER TABLE `epmet_gov_voice`.`tag_customer` - ADD COLUMN `TAG_COLOR` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '标签颜色' AFTER `TAG_NAME`, - DROP PRIMARY KEY, - ADD PRIMARY KEY (`ID`) USING BTREE;