diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/constant/TopicConstant.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/constant/TopicConstant.java index 8a96cc23b4..3ae0ec6aa0 100644 --- a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/constant/TopicConstant.java +++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/constant/TopicConstant.java @@ -78,4 +78,13 @@ public interface TopicConstant { String CREATE_TOPIC = "创建话题失败,话题内容为:%s"; String SHIFT_ISSUE = "转议题失败,标题为:%s , 建议为:%s"; + + /** + * 附件文件类型 + * 图片 - image、文档 - doc、语音 - voice、视频 - video + */ + String FILE_IMAGE = "image"; + String FILE_DOC = "doc"; + String FILE_VOICE = "voice"; + String FILE_VIDEO = "video"; } diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/TopicAttachmentFormDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/TopicAttachmentFormDTO.java new file mode 100644 index 0000000000..24ab83af6e --- /dev/null +++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/TopicAttachmentFormDTO.java @@ -0,0 +1,23 @@ +package com.epmet.resi.group.dto.topic.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Author sun + * @Description 获取话题附件信息-接口入参 + */ +@Data +public class TopicAttachmentFormDTO implements Serializable { + + private static final long serialVersionUID = -7661839148530902018L; + /** + * 话题ID + */ + @NotBlank(message = "话题ID不能为空",groups = {TopicForm.class}) + private String topicId; + + public interface TopicForm{} +} diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/TopicAttachmentResultDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/TopicAttachmentResultDTO.java new file mode 100644 index 0000000000..0b28664ce0 --- /dev/null +++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/TopicAttachmentResultDTO.java @@ -0,0 +1,30 @@ +package com.epmet.resi.group.dto.topic.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.LinkedList; + +/** + * @Author sun + * @Description 获取话题附件信息-接口返参 + */ +@Data +public class TopicAttachmentResultDTO implements Serializable { + + private static final long serialVersionUID = -8606257390921799432L; + + /** + * 文件附件Url集合 + */ + private LinkedList docList; + /** + * 语音附件Url集合 + */ + private LinkedList voiceList; + /** + * 视频附件Url集合 + */ + private LinkedList videoList; + +} diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/controller/ResiTopicController.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/controller/ResiTopicController.java index c389fef5eb..d6e3bf75a6 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/controller/ResiTopicController.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/controller/ResiTopicController.java @@ -389,4 +389,17 @@ public class ResiTopicController { response.setStatus(HttpStatus.SC_OK); return new Result<>(); } + + /** + * @param formDTO + * @return + * @Author sun + * @Description 获取话题附件信息 + **/ + @PostMapping(value = "topicattachmentlist") + public Result topicAttachmentList(@RequestBody TopicAttachmentFormDTO formDTO){ + ValidatorUtils.validateEntity(formDTO, TopicAttachmentFormDTO.TopicForm.class); + return new Result().ok(topicService.topicAttachmentList(formDTO)); + } + } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicAttachmentDao.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicAttachmentDao.java index c58c7e59db..ae67648e60 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicAttachmentDao.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicAttachmentDao.java @@ -20,7 +20,9 @@ package com.epmet.modules.topic.dao; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.modules.topic.entity.ResiTopicAttachmentEntity; +import com.epmet.resi.group.dto.topic.ResiTopicAttachmentDTO; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; import java.util.List; @@ -51,4 +53,10 @@ public interface ResiTopicAttachmentDao extends BaseDao selectTopicAttachmentList(@Param("topicId") String topicId); } \ No newline at end of file diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/ResiTopicService.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/ResiTopicService.java index 53140e4fef..347f960f6e 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/ResiTopicService.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/ResiTopicService.java @@ -324,4 +324,11 @@ public interface ResiTopicService extends BaseService { */ List getTopicIdsByGroup(String groupId); + /** + * @param formDTO + * @return + * @Author sun + * @Description 获取话题附件信息 + **/ + TopicAttachmentResultDTO topicAttachmentList(TopicAttachmentFormDTO formDTO); } \ No newline at end of file diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java index 9b0d2cf52f..28dbeb80e8 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java @@ -80,6 +80,7 @@ import com.epmet.resi.group.dto.member.ResiGroupMemberDTO; import com.epmet.resi.group.dto.member.ResiGroupMemberInfoRedisDTO; import com.epmet.resi.group.dto.member.form.RemoveMemberFormDTO; import com.epmet.resi.group.dto.member.result.ResiGroupMemberInfoRedisResultDTO; +import com.epmet.resi.group.dto.topic.ResiTopicAttachmentDTO; import com.epmet.resi.group.dto.topic.ResiTopicDTO; import com.epmet.resi.group.dto.topic.TopicInfoDTO; import com.epmet.resi.group.dto.topic.form.CheckTopicPublisherFormDTO; @@ -1822,6 +1823,41 @@ public class ResiTopicServiceImpl extends BaseServiceImpl list = resiTopicAttachmentDao.selectTopicAttachmentList(formDTO.getTopicId()); + if(list.size() docList = new LinkedList<>(); + LinkedList voiceList = new LinkedList<>(); + LinkedList videoList = new LinkedList<>(); + list.forEach(l->{ + if(TopicConstant.FILE_DOC.equals(l.getAttachmentType())){ + docList.add(l.getAttachmentUrl()); + } + if(TopicConstant.FILE_VOICE.equals(l.getAttachmentType())){ + voiceList.add(l.getAttachmentUrl()); + } + if(TopicConstant.FILE_VIDEO.equals(l.getAttachmentType())){ + videoList.add(l.getAttachmentUrl()); + } + }); + resultDTO.setDocList(docList); + resultDTO.setVoiceList(voiceList); + resultDTO.setVideoList(videoList); + return resultDTO; + } + } diff --git a/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicAttachmentDao.xml b/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicAttachmentDao.xml index 56744b02de..9ec26817f1 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicAttachmentDao.xml +++ b/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicAttachmentDao.xml @@ -108,5 +108,23 @@ + + \ No newline at end of file