diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/AddOrSaveDraftFormDTO.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/AddOrSaveDraftFormDTO.java index 207fb75bcc..aef08ba3ff 100644 --- a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/AddOrSaveDraftFormDTO.java +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/AddOrSaveDraftFormDTO.java @@ -1,13 +1,12 @@ package com.epmet.dto.form; import com.epmet.commons.tools.constant.NumConstant; +import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; import lombok.Data; import org.hibernate.validator.constraints.Length; import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; import java.io.Serializable; -import java.util.Date; import java.util.List; /** @@ -18,7 +17,7 @@ import java.util.List; @Data public class AddOrSaveDraftFormDTO implements Serializable { - public interface AddArticleForm{} + public interface AddArticleForm extends CustomerClientShowGroup {} public interface AddDraftForm{} /** @@ -31,7 +30,7 @@ public class AddOrSaveDraftFormDTO implements Serializable { @Length(max = 50, message = "标题最长为50个字") private String title; - @NotBlank(message = "栏目分类不能为空",groups = {AddArticleForm.class}) + // @NotBlank(message = "所属栏目不能为空",groups = {AddArticleForm.class}) private String category; /** @@ -84,4 +83,18 @@ public class AddOrSaveDraftFormDTO implements Serializable { * 封面图地址 */ private String imgUrl; + + /** + * 内容列表 + */ + private List fileList; + + @Data + public static class ContentDTO { + public ContentDTO() { + } + private String fileId; + private String content; + private String fileName; + } } diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/ArticleListFormDTO.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/ArticleListFormDTO.java index 0a601e9802..aad4177f65 100644 --- a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/ArticleListFormDTO.java +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/ArticleListFormDTO.java @@ -14,6 +14,16 @@ import java.util.List; public class ArticleListFormDTO implements Serializable { private static final long serialVersionUID = 6397877545890473794L; + /** + * 栏目 + */ + private String category; + + /** + * 子栏目列表 + */ + private List subCategories; + /** * 文章标题 */ diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/UpdateArticleFormDTO.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/UpdateArticleFormDTO.java index 860e0fd6e6..9c01032aff 100644 --- a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/UpdateArticleFormDTO.java +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/UpdateArticleFormDTO.java @@ -28,7 +28,7 @@ public class UpdateArticleFormDTO { @NotBlank(message = "articleId不能为空", groups = {AddUserInternalGroup.class}) private String articleId; - @NotBlank(message = "栏目不能为空", groups = {AddUserInternalGroup.class}) + // @NotBlank(message = "所属栏目不能为空", groups = {AddUserShowGroup.class}) private String category; @NotBlank(message = "文章标题不能为空", groups = {AddUserShowGroup.class}) @@ -91,5 +91,19 @@ public class UpdateArticleFormDTO { */ @NotBlank(message = "customerId不能为空", groups = AddUserInternalGroup.class) private String customerId; + + /** + * 内容列表 + */ + private List fileList; + + @Data + public static class ContentDTO { + public ContentDTO() { + } + private String fileId; + private String content; + private String fileName; + } } diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/PublishedListResultDTO.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/PublishedListResultDTO.java index 78ff5fe7f9..c776b6c943 100644 --- a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/PublishedListResultDTO.java +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/PublishedListResultDTO.java @@ -26,6 +26,11 @@ public class PublishedListResultDTO implements Serializable { * 分类 */ private String category; + + /** + * 栏目名称 + */ + private String categoryName; /** * 组织Id */ 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 49c9350819..0cad108d8a 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 @@ -131,6 +131,9 @@ public class ArticleServiceImpl extends BaseServiceImpl rangeList = new ArrayList<>(); @@ -1728,6 +1762,20 @@ public class ArticleServiceImpl extends BaseServiceImpl subCategories; + if (StringUtils.isNotBlank(categoryId = formDTO.getCategory())) { + LambdaQueryWrapper cq = new LambdaQueryWrapper<>(); + cq.eq(CategoryDictEntity::getPid, categoryId); + List subCtgs = categoryDictDao.selectList(cq); + if (! CollectionUtils.isEmpty(subCtgs)) { + subCategories = subCtgs.stream().map(CategoryDictEntity::getId).collect(Collectors.toList()); + formDTO.setSubCategories(subCategories); + } + } + List list = baseDao.selectAllArticle(formDTO); PageInfo pageInfo = new PageInfo<>(list); @@ -1790,6 +1838,12 @@ public class ArticleServiceImpl extends BaseServiceImpl updateWrapper=new LambdaUpdateWrapper<>(); + updateWrapper.set(ArticleContentEntity::getContent,file.getContent()) + .set(ArticleContentEntity::getFileName,file.getFileName()) + .set(ArticleContentEntity::getUpdatedBy,EpmetRequestHolder.getLoginUserId()) + .set(ArticleContentEntity::getUpdatedTime,new Date()) + .set(ArticleContentEntity::getOrderNum,orderNum) + .eq(ArticleContentEntity::getId,file.getFileId()); + articleContentDao.update(null,updateWrapper); + }else{ + ArticleContentEntity fileDto=new ArticleContentEntity(); + fileDto.setCustomerId(formDTO.getCustomerId()); + fileDto.setArticleId(formDTO.getArticleId()); + fileDto.setContent(file.getContent()); + fileDto.setFileName(file.getFileName()); + fileDto.setContentType("file"); + fileDto.setOrderNum(orderNum); + articleContentDao.insert(fileDto); + } + orderNum++; + } + } // 3.操作记录 ArticleOperateRecordEntity articleOperateRecord = new ArticleOperateRecordEntity(); articleOperateRecord.setCustomerId(formDTO.getCustomerId()); diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/ArticleContentDao.xml b/epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/ArticleContentDao.xml index 52007cee9e..300b4d14bc 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/ArticleContentDao.xml +++ b/epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/ArticleContentDao.xml @@ -12,6 +12,7 @@ WHERE ac.DEL_FLAG = '0' AND ac.ID = #{articleId} + and ac.CONTENT_TYPE ='rich_text' \ 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 19daac0379..7045dddf4f 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 @@ -456,6 +456,14 @@ LEFT JOIN article_cover ac ON a.id = ac.article_id AND ac.del_flag = '0' WHERE a.del_flag = '0' + + + and a.CATEGORY in ( + + #{category} + + ) + AND a.id = #{articleId}