From b15ad90d858e5b6745f76921054b5d5a62b59627 Mon Sep 17 00:00:00 2001 From: 16639036659 <577530412@qq.com> Date: 星期三, 10 四月 2024 14:06:18 +0800 Subject: [PATCH] 日报:添加C2H6,C3H8浓度曲线;删除流量无数据柱状图 --- src/main/resources/template/dailyReportTemplate.docx | 0 src/main/java/com/gkhy/fourierSpecialGasMonitor/service/impl/GasCategoryServiceImpl.java | 5 +++++ src/main/java/com/gkhy/fourierSpecialGasMonitor/schedule/DailyReportSchedule.java | 23 ++++++++++++++++++----- src/main/java/com/gkhy/fourierSpecialGasMonitor/service/GasCategoryService.java | 2 ++ src/main/java/com/gkhy/fourierSpecialGasMonitor/repository/GasCategoryRepository.java | 6 ++++++ src/main/resources/template/dailyReportTemplate_bak20240409.docx | 0 src/main/resources/template/dailyReportTemplate_bak20240410柱状图删减前.docx | 0 7 files changed, 31 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/gkhy/fourierSpecialGasMonitor/repository/GasCategoryRepository.java b/src/main/java/com/gkhy/fourierSpecialGasMonitor/repository/GasCategoryRepository.java index bfd0075..7ba202a 100644 --- a/src/main/java/com/gkhy/fourierSpecialGasMonitor/repository/GasCategoryRepository.java +++ b/src/main/java/com/gkhy/fourierSpecialGasMonitor/repository/GasCategoryRepository.java @@ -5,10 +5,16 @@ import com.gkhy.fourierSpecialGasMonitor.entity.GasFlux; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.JpaSpecificationExecutor; +import org.springframework.data.jpa.repository.Query; import org.springframework.stereotype.Repository; + +import java.util.List; @Repository public interface GasCategoryRepository extends JpaRepository<GasCategory,Integer>, JpaSpecificationExecutor<GasCategory> { GasCategory findByMolecularFormula(String molecularFormula); + + @Query(value = "select t from GasCategory t where t.id <= 3") + List<GasCategory> findGasCategoryForReport(); } diff --git a/src/main/java/com/gkhy/fourierSpecialGasMonitor/schedule/DailyReportSchedule.java b/src/main/java/com/gkhy/fourierSpecialGasMonitor/schedule/DailyReportSchedule.java index a62934d..8ced11b 100644 --- a/src/main/java/com/gkhy/fourierSpecialGasMonitor/schedule/DailyReportSchedule.java +++ b/src/main/java/com/gkhy/fourierSpecialGasMonitor/schedule/DailyReportSchedule.java @@ -35,6 +35,7 @@ import java.lang.reflect.Field; import java.time.LocalDateTime; import java.time.LocalTime; +import java.time.Month; import java.time.format.DateTimeFormatter; import java.time.temporal.ChronoUnit; import java.util.*; @@ -80,6 +81,9 @@ @Autowired private MonitorDailyReportService monitorDailyReportService; + + @Autowired + private GasCategoryService gasCategoryService; @Scheduled(cron = "0 0 2 * * ?") //每天两点执行一次 // @Scheduled(cron = "0 0/1 * * * ? ") // 分钟 @@ -183,9 +187,10 @@ } List<GasConcentration> gasConcentrations = gasConcentrationService.listDatabyTimeSlot(LocalDateTime.of(now.minusDays(1).toLocalDate(), LocalTime.MIN) , LocalDateTime.of(now.minusDays(1).toLocalDate(), LocalTime.MAX)); + // 绘制折线图 if (!CollectionUtils.isEmpty(gasConcentrations)) { - //for (int i = 0; i < 30; i++) { - for (int i = 0; i < gasCategories.size(); i++) { + List<GasCategory> gasCategoryForReport = gasCategoryService.findGasCategoryForReport(); + for (int i = 0; i < gasCategoryForReport.size(); i++) { String series = gasCategories.get(i).getMolecularFormula() + "浓度观测结果"; String title = gasCategories.get(i).getMolecularFormula(); drawLineChart(gasConcentrations, fileurl, series, title, gasCategories.get(i).getMolecularFormula(), i); @@ -200,16 +205,24 @@ throw new BusinessException(this.getClass(), ResultCode.SYSTEM_ERROR_DATABASE_FAIL.getCode(),"区域信息为空"); Map<Integer, String> regionMap = allRegion.stream() .collect(Collectors.toMap(Region::getId, Region::getName)); + // 绘制柱状图 if (!CollectionUtils.isEmpty(gasFluxes)) { - for (int j = 0; j < gasCategories.size(); j++) { +// for (int j = 0; j < gasCategories.size(); j++) { +// for (int i = 1; i <= areaNum.size(); i++) { +// //for (int j = 0; j < 20; j++) { +// int finalI = i; +// List<GasFlux> gasFluxesByArea = gasFluxes.stream().filter(gasFlux -> gasFlux.getAreaId() == finalI) +// .collect(Collectors.toList()); +// drawBarChart(gasFluxesByArea, fileurl, regionMap.get(i), gasCategories.get(j).getMolecularFormula(), i, j + 1); +// } +// } for (int i = 1; i <= areaNum.size(); i++) { //for (int j = 0; j < 20; j++) { int finalI = i; List<GasFlux> gasFluxesByArea = gasFluxes.stream().filter(gasFlux -> gasFlux.getAreaId() == finalI) .collect(Collectors.toList()); - drawBarChart(gasFluxesByArea, fileurl, regionMap.get(i), gasCategories.get(j).getMolecularFormula(), i, j + 1); + drawBarChart(gasFluxesByArea, fileurl, regionMap.get(i), gasCategories.get(0).getMolecularFormula(), i, 1); } - } } String endTime = LocalDateTime.now().format(execformatter); long execTime = ChronoUnit.SECONDS.between(now, LocalDateTime.now()); diff --git a/src/main/java/com/gkhy/fourierSpecialGasMonitor/service/GasCategoryService.java b/src/main/java/com/gkhy/fourierSpecialGasMonitor/service/GasCategoryService.java index 914f9f4..5855e13 100644 --- a/src/main/java/com/gkhy/fourierSpecialGasMonitor/service/GasCategoryService.java +++ b/src/main/java/com/gkhy/fourierSpecialGasMonitor/service/GasCategoryService.java @@ -24,4 +24,6 @@ Result findGasCategoryPage(PageQuery<FindGasCategoryPageQuery> pageQuery); GasCategory findById(Integer id); + + List<GasCategory> findGasCategoryForReport(); } diff --git a/src/main/java/com/gkhy/fourierSpecialGasMonitor/service/impl/GasCategoryServiceImpl.java b/src/main/java/com/gkhy/fourierSpecialGasMonitor/service/impl/GasCategoryServiceImpl.java index 40d8623..2364c7e 100644 --- a/src/main/java/com/gkhy/fourierSpecialGasMonitor/service/impl/GasCategoryServiceImpl.java +++ b/src/main/java/com/gkhy/fourierSpecialGasMonitor/service/impl/GasCategoryServiceImpl.java @@ -178,6 +178,11 @@ } @Override + public List<GasCategory> findGasCategoryForReport() { + return gasCategoryRepository.findGasCategoryForReport(); + } + + @Override public Result gasCategoryList() { Result success = Result.success(); RBucket<List<GasCategory>> bucket = redissonClient.getBucket(SystemCacheKeyEnum.KEY_GAS_CATEGORY.getKey()); diff --git a/src/main/resources/template/dailyReportTemplate.docx b/src/main/resources/template/dailyReportTemplate.docx index d1efe6e..38ca601 100644 --- a/src/main/resources/template/dailyReportTemplate.docx +++ b/src/main/resources/template/dailyReportTemplate.docx Binary files differ diff --git a/src/main/resources/template/dailyReportTemplate_bak20240409.docx b/src/main/resources/template/dailyReportTemplate_bak20240409.docx new file mode 100644 index 0000000..5d4e25d --- /dev/null +++ b/src/main/resources/template/dailyReportTemplate_bak20240409.docx Binary files differ diff --git "a/src/main/resources/template/dailyReportTemplate_bak20240410\346\237\261\347\212\266\345\233\276\345\210\240\345\207\217\345\211\215.docx" "b/src/main/resources/template/dailyReportTemplate_bak20240410\346\237\261\347\212\266\345\233\276\345\210\240\345\207\217\345\211\215.docx" new file mode 100644 index 0000000..d1efe6e --- /dev/null +++ "b/src/main/resources/template/dailyReportTemplate_bak20240410\346\237\261\347\212\266\345\233\276\345\210\240\345\207\217\345\211\215.docx" Binary files differ -- Gitblit v1.9.2