src/main/kotlin/com/flightfeather/obd/lightshare/web/ObdDataController.kt
@@ -11,10 +11,62 @@
@RequestMapping("obd/data")
class ObdDataController(val obdDataService: ObdDataService) {
    @GetMapping("/{id}")
    @GetMapping("/{vinCode}")
    fun getById(
            @PathVariable("id") id: String,
            @PathVariable("vinCode") vinCode: String,
            @RequestParam("page", required = false) pageNum: Int?,
            @RequestParam("per_page", required = false) pageSize: Int?
    ) = obdDataService.getDataByVinCode(id, pageNum, pageSize)
    ) = obdDataService.getDataByVinCode(vinCode, pageNum, pageSize)
    @GetMapping("/login/{deviceCode}")
    fun getLoginData(
            @PathVariable("deviceCode") deviceCode: String,
            @RequestParam("page", required = false) pageNum: Int?,
            @RequestParam("per_page", required = false) pageSize: Int?,
            @RequestParam("startTime", required = false) startTime: String?,
            @RequestParam("endTime", required = false) endTime: String?
    ) = obdDataService.getLoginData(deviceCode, pageNum, pageSize, startTime, endTime)
    @GetMapping("/logout/{deviceCode}")
    fun getLogoutData(
            @PathVariable("deviceCode") deviceCode: String,
            @RequestParam("page", required = false) pageNum: Int?,
            @RequestParam("per_page", required = false) pageSize: Int?,
            @RequestParam("startTime", required = false) startTime: String?,
            @RequestParam("endTime", required = false) endTime: String?
    ) = obdDataService.getLogoutData(deviceCode, pageNum, pageSize, startTime, endTime)
    @GetMapping("/obdInfo/{deviceCode}")
    fun getObdInfo(
            @PathVariable("deviceCode") deviceCode: String,
            @RequestParam("page", required = false) pageNum: Int?,
            @RequestParam("per_page", required = false) pageSize: Int?
    ) = obdDataService.getObdInfo(deviceCode, pageNum, pageSize)
    @GetMapping("/dataStream/{deviceCode}")
    fun getDataStream(
            @PathVariable("deviceCode") deviceCode: String,
            @RequestParam("page", required = false) pageNum: Int?,
            @RequestParam("per_page", required = false) pageSize: Int?,
            @RequestParam("startTime", required = false) startTime: String?,
            @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
    ) = obdDataService.getCoordinate(deviceCode)
    @GetMapping("/coordinate/latest")
    fun getCoordinate(
            @RequestParam("page", required = false) pageNum: Int?,
            @RequestParam("per_page", required = false) pageSize: Int?
    ) = obdDataService.getLatestCoordinate(pageNum, pageSize)
}