From bd8147d7890bf60d88e4007c1af726ba5f364cf5 Mon Sep 17 00:00:00 2001 From: baizonghao <1719256278@qq.com> Date: 星期二, 14 三月 2023 11:24:31 +0800 Subject: [PATCH] 拼接地址 --- ycl-platform/src/main/java/com/ycl/service/unlawful/impl/UnlawfulServiceImpl.java | 74 +++++++++++++++++++++++++++++++++++- 1 files changed, 71 insertions(+), 3 deletions(-) diff --git a/ycl-platform/src/main/java/com/ycl/service/unlawful/impl/UnlawfulServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/unlawful/impl/UnlawfulServiceImpl.java index 16b8cdc..43af345 100644 --- a/ycl-platform/src/main/java/com/ycl/service/unlawful/impl/UnlawfulServiceImpl.java +++ b/ycl-platform/src/main/java/com/ycl/service/unlawful/impl/UnlawfulServiceImpl.java @@ -2,6 +2,7 @@ import com.ycl.dto.statistics.CategoryDto; import com.ycl.dto.statistics.StatusDto; +import com.ycl.dto.statistics.TimeDto; import com.ycl.dto.statistics.UnlawfulDto; import com.ycl.mapper.unlawful.UnlawfulMapper; import com.ycl.service.unlawful.UnlawfulService; @@ -10,13 +11,12 @@ import javax.annotation.Resource; import java.math.RoundingMode; import java.text.NumberFormat; +import java.time.format.DateTimeFormatter; import java.util.ArrayList; import java.util.List; @Service public class UnlawfulServiceImpl implements UnlawfulService { - - private List<UnlawfulDto> res = new ArrayList<>(); @Resource private UnlawfulMapper unlawfuldao; @@ -27,6 +27,7 @@ */ @Override public List<UnlawfulDto> getUnlawfulByType(Integer currentPage, Integer pageSize, String startTime, String endTime) { + List<UnlawfulDto> res = new ArrayList<>(); Double total = unlawfuldao.getTotal().doubleValue(); List<CategoryDto> data = unlawfuldao.getDataByType(currentPage, pageSize, startTime, endTime); data.forEach(categoryDto -> { @@ -37,6 +38,7 @@ } @Override public List<UnlawfulDto> getUnlawfulByTypeExport() { + List<UnlawfulDto> res = new ArrayList<>(); Double total = unlawfuldao.getTotal().doubleValue(); List<CategoryDto> data = unlawfuldao.getDataByTypeExp(); data.forEach(categoryDto -> { @@ -46,11 +48,17 @@ return res; } + @Override + public Integer getTotalByType(String startTime, String endTime) { + return unlawfuldao.getTotalByType(startTime, endTime); + } + /** * 鎸夊尯鍩� */ @Override public List<UnlawfulDto> getUnlawfulByStreet(Integer currentPage, Integer pageSize, String startTime, String endTime) { + List<UnlawfulDto> res = new ArrayList<>(); Double total = unlawfuldao.getTotal().doubleValue(); List<CategoryDto> data = unlawfuldao.getDataByStreet(currentPage, pageSize, startTime, endTime); data.forEach(categoryDto -> { @@ -61,6 +69,7 @@ } @Override public List<UnlawfulDto> getUnlawfulByStreetExport() { + List<UnlawfulDto> res = new ArrayList<>(); Double total = unlawfuldao.getTotal().doubleValue(); List<CategoryDto> data = unlawfuldao.getDataByStreetExp(); data.forEach(categoryDto -> { @@ -70,11 +79,17 @@ return res; } + @Override + public Integer getTotalByStreet(String startTime, String endTime) { + return unlawfuldao.getTotalByStreet(startTime, endTime); + } + /** * 鎸夋姤璀︾偣浣� */ @Override public List<UnlawfulDto> getUnlawfulBySite(Integer currentPage, Integer pageSize, String startTime, String endTime) { + List<UnlawfulDto> res = new ArrayList<>(); Double total = unlawfuldao.getTotal().doubleValue(); List<String> data = unlawfuldao.getDataBySite(currentPage, pageSize, startTime, endTime); data.forEach(site -> { @@ -85,6 +100,7 @@ } @Override public List<UnlawfulDto> getUnlawfulBySiteExport() { + List<UnlawfulDto> res = new ArrayList<>(); Double total = unlawfuldao.getTotal().doubleValue(); List<String> data = unlawfuldao.getDataBySiteExp(); data.forEach(site -> { @@ -94,9 +110,45 @@ return res; } + @Override + public Integer getTotalBySite(String startTime, String endTime) { + return unlawfuldao.getTotalBySite(startTime, endTime); + } + + @Override + public List<UnlawfulDto> getUnlawfulByTime(Integer currentPage, Integer pageSize, String startTime, String endTime) { + List<UnlawfulDto> res = new ArrayList<>(); + Double total = unlawfuldao.getTotal().doubleValue(); + List<TimeDto> data = unlawfuldao.getDataByTime(currentPage, pageSize, startTime, endTime); + data.forEach(timeDto -> { + StatusDto statusData = unlawfuldao.getStatusDataByTime(startTime, endTime, timeDto.getId()); + format2(res, total, timeDto, statusData); + }); + return res; + } + + + + @Override + public List<UnlawfulDto> getUnlawfulByTimeExport() { + List<UnlawfulDto> res = new ArrayList<>(); + Double total = unlawfuldao.getTotal().doubleValue(); + List<TimeDto> data = unlawfuldao.getDataByTimeExp(); + data.forEach(timeDto -> { + StatusDto statusData = unlawfuldao.getStatusDataByTime(null, null, timeDto.getId()); + format2(res, total, timeDto, statusData); + }); + return res; + } + + @Override + public Integer getTotalByTime(String startTime, String endTime) { + return unlawfuldao.getTotalBySite(startTime, endTime); + } + private Double changeFormat(Double previous){ NumberFormat numberInstance = NumberFormat.getNumberInstance(); - numberInstance.setMaximumFractionDigits(2); + numberInstance.setMaximumFractionDigits(3); numberInstance.setRoundingMode(RoundingMode.HALF_UP); String format = numberInstance.format(previous); return Double.parseDouble(format); @@ -117,6 +169,22 @@ res.add(build); } + private void format2(List<UnlawfulDto> res, Double total, TimeDto timeDto, StatusDto statusData) { + DateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + UnlawfulDto build = UnlawfulDto.builder().name(timeDto.getTime().format(fmt)) //绫诲瀷鍚嶇О + .count(statusData.getTotal()) //浜嬩欢鎬绘暟 + .ratio(changeFormat(statusData.getTotal().doubleValue() / total)) //鍗犳瘮 + .register(statusData.getRegister()) //绔嬫 + .notRegister(statusData.getNotRegister()) //鏆備笉绔嬫 + .closing(statusData.getClosing()) //缁撴 + .relearn(statusData.getRelearn()) //鍦ㄥ涔� + .checked(statusData.getChecked()) //宸插鏍� + .checkedRatio(changeFormat(statusData.getChecked().doubleValue() / statusData.getTotal().doubleValue())) //瀹℃牳鐜� + .registerRatio(changeFormat(statusData.getRegister().doubleValue() / statusData.getTotal().doubleValue())) //绔嬫鐜� + .build(); + res.add(build); + } + private void format1(List<UnlawfulDto> res, Double total, String site, StatusDto statusData) { UnlawfulDto build = UnlawfulDto.builder().name(site) //绫诲瀷鍚嶇О .count(statusData.getTotal()) //浜嬩欢鎬绘暟 -- Gitblit v1.8.0