From 5a003a42d2b34e8362910ac1d3e5a8866768e5fe Mon Sep 17 00:00:00 2001
From: feiyu02 <risaku@163.com>
Date: 星期六, 20 十二月 2025 16:50:28 +0800
Subject: [PATCH] 2025.12.20 巡查任务统计相关功能修改

---
 src/main/kotlin/cn/flightfeather/supervision/lightshare/service/impl/ProblemlistServiceImpl.kt |   31 +++++++++++++++++++++++++++++++
 1 files changed, 31 insertions(+), 0 deletions(-)

diff --git a/src/main/kotlin/cn/flightfeather/supervision/lightshare/service/impl/ProblemlistServiceImpl.kt b/src/main/kotlin/cn/flightfeather/supervision/lightshare/service/impl/ProblemlistServiceImpl.kt
index ccca225..264e239 100644
--- a/src/main/kotlin/cn/flightfeather/supervision/lightshare/service/impl/ProblemlistServiceImpl.kt
+++ b/src/main/kotlin/cn/flightfeather/supervision/lightshare/service/impl/ProblemlistServiceImpl.kt
@@ -13,6 +13,7 @@
 import cn.flightfeather.supervision.domain.ds1.repository.TaskRep
 import cn.flightfeather.supervision.lightshare.service.MediafileService
 import cn.flightfeather.supervision.lightshare.service.ProblemlistService
+import cn.flightfeather.supervision.lightshare.service.SubtaskService
 import cn.flightfeather.supervision.lightshare.service.TaskService
 import cn.flightfeather.supervision.lightshare.vo.*
 import com.fasterxml.jackson.core.type.TypeReference
@@ -105,6 +106,36 @@
         return problemListVolistTemp1
     }
 
+    override fun getBySceneMonth(sceneId: String, year: Int?, month: Int?): List<ProblemListVo> {
+        var _year = year
+        var _month = month
+        if (year == null) {
+            PageHelper.startPage<Problemlist>(1, 1)
+            val lastProblem = problemlistMapper.selectByExample(Example(Problemlist::class.java).apply {
+                createCriteria().andEqualTo("sguid", sceneId)
+                orderBy("time").desc()
+            }).takeIf { it.isNotEmpty() }?.get(0)
+            if (lastProblem == null) {
+                return emptyList()
+            } else {
+                val lt = LocalDateTime.ofInstant(lastProblem.time?.toInstant(), ZoneId.systemDefault())
+                _year = lt.year
+                _month = lt.monthValue
+            }
+        }
+        val sT = LocalDateTime.of(_year!!, _month!!, 1, 0, 0, 0, 0)
+        val eT = sT.plusMonths(1).minusSeconds(1)
+        return problemlistMapper.selectByExample(Example(Problemlist::class.java).apply {
+            createCriteria().andBetween("time", sT,eT)
+                .andEqualTo("sguid", sceneId)
+            orderBy("time").desc()
+        }).map {
+            val problemVo = ProblemListVo();
+            BeanUtils.copyProperties(it, problemVo)
+            problemVo
+        }
+    }
+
     //鑾峰彇鏌愰《灞備换鍔′笅锛屾煇涓満鏅笅鐨勯棶棰樻暣鏀规儏鍐�
     override fun getStatisticalResultById(topTaskId: String, sceneTypeId: String): List<StatisticsVo> {
         val map = problemlistMapper.getStatisticalResultById(topTaskId, sceneTypeId)

--
Gitblit v1.9.3