From fb1dc85a9ae6a9b8426ec5e29eb0139933ebe233 Mon Sep 17 00:00:00 2001 From: riku <risaku@163.com> Date: 星期日, 29 九月 2019 11:22:24 +0800 Subject: [PATCH] 新增接口: 1. 获取某设备某时间段的数据流个数 --- src/main/kotlin/com/flightfeather/obd/lightshare/service/impl/ObdDataServiceImpl.kt | 3 +++ src/main/kotlin/com/flightfeather/obd/lightshare/web/ObdDataController.kt | 7 +++++++ src/main/kotlin/com/flightfeather/obd/repository/impl/DataStreamDaoImpl.kt | 19 +++++++++++++++++++ src/main/kotlin/com/flightfeather/obd/lightshare/service/ObdDataService.kt | 8 ++++++++ src/main/kotlin/com/flightfeather/obd/repository/DataStreamRepository.kt | 5 +++++ 5 files changed, 42 insertions(+), 0 deletions(-) diff --git a/src/main/kotlin/com/flightfeather/obd/lightshare/service/ObdDataService.kt b/src/main/kotlin/com/flightfeather/obd/lightshare/service/ObdDataService.kt index 751500b..00d5915 100644 --- a/src/main/kotlin/com/flightfeather/obd/lightshare/service/ObdDataService.kt +++ b/src/main/kotlin/com/flightfeather/obd/lightshare/service/ObdDataService.kt @@ -34,8 +34,16 @@ fun getDataStream(deviceCode: String, pageNum: Int?, pageSize: Int?, startTime: String?, endTime: String?): List<DataStreamVo> /** + * 鏍规嵁缁堢璁惧鐮佽幏鍙栨暟鎹祦鏁版嵁璁℃暟 + */ + fun getDataStreamCount(deviceCode: String, startTime: String?, endTime: String?): Int + + /** * 鏍规嵁缁堢璁惧鐮佽幏鍙栨渶鏂扮粡绾害 */ fun getCoordinate(deviceCode: String): LatLngVo + /** + * 鏍规嵁缁堢璁惧鐮佸強鏃堕棿娈碉紝缁欏嚭姝ゆ鏃堕棿鍐� + */ } \ No newline at end of file diff --git a/src/main/kotlin/com/flightfeather/obd/lightshare/service/impl/ObdDataServiceImpl.kt b/src/main/kotlin/com/flightfeather/obd/lightshare/service/impl/ObdDataServiceImpl.kt index afe9da7..c2babe3 100644 --- a/src/main/kotlin/com/flightfeather/obd/lightshare/service/impl/ObdDataServiceImpl.kt +++ b/src/main/kotlin/com/flightfeather/obd/lightshare/service/impl/ObdDataServiceImpl.kt @@ -33,6 +33,9 @@ override fun getDataStream(deviceCode: String, pageNum: Int?, pageSize: Int?, startTime: String?, endTime: String?): List<DataStreamVo> = dataStreamRepository.getDataStream(deviceCode, pageNum, pageSize, startTime, endTime) + override fun getDataStreamCount(deviceCode: String, startTime: String?, endTime: String?): Int + = dataStreamRepository.getDataStreamCount(deviceCode, startTime, endTime) + override fun getCoordinate(deviceCode: String): LatLngVo = dataStreamRepository.getCoordinate(deviceCode) } \ No newline at end of file diff --git a/src/main/kotlin/com/flightfeather/obd/lightshare/web/ObdDataController.kt b/src/main/kotlin/com/flightfeather/obd/lightshare/web/ObdDataController.kt index 04ebc19..e6bcaff 100644 --- a/src/main/kotlin/com/flightfeather/obd/lightshare/web/ObdDataController.kt +++ b/src/main/kotlin/com/flightfeather/obd/lightshare/web/ObdDataController.kt @@ -52,6 +52,13 @@ @RequestParam("endTime", required = false) endTime: String? ) = obdDataService.getDataStream(deviceCode, pageNum, pageSize, startTime, endTime) + @GetMapping("/dataStream/count") + fun getDataStreamCount( + @RequestParam("deviceCode") deviceCode: String = "", + @RequestParam("startTime", required = false) startTime: String?, + @RequestParam("endTime", required = false) endTime: String? + ) = obdDataService.getDataStreamCount(deviceCode, startTime, endTime) + @GetMapping("/coordinate/{deviceCode}") fun getCoordinate( @PathVariable("deviceCode") deviceCode: String diff --git a/src/main/kotlin/com/flightfeather/obd/repository/DataStreamRepository.kt b/src/main/kotlin/com/flightfeather/obd/repository/DataStreamRepository.kt index 45a2dcb..fb4570f 100644 --- a/src/main/kotlin/com/flightfeather/obd/repository/DataStreamRepository.kt +++ b/src/main/kotlin/com/flightfeather/obd/repository/DataStreamRepository.kt @@ -21,6 +21,11 @@ fun getDataStream(deviceCode: String, pageNum: Int?, pageSize: Int?, startTime: String?, endTime: String?): List<DataStreamVo> /** + * 鏍规嵁缁堢璁惧鐮佽幏鍙栨暟鎹祦鏁版嵁璁℃暟 + */ + fun getDataStreamCount(deviceCode: String, startTime: String?, endTime: String?): Int + + /** * 鏍规嵁缁堢璁惧鐮佽幏鍙栨渶鏂扮粡绾害 */ fun getCoordinate(deviceCode: String): LatLngVo diff --git a/src/main/kotlin/com/flightfeather/obd/repository/impl/DataStreamDaoImpl.kt b/src/main/kotlin/com/flightfeather/obd/repository/impl/DataStreamDaoImpl.kt index 927f206..a72cc1a 100644 --- a/src/main/kotlin/com/flightfeather/obd/repository/impl/DataStreamDaoImpl.kt +++ b/src/main/kotlin/com/flightfeather/obd/repository/impl/DataStreamDaoImpl.kt @@ -110,6 +110,25 @@ return resultList } + override fun getDataStreamCount(deviceCode: String, startTime: String?, endTime: String?): Int { + val sf = SimpleDateFormat("yyyy-MM-dd HH:mm:ss") + val example = Example(DataStream::class.java).apply { + createCriteria().andEqualTo("obdDeviceCode", deviceCode).run { + startTime?.let { + val st = sf.parse(startTime) + andGreaterThanOrEqualTo("obdDataTime", st) + } + endTime?.let { + val et = sf.parse(endTime) + andLessThanOrEqualTo("obdDataTime", et) + } + orderBy("obdDataTime").desc() + } + } + + return dataStreamMapper.selectCountByExample(example) + } + override fun getCoordinate(deviceCode: String): LatLngVo { val example = Example(DataStream::class.java).apply { createCriteria().andEqualTo("obdDeviceCode", deviceCode).run { -- Gitblit v1.9.3