From d7a9c60a35a1d26d24bd79c7c8e11a3f54fb8265 Mon Sep 17 00:00:00 2001 From: zxc <954985706@qq.com> Date: Wed, 20 May 2020 10:50:32 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8A=98=E7=BA=BF=E5=9B=BE=E8=AF=A6=E6=83=85?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/epmet/dao/IssueDao.java | 8 +++++ .../impl/IssueVoteStatisticalServiceImpl.java | 30 +++++++++++++++++-- .../src/main/resources/mapper/IssueDao.xml | 11 +++++++ 3 files changed, 47 insertions(+), 2 deletions(-) diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueDao.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueDao.java index 709afb5f7c..670979f8bc 100644 --- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueDao.java +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueDao.java @@ -29,6 +29,7 @@ import com.epmet.dto.result.IssueResultDTO; import com.epmet.dto.result.VotingIssueListResultDTO; import com.epmet.entity.IssueEntity; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; import java.util.List; @@ -99,4 +100,11 @@ public interface IssueDao extends BaseDao { * @author zxc */ Integer checkIssuePublisher(VoteFormDTO formDTO); + + /** + * @Description 获取转项目或者议题关闭时间 + * @param issueId + * @author zxc + */ + String operateTime(@Param("issueId")String issueId); } \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteStatisticalServiceImpl.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteStatisticalServiceImpl.java index ea992c476e..daccc0f384 100644 --- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteStatisticalServiceImpl.java +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteStatisticalServiceImpl.java @@ -27,6 +27,7 @@ import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.constant.IssueConstant; +import com.epmet.dao.IssueDao; import com.epmet.dao.IssueSatisfactionDetailDao; import com.epmet.dao.IssueVoteStatisticalDao; import com.epmet.dto.IssueVoteStatisticalDTO; @@ -50,6 +51,9 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.time.LocalDate; +import java.time.LocalDateTime; +import java.time.ZoneOffset; import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -75,6 +79,8 @@ public class IssueVoteStatisticalServiceImpl extends BaseServiceImpl page(Map params) { @@ -160,13 +166,33 @@ public class IssueVoteStatisticalServiceImpl extends BaseServiceImpl polyLineDTOS = issueVoteStatisticalDao.polyLineData(issueId); + PolyLineDTO polyLineDTO = new PolyLineDTO(); + polyLineDTO.setVoteDtae(LocalDateTime.now().toEpochSecond(ZoneOffset.of("+8"))); + //今天刚转项目或刚刚关闭,当天数据DB没有,直接从缓存拿 + if (polyLineDTOS.size()==NumConstant.ZERO){ + polyLineDTO.setSupportIncrement(voteRedisFormDTO.getSupportAmount()); + polyLineDTO.setOppositionIncrement(voteRedisFormDTO.getOppositionAmount()); + polyLineDTOS.add(polyLineDTO); + }else { + //折线数据=DB + String date = issueDao.operateTime(issueId.getIssueId()); + if (date.equals(LocalDate.now().toString())) { + Integer yesterdaySupport = 0; + Integer yesterdayOppose = 0; + for (PolyLineDTO lineDTO : polyLineDTOS) { + yesterdaySupport += lineDTO.getSupportIncrement(); + yesterdayOppose += lineDTO.getOppositionIncrement(); + } + polyLineDTO.setSupportIncrement(voteRedisFormDTO.getSupportAmount() - yesterdaySupport); + polyLineDTO.setOppositionIncrement(voteRedisFormDTO.getOppositionAmount() - yesterdayOppose); + polyLineDTOS.add(polyLineDTO); + } + } votingTrendResultDTO.setPolyLine(polyLineDTOS); return votingTrendResultDTO; } diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueDao.xml b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueDao.xml index 7107c16107..2973973d20 100644 --- a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueDao.xml +++ b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueDao.xml @@ -258,4 +258,15 @@ AND id = #{issueId} + + + \ No newline at end of file