diff --git a/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt b/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt index 06a74c5..0ddef38 100644 --- a/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt +++ b/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt @@ -14,5 +14,6 @@ var alarmStatus: String, var alarmType: String, var alarmVideo: String, - var alarmValue: String + var alarmValue: String, + var taskId: String ) diff --git a/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt b/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt index 06a74c5..0ddef38 100644 --- a/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt +++ b/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt @@ -14,5 +14,6 @@ var alarmStatus: String, var alarmType: String, var alarmVideo: String, - var alarmValue: String + var alarmValue: String, + var taskId: String ) diff --git a/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt b/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt index 5587611..4183d4b 100644 --- a/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt +++ b/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt @@ -11,7 +11,7 @@ val taskTitle: String, val carId: String, val beginDate: String, - val state: String, + val status: String, val valid: String, val endDate: String ) diff --git a/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt b/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt index 06a74c5..0ddef38 100644 --- a/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt +++ b/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt @@ -14,5 +14,6 @@ var alarmStatus: String, var alarmType: String, var alarmVideo: String, - var alarmValue: String + var alarmValue: String, + var taskId: String ) diff --git a/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt b/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt index 5587611..4183d4b 100644 --- a/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt +++ b/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt @@ -11,7 +11,7 @@ val taskTitle: String, val carId: String, val beginDate: String, - val state: String, + val status: String, val valid: String, val endDate: String ) diff --git a/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitService.kt index 1b0a093..222fce6 100644 --- a/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitService.kt @@ -53,7 +53,7 @@ ): String /** - * 新增任务 + * 更新任务 */ @POST("/system/busPatrolTask/add") suspend fun addTask( @@ -62,6 +62,16 @@ ): String /** + * TODO 接口地址待完善 + * 新增任务 + */ + @POST("") + suspend fun updateTask( + @Header("token") token: String, + @Body requestBody: RequestBody + ): String + + /** * 获取巡检任务列表 */ @POST("/system/busPatrolCar/listPage") diff --git a/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt b/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt index 06a74c5..0ddef38 100644 --- a/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt +++ b/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt @@ -14,5 +14,6 @@ var alarmStatus: String, var alarmType: String, var alarmVideo: String, - var alarmValue: String + var alarmValue: String, + var taskId: String ) diff --git a/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt b/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt index 5587611..4183d4b 100644 --- a/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt +++ b/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt @@ -11,7 +11,7 @@ val taskTitle: String, val carId: String, val beginDate: String, - val state: String, + val status: String, val valid: String, val endDate: String ) diff --git a/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitService.kt index 1b0a093..222fce6 100644 --- a/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitService.kt @@ -53,7 +53,7 @@ ): String /** - * 新增任务 + * 更新任务 */ @POST("/system/busPatrolTask/add") suspend fun addTask( @@ -62,6 +62,16 @@ ): String /** + * TODO 接口地址待完善 + * 新增任务 + */ + @POST("") + suspend fun updateTask( + @Header("token") token: String, + @Body requestBody: RequestBody + ): String + + /** * 获取巡检任务列表 */ @POST("/system/busPatrolCar/listPage") diff --git a/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitServiceManager.kt index 6646fd0..ce36a66 100644 --- a/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitServiceManager.kt @@ -1,7 +1,6 @@ package com.casic.br.ktd.retrofit import com.casic.br.ktd.model.AlarmParam -import com.casic.br.ktd.model.TaskParam import com.casic.br.ktd.utils.AuthenticationHelper import com.casic.br.ktd.utils.FileType import com.casic.br.ktd.utils.LocaleConstant @@ -101,15 +100,16 @@ /** * 新增任务 */ - suspend fun addTask(taskParam: TaskParam): String { + suspend fun addTask( + taskTitle: String, carId: String, beginDate: String, status: String, valid: String + ): String { val param = JsonObject() - param.addProperty("endDate", taskParam.endDate) param.addProperty("description", "") - param.addProperty("carId", taskParam.carId) - param.addProperty("valid", taskParam.valid) - param.addProperty("beginDate", taskParam.beginDate) - param.addProperty("taskName", taskParam.taskTitle) - param.addProperty("status", taskParam.state) + param.addProperty("carId", carId) + param.addProperty("valid", valid) + param.addProperty("beginDate", beginDate) + param.addProperty("taskName", taskTitle) + param.addProperty("status", status) val requestBody = param.toString().toRequestBody( "application/json;charset=UTF-8".toMediaType() ) @@ -117,6 +117,19 @@ } /** + * 更新任务 + */ + suspend fun updateTask(taskId: String, endDate: String): String { + val param = JsonObject() + param.addProperty("taskId", taskId) + param.addProperty("endDate", endDate) + val requestBody = param.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.updateTask(AuthenticationHelper.token, requestBody) + } + + /** * 获取巡检车列表 */ suspend fun getVehicles(): String { @@ -214,6 +227,7 @@ param.addProperty("alarmType", alarmParam.alarmType) param.addProperty("alarmVideo", alarmParam.alarmVideo) param.addProperty("alarmValue", alarmParam.alarmValue) + param.addProperty("taskId", alarmParam.taskId) val requestBody = param.toString().toRequestBody( "application/json;charset=UTF-8".toMediaType() ) diff --git a/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt b/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt index 06a74c5..0ddef38 100644 --- a/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt +++ b/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt @@ -14,5 +14,6 @@ var alarmStatus: String, var alarmType: String, var alarmVideo: String, - var alarmValue: String + var alarmValue: String, + var taskId: String ) diff --git a/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt b/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt index 5587611..4183d4b 100644 --- a/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt +++ b/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt @@ -11,7 +11,7 @@ val taskTitle: String, val carId: String, val beginDate: String, - val state: String, + val status: String, val valid: String, val endDate: String ) diff --git a/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitService.kt index 1b0a093..222fce6 100644 --- a/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitService.kt @@ -53,7 +53,7 @@ ): String /** - * 新增任务 + * 更新任务 */ @POST("/system/busPatrolTask/add") suspend fun addTask( @@ -62,6 +62,16 @@ ): String /** + * TODO 接口地址待完善 + * 新增任务 + */ + @POST("") + suspend fun updateTask( + @Header("token") token: String, + @Body requestBody: RequestBody + ): String + + /** * 获取巡检任务列表 */ @POST("/system/busPatrolCar/listPage") diff --git a/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitServiceManager.kt index 6646fd0..ce36a66 100644 --- a/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitServiceManager.kt @@ -1,7 +1,6 @@ package com.casic.br.ktd.retrofit import com.casic.br.ktd.model.AlarmParam -import com.casic.br.ktd.model.TaskParam import com.casic.br.ktd.utils.AuthenticationHelper import com.casic.br.ktd.utils.FileType import com.casic.br.ktd.utils.LocaleConstant @@ -101,15 +100,16 @@ /** * 新增任务 */ - suspend fun addTask(taskParam: TaskParam): String { + suspend fun addTask( + taskTitle: String, carId: String, beginDate: String, status: String, valid: String + ): String { val param = JsonObject() - param.addProperty("endDate", taskParam.endDate) param.addProperty("description", "") - param.addProperty("carId", taskParam.carId) - param.addProperty("valid", taskParam.valid) - param.addProperty("beginDate", taskParam.beginDate) - param.addProperty("taskName", taskParam.taskTitle) - param.addProperty("status", taskParam.state) + param.addProperty("carId", carId) + param.addProperty("valid", valid) + param.addProperty("beginDate", beginDate) + param.addProperty("taskName", taskTitle) + param.addProperty("status", status) val requestBody = param.toString().toRequestBody( "application/json;charset=UTF-8".toMediaType() ) @@ -117,6 +117,19 @@ } /** + * 更新任务 + */ + suspend fun updateTask(taskId: String, endDate: String): String { + val param = JsonObject() + param.addProperty("taskId", taskId) + param.addProperty("endDate", endDate) + val requestBody = param.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.updateTask(AuthenticationHelper.token, requestBody) + } + + /** * 获取巡检车列表 */ suspend fun getVehicles(): String { @@ -214,6 +227,7 @@ param.addProperty("alarmType", alarmParam.alarmType) param.addProperty("alarmVideo", alarmParam.alarmVideo) param.addProperty("alarmValue", alarmParam.alarmValue) + param.addProperty("taskId", alarmParam.taskId) val requestBody = param.toString().toRequestBody( "application/json;charset=UTF-8".toMediaType() ) diff --git a/app/src/main/java/com/casic/br/ktd/utils/LocaleConstant.kt b/app/src/main/java/com/casic/br/ktd/utils/LocaleConstant.kt index 1d37485..67bec04 100644 --- a/app/src/main/java/com/casic/br/ktd/utils/LocaleConstant.kt +++ b/app/src/main/java/com/casic/br/ktd/utils/LocaleConstant.kt @@ -46,6 +46,7 @@ const val CAR_ID = "carId" const val ALARM_RULE = "alarmRule" const val YT_DEVICE_ID = "deviceId" + const val TASK_END_TIME = "taskEndTime" //海康摄像头参数 const val HK_NET_IP = "192.168.1.64" diff --git a/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt b/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt index 06a74c5..0ddef38 100644 --- a/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt +++ b/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt @@ -14,5 +14,6 @@ var alarmStatus: String, var alarmType: String, var alarmVideo: String, - var alarmValue: String + var alarmValue: String, + var taskId: String ) diff --git a/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt b/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt index 5587611..4183d4b 100644 --- a/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt +++ b/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt @@ -11,7 +11,7 @@ val taskTitle: String, val carId: String, val beginDate: String, - val state: String, + val status: String, val valid: String, val endDate: String ) diff --git a/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitService.kt index 1b0a093..222fce6 100644 --- a/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitService.kt @@ -53,7 +53,7 @@ ): String /** - * 新增任务 + * 更新任务 */ @POST("/system/busPatrolTask/add") suspend fun addTask( @@ -62,6 +62,16 @@ ): String /** + * TODO 接口地址待完善 + * 新增任务 + */ + @POST("") + suspend fun updateTask( + @Header("token") token: String, + @Body requestBody: RequestBody + ): String + + /** * 获取巡检任务列表 */ @POST("/system/busPatrolCar/listPage") diff --git a/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitServiceManager.kt index 6646fd0..ce36a66 100644 --- a/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitServiceManager.kt @@ -1,7 +1,6 @@ package com.casic.br.ktd.retrofit import com.casic.br.ktd.model.AlarmParam -import com.casic.br.ktd.model.TaskParam import com.casic.br.ktd.utils.AuthenticationHelper import com.casic.br.ktd.utils.FileType import com.casic.br.ktd.utils.LocaleConstant @@ -101,15 +100,16 @@ /** * 新增任务 */ - suspend fun addTask(taskParam: TaskParam): String { + suspend fun addTask( + taskTitle: String, carId: String, beginDate: String, status: String, valid: String + ): String { val param = JsonObject() - param.addProperty("endDate", taskParam.endDate) param.addProperty("description", "") - param.addProperty("carId", taskParam.carId) - param.addProperty("valid", taskParam.valid) - param.addProperty("beginDate", taskParam.beginDate) - param.addProperty("taskName", taskParam.taskTitle) - param.addProperty("status", taskParam.state) + param.addProperty("carId", carId) + param.addProperty("valid", valid) + param.addProperty("beginDate", beginDate) + param.addProperty("taskName", taskTitle) + param.addProperty("status", status) val requestBody = param.toString().toRequestBody( "application/json;charset=UTF-8".toMediaType() ) @@ -117,6 +117,19 @@ } /** + * 更新任务 + */ + suspend fun updateTask(taskId: String, endDate: String): String { + val param = JsonObject() + param.addProperty("taskId", taskId) + param.addProperty("endDate", endDate) + val requestBody = param.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.updateTask(AuthenticationHelper.token, requestBody) + } + + /** * 获取巡检车列表 */ suspend fun getVehicles(): String { @@ -214,6 +227,7 @@ param.addProperty("alarmType", alarmParam.alarmType) param.addProperty("alarmVideo", alarmParam.alarmVideo) param.addProperty("alarmValue", alarmParam.alarmValue) + param.addProperty("taskId", alarmParam.taskId) val requestBody = param.toString().toRequestBody( "application/json;charset=UTF-8".toMediaType() ) diff --git a/app/src/main/java/com/casic/br/ktd/utils/LocaleConstant.kt b/app/src/main/java/com/casic/br/ktd/utils/LocaleConstant.kt index 1d37485..67bec04 100644 --- a/app/src/main/java/com/casic/br/ktd/utils/LocaleConstant.kt +++ b/app/src/main/java/com/casic/br/ktd/utils/LocaleConstant.kt @@ -46,6 +46,7 @@ const val CAR_ID = "carId" const val ALARM_RULE = "alarmRule" const val YT_DEVICE_ID = "deviceId" + const val TASK_END_TIME = "taskEndTime" //海康摄像头参数 const val HK_NET_IP = "192.168.1.64" diff --git a/app/src/main/java/com/casic/br/ktd/view/InspectionActivity.kt b/app/src/main/java/com/casic/br/ktd/view/InspectionActivity.kt index 531575d..06f6272 100644 --- a/app/src/main/java/com/casic/br/ktd/view/InspectionActivity.kt +++ b/app/src/main/java/com/casic/br/ktd/view/InspectionActivity.kt @@ -26,7 +26,10 @@ import com.amap.api.maps.model.PolylineOptions import com.casic.br.ktd.R import com.casic.br.ktd.extensions.* -import com.casic.br.ktd.model.* +import com.casic.br.ktd.model.AlarmParam +import com.casic.br.ktd.model.ChartPointModel +import com.casic.br.ktd.model.RouteModel +import com.casic.br.ktd.model.SensorDataModel import com.casic.br.ktd.netty.tcp.SocketManager import com.casic.br.ktd.netty.udp.UdpClient import com.casic.br.ktd.utils.FileType @@ -119,12 +122,11 @@ private lateinit var pointViewModel: PointViewModel private lateinit var fileViewModel: FileViewModel private lateinit var alarmViewModel: AlarmViewModel - private lateinit var taskParam: TaskParam private lateinit var alarmParam: AlarmParam + private var taskId = "" private var carId = "" private var deviceId = "" private var taskTitle = "" - private var beginDate = "" private var dataModel: SensorDataModel? = null //1:报警,0:正常 @@ -175,6 +177,12 @@ gasAlarmRule = SaveKeyValues.getValue(LocaleConstant.ALARM_RULE, 1000) as Int deviceId = SaveKeyValues.getValue(LocaleConstant.YT_DEVICE_ID, "") as String + taskViewModel.addTaskResult.observe(this) { + if (it.code == 200) { + taskId = it.data.toString() + } + } + fileViewModel.resultModel.observe(this) { if (it.code == 200) { if (alarmParam.alarmLongitude.isNotEmpty() && alarmParam.alarmLatitude.isNotEmpty()) { @@ -529,7 +537,10 @@ } override fun onConfirmClick() { - taskViewModel.addTask(taskParam) + val value = SaveKeyValues.getValue( + LocaleConstant.TASK_END_TIME, "" + ) as String + taskViewModel.updateTask(taskId, value) } }).build().show() } @@ -604,8 +615,10 @@ LocaleConstant.OPEN_SENSOR_COMMAND.size ) - //记录任务开始时间 - beginDate = System.currentTimeMillis().timestampToCompleteDate() + //初始化任务 + taskViewModel.addTask( + taskTitle, carId, System.currentTimeMillis().timestampToCompleteDate(), "1", "0" + ) } catch (e: IndexOutOfBoundsException) { e.printStackTrace() "设备未正常连接,无法开启预览".show(this) @@ -702,7 +715,7 @@ strJpeg.wPicQuality = 1 strJpeg.wPicSize = 2 - val imagePath = "/${createImageFileDir()}/${timeFormat.format(Date())}.jpg" + val imagePath = "/${createImageFileDir()}/${timeFormat.format(Date())}.png" hkSDK.NET_DVR_CaptureJPEGPicture(returnUserID, selectChannel, strJpeg, imagePath) if (MessageCodeHub.getErrorCode() == 0) { @@ -732,15 +745,9 @@ isLoginSuccess = false initSuccess = false //结束巡检,保存数据 - val taskParam = TaskParam( - taskTitle, - carId, - beginDate, - "1", - "0", - System.currentTimeMillis().timestampToCompleteDate() - ) - taskViewModel.addTask(taskParam) + val endTime = System.currentTimeMillis().timestampToCompleteDate() + SaveKeyValues.putValue(LocaleConstant.TASK_END_TIME, endTime) + taskViewModel.updateTask(taskId, endTime) } override fun onDestroy() { @@ -800,7 +807,8 @@ "0", "1", "", - dataModel!!.methane.toString() + dataModel!!.methane.toString(), + taskId ) captureImage(true) diff --git a/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt b/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt index 06a74c5..0ddef38 100644 --- a/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt +++ b/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt @@ -14,5 +14,6 @@ var alarmStatus: String, var alarmType: String, var alarmVideo: String, - var alarmValue: String + var alarmValue: String, + var taskId: String ) diff --git a/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt b/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt index 5587611..4183d4b 100644 --- a/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt +++ b/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt @@ -11,7 +11,7 @@ val taskTitle: String, val carId: String, val beginDate: String, - val state: String, + val status: String, val valid: String, val endDate: String ) diff --git a/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitService.kt index 1b0a093..222fce6 100644 --- a/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitService.kt @@ -53,7 +53,7 @@ ): String /** - * 新增任务 + * 更新任务 */ @POST("/system/busPatrolTask/add") suspend fun addTask( @@ -62,6 +62,16 @@ ): String /** + * TODO 接口地址待完善 + * 新增任务 + */ + @POST("") + suspend fun updateTask( + @Header("token") token: String, + @Body requestBody: RequestBody + ): String + + /** * 获取巡检任务列表 */ @POST("/system/busPatrolCar/listPage") diff --git a/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitServiceManager.kt index 6646fd0..ce36a66 100644 --- a/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitServiceManager.kt @@ -1,7 +1,6 @@ package com.casic.br.ktd.retrofit import com.casic.br.ktd.model.AlarmParam -import com.casic.br.ktd.model.TaskParam import com.casic.br.ktd.utils.AuthenticationHelper import com.casic.br.ktd.utils.FileType import com.casic.br.ktd.utils.LocaleConstant @@ -101,15 +100,16 @@ /** * 新增任务 */ - suspend fun addTask(taskParam: TaskParam): String { + suspend fun addTask( + taskTitle: String, carId: String, beginDate: String, status: String, valid: String + ): String { val param = JsonObject() - param.addProperty("endDate", taskParam.endDate) param.addProperty("description", "") - param.addProperty("carId", taskParam.carId) - param.addProperty("valid", taskParam.valid) - param.addProperty("beginDate", taskParam.beginDate) - param.addProperty("taskName", taskParam.taskTitle) - param.addProperty("status", taskParam.state) + param.addProperty("carId", carId) + param.addProperty("valid", valid) + param.addProperty("beginDate", beginDate) + param.addProperty("taskName", taskTitle) + param.addProperty("status", status) val requestBody = param.toString().toRequestBody( "application/json;charset=UTF-8".toMediaType() ) @@ -117,6 +117,19 @@ } /** + * 更新任务 + */ + suspend fun updateTask(taskId: String, endDate: String): String { + val param = JsonObject() + param.addProperty("taskId", taskId) + param.addProperty("endDate", endDate) + val requestBody = param.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.updateTask(AuthenticationHelper.token, requestBody) + } + + /** * 获取巡检车列表 */ suspend fun getVehicles(): String { @@ -214,6 +227,7 @@ param.addProperty("alarmType", alarmParam.alarmType) param.addProperty("alarmVideo", alarmParam.alarmVideo) param.addProperty("alarmValue", alarmParam.alarmValue) + param.addProperty("taskId", alarmParam.taskId) val requestBody = param.toString().toRequestBody( "application/json;charset=UTF-8".toMediaType() ) diff --git a/app/src/main/java/com/casic/br/ktd/utils/LocaleConstant.kt b/app/src/main/java/com/casic/br/ktd/utils/LocaleConstant.kt index 1d37485..67bec04 100644 --- a/app/src/main/java/com/casic/br/ktd/utils/LocaleConstant.kt +++ b/app/src/main/java/com/casic/br/ktd/utils/LocaleConstant.kt @@ -46,6 +46,7 @@ const val CAR_ID = "carId" const val ALARM_RULE = "alarmRule" const val YT_DEVICE_ID = "deviceId" + const val TASK_END_TIME = "taskEndTime" //海康摄像头参数 const val HK_NET_IP = "192.168.1.64" diff --git a/app/src/main/java/com/casic/br/ktd/view/InspectionActivity.kt b/app/src/main/java/com/casic/br/ktd/view/InspectionActivity.kt index 531575d..06f6272 100644 --- a/app/src/main/java/com/casic/br/ktd/view/InspectionActivity.kt +++ b/app/src/main/java/com/casic/br/ktd/view/InspectionActivity.kt @@ -26,7 +26,10 @@ import com.amap.api.maps.model.PolylineOptions import com.casic.br.ktd.R import com.casic.br.ktd.extensions.* -import com.casic.br.ktd.model.* +import com.casic.br.ktd.model.AlarmParam +import com.casic.br.ktd.model.ChartPointModel +import com.casic.br.ktd.model.RouteModel +import com.casic.br.ktd.model.SensorDataModel import com.casic.br.ktd.netty.tcp.SocketManager import com.casic.br.ktd.netty.udp.UdpClient import com.casic.br.ktd.utils.FileType @@ -119,12 +122,11 @@ private lateinit var pointViewModel: PointViewModel private lateinit var fileViewModel: FileViewModel private lateinit var alarmViewModel: AlarmViewModel - private lateinit var taskParam: TaskParam private lateinit var alarmParam: AlarmParam + private var taskId = "" private var carId = "" private var deviceId = "" private var taskTitle = "" - private var beginDate = "" private var dataModel: SensorDataModel? = null //1:报警,0:正常 @@ -175,6 +177,12 @@ gasAlarmRule = SaveKeyValues.getValue(LocaleConstant.ALARM_RULE, 1000) as Int deviceId = SaveKeyValues.getValue(LocaleConstant.YT_DEVICE_ID, "") as String + taskViewModel.addTaskResult.observe(this) { + if (it.code == 200) { + taskId = it.data.toString() + } + } + fileViewModel.resultModel.observe(this) { if (it.code == 200) { if (alarmParam.alarmLongitude.isNotEmpty() && alarmParam.alarmLatitude.isNotEmpty()) { @@ -529,7 +537,10 @@ } override fun onConfirmClick() { - taskViewModel.addTask(taskParam) + val value = SaveKeyValues.getValue( + LocaleConstant.TASK_END_TIME, "" + ) as String + taskViewModel.updateTask(taskId, value) } }).build().show() } @@ -604,8 +615,10 @@ LocaleConstant.OPEN_SENSOR_COMMAND.size ) - //记录任务开始时间 - beginDate = System.currentTimeMillis().timestampToCompleteDate() + //初始化任务 + taskViewModel.addTask( + taskTitle, carId, System.currentTimeMillis().timestampToCompleteDate(), "1", "0" + ) } catch (e: IndexOutOfBoundsException) { e.printStackTrace() "设备未正常连接,无法开启预览".show(this) @@ -702,7 +715,7 @@ strJpeg.wPicQuality = 1 strJpeg.wPicSize = 2 - val imagePath = "/${createImageFileDir()}/${timeFormat.format(Date())}.jpg" + val imagePath = "/${createImageFileDir()}/${timeFormat.format(Date())}.png" hkSDK.NET_DVR_CaptureJPEGPicture(returnUserID, selectChannel, strJpeg, imagePath) if (MessageCodeHub.getErrorCode() == 0) { @@ -732,15 +745,9 @@ isLoginSuccess = false initSuccess = false //结束巡检,保存数据 - val taskParam = TaskParam( - taskTitle, - carId, - beginDate, - "1", - "0", - System.currentTimeMillis().timestampToCompleteDate() - ) - taskViewModel.addTask(taskParam) + val endTime = System.currentTimeMillis().timestampToCompleteDate() + SaveKeyValues.putValue(LocaleConstant.TASK_END_TIME, endTime) + taskViewModel.updateTask(taskId, endTime) } override fun onDestroy() { @@ -800,7 +807,8 @@ "0", "1", "", - dataModel!!.methane.toString() + dataModel!!.methane.toString(), + taskId ) captureImage(true) diff --git a/app/src/main/java/com/casic/br/ktd/view/MainActivity.kt b/app/src/main/java/com/casic/br/ktd/view/MainActivity.kt index 74ceb87..e5c1fc8 100644 --- a/app/src/main/java/com/casic/br/ktd/view/MainActivity.kt +++ b/app/src/main/java/com/casic/br/ktd/view/MainActivity.kt @@ -86,8 +86,6 @@ alarmViewModel.alarmRuleList.observe(this) { if (it.code == 200) { if (it.data.rows.isNotEmpty()) { - //TODO 报警规则需要取最新的 - val model = it.data.rows[0] SaveKeyValues.putValue(LocaleConstant.ALARM_RULE, model.high) SaveKeyValues.putValue(LocaleConstant.YT_DEVICE_ID, model.deviceId) diff --git a/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt b/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt index 06a74c5..0ddef38 100644 --- a/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt +++ b/app/src/main/java/com/casic/br/ktd/model/AlarmParam.kt @@ -14,5 +14,6 @@ var alarmStatus: String, var alarmType: String, var alarmVideo: String, - var alarmValue: String + var alarmValue: String, + var taskId: String ) diff --git a/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt b/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt index 5587611..4183d4b 100644 --- a/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt +++ b/app/src/main/java/com/casic/br/ktd/model/TaskParam.kt @@ -11,7 +11,7 @@ val taskTitle: String, val carId: String, val beginDate: String, - val state: String, + val status: String, val valid: String, val endDate: String ) diff --git a/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitService.kt index 1b0a093..222fce6 100644 --- a/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitService.kt @@ -53,7 +53,7 @@ ): String /** - * 新增任务 + * 更新任务 */ @POST("/system/busPatrolTask/add") suspend fun addTask( @@ -62,6 +62,16 @@ ): String /** + * TODO 接口地址待完善 + * 新增任务 + */ + @POST("") + suspend fun updateTask( + @Header("token") token: String, + @Body requestBody: RequestBody + ): String + + /** * 获取巡检任务列表 */ @POST("/system/busPatrolCar/listPage") diff --git a/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitServiceManager.kt index 6646fd0..ce36a66 100644 --- a/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/br/ktd/retrofit/RetrofitServiceManager.kt @@ -1,7 +1,6 @@ package com.casic.br.ktd.retrofit import com.casic.br.ktd.model.AlarmParam -import com.casic.br.ktd.model.TaskParam import com.casic.br.ktd.utils.AuthenticationHelper import com.casic.br.ktd.utils.FileType import com.casic.br.ktd.utils.LocaleConstant @@ -101,15 +100,16 @@ /** * 新增任务 */ - suspend fun addTask(taskParam: TaskParam): String { + suspend fun addTask( + taskTitle: String, carId: String, beginDate: String, status: String, valid: String + ): String { val param = JsonObject() - param.addProperty("endDate", taskParam.endDate) param.addProperty("description", "") - param.addProperty("carId", taskParam.carId) - param.addProperty("valid", taskParam.valid) - param.addProperty("beginDate", taskParam.beginDate) - param.addProperty("taskName", taskParam.taskTitle) - param.addProperty("status", taskParam.state) + param.addProperty("carId", carId) + param.addProperty("valid", valid) + param.addProperty("beginDate", beginDate) + param.addProperty("taskName", taskTitle) + param.addProperty("status", status) val requestBody = param.toString().toRequestBody( "application/json;charset=UTF-8".toMediaType() ) @@ -117,6 +117,19 @@ } /** + * 更新任务 + */ + suspend fun updateTask(taskId: String, endDate: String): String { + val param = JsonObject() + param.addProperty("taskId", taskId) + param.addProperty("endDate", endDate) + val requestBody = param.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.updateTask(AuthenticationHelper.token, requestBody) + } + + /** * 获取巡检车列表 */ suspend fun getVehicles(): String { @@ -214,6 +227,7 @@ param.addProperty("alarmType", alarmParam.alarmType) param.addProperty("alarmVideo", alarmParam.alarmVideo) param.addProperty("alarmValue", alarmParam.alarmValue) + param.addProperty("taskId", alarmParam.taskId) val requestBody = param.toString().toRequestBody( "application/json;charset=UTF-8".toMediaType() ) diff --git a/app/src/main/java/com/casic/br/ktd/utils/LocaleConstant.kt b/app/src/main/java/com/casic/br/ktd/utils/LocaleConstant.kt index 1d37485..67bec04 100644 --- a/app/src/main/java/com/casic/br/ktd/utils/LocaleConstant.kt +++ b/app/src/main/java/com/casic/br/ktd/utils/LocaleConstant.kt @@ -46,6 +46,7 @@ const val CAR_ID = "carId" const val ALARM_RULE = "alarmRule" const val YT_DEVICE_ID = "deviceId" + const val TASK_END_TIME = "taskEndTime" //海康摄像头参数 const val HK_NET_IP = "192.168.1.64" diff --git a/app/src/main/java/com/casic/br/ktd/view/InspectionActivity.kt b/app/src/main/java/com/casic/br/ktd/view/InspectionActivity.kt index 531575d..06f6272 100644 --- a/app/src/main/java/com/casic/br/ktd/view/InspectionActivity.kt +++ b/app/src/main/java/com/casic/br/ktd/view/InspectionActivity.kt @@ -26,7 +26,10 @@ import com.amap.api.maps.model.PolylineOptions import com.casic.br.ktd.R import com.casic.br.ktd.extensions.* -import com.casic.br.ktd.model.* +import com.casic.br.ktd.model.AlarmParam +import com.casic.br.ktd.model.ChartPointModel +import com.casic.br.ktd.model.RouteModel +import com.casic.br.ktd.model.SensorDataModel import com.casic.br.ktd.netty.tcp.SocketManager import com.casic.br.ktd.netty.udp.UdpClient import com.casic.br.ktd.utils.FileType @@ -119,12 +122,11 @@ private lateinit var pointViewModel: PointViewModel private lateinit var fileViewModel: FileViewModel private lateinit var alarmViewModel: AlarmViewModel - private lateinit var taskParam: TaskParam private lateinit var alarmParam: AlarmParam + private var taskId = "" private var carId = "" private var deviceId = "" private var taskTitle = "" - private var beginDate = "" private var dataModel: SensorDataModel? = null //1:报警,0:正常 @@ -175,6 +177,12 @@ gasAlarmRule = SaveKeyValues.getValue(LocaleConstant.ALARM_RULE, 1000) as Int deviceId = SaveKeyValues.getValue(LocaleConstant.YT_DEVICE_ID, "") as String + taskViewModel.addTaskResult.observe(this) { + if (it.code == 200) { + taskId = it.data.toString() + } + } + fileViewModel.resultModel.observe(this) { if (it.code == 200) { if (alarmParam.alarmLongitude.isNotEmpty() && alarmParam.alarmLatitude.isNotEmpty()) { @@ -529,7 +537,10 @@ } override fun onConfirmClick() { - taskViewModel.addTask(taskParam) + val value = SaveKeyValues.getValue( + LocaleConstant.TASK_END_TIME, "" + ) as String + taskViewModel.updateTask(taskId, value) } }).build().show() } @@ -604,8 +615,10 @@ LocaleConstant.OPEN_SENSOR_COMMAND.size ) - //记录任务开始时间 - beginDate = System.currentTimeMillis().timestampToCompleteDate() + //初始化任务 + taskViewModel.addTask( + taskTitle, carId, System.currentTimeMillis().timestampToCompleteDate(), "1", "0" + ) } catch (e: IndexOutOfBoundsException) { e.printStackTrace() "设备未正常连接,无法开启预览".show(this) @@ -702,7 +715,7 @@ strJpeg.wPicQuality = 1 strJpeg.wPicSize = 2 - val imagePath = "/${createImageFileDir()}/${timeFormat.format(Date())}.jpg" + val imagePath = "/${createImageFileDir()}/${timeFormat.format(Date())}.png" hkSDK.NET_DVR_CaptureJPEGPicture(returnUserID, selectChannel, strJpeg, imagePath) if (MessageCodeHub.getErrorCode() == 0) { @@ -732,15 +745,9 @@ isLoginSuccess = false initSuccess = false //结束巡检,保存数据 - val taskParam = TaskParam( - taskTitle, - carId, - beginDate, - "1", - "0", - System.currentTimeMillis().timestampToCompleteDate() - ) - taskViewModel.addTask(taskParam) + val endTime = System.currentTimeMillis().timestampToCompleteDate() + SaveKeyValues.putValue(LocaleConstant.TASK_END_TIME, endTime) + taskViewModel.updateTask(taskId, endTime) } override fun onDestroy() { @@ -800,7 +807,8 @@ "0", "1", "", - dataModel!!.methane.toString() + dataModel!!.methane.toString(), + taskId ) captureImage(true) diff --git a/app/src/main/java/com/casic/br/ktd/view/MainActivity.kt b/app/src/main/java/com/casic/br/ktd/view/MainActivity.kt index 74ceb87..e5c1fc8 100644 --- a/app/src/main/java/com/casic/br/ktd/view/MainActivity.kt +++ b/app/src/main/java/com/casic/br/ktd/view/MainActivity.kt @@ -86,8 +86,6 @@ alarmViewModel.alarmRuleList.observe(this) { if (it.code == 200) { if (it.data.rows.isNotEmpty()) { - //TODO 报警规则需要取最新的 - val model = it.data.rows[0] SaveKeyValues.putValue(LocaleConstant.ALARM_RULE, model.high) SaveKeyValues.putValue(LocaleConstant.YT_DEVICE_ID, model.deviceId) diff --git a/app/src/main/java/com/casic/br/ktd/vm/TaskViewModel.kt b/app/src/main/java/com/casic/br/ktd/vm/TaskViewModel.kt index 51d97f2..768925b 100644 --- a/app/src/main/java/com/casic/br/ktd/vm/TaskViewModel.kt +++ b/app/src/main/java/com/casic/br/ktd/vm/TaskViewModel.kt @@ -4,8 +4,8 @@ import com.casic.br.ktd.base.BaseApplication import com.casic.br.ktd.extensions.separateResponseCode import com.casic.br.ktd.extensions.toErrorMessage +import com.casic.br.ktd.model.ActionResultModel import com.casic.br.ktd.model.TaskListModel -import com.casic.br.ktd.model.TaskParam import com.casic.br.ktd.retrofit.RetrofitServiceManager import com.google.gson.Gson import com.google.gson.reflect.TypeToken @@ -21,6 +21,7 @@ private val gson by lazy { Gson() } val taskList = MutableLiveData() + val addTaskResult = MutableLiveData() fun getTasksByPage( beginDate: String, endDate: String, taskName: String, taskCode: String, offset: Int @@ -43,9 +44,23 @@ loadState.value = LoadState.Fail }) - fun addTask(taskParam: TaskParam) = launch({ + fun addTask( + taskTitle: String, carId: String, beginDate: String, status: String, valid: String + ) = launch({ + val response = RetrofitServiceManager.addTask(taskTitle, carId, beginDate, status, valid) + val responseCode = response.separateResponseCode() + if (responseCode == 200) { + addTaskResult.value = gson.fromJson( + response, object : TypeToken() {}.type + ) + } + }, { + it.printStackTrace() + }) + + fun updateTask(taskId: String, endDate: String) = launch({ loadState.value = LoadState.Loading - val response = RetrofitServiceManager.addTask(taskParam) + val response = RetrofitServiceManager.updateTask(taskId, endDate) val responseCode = response.separateResponseCode() if (responseCode == 200) { loadState.value = LoadState.Success