From be8b47a820ae1989195616d59ef70ad4b9c759b9 Mon Sep 17 00:00:00 2001 From: zxc <954985706@qq.com> Date: Wed, 1 Jul 2020 14:29:51 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E7=99=BE=E5=88=86=E6=AF=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/result/TopicSummaryInfoResultDTO.java | 5 +++++ .../service/topic/impl/TopicServiceImpl.java | 17 +++++++++++++---- .../main/resources/mapper/topic/TopicDao.xml | 2 +- 3 files changed, 19 insertions(+), 5 deletions(-) diff --git a/epmet-module/data-report/data-report-client/src/main/java/com/epmet/topic/dto/result/TopicSummaryInfoResultDTO.java b/epmet-module/data-report/data-report-client/src/main/java/com/epmet/topic/dto/result/TopicSummaryInfoResultDTO.java index 71b096ca0f..b007c41289 100644 --- a/epmet-module/data-report/data-report-client/src/main/java/com/epmet/topic/dto/result/TopicSummaryInfoResultDTO.java +++ b/epmet-module/data-report/data-report-client/src/main/java/com/epmet/topic/dto/result/TopicSummaryInfoResultDTO.java @@ -1,8 +1,10 @@ package com.epmet.topic.dto.result; +import com.fasterxml.jackson.annotation.JsonIgnore; import lombok.Data; import java.io.Serializable; +import java.math.BigDecimal; /** * @Author zxc @@ -27,4 +29,7 @@ public class TopicSummaryInfoResultDTO implements Serializable { * 百分比 */ private String ratio = "0.0%"; + + @JsonIgnore + private BigDecimal pro; } diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/service/topic/impl/TopicServiceImpl.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/service/topic/impl/TopicServiceImpl.java index 8c4309dfd6..339737305e 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/service/topic/impl/TopicServiceImpl.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/service/topic/impl/TopicServiceImpl.java @@ -14,7 +14,9 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.math.BigDecimal; import java.text.DecimalFormat; +import java.text.NumberFormat; import java.time.LocalDate; import java.util.*; import java.util.stream.Collectors; @@ -187,12 +189,19 @@ public class TopicServiceImpl implements TopicService { TopicShiftedCountResultDTO shiftedCount = topicDao.getShiftedCount(agencyId); if (topicSummaryInfo.size() != NumConstant.ZERO && shiftedCount != null) { Integer collect = topicSummaryInfo.stream().collect(Collectors.summingInt(TopicSummaryInfoResultDTO::getValue)); - DecimalFormat decimalFormat = new DecimalFormat(".00"); - String ratio; - ratio = collect == NumConstant.ZERO ? NumConstant.ZERO + TopicConstant.RATIO : decimalFormat.format(((float) shiftedCount.getShiftedIssueCount() / (float) collect) * NumConstant.ONE_HUNDRED) + TopicConstant.RATIO; + topicSummaryInfo.forEach(topic -> { + String s = topic.getPro().setScale(NumConstant.TWO, BigDecimal.ROUND_HALF_UP).stripTrailingZeros().toPlainString(); + topic.setRatio(s.concat(TopicConstant.RATIO)); + }); TopicSummaryInfoResultDTO result = new TopicSummaryInfoResultDTO(); + if (collect == NumConstant.ZERO){ + result.setRatio(NumConstant.ZERO+TopicConstant.RATIO); + }else { + BigDecimal bigDecimal = new BigDecimal(((float) shiftedCount.getShiftedIssueCount() / (float) collect) * NumConstant.ONE_HUNDRED); + String s = bigDecimal.setScale(NumConstant.TWO, BigDecimal.ROUND_HALF_UP).stripTrailingZeros().toPlainString(); + result.setRatio(s.concat(TopicConstant.RATIO)); + } result.setName(TopicConstant.SHIFTED); - result.setRatio(ratio); result.setValue(shiftedCount.getShiftedIssueCount()); topicSummaryInfo.add(result); } diff --git a/epmet-module/data-report/data-report-server/src/main/resources/mapper/topic/TopicDao.xml b/epmet-module/data-report/data-report-server/src/main/resources/mapper/topic/TopicDao.xml index 29ddddc6c6..01d4a5d335 100644 --- a/epmet-module/data-report/data-report-server/src/main/resources/mapper/topic/TopicDao.xml +++ b/epmet-module/data-report/data-report-server/src/main/resources/mapper/topic/TopicDao.xml @@ -41,7 +41,7 @@ WHEN topic_status_id = 'hidden' THEN '已屏蔽' WHEN topic_status_id = 'closed' THEN '已关闭' ELSE '无' END) AS name, - CONCAT(ROUND(topic_proportion * 100,2),'%') AS ratio + (topic_proportion * 100) AS pro FROM fact_topic_status_agency_daily WHERE From 730636a75daba0ce6feb076966c7975241061958 Mon Sep 17 00:00:00 2001 From: zxc <954985706@qq.com> Date: Wed, 1 Jul 2020 14:35:26 +0800 Subject: [PATCH 2/2] =?UTF-8?q?data-report=E6=9C=8D=E5=8A=A1=E5=8D=87?= =?UTF-8?q?=E7=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../data-report-server/deploy/docker-compose-dev.yml | 2 +- epmet-module/data-report/data-report-server/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml b/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml index 5764ec4118..7e9e2a4a26 100644 --- a/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml +++ b/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml @@ -2,7 +2,7 @@ version: "3.7" services: data-report-server: container_name: data-report-server-dev - image: 192.168.1.130:10080/epmet-cloud-dev/data-report-server:0.3.18 + image: 192.168.1.130:10080/epmet-cloud-dev/data-report-server:0.3.19 ports: - "8109:8109" network_mode: host # 使用现有网络 diff --git a/epmet-module/data-report/data-report-server/pom.xml b/epmet-module/data-report/data-report-server/pom.xml index 620c2c4919..9562911a6c 100644 --- a/epmet-module/data-report/data-report-server/pom.xml +++ b/epmet-module/data-report/data-report-server/pom.xml @@ -3,7 +3,7 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - 0.3.18 + 0.3.19 data-report-server