From c6842e8498c2d9b469890b38cd9f0d714392c445 Mon Sep 17 00:00:00 2001
From: feiyu02 <risaku@163.com>
Date: 星期五, 01 十二月 2023 13:22:02 +0800
Subject: [PATCH] 1. 修改优化日统计和风险统计的逻辑

---
 src/main/java/com/flightfeather/monitor/domain/ds1/repository/DustStatisticsValueRep.kt |   19 ++++++++++++++++---
 1 files changed, 16 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/flightfeather/monitor/domain/ds1/repository/DustStatisticsValueRep.kt b/src/main/java/com/flightfeather/monitor/domain/ds1/repository/DustStatisticsValueRep.kt
index 2dfcdf3..8721324 100644
--- a/src/main/java/com/flightfeather/monitor/domain/ds1/repository/DustStatisticsValueRep.kt
+++ b/src/main/java/com/flightfeather/monitor/domain/ds1/repository/DustStatisticsValueRep.kt
@@ -1,9 +1,9 @@
 package com.flightfeather.monitor.domain.ds1.repository
 
 import com.flightfeather.monitor.domain.ds1.entity.DustExceptionData
-import com.flightfeather.monitor.domain.ds1.entity.DustSiteData
 import com.flightfeather.monitor.domain.ds1.entity.DustStatisticsValue
 import com.flightfeather.monitor.domain.ds1.mapper.DustStatisticsValueMapper
+import com.github.pagehelper.PageHelper
 import org.springframework.stereotype.Repository
 import tk.mybatis.mapper.entity.Example
 import java.time.Duration
@@ -13,10 +13,16 @@
 class DustStatisticsValueRep(private val dustStatisticsValueMapper: DustStatisticsValueMapper) {
 
     fun findLatestData(type: String): DustStatisticsValue? {
-        return dustStatisticsValueMapper.selectOneByExample(Example(DustStatisticsValue::class.java).apply {
+        val p = PageHelper.startPage<DustStatisticsValue>(1, 1)
+        dustStatisticsValueMapper.selectByExample(Example(DustStatisticsValue::class.java).apply {
             createCriteria().andEqualTo("type", type)
             orderBy("lst").desc()
         })
+        return if (p.isNotEmpty()) {
+            p[0]
+        } else {
+            null
+        }
     }
 
 
@@ -40,10 +46,17 @@
     }
 
     fun monthlyStatics(date: LocalDate) {
-        val s = date.atStartOfDay()
+        val s = date.withDayOfMonth(1).atStartOfDay()
         val e = s.plusMonths(1).minusSeconds(1)
         val d = Duration.between(s, e).toDays() + 1
         val dataCount = d * 96
         dustStatisticsValueMapper.monthlyStatics(s, e, dataCount.toInt())
     }
+
+    fun select(mnCode: String, date: LocalDate): List<DustStatisticsValue?> {
+        return dustStatisticsValueMapper.selectByExample(Example(DustStatisticsValue::class.java).apply {
+            createCriteria().andEqualTo("lst", date)
+                .andEqualTo("mnCode", mnCode)
+        })
+    }
 }
\ No newline at end of file

--
Gitblit v1.9.3