From f381be5dd7bd8643f77a755d2b28631c9d41afac Mon Sep 17 00:00:00 2001 From: yujintao Date: Tue, 17 Sep 2019 19:55:47 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E9=97=BB=E4=B8=8Abanner=E4=B8=8Ebanne?= =?UTF-8?q?r=E5=88=97=E8=A1=A8=E6=8E=A5=E5=8F=A3=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/elink/esua/epdc/dto/BannerDTO.java | 59 +++++++++++------- .../java/com/elink/esua/epdc/dto/NewsDTO.java | 62 ++++++++++--------- .../epdc/result/EpdcBannerListResultDTO.java | 9 +-- .../epdc/controller/BannerController.java | 10 +-- .../controller/EpdcAppNewsController.java | 2 +- .../esua/epdc/controller/NewsController.java | 13 ++++ .../elink/esua/epdc/entity/BannerEntity.java | 52 +++++++++------- .../elink/esua/epdc/entity/NewsEntity.java | 57 +++++++++-------- .../esua/epdc/service/BannerService.java | 11 ++++ .../epdc/service/NewsDepartmentService.java | 2 + .../elink/esua/epdc/service/NewsService.java | 8 +++ .../epdc/service/impl/BannerServiceImpl.java | 9 +++ .../impl/NewsDepartmentServiceImpl.java | 6 +- .../epdc/service/impl/NewsServiceImpl.java | 46 ++++++++++++-- 14 files changed, 227 insertions(+), 119 deletions(-) diff --git a/esua-epdc/epdc-module/epdc-news/epdc-news-client/src/main/java/com/elink/esua/epdc/dto/BannerDTO.java b/esua-epdc/epdc-module/epdc-news/epdc-news-client/src/main/java/com/elink/esua/epdc/dto/BannerDTO.java index 36be10da1..aee8c11a2 100644 --- a/esua-epdc/epdc-module/epdc-news/epdc-news-client/src/main/java/com/elink/esua/epdc/dto/BannerDTO.java +++ b/esua-epdc/epdc-module/epdc-news/epdc-news-client/src/main/java/com/elink/esua/epdc/dto/BannerDTO.java @@ -19,6 +19,7 @@ package com.elink.esua.epdc.dto; import java.io.Serializable; import java.util.Date; + import lombok.Data; @@ -31,121 +32,131 @@ import lombok.Data; @Data public class BannerDTO implements Serializable { - private static final long serialVersionUID = 1L; + private static final long serialVersionUID = -827234900237385911L; /** * 主键 */ - private String id; + private String id; /** * 链接地址 */ - private String url; + private String url; /** * 标题 */ - private String title; + private String title; /** * banner图片 */ - private String imgUrl; + private String imgUrl; /** * banner类型 */ - private String bannerType; + private String bannerType; /** * 上下架状态(0-下架,1-上架) */ - private String state; + private String state; /** * 上下架时间 */ - private Date stateTime; + private Date stateTime; /** * 乐观锁 */ - private Integer revision; + private Integer revision; /** * 部门ID */ - private Long gridId; + private Long gridId; /** * 创建人 */ - private String createdBy; + private String createdBy; /** * 创建时间 */ - private Date createdTime; + private Date createdTime; /** * 更新人 */ - private String updatedBy; + private String updatedBy; /** * 更新时间 */ - private Date updatedTime; + private Date updatedTime; /** * 删除标记 */ - private String delFlag; + private String delFlag; /** * 发布人的部门 */ - private String deptName; + private String deptName; /** * 发布人的部门ID */ - private Long deptId; + private Long deptId; /** * 通知所属街道 */ - private String street; + private String street; /** * 通知所属街道ID */ - private Long streetId; + private Long streetId; /** * 通知所属社区 */ - private String community; + private String community; /** * 通知所属社区ID */ - private Long communityId; + private Long communityId; /** * 通知所属网格 */ - private String grid; + private String grid; /** * 创建人姓名 */ - private String creatorName; + private String creatorName; /*** * banner位置 */ - private String position; + private String position; + + /** + * 是否来自新闻 0否;1是 + */ + private String newsFlag; + + /** + * 新闻ID + */ + private String newsId; } \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-news/epdc-news-client/src/main/java/com/elink/esua/epdc/dto/NewsDTO.java b/esua-epdc/epdc-module/epdc-news/epdc-news-client/src/main/java/com/elink/esua/epdc/dto/NewsDTO.java index bb0b045fc..37f6f6ca1 100644 --- a/esua-epdc/epdc-module/epdc-news/epdc-news-client/src/main/java/com/elink/esua/epdc/dto/NewsDTO.java +++ b/esua-epdc/epdc-module/epdc-news/epdc-news-client/src/main/java/com/elink/esua/epdc/dto/NewsDTO.java @@ -19,6 +19,7 @@ package com.elink.esua.epdc.dto; import java.io.Serializable; import java.util.Date; + import lombok.Data; @@ -31,43 +32,43 @@ import lombok.Data; @Data public class NewsDTO implements Serializable { - private static final long serialVersionUID = 1L; + private static final long serialVersionUID = 6646375796609160832L; /** * ID */ - private String id; + private String id; /** * 新闻标题 */ - private String newsTitle; + private String newsTitle; /** * 新闻内容 */ - private String newsContent; + private String newsContent; /** * 新闻类别ID */ - private String newsCateroryId; + private String newsCateroryId; /** * 新闻属性 */ - private String newsProperty; + private String newsProperty; /** * 新闻主图 */ - private String newsImageUrl; + private String newsImageUrl; /** * 新闻上下线状态 0-下线,1-上线 */ - private String newsUpDownState; + private String newsUpDownState; /** * 新闻是否发布 0否,1是 @@ -77,101 +78,106 @@ public class NewsDTO implements Serializable { /** * 新闻发布开始时间 */ - private Date newsReleaseStartTime; + private Date newsReleaseStartTime; /** * 新闻发布结束时间 */ - private Date newsReleaseEndTime; + private Date newsReleaseEndTime; /** * 发布人部门 */ - private String deptName; + private String deptName; /** * 发布人部门ID */ - private Long deptId; + private Long deptId; /** * 阅读量 */ - private Integer readingAmount; + private Integer readingAmount; /** * 点赞数 */ - private Integer likeNumber; + private Integer likeNumber; /** * 点踩数 */ - private Integer unLikeNumber; + private Integer unLikeNumber; /** * 删除标识 0:未删除,1:已删除 */ - private String delFlag; + private String delFlag; /** * 乐观锁 */ - private Integer revision; + private Integer revision; /** * 创建人 */ - private String createdBy; + private String createdBy; /** * 创建时间 */ - private Date createdTime; + private Date createdTime; /** * 更新人 */ - private String updatedBy; + private String updatedBy; /** * 更新时间 */ - private Date updatedTime; + private Date updatedTime; /** * 通知所属街道 */ - private String street; + private String street; /** * 通知所属街道ID */ - private Long streetId; + private Long streetId; /** * 通知所属社区 */ - private String community; + private String community; /** * 通知所属社区ID */ - private Long communityId; + private Long communityId; /** * 通知所属网格 */ - private String grid; + private String grid; /** * 通知所属网格ID */ - private Long gridId; + private Long gridId; /** * 创建人姓名 */ - private String creatorName; + private String creatorName; + + /** + * 是否已上banner + */ + private String bannerFlag; } \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-news/epdc-news-client/src/main/java/com/elink/esua/epdc/dto/epdc/result/EpdcBannerListResultDTO.java b/esua-epdc/epdc-module/epdc-news/epdc-news-client/src/main/java/com/elink/esua/epdc/dto/epdc/result/EpdcBannerListResultDTO.java index 97ebea974..07b87119f 100644 --- a/esua-epdc/epdc-module/epdc-news/epdc-news-client/src/main/java/com/elink/esua/epdc/dto/epdc/result/EpdcBannerListResultDTO.java +++ b/esua-epdc/epdc-module/epdc-news/epdc-news-client/src/main/java/com/elink/esua/epdc/dto/epdc/result/EpdcBannerListResultDTO.java @@ -12,15 +12,12 @@ import java.io.Serializable; @Data public class EpdcBannerListResultDTO implements Serializable { - private static final long serialVersionUID = 130844542701370110L; - /** - * id : 50799 - * imgUrl : X8Z0iszHt0 - * title : uxlJbM48gM - */ + private static final long serialVersionUID = -513542091686248656L; private String id; private String imgUrl; private String title; + private String newsFlag; + private String newsId; } diff --git a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/controller/BannerController.java b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/controller/BannerController.java index c8b77f8bb..cf73a53a5 100644 --- a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/controller/BannerController.java +++ b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/controller/BannerController.java @@ -61,6 +61,7 @@ public class BannerController { BannerDTO data = bannerService.get(id); return new Result().ok(data); } + /*** * 新增banner * @param dto @@ -107,11 +108,11 @@ public class BannerController { */ @PostMapping("soltOut/{id}") public Result soltOut(@PathVariable("id") String id) { - BannerDTO bannerDTO=new BannerDTO(); + BannerDTO bannerDTO = new BannerDTO(); bannerDTO.setId(id); bannerDTO.setState(YesOrNoEnum.NO.value()); bannerService.update(bannerDTO); - return new Result(); + return new Result(); } /*** @@ -123,12 +124,11 @@ public class BannerController { */ @PostMapping("putAway/{id}") public Result putAway(@PathVariable("id") String id) { - BannerDTO bannerDTO=new BannerDTO(); + BannerDTO bannerDTO = new BannerDTO(); bannerDTO.setId(id); bannerDTO.setState(YesOrNoEnum.YES.value()); bannerService.update(bannerDTO); - return new Result(); + return new Result(); } - } \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/controller/EpdcAppNewsController.java b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/controller/EpdcAppNewsController.java index 083d4bddb..2d221b0a7 100644 --- a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/controller/EpdcAppNewsController.java +++ b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/controller/EpdcAppNewsController.java @@ -120,6 +120,6 @@ public class EpdcAppNewsController { */ @GetMapping("list") public Result> listBanner(@RequestBody EpdcBannerListFromDTO fromDTO ){ - return new Result>().ok(bannerService.listBanner(fromDTO)); + return new Result().ok(bannerService.listBanner(fromDTO)); } } \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/controller/NewsController.java b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/controller/NewsController.java index f4067fe8c..ebc8a3139 100644 --- a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/controller/NewsController.java +++ b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/controller/NewsController.java @@ -136,4 +136,17 @@ public class NewsController { return new Result(); } + + /*** + * 新闻上banner + * @param newsId + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @author work@yujt.net.cn + * @date 2019/9/17 19:07 + */ + @PostMapping("newsToBanner/{newsId}") + public Result newsToBanner(@PathVariable("newsId") String newsId) { + return newsService.newsToBanner(newsId); + } + } \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/entity/BannerEntity.java b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/entity/BannerEntity.java index aaaeb0dff..0301f328d 100644 --- a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/entity/BannerEntity.java +++ b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/entity/BannerEntity.java @@ -32,90 +32,100 @@ import java.util.Date; * @since v1.0.0 2019-09-10 */ @Data -@EqualsAndHashCode(callSuper=false) +@EqualsAndHashCode(callSuper = false) @TableName("epdc_banner") public class BannerEntity extends BaseEpdcEntity { - private static final long serialVersionUID = 1L; + private static final long serialVersionUID = 2121027370256705244L; /** * 链接地址 */ - private String url; + private String url; /** * 标题 */ - private String title; + private String title; /** * banner图片 */ - private String imgUrl; + private String imgUrl; /** * banner类型 */ - private String bannerType; + private String bannerType; /** * 上下架状态(0-下架,1-上架) */ - private String state; + private String state; /** * 上下架时间 */ - private Date stateTime; + private Date stateTime; /** * 部门ID */ - private Long gridId; + private Long gridId; /** * 发布人的部门 */ - private String deptName; + private String deptName; /** * 发布人的部门ID */ - private Long deptId; + private Long deptId; /** * 通知所属街道 */ - private String street; + private String street; /** * 通知所属街道ID */ - private Long streetId; + private Long streetId; /** * 通知所属社区 */ - private String community; + private String community; /** * 通知所属社区ID */ - private Long communityId; + private Long communityId; /** * 通知所属网格 */ - private String grid; + private String grid; /** * 创建人姓名 */ - private String creatorName; + private String creatorName; - /*** - * banner位置 - */ - private String position; + /*** + * banner位置 + */ + private String position; + + /** + * 是否来自新闻 0否;1是 + */ + private String newsFlag; + + /** + * 新闻ID + */ + private String newsId; } \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/entity/NewsEntity.java b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/entity/NewsEntity.java index a2a368c4b..a12be27b2 100644 --- a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/entity/NewsEntity.java +++ b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/entity/NewsEntity.java @@ -33,116 +33,121 @@ import java.util.Date; * @since v1.0.0 2019-09-05 */ @Data -@EqualsAndHashCode(callSuper=false) +@EqualsAndHashCode(callSuper = false) @TableName("epdc_news") public class NewsEntity extends BaseEpdcEntity { - private static final long serialVersionUID = 1L; + private static final long serialVersionUID = -4353839093009836919L; /** * 新闻标题 */ - private String newsTitle; + private String newsTitle; /** * 新闻内容 */ - private String newsContent; + private String newsContent; /** * 新闻类别ID */ - private String newsCateroryId; + private String newsCateroryId; /** * 新闻属性 */ - private String newsProperty; + private String newsProperty; /** * 新闻主图 */ - private String newsImageUrl; + private String newsImageUrl; /** * 新闻上下线状态 0-下线,1-上线 */ - private String newsUpDownState; + private String newsUpDownState; /** * 新闻发布开始时间 */ - private Date newsReleaseStartTime; + private Date newsReleaseStartTime; /** * 新闻发布结束时间 */ - private Date newsReleaseEndTime; + private Date newsReleaseEndTime; /** * 发布人部门 */ - private String deptName; + private String deptName; /** * 发布人部门ID */ - private Long deptId; + private Long deptId; - /** - * 新闻是否发布 0否,1是 - */ - private String newsReleaseState; + /** + * 新闻是否发布 0否,1是 + */ + private String newsReleaseState; /** * 阅读量 */ - private Integer readingAmount; + private Integer readingAmount; /** * 点赞数 */ - private Integer likeNumber; + private Integer likeNumber; /** * 点踩数 */ - private Integer unLikeNumber; + private Integer unLikeNumber; /** * 通知所属街道 */ - private String street; + private String street; /** * 通知所属街道ID */ - private Long streetId; + private Long streetId; /** * 通知所属社区 */ - private String community; + private String community; /** * 通知所属社区ID */ - private Long communityId; + private Long communityId; /** * 通知所属网格 */ - private String grid; + private String grid; /** * 通知所属网格ID */ - private Long gridId; + private Long gridId; /** * 创建人姓名 */ - private String creatorName; + private String creatorName; + + /** + * 是否已上banner + */ + private String bannerFlag; } \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/BannerService.java b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/BannerService.java index a707b5d8b..e37ec6e98 100644 --- a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/BannerService.java +++ b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/BannerService.java @@ -19,6 +19,7 @@ package com.elink.esua.epdc.service; import com.elink.esua.epdc.commons.mybatis.service.BaseService; import com.elink.esua.epdc.commons.tools.page.PageData; +import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.dto.BannerDTO; import com.elink.esua.epdc.dto.epdc.form.EpdcBannerListFromDTO; import com.elink.esua.epdc.dto.epdc.result.EpdcBannerListResultDTO; @@ -102,4 +103,14 @@ public interface BannerService extends BaseService { * @date 2019/9/11 8:59 */ List listBanner(EpdcBannerListFromDTO fromDTO); + + /*** + * 新闻上banner + * @param banner + * @param deptIds + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @author work@yujt.net.cn + * @date 2019/9/17 19:42 + */ + Result saveNewsToBanner(BannerDTO banner, List deptIds); } \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/NewsDepartmentService.java b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/NewsDepartmentService.java index 57a77e5d5..49ac764af 100644 --- a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/NewsDepartmentService.java +++ b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/NewsDepartmentService.java @@ -95,6 +95,7 @@ public interface NewsDepartmentService extends BaseService /** * 修改的时候把该新闻的部门关联都清除 + * * @param newsId */ void deleteByNewsId(String newsId); @@ -102,6 +103,7 @@ public interface NewsDepartmentService extends BaseService /** * 保存所有网格 + * * @param id * @param newsGridList */ diff --git a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/NewsService.java b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/NewsService.java index 034b1f4d3..759fbc74b 100644 --- a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/NewsService.java +++ b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/NewsService.java @@ -169,4 +169,12 @@ public interface NewsService extends BaseService { */ Result modifyNewsBrowse(EpdcNewsBrowseFromDTO newsBrowseFromDTO); + /*** + * 新闻上banner + * @param newsId + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @author work@yujt.net.cn + * @date 2019/9/17 19:21 + */ + Result newsToBanner(String newsId); } diff --git a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/BannerServiceImpl.java b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/BannerServiceImpl.java index efc95f98b..7d6fea3f2 100644 --- a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/BannerServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/BannerServiceImpl.java @@ -21,6 +21,7 @@ import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl; +import com.elink.esua.epdc.commons.tools.constant.NumConstant; import com.elink.esua.epdc.commons.tools.enums.YesOrNoEnum; import com.elink.esua.epdc.commons.tools.exception.RenException; import com.elink.esua.epdc.commons.tools.page.PageData; @@ -162,4 +163,12 @@ public class BannerServiceImpl extends BaseServiceImpl return baseDao.selectListBanner(fromDTO); } + @Override + public Result saveNewsToBanner(BannerDTO banner, List deptIds) { + BannerEntity bannerEntity = ConvertUtils.sourceToTarget(banner, BannerEntity.class); + if (this.baseDao.insert(bannerEntity) > NumConstant.ZERO) { + bannerDepartmentService.save(bannerEntity.getId(), deptIds); + } + return new Result(); + } } \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/NewsDepartmentServiceImpl.java b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/NewsDepartmentServiceImpl.java index d681426b7..5294eaf4b 100644 --- a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/NewsDepartmentServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/NewsDepartmentServiceImpl.java @@ -29,10 +29,8 @@ import com.elink.esua.epdc.commons.tools.constant.FieldConstant; import com.elink.esua.epdc.dao.NewsDepartmentDao; import com.elink.esua.epdc.dto.NewsDepartmentDTO; import com.elink.esua.epdc.entity.NewsDepartmentEntity; -import com.elink.esua.epdc.entity.NoticeDepartmentEntity; import com.elink.esua.epdc.redis.NewsDepartmentRedis; import com.elink.esua.epdc.service.NewsDepartmentService; -import com.google.common.collect.Lists; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -71,8 +69,8 @@ public class NewsDepartmentServiceImpl extends BaseServiceImpl getWrapper(Map params){ - String id = (String)params.get(FieldConstant.ID_HUMP); + 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); diff --git a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/NewsServiceImpl.java b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/NewsServiceImpl.java index a32690792..5c9b5393a 100644 --- a/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/NewsServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/NewsServiceImpl.java @@ -31,10 +31,14 @@ import com.elink.esua.epdc.commons.tools.utils.ConvertUtils; import com.elink.esua.epdc.commons.tools.constant.FieldConstant; import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.dao.NewsDao; +import com.elink.esua.epdc.dto.BannerDTO; import com.elink.esua.epdc.dto.NewsDTO; +import com.elink.esua.epdc.dto.NewsDepartmentDTO; import com.elink.esua.epdc.dto.NewsUserAttitudeDTO; import com.elink.esua.epdc.dto.epdc.form.EpdcNewsDetailFormDTO; import com.elink.esua.epdc.dto.epdc.result.EpdcNewsListResultDTO; +import com.elink.esua.epdc.entity.BannerEntity; +import com.elink.esua.epdc.entity.NewsDepartmentEntity; import com.elink.esua.epdc.entity.NewsUserAttitudeEntity; import com.elink.esua.epdc.enums.AppNewsLikeEnum; import com.elink.esua.epdc.dto.epdc.form.EpdcNewsBrowseFromDTO; @@ -43,9 +47,7 @@ import com.elink.esua.epdc.dto.epdc.form.EpdcNewsStatementFromDTO; import com.elink.esua.epdc.dto.epdc.result.EpdcNewsDetailResultDTO; import com.elink.esua.epdc.entity.NewsEntity; import com.elink.esua.epdc.feign.AdminFeignClient; -import com.elink.esua.epdc.service.NewsDepartmentService; -import com.elink.esua.epdc.service.NewsService; -import com.elink.esua.epdc.service.NewsUserAttitudeService; +import com.elink.esua.epdc.service.*; import com.google.common.collect.Lists; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -53,6 +55,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.Arrays; +import java.util.Date; import java.util.List; import java.util.Map; @@ -110,7 +113,7 @@ public class NewsServiceImpl extends BaseServiceImpl implem wrapper.lt(StringUtils.isNotBlank(endTime), "CREATED_TIME", endTime); wrapper.eq(StringUtils.isNotBlank(category), "NEWS_CATERORY_ID", category); wrapper.like(StringUtils.isNotBlank(keyword), "NEWS_TITLE", keyword); - wrapper.eq("CREATED_BY",user.getId()); + wrapper.eq("CREATED_BY", user.getId()); //draft 前端传上来的一个标志 有则代表是存草稿箱的 1 if (StringUtils.isNotEmpty(draft)) { wrapper.eq(StringUtils.isNotBlank(draft), "NEWS_RELEASE_STATE", YesOrNoEnum.YES.value()); @@ -364,4 +367,39 @@ public class NewsServiceImpl extends BaseServiceImpl implem return new Result(); } + @Autowired + private BannerService bannerService; + + @Override + public Result newsToBanner(String newsId) { + + NewsEntity newsEntity = baseDao.selectById(newsId); + if (null == newsEntity || YesOrNoEnum.YES.value().equals(newsEntity.getBannerFlag())) { + return new Result().error("操作失败,新闻不存在或已是banner"); + } + + Result> adminResult = adminFeignClient.listGridIdByDeptPid(SecurityUser.getDeptId()); + if (!adminResult.success() || CollUtil.isEmpty(adminResult.getData())) { + throw new RenException("获取部门信息失败"); + } + List deptIds = adminResult.getData(); + + BannerDTO banner = ConvertUtils.sourceToTarget(newsEntity, BannerDTO.class); + banner.setState(YesOrNoEnum.YES.value()); + banner.setStateTime(new Date()); + banner.setImgUrl(newsEntity.getNewsImageUrl()); + banner.setNewsFlag(YesOrNoEnum.YES.value()); + banner.setNewsId(newsId); + banner.setTitle(newsEntity.getNewsTitle()); + + this.bannerService.saveNewsToBanner(banner, deptIds); + + NewsEntity news = new NewsEntity(); + news.setId(newsId); + news.setBannerFlag(YesOrNoEnum.YES.value()); + this.updateById(news); + + return new Result(); + + } } \ No newline at end of file