diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiWorkIssueController.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiWorkIssueController.java index 45a97c50b..8525f524d 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiWorkIssueController.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiWorkIssueController.java @@ -7,8 +7,10 @@ import com.elink.esua.epdc.dto.events.form.EpdcEventsReviewFormDTO; import com.elink.esua.epdc.dto.events.result.EventAppDetailResultDTO; import com.elink.esua.epdc.dto.issue.form.IssuePendingResponseFormDTO; import com.elink.esua.epdc.dto.issue.form.IssueStateStatisticsFormDTO; +import com.elink.esua.epdc.dto.issue.form.WorkIssueListFormDTO; import com.elink.esua.epdc.dto.issue.result.IssueStateStatisticsResultDTO; import com.elink.esua.epdc.dto.issue.result.IssuePendingResponseResultDTO; +import com.elink.esua.epdc.dto.issue.result.WorkIssueListResultDTO; import com.elink.esua.epdc.service.WorkIssueService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -41,7 +43,7 @@ public class ApiWorkIssueController { * @param formDto * @return */ - @GetMapping("issue/list") + @GetMapping("event/list") public Result> list(@RequestBody IssuePendingResponseFormDTO formDto) { return workIssueService.listIssuePendingResponse(formDto); } @@ -74,4 +76,14 @@ public class ApiWorkIssueController { public Result review(EpdcEventsReviewFormDTO dto) { return workIssueService.review(dto); } + + /** + * 工作端-议题待处理或者已关闭的最新最热列表 + * @param formDto + * @return + */ + @GetMapping("issue/list") + public Result> selectWorkIssueListOfNewOrHot(WorkIssueListFormDTO formDto) { + return workIssueService.selectWorkIssueListOfNewOrHot(formDto); + } } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/WorkIssueFeignClient.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/WorkIssueFeignClient.java index 16239ca8a..a5313b5d5 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/WorkIssueFeignClient.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/WorkIssueFeignClient.java @@ -59,4 +59,13 @@ public interface WorkIssueFeignClient { @PostMapping(value = "events/epdc-app/work/event/review", consumes = MediaType.APPLICATION_JSON_VALUE) Result review(EpdcEventsReviewFormDTO dto); + + /** + * 工作端-议题待处理或者已关闭的最新最热列表 + * @param formDto + * @return + */ + @GetMapping(value = "events/epdc-app/work/issue/list", consumes = MediaType.APPLICATION_JSON_VALUE) + Result> selectWorkIssueListOfNewOrHot(WorkIssueListFormDTO formDto); + } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/WorkIssueFeignClientFallback.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/WorkIssueFeignClientFallback.java index fbc4251e2..432f6144f 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/WorkIssueFeignClientFallback.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/WorkIssueFeignClientFallback.java @@ -46,4 +46,9 @@ public class WorkIssueFeignClientFallback implements WorkIssueFeignClient { public Result review(EpdcEventsReviewFormDTO dto) { return ModuleUtils.feignConError(ServiceConstant.EPDC_EVENTS_SERVER, "review", dto); } + + @Override + public Result> selectWorkIssueListOfNewOrHot(WorkIssueListFormDTO formDto) { + return ModuleUtils.feignConError(ServiceConstant.EPDC_EVENTS_SERVER, "selectWorkIssueListOfNewOrHot", formDto); + } } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/WorkIssueService.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/WorkIssueService.java index ce29267b8..274821584 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/WorkIssueService.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/WorkIssueService.java @@ -24,8 +24,10 @@ import com.elink.esua.epdc.dto.events.form.EpdcEventsReviewFormDTO; import com.elink.esua.epdc.dto.events.result.EventAppDetailResultDTO; import com.elink.esua.epdc.dto.issue.form.IssuePendingResponseFormDTO; import com.elink.esua.epdc.dto.issue.form.IssueStateStatisticsFormDTO; +import com.elink.esua.epdc.dto.issue.form.WorkIssueListFormDTO; import com.elink.esua.epdc.dto.issue.result.IssuePendingResponseResultDTO; import com.elink.esua.epdc.dto.issue.result.IssueStateStatisticsResultDTO; +import com.elink.esua.epdc.dto.issue.result.WorkIssueListResultDTO; import java.util.List; @@ -64,4 +66,11 @@ public interface WorkIssueService { * @return */ Result review(EpdcEventsReviewFormDTO dto); + + /** + * 工作端-议题待处理或者已关闭的最新最热列表 + * @param formDto + * @return + */ + Result> selectWorkIssueListOfNewOrHot(WorkIssueListFormDTO formDto); } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/WorkIssueServiceImpl.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/WorkIssueServiceImpl.java index 3df8b7e2a..353483bf8 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/WorkIssueServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/WorkIssueServiceImpl.java @@ -23,8 +23,10 @@ import com.elink.esua.epdc.dto.events.form.EpdcEventsReviewFormDTO; import com.elink.esua.epdc.dto.events.result.EventAppDetailResultDTO; import com.elink.esua.epdc.dto.issue.form.IssuePendingResponseFormDTO; import com.elink.esua.epdc.dto.issue.form.IssueStateStatisticsFormDTO; +import com.elink.esua.epdc.dto.issue.form.WorkIssueListFormDTO; import com.elink.esua.epdc.dto.issue.result.IssuePendingResponseResultDTO; import com.elink.esua.epdc.dto.issue.result.IssueStateStatisticsResultDTO; +import com.elink.esua.epdc.dto.issue.result.WorkIssueListResultDTO; import com.elink.esua.epdc.feign.WorkIssueFeignClient; import com.elink.esua.epdc.service.WorkIssueService; import org.springframework.beans.factory.annotation.Autowired; @@ -87,4 +89,14 @@ public class WorkIssueServiceImpl implements WorkIssueService { public Result review(EpdcEventsReviewFormDTO dto) { return workIssueFeignClient.review(dto); } + + /** + * 工作端-议题待处理或者已关闭的最新最热列表 + * @param formDto + * @return + */ + @Override + public Result> selectWorkIssueListOfNewOrHot(WorkIssueListFormDTO formDto) { + return null; + } } diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/issue/form/WorkIssueListFormDTO.java b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/issue/form/WorkIssueListFormDTO.java index 9fc997376..58d693437 100644 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/issue/form/WorkIssueListFormDTO.java +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/issue/form/WorkIssueListFormDTO.java @@ -1,11 +1,15 @@ package com.elink.esua.epdc.dto.issue.form; +import lombok.Data; + import javax.validation.constraints.Min; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; import java.io.Serializable; import java.util.Date; +import java.util.List; +@Data public class WorkIssueListFormDTO implements Serializable { private static final long serialVersionUID = -8864248267071206774L; @@ -13,6 +17,12 @@ public class WorkIssueListFormDTO implements Serializable { * 用户所属网格ID */ private Long deptId; + + /** + * 用户所属网格ID列表 + */ + private List deptIdList; + /** * 0: 获取最新列表,1: 获取最热列表 */ diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/issue/result/IssueHotCommentResultDTO.java b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/issue/result/IssueHotCommentResultDTO.java index c383a7e4a..75ef0bd78 100644 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/issue/result/IssueHotCommentResultDTO.java +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/issue/result/IssueHotCommentResultDTO.java @@ -28,4 +28,10 @@ public class IssueHotCommentResultDTO implements Serializable { * 评论反对数 */ private Integer oppositionNum; + + /** + * 评论时间 + */ + private Integer createdTime; + } diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/issue/result/WorkIssueListResultDTO.java b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/issue/result/WorkIssueListResultDTO.java new file mode 100644 index 000000000..238003c20 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/issue/result/WorkIssueListResultDTO.java @@ -0,0 +1,57 @@ +package com.elink.esua.epdc.dto.issue.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; +import java.util.List; + +/** + * 移动端-议题最新最热列表 + * @Author LC + * @Date 2019/9/7 10:53 + */ +@Data +public class WorkIssueListResultDTO implements Serializable { + private static final long serialVersionUID = 6087794316919494277L; + /** + * 议题ID + */ + private String id; + /** + * 事件ID + */ + private String eventId; + /** + * 议题内容 + */ + private String issueContent; + /** + * 昵称 + */ + private String nickname; + /** + * 头像地址 + */ + private String userFace; + /** + * 是否党员 0否;1是 + */ + private String partyFlag; + /** + * 议题类别 + */ + private String categoryName; + /** + * 发布时间 + */ + private Date distributeTime; + /** + * 表态数 + */ + private Integer statementNum; + /** + * 最热的一条评论 + */ + private IssueHotCommentResultDTO comment; +} diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/controller/EpdcAppWorkIssueController.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/controller/EpdcAppWorkIssueController.java index 403f90835..9f8cc2569 100644 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/controller/EpdcAppWorkIssueController.java +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/controller/EpdcAppWorkIssueController.java @@ -5,8 +5,10 @@ import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.dto.category.EventCategoryDTO; import com.elink.esua.epdc.dto.issue.form.IssuePendingResponseFormDTO; import com.elink.esua.epdc.dto.issue.form.IssueStateStatisticsFormDTO; +import com.elink.esua.epdc.dto.issue.form.WorkIssueListFormDTO; import com.elink.esua.epdc.dto.issue.result.IssuePendingResponseResultDTO; import com.elink.esua.epdc.dto.issue.result.IssueStateStatisticsResultDTO; +import com.elink.esua.epdc.dto.issue.result.WorkIssueListResultDTO; import com.elink.esua.epdc.modules.category.service.EventCategoryService; import com.elink.esua.epdc.modules.issue.service.IssueService; import org.springframework.beans.factory.annotation.Autowired; @@ -62,4 +64,14 @@ public class EpdcAppWorkIssueController { return new Result>().ok(list); } + /** + * 工作端-议题待处理或者已关闭的最新最热列表 + * @param formDto + * @return + */ + @GetMapping("list") + public Result> selectWorkIssueListOfNewOrHot(WorkIssueListFormDTO formDto){ + return issueService.selectWorkIssueListOfNewOrHot(formDto); + } + } diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/dao/IssueDao.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/dao/IssueDao.java index af2f48c39..13bfdd342 100644 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/dao/IssueDao.java +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/dao/IssueDao.java @@ -142,12 +142,17 @@ public interface IssueDao extends BaseDao { int selectCountOfDeptNotice(Long deptId, int state); /** - * 根据网格id和状态查询数量 + * 工作端-根据网格id和状态查询数量 * @param deptIdList * @param state * @return */ int selectCountOfIssueState(List deptIdList, int state); + /** + * 工作端-议题待处理或者已关闭的最新最热列表 + */ + List selectWorkIssueListOfNewOrHot(WorkIssueListFormDTO formDto); + } diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/IssueService.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/IssueService.java index 074eff6e0..7d5f460ed 100644 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/IssueService.java +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/IssueService.java @@ -227,4 +227,9 @@ public interface IssueService extends BaseService { * @return */ Result> listIssuePendingResponse(@RequestBody IssuePendingResponseFormDTO formDto); + + /** + * 工作端-议题待处理或者已关闭的最新最热列表 + */ + Result> selectWorkIssueListOfNewOrHot(WorkIssueListFormDTO formDto); } diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/impl/IssueServiceImpl.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/impl/IssueServiceImpl.java index b696d782d..0aab1a6ae 100644 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/impl/IssueServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/impl/IssueServiceImpl.java @@ -416,5 +416,27 @@ public class IssueServiceImpl extends BaseServiceImpl imp return epdcEventsService.listIssuePendingResponse(formDto); } - + /** + * 工作端-议题待处理或者已关闭的最新最热列表 + * @param formDto + * @return + */ + @Override + public Result> selectWorkIssueListOfNewOrHot(WorkIssueListFormDTO formDto) { + List list; + if (formDto.getDeptId() == null){ + list = SecurityUser.getUser().getDeptIdList(); + }else { + list = new ArrayList<>(); + list.add(formDto.getDeptId()); + } + formDto.setDeptIdList(list); + List data = baseDao.selectWorkIssueListOfNewOrHot(formDto); + // 查询最热评论 + for (WorkIssueListResultDTO dto : data) { + IssueHotCommentResultDTO resultDTO = eventCommentService.getHotComment(dto.getEventId()); + dto.setComment(resultDTO); + } + return new Result>().ok(data); + } } diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/comment/EventCommentDao.xml b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/comment/EventCommentDao.xml index c5a3ccae3..851937f0a 100755 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/comment/EventCommentDao.xml +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/comment/EventCommentDao.xml @@ -163,6 +163,7 @@ SELECT ID AS commentId, content, + CREATED_TIME as createdTime, UN_LIKE_COUNT AS oppositionNum, LIKE_COUNT AS supportNum, ( UN_LIKE_COUNT + LIKE_COUNT + REPLY_COUNT ) AS statementNum diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/issue/IssueDao.xml b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/issue/IssueDao.xml index ace6b830f..13704d2cd 100644 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/issue/IssueDao.xml +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/issue/IssueDao.xml @@ -465,4 +465,62 @@ AND ISSUE_STATE = #{state} + + + + + + + + + + + + + + + + +