From e99f1cd836475a059ed6fdcbd4235416ba108dd1 Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期五, 03 十二月 2021 17:16:00 +0800
Subject: [PATCH] 1. 新增用电量日分析功能

---
 src/main/kotlin/com/flightfeather/uav/lightshare/service/ElectricityService.kt              |    2 +-
 src/main/kotlin/com/flightfeather/uav/lightshare/bean/ElectricDailyInfo.kt                  |    5 +++--
 src/main/kotlin/com/flightfeather/uav/lightshare/web/ElectricityController.kt               |    8 ++++++++
 src/main/kotlin/com/flightfeather/uav/dataprocess/ElectricDailyAnalysis.kt                  |    2 +-
 src/main/kotlin/com/flightfeather/uav/lightshare/service/impl/ElectricityServiceImpl.kt     |    2 +-
 src/main/resources/application.yml                                                          |   12 ++++++------
 src/test/kotlin/com/flightfeather/uav/lightshare/service/impl/ElectricityServiceImplTest.kt |    3 +--
 7 files changed, 21 insertions(+), 13 deletions(-)

diff --git a/src/main/kotlin/com/flightfeather/uav/dataprocess/ElectricDailyAnalysis.kt b/src/main/kotlin/com/flightfeather/uav/dataprocess/ElectricDailyAnalysis.kt
index 8c1d2e7..a611d97 100644
--- a/src/main/kotlin/com/flightfeather/uav/dataprocess/ElectricDailyAnalysis.kt
+++ b/src/main/kotlin/com/flightfeather/uav/dataprocess/ElectricDailyAnalysis.kt
@@ -63,9 +63,9 @@
         dataMap.forEach { (dCode, dayMap) ->
             dayMap.forEach { (day, list) ->
                 dailyInfoMap[day]?.apply {
-
                     changeType(deviceMap[dCode])
                     setEndTime(list.last().mvDataTime)
+                    getResult()
                 }
             }
         }
diff --git a/src/main/kotlin/com/flightfeather/uav/lightshare/bean/ElectricDailyInfo.kt b/src/main/kotlin/com/flightfeather/uav/lightshare/bean/ElectricDailyInfo.kt
index 91977a5..57d8442 100644
--- a/src/main/kotlin/com/flightfeather/uav/lightshare/bean/ElectricDailyInfo.kt
+++ b/src/main/kotlin/com/flightfeather/uav/lightshare/bean/ElectricDailyInfo.kt
@@ -125,15 +125,16 @@
         // TODO: 2021/12/1 1. 璁惧姝e紡杩愯鏃堕棿宸� =銆嬪紑鍚槸鍚﹀悎瑙�
         if (pfRTime != null && plRTime != null) {
             rTimeDiff = ((pfRTime!!.time - plRTime!!.time) / 1000 / 60).toInt()
-            sResult = rTimeDiff > 0
+            sResult = rTimeDiff < 0
         }
         // TODO: 2021/12/1 2锛岃澶囧叧闂椂闂村樊 =銆嬪叧闂槸鍚﹀悎瑙�
         if (pfETime != null && plETime != null) {
             eTimeDiff = ((pfETime!!.time - plETime!!.time) / 1000 / 60).toInt()
+            eResult = eTimeDiff > 0
         }
         // TODO: 2021/12/1 3. 杩愯鏃堕暱宸� =銆嬭繍琛岃繃绋嬫槸鍚﹀悎瑙�
         runningTimeDiff = pfRunTime - plRunTime
-        // TODO: 2021/12/1 4. 缁煎悎鍒ゆ柇缁撴灉
+        rResult = runningTimeDiff > 0
 
         // TODO: 2021/12/1 5. 澶氭棩鎽樿缁熻锛岃繍琛屽ぉ鏁般�佸悎瑙勫ぉ鏁扮瓑
     }
diff --git a/src/main/kotlin/com/flightfeather/uav/lightshare/service/ElectricityService.kt b/src/main/kotlin/com/flightfeather/uav/lightshare/service/ElectricityService.kt
index f961ca2..67f30f2 100644
--- a/src/main/kotlin/com/flightfeather/uav/lightshare/service/ElectricityService.kt
+++ b/src/main/kotlin/com/flightfeather/uav/lightshare/service/ElectricityService.kt
@@ -22,5 +22,5 @@
     /**
      * 浼佷笟鐢ㄧ數閲忔棩缁熻淇℃伅
      */
-    fun dailyStatistics(cId: String, startTime: String?, endTime: String?): BaseResponse<List<ElectricDailyInfo>>
+    fun dailyAnalysis(cId: String, startTime: String?, endTime: String?): BaseResponse<List<ElectricDailyInfo>>
 }
\ No newline at end of file
diff --git a/src/main/kotlin/com/flightfeather/uav/lightshare/service/impl/ElectricityServiceImpl.kt b/src/main/kotlin/com/flightfeather/uav/lightshare/service/impl/ElectricityServiceImpl.kt
index f443876..fa10e71 100644
--- a/src/main/kotlin/com/flightfeather/uav/lightshare/service/impl/ElectricityServiceImpl.kt
+++ b/src/main/kotlin/com/flightfeather/uav/lightshare/service/impl/ElectricityServiceImpl.kt
@@ -276,7 +276,7 @@
         return BaseResponse(true, head = DataHead(pageInfo.pageNum, pageInfo.pages), data = result)
     }
 
-    override fun dailyStatistics(cId: String, startTime: String?, endTime: String?): BaseResponse<List<ElectricDailyInfo>> {
+    override fun dailyAnalysis(cId: String, startTime: String?, endTime: String?): BaseResponse<List<ElectricDailyInfo>> {
         // 鏍规嵁浼佷笟id鑾峰彇瀵瑰簲璁惧
         val devices = companyDeviceMapper.selectByExample(Example(CompanyDevice::class.java).apply {
             createCriteria().andEqualTo("cdCompanyId", cId)
diff --git a/src/main/kotlin/com/flightfeather/uav/lightshare/web/ElectricityController.kt b/src/main/kotlin/com/flightfeather/uav/lightshare/web/ElectricityController.kt
index cc74fc6..c778d45 100644
--- a/src/main/kotlin/com/flightfeather/uav/lightshare/web/ElectricityController.kt
+++ b/src/main/kotlin/com/flightfeather/uav/lightshare/web/ElectricityController.kt
@@ -49,4 +49,12 @@
         @RequestParam(value = "page", required = false) page: Int?,
         @RequestParam(value = "perPage", required = false) perPage: Int?
     ) = electricityService.getElectricityInfo(cId, startTime, endTime, page, perPage)
+
+    @ApiOperation(value = "浼佷笟鐢ㄧ數閲忔棩鍒嗘瀽")
+    @GetMapping("/analysis/daily")
+    fun dailyStatistics(
+        @ApiParam("浼佷笟id") @RequestParam(value = "cId") cId: String,
+        @ApiParam(value = "寮�濮嬫椂闂�", example = "yyyy-MM-dd HH:mm:ss") @RequestParam(value = "startTime", required = false) startTime: String?,
+        @ApiParam(value = "缁撴潫鏃堕棿", example = "yyyy-MM-dd HH:mm:ss") @RequestParam(value = "endTime", required = false) endTime: String?,
+    ) = electricityService.dailyAnalysis(cId, startTime, endTime)
 }
\ No newline at end of file
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index e03ad45..1087cd6 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -7,9 +7,9 @@
 #    password: cn.FLIGHTFEATHER
 
 #    绾夸笂鏈嶅姟鍣�
-    url: jdbc:mysql://localhost:3306/dronemonitor?serverTimezone=Asia/Shanghai&prepStmtCacheSize=517&cachePrepStmts=true&autoReconnect=true&characterEncoding=utf-8&allowMultiQueries=true&useSSL=false
-    username: dronemonitor
-    password: dronemonitor_hackxrnomxm
+#    url: jdbc:mysql://localhost:3306/dronemonitor?serverTimezone=Asia/Shanghai&prepStmtCacheSize=517&cachePrepStmts=true&autoReconnect=true&characterEncoding=utf-8&allowMultiQueries=true&useSSL=false
+#    username: dronemonitor
+#    password: dronemonitor_hackxrnomxm
 
 #    寮�鍙戞湰鍦版湇鍔″櫒
 #    url: jdbc:mysql://localhost:3306/dronemonitor?serverTimezone=Asia/Shanghai&prepStmtCacheSize=517&cachePrepStmts=true&autoReconnect=true&characterEncoding=utf-8&allowMultiQueries=true&useSSL=false
@@ -17,9 +17,9 @@
 #    password: 123456
 
 #   寮�鍙戣繙绋嬫湇鍔″櫒
-#    url: jdbc:mysql://47.100.191.150:3306/dronemonitor?serverTimezone=Asia/Shanghai&prepStmtCacheSize=517&cachePrepStmts=true&autoReconnect=true&characterEncoding=utf-8&allowMultiQueries=true&useSSL=false
-#    username: remoteU1
-#    password: eSoF8DnzfGTlhAjE
+    url: jdbc:mysql://47.100.191.150:3306/dronemonitor?serverTimezone=Asia/Shanghai&prepStmtCacheSize=517&cachePrepStmts=true&autoReconnect=true&characterEncoding=utf-8&allowMultiQueries=true&useSSL=false
+    username: remoteU1
+    password: eSoF8DnzfGTlhAjE
     hikari:
       maximum-pool-size: 500
       minimum-idle: 20
diff --git a/src/test/kotlin/com/flightfeather/uav/lightshare/service/impl/ElectricityServiceImplTest.kt b/src/test/kotlin/com/flightfeather/uav/lightshare/service/impl/ElectricityServiceImplTest.kt
index 3be2cb2..925f300 100644
--- a/src/test/kotlin/com/flightfeather/uav/lightshare/service/impl/ElectricityServiceImplTest.kt
+++ b/src/test/kotlin/com/flightfeather/uav/lightshare/service/impl/ElectricityServiceImplTest.kt
@@ -3,7 +3,6 @@
 import com.flightfeather.uav.lightshare.service.ElectricityService
 import org.junit.Test
 
-import org.junit.Assert.*
 import org.junit.runner.RunWith
 import org.springframework.beans.factory.annotation.Autowired
 import org.springframework.boot.test.context.SpringBootTest
@@ -22,7 +21,7 @@
 
     @Test
     fun dailyStatistics() {
-        val r = electricityService.dailyStatistics("J3euwNl19WZvH7iE", "2021-07-16 00:00:00", "2021-07-16 00:00:00")
+        val r = electricityService.dailyAnalysis("J3euwNl19WZvH7iE", "2021-07-16 00:00:00", "2021-07-16 00:00:00")
         println(r)
     }
 }
\ No newline at end of file

--
Gitblit v1.9.3