diff --git a/app/src/main/java/com/casic/detector/extensions/Poi.kt b/app/src/main/java/com/casic/detector/extensions/Poi.kt index 35ee8d1..c4955e1 100644 --- a/app/src/main/java/com/casic/detector/extensions/Poi.kt +++ b/app/src/main/java/com/casic/detector/extensions/Poi.kt @@ -19,6 +19,15 @@ AmapNaviPage.getInstance().showRouteActivity(context, params, null) } +fun Poi.showRideRouteOnMap(context: Context) { + val params = AmapNaviParams( + null, null, this, + AmapNaviType.RIDE, + AmapPageType.ROUTE + ) + AmapNaviPage.getInstance().showRouteActivity(context, params, null) +} + fun Poi.showBusRouteOnMap(context: Context) { val params = AmapNaviParams( null, null, this, diff --git a/app/src/main/java/com/casic/detector/extensions/Poi.kt b/app/src/main/java/com/casic/detector/extensions/Poi.kt index 35ee8d1..c4955e1 100644 --- a/app/src/main/java/com/casic/detector/extensions/Poi.kt +++ b/app/src/main/java/com/casic/detector/extensions/Poi.kt @@ -19,6 +19,15 @@ AmapNaviPage.getInstance().showRouteActivity(context, params, null) } +fun Poi.showRideRouteOnMap(context: Context) { + val params = AmapNaviParams( + null, null, this, + AmapNaviType.RIDE, + AmapPageType.ROUTE + ) + AmapNaviPage.getInstance().showRouteActivity(context, params, null) +} + fun Poi.showBusRouteOnMap(context: Context) { val params = AmapNaviParams( null, null, this, diff --git a/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java b/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java index 13c5038..fb726e0 100644 --- a/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java +++ b/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java @@ -77,42 +77,42 @@ if (id != null) { stmt.bindLong(1, id); } - + String scanner = entity.getScanner(); if (scanner != null) { stmt.bindString(2, scanner); } - + String desc = entity.getDesc(); if (desc != null) { stmt.bindString(3, desc); } - + String taskId = entity.getTaskId(); if (taskId != null) { stmt.bindString(4, taskId); } - + String taskCode = entity.getTaskCode(); if (taskCode != null) { stmt.bindString(5, taskCode); } - + String markerId = entity.getMarkerId(); if (markerId != null) { stmt.bindString(6, markerId); } - + String markerRealId = entity.getMarkerRealId(); if (markerRealId != null) { stmt.bindString(7, markerRealId); } - + String lng = entity.getLng(); if (lng != null) { stmt.bindString(8, lng); } - + String lat = entity.getLat(); if (lat != null) { stmt.bindString(9, lat); @@ -132,42 +132,42 @@ if (id != null) { stmt.bindLong(1, id); } - + String scanner = entity.getScanner(); if (scanner != null) { stmt.bindString(2, scanner); } - + String desc = entity.getDesc(); if (desc != null) { stmt.bindString(3, desc); } - + String taskId = entity.getTaskId(); if (taskId != null) { stmt.bindString(4, taskId); } - + String taskCode = entity.getTaskCode(); if (taskCode != null) { stmt.bindString(5, taskCode); } - + String markerId = entity.getMarkerId(); if (markerId != null) { stmt.bindString(6, markerId); } - + String markerRealId = entity.getMarkerRealId(); if (markerRealId != null) { stmt.bindString(7, markerRealId); } - + String lng = entity.getLng(); if (lng != null) { stmt.bindString(8, lng); } - + String lat = entity.getLat(); if (lat != null) { stmt.bindString(9, lat); diff --git a/app/src/main/java/com/casic/detector/extensions/Poi.kt b/app/src/main/java/com/casic/detector/extensions/Poi.kt index 35ee8d1..c4955e1 100644 --- a/app/src/main/java/com/casic/detector/extensions/Poi.kt +++ b/app/src/main/java/com/casic/detector/extensions/Poi.kt @@ -19,6 +19,15 @@ AmapNaviPage.getInstance().showRouteActivity(context, params, null) } +fun Poi.showRideRouteOnMap(context: Context) { + val params = AmapNaviParams( + null, null, this, + AmapNaviType.RIDE, + AmapPageType.ROUTE + ) + AmapNaviPage.getInstance().showRouteActivity(context, params, null) +} + fun Poi.showBusRouteOnMap(context: Context) { val params = AmapNaviParams( null, null, this, diff --git a/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java b/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java index 13c5038..fb726e0 100644 --- a/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java +++ b/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java @@ -77,42 +77,42 @@ if (id != null) { stmt.bindLong(1, id); } - + String scanner = entity.getScanner(); if (scanner != null) { stmt.bindString(2, scanner); } - + String desc = entity.getDesc(); if (desc != null) { stmt.bindString(3, desc); } - + String taskId = entity.getTaskId(); if (taskId != null) { stmt.bindString(4, taskId); } - + String taskCode = entity.getTaskCode(); if (taskCode != null) { stmt.bindString(5, taskCode); } - + String markerId = entity.getMarkerId(); if (markerId != null) { stmt.bindString(6, markerId); } - + String markerRealId = entity.getMarkerRealId(); if (markerRealId != null) { stmt.bindString(7, markerRealId); } - + String lng = entity.getLng(); if (lng != null) { stmt.bindString(8, lng); } - + String lat = entity.getLat(); if (lat != null) { stmt.bindString(9, lat); @@ -132,42 +132,42 @@ if (id != null) { stmt.bindLong(1, id); } - + String scanner = entity.getScanner(); if (scanner != null) { stmt.bindString(2, scanner); } - + String desc = entity.getDesc(); if (desc != null) { stmt.bindString(3, desc); } - + String taskId = entity.getTaskId(); if (taskId != null) { stmt.bindString(4, taskId); } - + String taskCode = entity.getTaskCode(); if (taskCode != null) { stmt.bindString(5, taskCode); } - + String markerId = entity.getMarkerId(); if (markerId != null) { stmt.bindString(6, markerId); } - + String markerRealId = entity.getMarkerRealId(); if (markerRealId != null) { stmt.bindString(7, markerRealId); } - + String lng = entity.getLng(); if (lng != null) { stmt.bindString(8, lng); } - + String lat = entity.getLat(); if (lat != null) { stmt.bindString(9, lat); diff --git a/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt index c40dee1..bd2c821 100644 --- a/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt @@ -42,4 +42,10 @@ */ @GET("/ems/rs/task/get") suspend fun getTask(@Query("userName") userName: String): String + + /** + * 安装新标识器 + */ + @POST("/ems/marker/save-marker-photo.do") + suspend fun installLabel(@Body requestBody: RequestBody): String } \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/extensions/Poi.kt b/app/src/main/java/com/casic/detector/extensions/Poi.kt index 35ee8d1..c4955e1 100644 --- a/app/src/main/java/com/casic/detector/extensions/Poi.kt +++ b/app/src/main/java/com/casic/detector/extensions/Poi.kt @@ -19,6 +19,15 @@ AmapNaviPage.getInstance().showRouteActivity(context, params, null) } +fun Poi.showRideRouteOnMap(context: Context) { + val params = AmapNaviParams( + null, null, this, + AmapNaviType.RIDE, + AmapPageType.ROUTE + ) + AmapNaviPage.getInstance().showRouteActivity(context, params, null) +} + fun Poi.showBusRouteOnMap(context: Context) { val params = AmapNaviParams( null, null, this, diff --git a/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java b/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java index 13c5038..fb726e0 100644 --- a/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java +++ b/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java @@ -77,42 +77,42 @@ if (id != null) { stmt.bindLong(1, id); } - + String scanner = entity.getScanner(); if (scanner != null) { stmt.bindString(2, scanner); } - + String desc = entity.getDesc(); if (desc != null) { stmt.bindString(3, desc); } - + String taskId = entity.getTaskId(); if (taskId != null) { stmt.bindString(4, taskId); } - + String taskCode = entity.getTaskCode(); if (taskCode != null) { stmt.bindString(5, taskCode); } - + String markerId = entity.getMarkerId(); if (markerId != null) { stmt.bindString(6, markerId); } - + String markerRealId = entity.getMarkerRealId(); if (markerRealId != null) { stmt.bindString(7, markerRealId); } - + String lng = entity.getLng(); if (lng != null) { stmt.bindString(8, lng); } - + String lat = entity.getLat(); if (lat != null) { stmt.bindString(9, lat); @@ -132,42 +132,42 @@ if (id != null) { stmt.bindLong(1, id); } - + String scanner = entity.getScanner(); if (scanner != null) { stmt.bindString(2, scanner); } - + String desc = entity.getDesc(); if (desc != null) { stmt.bindString(3, desc); } - + String taskId = entity.getTaskId(); if (taskId != null) { stmt.bindString(4, taskId); } - + String taskCode = entity.getTaskCode(); if (taskCode != null) { stmt.bindString(5, taskCode); } - + String markerId = entity.getMarkerId(); if (markerId != null) { stmt.bindString(6, markerId); } - + String markerRealId = entity.getMarkerRealId(); if (markerRealId != null) { stmt.bindString(7, markerRealId); } - + String lng = entity.getLng(); if (lng != null) { stmt.bindString(8, lng); } - + String lat = entity.getLat(); if (lat != null) { stmt.bindString(9, lat); diff --git a/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt index c40dee1..bd2c821 100644 --- a/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt @@ -42,4 +42,10 @@ */ @GET("/ems/rs/task/get") suspend fun getTask(@Query("userName") userName: String): String + + /** + * 安装新标识器 + */ + @POST("/ems/marker/save-marker-photo.do") + suspend fun installLabel(@Body requestBody: RequestBody): String } \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt index d47e14e..9972efd 100644 --- a/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt @@ -58,4 +58,68 @@ suspend fun getTask(userName: String): String { return api.getTask(userName) } + + /** + * 安装新标识器 + */ + suspend fun installLabel( + companyId: String, + recordType: String, + markerObjectType: String, + pipeMaterial: String, + pipeDiameter: String, + depth: String, + belowType: String, + belowMaterial: String, + belowDiameter: String, + belowDepth: String, + layStyle: String, + area: String, + line: String, + road: String, + constructTime: String, + ownerComp: String, + markerObjectId: String, + markerId: String, + markerType: String, + markerDepth: String, + creator: String, + createTime: String, + longitude: String, + latitude: String, + colorType: String, + memo: String + ): String { + val param = JsonObject() + param.addProperty("companyId", companyId) + param.addProperty("recordType", recordType) + param.addProperty("markerObjectType", markerObjectType) + param.addProperty("pipeMaterial", pipeMaterial) + param.addProperty("pipeDiameter", pipeDiameter) + param.addProperty("depth", depth) + param.addProperty("belowType", belowType) + param.addProperty("belowMaterial", belowMaterial) + param.addProperty("belowDiameter", belowDiameter) + param.addProperty("belowDepth", belowDepth) + param.addProperty("layStyle", layStyle) + param.addProperty("area", area) + param.addProperty("line", line) + param.addProperty("road", road) + param.addProperty("constructTime", constructTime) + param.addProperty("ownerComp", ownerComp) + param.addProperty("markerObjectId", markerObjectId) + param.addProperty("markerId", markerId) + param.addProperty("markerType", markerType) + param.addProperty("markerDepth", markerDepth) + param.addProperty("creator", creator) + param.addProperty("createTime", createTime) + param.addProperty("longitude", longitude) + param.addProperty("latitude", latitude) + param.addProperty("colorType", colorType) + param.addProperty("memo", memo) + val requestBody = param.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.installLabel(requestBody) + } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/extensions/Poi.kt b/app/src/main/java/com/casic/detector/extensions/Poi.kt index 35ee8d1..c4955e1 100644 --- a/app/src/main/java/com/casic/detector/extensions/Poi.kt +++ b/app/src/main/java/com/casic/detector/extensions/Poi.kt @@ -19,6 +19,15 @@ AmapNaviPage.getInstance().showRouteActivity(context, params, null) } +fun Poi.showRideRouteOnMap(context: Context) { + val params = AmapNaviParams( + null, null, this, + AmapNaviType.RIDE, + AmapPageType.ROUTE + ) + AmapNaviPage.getInstance().showRouteActivity(context, params, null) +} + fun Poi.showBusRouteOnMap(context: Context) { val params = AmapNaviParams( null, null, this, diff --git a/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java b/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java index 13c5038..fb726e0 100644 --- a/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java +++ b/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java @@ -77,42 +77,42 @@ if (id != null) { stmt.bindLong(1, id); } - + String scanner = entity.getScanner(); if (scanner != null) { stmt.bindString(2, scanner); } - + String desc = entity.getDesc(); if (desc != null) { stmt.bindString(3, desc); } - + String taskId = entity.getTaskId(); if (taskId != null) { stmt.bindString(4, taskId); } - + String taskCode = entity.getTaskCode(); if (taskCode != null) { stmt.bindString(5, taskCode); } - + String markerId = entity.getMarkerId(); if (markerId != null) { stmt.bindString(6, markerId); } - + String markerRealId = entity.getMarkerRealId(); if (markerRealId != null) { stmt.bindString(7, markerRealId); } - + String lng = entity.getLng(); if (lng != null) { stmt.bindString(8, lng); } - + String lat = entity.getLat(); if (lat != null) { stmt.bindString(9, lat); @@ -132,42 +132,42 @@ if (id != null) { stmt.bindLong(1, id); } - + String scanner = entity.getScanner(); if (scanner != null) { stmt.bindString(2, scanner); } - + String desc = entity.getDesc(); if (desc != null) { stmt.bindString(3, desc); } - + String taskId = entity.getTaskId(); if (taskId != null) { stmt.bindString(4, taskId); } - + String taskCode = entity.getTaskCode(); if (taskCode != null) { stmt.bindString(5, taskCode); } - + String markerId = entity.getMarkerId(); if (markerId != null) { stmt.bindString(6, markerId); } - + String markerRealId = entity.getMarkerRealId(); if (markerRealId != null) { stmt.bindString(7, markerRealId); } - + String lng = entity.getLng(); if (lng != null) { stmt.bindString(8, lng); } - + String lat = entity.getLat(); if (lat != null) { stmt.bindString(9, lat); diff --git a/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt index c40dee1..bd2c821 100644 --- a/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt @@ -42,4 +42,10 @@ */ @GET("/ems/rs/task/get") suspend fun getTask(@Query("userName") userName: String): String + + /** + * 安装新标识器 + */ + @POST("/ems/marker/save-marker-photo.do") + suspend fun installLabel(@Body requestBody: RequestBody): String } \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt index d47e14e..9972efd 100644 --- a/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt @@ -58,4 +58,68 @@ suspend fun getTask(userName: String): String { return api.getTask(userName) } + + /** + * 安装新标识器 + */ + suspend fun installLabel( + companyId: String, + recordType: String, + markerObjectType: String, + pipeMaterial: String, + pipeDiameter: String, + depth: String, + belowType: String, + belowMaterial: String, + belowDiameter: String, + belowDepth: String, + layStyle: String, + area: String, + line: String, + road: String, + constructTime: String, + ownerComp: String, + markerObjectId: String, + markerId: String, + markerType: String, + markerDepth: String, + creator: String, + createTime: String, + longitude: String, + latitude: String, + colorType: String, + memo: String + ): String { + val param = JsonObject() + param.addProperty("companyId", companyId) + param.addProperty("recordType", recordType) + param.addProperty("markerObjectType", markerObjectType) + param.addProperty("pipeMaterial", pipeMaterial) + param.addProperty("pipeDiameter", pipeDiameter) + param.addProperty("depth", depth) + param.addProperty("belowType", belowType) + param.addProperty("belowMaterial", belowMaterial) + param.addProperty("belowDiameter", belowDiameter) + param.addProperty("belowDepth", belowDepth) + param.addProperty("layStyle", layStyle) + param.addProperty("area", area) + param.addProperty("line", line) + param.addProperty("road", road) + param.addProperty("constructTime", constructTime) + param.addProperty("ownerComp", ownerComp) + param.addProperty("markerObjectId", markerObjectId) + param.addProperty("markerId", markerId) + param.addProperty("markerType", markerType) + param.addProperty("markerDepth", markerDepth) + param.addProperty("creator", creator) + param.addProperty("createTime", createTime) + param.addProperty("longitude", longitude) + param.addProperty("latitude", latitude) + param.addProperty("colorType", colorType) + param.addProperty("memo", memo) + val requestBody = param.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.installLabel(requestBody) + } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt b/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt index 9ea2905..271e9a1 100644 --- a/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt +++ b/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt @@ -3,6 +3,7 @@ import com.casic.detector.base.BaseApplication import com.casic.detector.bean.LabelBean import com.casic.detector.bean.TaskBean +import com.casic.detector.greendao.LabelBeanDao import com.casic.detector.greendao.TaskBeanDao class DataBaseManager private constructor() { @@ -28,6 +29,12 @@ return labelBeanDao.loadAll() } + fun queryLabelById(identifierId: String): List { + return labelBeanDao.queryBuilder() + .where(LabelBeanDao.Properties.IdentifierId.eq(identifierId)) + .list() + } + fun countTaskById(id: String): Int { val count = taskBeanDao.queryBuilder() .where(TaskBeanDao.Properties.Id.eq(id)) diff --git a/app/src/main/java/com/casic/detector/extensions/Poi.kt b/app/src/main/java/com/casic/detector/extensions/Poi.kt index 35ee8d1..c4955e1 100644 --- a/app/src/main/java/com/casic/detector/extensions/Poi.kt +++ b/app/src/main/java/com/casic/detector/extensions/Poi.kt @@ -19,6 +19,15 @@ AmapNaviPage.getInstance().showRouteActivity(context, params, null) } +fun Poi.showRideRouteOnMap(context: Context) { + val params = AmapNaviParams( + null, null, this, + AmapNaviType.RIDE, + AmapPageType.ROUTE + ) + AmapNaviPage.getInstance().showRouteActivity(context, params, null) +} + fun Poi.showBusRouteOnMap(context: Context) { val params = AmapNaviParams( null, null, this, diff --git a/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java b/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java index 13c5038..fb726e0 100644 --- a/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java +++ b/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java @@ -77,42 +77,42 @@ if (id != null) { stmt.bindLong(1, id); } - + String scanner = entity.getScanner(); if (scanner != null) { stmt.bindString(2, scanner); } - + String desc = entity.getDesc(); if (desc != null) { stmt.bindString(3, desc); } - + String taskId = entity.getTaskId(); if (taskId != null) { stmt.bindString(4, taskId); } - + String taskCode = entity.getTaskCode(); if (taskCode != null) { stmt.bindString(5, taskCode); } - + String markerId = entity.getMarkerId(); if (markerId != null) { stmt.bindString(6, markerId); } - + String markerRealId = entity.getMarkerRealId(); if (markerRealId != null) { stmt.bindString(7, markerRealId); } - + String lng = entity.getLng(); if (lng != null) { stmt.bindString(8, lng); } - + String lat = entity.getLat(); if (lat != null) { stmt.bindString(9, lat); @@ -132,42 +132,42 @@ if (id != null) { stmt.bindLong(1, id); } - + String scanner = entity.getScanner(); if (scanner != null) { stmt.bindString(2, scanner); } - + String desc = entity.getDesc(); if (desc != null) { stmt.bindString(3, desc); } - + String taskId = entity.getTaskId(); if (taskId != null) { stmt.bindString(4, taskId); } - + String taskCode = entity.getTaskCode(); if (taskCode != null) { stmt.bindString(5, taskCode); } - + String markerId = entity.getMarkerId(); if (markerId != null) { stmt.bindString(6, markerId); } - + String markerRealId = entity.getMarkerRealId(); if (markerRealId != null) { stmt.bindString(7, markerRealId); } - + String lng = entity.getLng(); if (lng != null) { stmt.bindString(8, lng); } - + String lat = entity.getLat(); if (lat != null) { stmt.bindString(9, lat); diff --git a/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt index c40dee1..bd2c821 100644 --- a/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt @@ -42,4 +42,10 @@ */ @GET("/ems/rs/task/get") suspend fun getTask(@Query("userName") userName: String): String + + /** + * 安装新标识器 + */ + @POST("/ems/marker/save-marker-photo.do") + suspend fun installLabel(@Body requestBody: RequestBody): String } \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt index d47e14e..9972efd 100644 --- a/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt @@ -58,4 +58,68 @@ suspend fun getTask(userName: String): String { return api.getTask(userName) } + + /** + * 安装新标识器 + */ + suspend fun installLabel( + companyId: String, + recordType: String, + markerObjectType: String, + pipeMaterial: String, + pipeDiameter: String, + depth: String, + belowType: String, + belowMaterial: String, + belowDiameter: String, + belowDepth: String, + layStyle: String, + area: String, + line: String, + road: String, + constructTime: String, + ownerComp: String, + markerObjectId: String, + markerId: String, + markerType: String, + markerDepth: String, + creator: String, + createTime: String, + longitude: String, + latitude: String, + colorType: String, + memo: String + ): String { + val param = JsonObject() + param.addProperty("companyId", companyId) + param.addProperty("recordType", recordType) + param.addProperty("markerObjectType", markerObjectType) + param.addProperty("pipeMaterial", pipeMaterial) + param.addProperty("pipeDiameter", pipeDiameter) + param.addProperty("depth", depth) + param.addProperty("belowType", belowType) + param.addProperty("belowMaterial", belowMaterial) + param.addProperty("belowDiameter", belowDiameter) + param.addProperty("belowDepth", belowDepth) + param.addProperty("layStyle", layStyle) + param.addProperty("area", area) + param.addProperty("line", line) + param.addProperty("road", road) + param.addProperty("constructTime", constructTime) + param.addProperty("ownerComp", ownerComp) + param.addProperty("markerObjectId", markerObjectId) + param.addProperty("markerId", markerId) + param.addProperty("markerType", markerType) + param.addProperty("markerDepth", markerDepth) + param.addProperty("creator", creator) + param.addProperty("createTime", createTime) + param.addProperty("longitude", longitude) + param.addProperty("latitude", latitude) + param.addProperty("colorType", colorType) + param.addProperty("memo", memo) + val requestBody = param.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.installLabel(requestBody) + } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt b/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt index 9ea2905..271e9a1 100644 --- a/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt +++ b/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt @@ -3,6 +3,7 @@ import com.casic.detector.base.BaseApplication import com.casic.detector.bean.LabelBean import com.casic.detector.bean.TaskBean +import com.casic.detector.greendao.LabelBeanDao import com.casic.detector.greendao.TaskBeanDao class DataBaseManager private constructor() { @@ -28,6 +29,12 @@ return labelBeanDao.loadAll() } + fun queryLabelById(identifierId: String): List { + return labelBeanDao.queryBuilder() + .where(LabelBeanDao.Properties.IdentifierId.eq(identifierId)) + .list() + } + fun countTaskById(id: String): Int { val count = taskBeanDao.queryBuilder() .where(TaskBeanDao.Properties.Id.eq(id)) diff --git a/app/src/main/java/com/casic/detector/utils/LocaleConstant.kt b/app/src/main/java/com/casic/detector/utils/LocaleConstant.kt index 522a326..b5aad2a 100644 --- a/app/src/main/java/com/casic/detector/utils/LocaleConstant.kt +++ b/app/src/main/java/com/casic/detector/utils/LocaleConstant.kt @@ -27,4 +27,5 @@ const val APP_AUTHORITY = "com.casic.detector.fileprovider" val POPUP_TITLES = arrayOf("更新数据", "下载工单", "关于软件", "事件上报", "标识器补全") + var POINT_TYPE_ARRAY = arrayOf("", "管线", "管线附属物", "管线特征管点", "交叉穿越点") } \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/extensions/Poi.kt b/app/src/main/java/com/casic/detector/extensions/Poi.kt index 35ee8d1..c4955e1 100644 --- a/app/src/main/java/com/casic/detector/extensions/Poi.kt +++ b/app/src/main/java/com/casic/detector/extensions/Poi.kt @@ -19,6 +19,15 @@ AmapNaviPage.getInstance().showRouteActivity(context, params, null) } +fun Poi.showRideRouteOnMap(context: Context) { + val params = AmapNaviParams( + null, null, this, + AmapNaviType.RIDE, + AmapPageType.ROUTE + ) + AmapNaviPage.getInstance().showRouteActivity(context, params, null) +} + fun Poi.showBusRouteOnMap(context: Context) { val params = AmapNaviParams( null, null, this, diff --git a/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java b/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java index 13c5038..fb726e0 100644 --- a/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java +++ b/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java @@ -77,42 +77,42 @@ if (id != null) { stmt.bindLong(1, id); } - + String scanner = entity.getScanner(); if (scanner != null) { stmt.bindString(2, scanner); } - + String desc = entity.getDesc(); if (desc != null) { stmt.bindString(3, desc); } - + String taskId = entity.getTaskId(); if (taskId != null) { stmt.bindString(4, taskId); } - + String taskCode = entity.getTaskCode(); if (taskCode != null) { stmt.bindString(5, taskCode); } - + String markerId = entity.getMarkerId(); if (markerId != null) { stmt.bindString(6, markerId); } - + String markerRealId = entity.getMarkerRealId(); if (markerRealId != null) { stmt.bindString(7, markerRealId); } - + String lng = entity.getLng(); if (lng != null) { stmt.bindString(8, lng); } - + String lat = entity.getLat(); if (lat != null) { stmt.bindString(9, lat); @@ -132,42 +132,42 @@ if (id != null) { stmt.bindLong(1, id); } - + String scanner = entity.getScanner(); if (scanner != null) { stmt.bindString(2, scanner); } - + String desc = entity.getDesc(); if (desc != null) { stmt.bindString(3, desc); } - + String taskId = entity.getTaskId(); if (taskId != null) { stmt.bindString(4, taskId); } - + String taskCode = entity.getTaskCode(); if (taskCode != null) { stmt.bindString(5, taskCode); } - + String markerId = entity.getMarkerId(); if (markerId != null) { stmt.bindString(6, markerId); } - + String markerRealId = entity.getMarkerRealId(); if (markerRealId != null) { stmt.bindString(7, markerRealId); } - + String lng = entity.getLng(); if (lng != null) { stmt.bindString(8, lng); } - + String lat = entity.getLat(); if (lat != null) { stmt.bindString(9, lat); diff --git a/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt index c40dee1..bd2c821 100644 --- a/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt @@ -42,4 +42,10 @@ */ @GET("/ems/rs/task/get") suspend fun getTask(@Query("userName") userName: String): String + + /** + * 安装新标识器 + */ + @POST("/ems/marker/save-marker-photo.do") + suspend fun installLabel(@Body requestBody: RequestBody): String } \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt index d47e14e..9972efd 100644 --- a/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt @@ -58,4 +58,68 @@ suspend fun getTask(userName: String): String { return api.getTask(userName) } + + /** + * 安装新标识器 + */ + suspend fun installLabel( + companyId: String, + recordType: String, + markerObjectType: String, + pipeMaterial: String, + pipeDiameter: String, + depth: String, + belowType: String, + belowMaterial: String, + belowDiameter: String, + belowDepth: String, + layStyle: String, + area: String, + line: String, + road: String, + constructTime: String, + ownerComp: String, + markerObjectId: String, + markerId: String, + markerType: String, + markerDepth: String, + creator: String, + createTime: String, + longitude: String, + latitude: String, + colorType: String, + memo: String + ): String { + val param = JsonObject() + param.addProperty("companyId", companyId) + param.addProperty("recordType", recordType) + param.addProperty("markerObjectType", markerObjectType) + param.addProperty("pipeMaterial", pipeMaterial) + param.addProperty("pipeDiameter", pipeDiameter) + param.addProperty("depth", depth) + param.addProperty("belowType", belowType) + param.addProperty("belowMaterial", belowMaterial) + param.addProperty("belowDiameter", belowDiameter) + param.addProperty("belowDepth", belowDepth) + param.addProperty("layStyle", layStyle) + param.addProperty("area", area) + param.addProperty("line", line) + param.addProperty("road", road) + param.addProperty("constructTime", constructTime) + param.addProperty("ownerComp", ownerComp) + param.addProperty("markerObjectId", markerObjectId) + param.addProperty("markerId", markerId) + param.addProperty("markerType", markerType) + param.addProperty("markerDepth", markerDepth) + param.addProperty("creator", creator) + param.addProperty("createTime", createTime) + param.addProperty("longitude", longitude) + param.addProperty("latitude", latitude) + param.addProperty("colorType", colorType) + param.addProperty("memo", memo) + val requestBody = param.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.installLabel(requestBody) + } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt b/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt index 9ea2905..271e9a1 100644 --- a/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt +++ b/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt @@ -3,6 +3,7 @@ import com.casic.detector.base.BaseApplication import com.casic.detector.bean.LabelBean import com.casic.detector.bean.TaskBean +import com.casic.detector.greendao.LabelBeanDao import com.casic.detector.greendao.TaskBeanDao class DataBaseManager private constructor() { @@ -28,6 +29,12 @@ return labelBeanDao.loadAll() } + fun queryLabelById(identifierId: String): List { + return labelBeanDao.queryBuilder() + .where(LabelBeanDao.Properties.IdentifierId.eq(identifierId)) + .list() + } + fun countTaskById(id: String): Int { val count = taskBeanDao.queryBuilder() .where(TaskBeanDao.Properties.Id.eq(id)) diff --git a/app/src/main/java/com/casic/detector/utils/LocaleConstant.kt b/app/src/main/java/com/casic/detector/utils/LocaleConstant.kt index 522a326..b5aad2a 100644 --- a/app/src/main/java/com/casic/detector/utils/LocaleConstant.kt +++ b/app/src/main/java/com/casic/detector/utils/LocaleConstant.kt @@ -27,4 +27,5 @@ const val APP_AUTHORITY = "com.casic.detector.fileprovider" val POPUP_TITLES = arrayOf("更新数据", "下载工单", "关于软件", "事件上报", "标识器补全") + var POINT_TYPE_ARRAY = arrayOf("", "管线", "管线附属物", "管线特征管点", "交叉穿越点") } \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/utils/RouteOnMap.kt b/app/src/main/java/com/casic/detector/utils/RouteOnMap.kt index 027b992..200121e 100644 --- a/app/src/main/java/com/casic/detector/utils/RouteOnMap.kt +++ b/app/src/main/java/com/casic/detector/utils/RouteOnMap.kt @@ -5,6 +5,7 @@ import com.amap.api.maps.model.LatLng import com.amap.api.maps.model.Poi import com.casic.detector.extensions.showBusRouteOnMap +import com.casic.detector.extensions.showRideRouteOnMap import com.casic.detector.extensions.showRouteOnMap import com.pengxh.kt.lite.widget.dialog.BottomActionSheet @@ -13,13 +14,14 @@ BottomActionSheet.Builder() .setContext(context) .setItemTextColor(Color.BLUE) - .setActionItemTitle(arrayListOf("步行导航", "驾驶模式")) + .setActionItemTitle(arrayListOf("步行导航", "骑行导航", "驾驶模式")) .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { override fun onActionItemClick(position: Int) { when (position) { 0 -> Poi(s, latlng, "").showRouteOnMap(context) - 1 -> Poi(s, latlng, "").showBusRouteOnMap(context) + 1 -> Poi(s, latlng, "").showRideRouteOnMap(context) + 2 -> Poi(s, latlng, "").showBusRouteOnMap(context) } } }).build().show() diff --git a/app/src/main/java/com/casic/detector/extensions/Poi.kt b/app/src/main/java/com/casic/detector/extensions/Poi.kt index 35ee8d1..c4955e1 100644 --- a/app/src/main/java/com/casic/detector/extensions/Poi.kt +++ b/app/src/main/java/com/casic/detector/extensions/Poi.kt @@ -19,6 +19,15 @@ AmapNaviPage.getInstance().showRouteActivity(context, params, null) } +fun Poi.showRideRouteOnMap(context: Context) { + val params = AmapNaviParams( + null, null, this, + AmapNaviType.RIDE, + AmapPageType.ROUTE + ) + AmapNaviPage.getInstance().showRouteActivity(context, params, null) +} + fun Poi.showBusRouteOnMap(context: Context) { val params = AmapNaviParams( null, null, this, diff --git a/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java b/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java index 13c5038..fb726e0 100644 --- a/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java +++ b/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java @@ -77,42 +77,42 @@ if (id != null) { stmt.bindLong(1, id); } - + String scanner = entity.getScanner(); if (scanner != null) { stmt.bindString(2, scanner); } - + String desc = entity.getDesc(); if (desc != null) { stmt.bindString(3, desc); } - + String taskId = entity.getTaskId(); if (taskId != null) { stmt.bindString(4, taskId); } - + String taskCode = entity.getTaskCode(); if (taskCode != null) { stmt.bindString(5, taskCode); } - + String markerId = entity.getMarkerId(); if (markerId != null) { stmt.bindString(6, markerId); } - + String markerRealId = entity.getMarkerRealId(); if (markerRealId != null) { stmt.bindString(7, markerRealId); } - + String lng = entity.getLng(); if (lng != null) { stmt.bindString(8, lng); } - + String lat = entity.getLat(); if (lat != null) { stmt.bindString(9, lat); @@ -132,42 +132,42 @@ if (id != null) { stmt.bindLong(1, id); } - + String scanner = entity.getScanner(); if (scanner != null) { stmt.bindString(2, scanner); } - + String desc = entity.getDesc(); if (desc != null) { stmt.bindString(3, desc); } - + String taskId = entity.getTaskId(); if (taskId != null) { stmt.bindString(4, taskId); } - + String taskCode = entity.getTaskCode(); if (taskCode != null) { stmt.bindString(5, taskCode); } - + String markerId = entity.getMarkerId(); if (markerId != null) { stmt.bindString(6, markerId); } - + String markerRealId = entity.getMarkerRealId(); if (markerRealId != null) { stmt.bindString(7, markerRealId); } - + String lng = entity.getLng(); if (lng != null) { stmt.bindString(8, lng); } - + String lat = entity.getLat(); if (lat != null) { stmt.bindString(9, lat); diff --git a/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt index c40dee1..bd2c821 100644 --- a/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt @@ -42,4 +42,10 @@ */ @GET("/ems/rs/task/get") suspend fun getTask(@Query("userName") userName: String): String + + /** + * 安装新标识器 + */ + @POST("/ems/marker/save-marker-photo.do") + suspend fun installLabel(@Body requestBody: RequestBody): String } \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt index d47e14e..9972efd 100644 --- a/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt @@ -58,4 +58,68 @@ suspend fun getTask(userName: String): String { return api.getTask(userName) } + + /** + * 安装新标识器 + */ + suspend fun installLabel( + companyId: String, + recordType: String, + markerObjectType: String, + pipeMaterial: String, + pipeDiameter: String, + depth: String, + belowType: String, + belowMaterial: String, + belowDiameter: String, + belowDepth: String, + layStyle: String, + area: String, + line: String, + road: String, + constructTime: String, + ownerComp: String, + markerObjectId: String, + markerId: String, + markerType: String, + markerDepth: String, + creator: String, + createTime: String, + longitude: String, + latitude: String, + colorType: String, + memo: String + ): String { + val param = JsonObject() + param.addProperty("companyId", companyId) + param.addProperty("recordType", recordType) + param.addProperty("markerObjectType", markerObjectType) + param.addProperty("pipeMaterial", pipeMaterial) + param.addProperty("pipeDiameter", pipeDiameter) + param.addProperty("depth", depth) + param.addProperty("belowType", belowType) + param.addProperty("belowMaterial", belowMaterial) + param.addProperty("belowDiameter", belowDiameter) + param.addProperty("belowDepth", belowDepth) + param.addProperty("layStyle", layStyle) + param.addProperty("area", area) + param.addProperty("line", line) + param.addProperty("road", road) + param.addProperty("constructTime", constructTime) + param.addProperty("ownerComp", ownerComp) + param.addProperty("markerObjectId", markerObjectId) + param.addProperty("markerId", markerId) + param.addProperty("markerType", markerType) + param.addProperty("markerDepth", markerDepth) + param.addProperty("creator", creator) + param.addProperty("createTime", createTime) + param.addProperty("longitude", longitude) + param.addProperty("latitude", latitude) + param.addProperty("colorType", colorType) + param.addProperty("memo", memo) + val requestBody = param.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.installLabel(requestBody) + } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt b/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt index 9ea2905..271e9a1 100644 --- a/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt +++ b/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt @@ -3,6 +3,7 @@ import com.casic.detector.base.BaseApplication import com.casic.detector.bean.LabelBean import com.casic.detector.bean.TaskBean +import com.casic.detector.greendao.LabelBeanDao import com.casic.detector.greendao.TaskBeanDao class DataBaseManager private constructor() { @@ -28,6 +29,12 @@ return labelBeanDao.loadAll() } + fun queryLabelById(identifierId: String): List { + return labelBeanDao.queryBuilder() + .where(LabelBeanDao.Properties.IdentifierId.eq(identifierId)) + .list() + } + fun countTaskById(id: String): Int { val count = taskBeanDao.queryBuilder() .where(TaskBeanDao.Properties.Id.eq(id)) diff --git a/app/src/main/java/com/casic/detector/utils/LocaleConstant.kt b/app/src/main/java/com/casic/detector/utils/LocaleConstant.kt index 522a326..b5aad2a 100644 --- a/app/src/main/java/com/casic/detector/utils/LocaleConstant.kt +++ b/app/src/main/java/com/casic/detector/utils/LocaleConstant.kt @@ -27,4 +27,5 @@ const val APP_AUTHORITY = "com.casic.detector.fileprovider" val POPUP_TITLES = arrayOf("更新数据", "下载工单", "关于软件", "事件上报", "标识器补全") + var POINT_TYPE_ARRAY = arrayOf("", "管线", "管线附属物", "管线特征管点", "交叉穿越点") } \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/utils/RouteOnMap.kt b/app/src/main/java/com/casic/detector/utils/RouteOnMap.kt index 027b992..200121e 100644 --- a/app/src/main/java/com/casic/detector/utils/RouteOnMap.kt +++ b/app/src/main/java/com/casic/detector/utils/RouteOnMap.kt @@ -5,6 +5,7 @@ import com.amap.api.maps.model.LatLng import com.amap.api.maps.model.Poi import com.casic.detector.extensions.showBusRouteOnMap +import com.casic.detector.extensions.showRideRouteOnMap import com.casic.detector.extensions.showRouteOnMap import com.pengxh.kt.lite.widget.dialog.BottomActionSheet @@ -13,13 +14,14 @@ BottomActionSheet.Builder() .setContext(context) .setItemTextColor(Color.BLUE) - .setActionItemTitle(arrayListOf("步行导航", "驾驶模式")) + .setActionItemTitle(arrayListOf("步行导航", "骑行导航", "驾驶模式")) .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { override fun onActionItemClick(position: Int) { when (position) { 0 -> Poi(s, latlng, "").showRouteOnMap(context) - 1 -> Poi(s, latlng, "").showBusRouteOnMap(context) + 1 -> Poi(s, latlng, "").showRideRouteOnMap(context) + 2 -> Poi(s, latlng, "").showBusRouteOnMap(context) } } }).build().show() diff --git a/app/src/main/java/com/casic/detector/view/MainActivity.kt b/app/src/main/java/com/casic/detector/view/MainActivity.kt index ba16ca8..116cf7a 100644 --- a/app/src/main/java/com/casic/detector/view/MainActivity.kt +++ b/app/src/main/java/com/casic/detector/view/MainActivity.kt @@ -18,7 +18,6 @@ import com.amap.api.location.AMapLocation import com.amap.api.maps.AMap import com.amap.api.maps.AMapOptions -import com.amap.api.maps.CameraUpdateFactory import com.amap.api.maps.model.LatLng import com.amap.api.maps.model.LatLngBounds import com.amap.api.maps.model.MyLocationStyle @@ -280,8 +279,10 @@ builder.include(clusterItem.position) item = clusterItem as RegionItem } - val latLngBounds = builder.build() - aMap.animateCamera(CameraUpdateFactory.newLatLngBounds(latLngBounds, 0)) + //TODO 暂时去掉 + //点击Marker移到Marker视图 +// val latLngBounds = builder.build() +// aMap.animateCamera(CameraUpdateFactory.newLatLngBounds(latLngBounds, 0)) AlertControlDialog.Builder() .setContext(this) @@ -327,13 +328,14 @@ 0 -> updateTaskData() 1 -> downloadTask() 2 -> versionViewModel.getApplicationVersion() - 3 -> {} - 4 -> {} + 3 -> uploadEvent() + 4 -> uploadLabel() } } }) } + //更新数据 private fun updateTaskData() { AlertControlDialog.Builder() .setContext(this) @@ -369,6 +371,7 @@ }).build().show() } + //下载工单 private fun downloadTask() { if (isNetworkConnected()) { val userName = SaveKeyValues.getValue(LocaleConstant.USER_NAME, "") @@ -386,6 +389,57 @@ } } + //事件上报 + private fun uploadEvent() { +// if(){ +// +// }else{ +// +// } + } + + //标识器补全 + private fun uploadLabel() { + val companyId = SaveKeyValues.getValue(LocaleConstant.USER_COMPANY_ID, "") as String + val labelBeans = DataBaseManager.get.queryLabelById("0") + if (labelBeans.isNotEmpty()) { + LoadingDialogHub.show(this, "标识器补全中,请稍后...") + labelBeans.forEach { labelBean -> + taskViewModel.installLabel( + companyId, + labelBean.objectType, + labelBean.pipelineType, + labelBean.pipelineMaterial, + labelBean.pipelineDiameter, + labelBean.buryDeep, + labelBean.lowerType, + labelBean.lowerMaterial, + labelBean.lowerDiameter, + labelBean.lowerDeep, + labelBean.buryMethod, + labelBean.area, + labelBean.line, + labelBean.road, + labelBean.constructTime, + labelBean.owner, + labelBean.objectId, + labelBean.identifierId, + labelBean.identifierType, + labelBean.identifierDeep, + labelBean.person, + labelBean.installTime, + labelBean.lng, + labelBean.lat, + labelBean.color, + labelBean.remark + ) + } + LoadingDialogHub.dismiss() + } else { + "没有需要补传的标识器!".show(this) + } + } + private fun observeRequestState() { versionViewModel.loadState.observe(this) { when (it) { diff --git a/app/src/main/java/com/casic/detector/extensions/Poi.kt b/app/src/main/java/com/casic/detector/extensions/Poi.kt index 35ee8d1..c4955e1 100644 --- a/app/src/main/java/com/casic/detector/extensions/Poi.kt +++ b/app/src/main/java/com/casic/detector/extensions/Poi.kt @@ -19,6 +19,15 @@ AmapNaviPage.getInstance().showRouteActivity(context, params, null) } +fun Poi.showRideRouteOnMap(context: Context) { + val params = AmapNaviParams( + null, null, this, + AmapNaviType.RIDE, + AmapPageType.ROUTE + ) + AmapNaviPage.getInstance().showRouteActivity(context, params, null) +} + fun Poi.showBusRouteOnMap(context: Context) { val params = AmapNaviParams( null, null, this, diff --git a/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java b/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java index 13c5038..fb726e0 100644 --- a/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java +++ b/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java @@ -77,42 +77,42 @@ if (id != null) { stmt.bindLong(1, id); } - + String scanner = entity.getScanner(); if (scanner != null) { stmt.bindString(2, scanner); } - + String desc = entity.getDesc(); if (desc != null) { stmt.bindString(3, desc); } - + String taskId = entity.getTaskId(); if (taskId != null) { stmt.bindString(4, taskId); } - + String taskCode = entity.getTaskCode(); if (taskCode != null) { stmt.bindString(5, taskCode); } - + String markerId = entity.getMarkerId(); if (markerId != null) { stmt.bindString(6, markerId); } - + String markerRealId = entity.getMarkerRealId(); if (markerRealId != null) { stmt.bindString(7, markerRealId); } - + String lng = entity.getLng(); if (lng != null) { stmt.bindString(8, lng); } - + String lat = entity.getLat(); if (lat != null) { stmt.bindString(9, lat); @@ -132,42 +132,42 @@ if (id != null) { stmt.bindLong(1, id); } - + String scanner = entity.getScanner(); if (scanner != null) { stmt.bindString(2, scanner); } - + String desc = entity.getDesc(); if (desc != null) { stmt.bindString(3, desc); } - + String taskId = entity.getTaskId(); if (taskId != null) { stmt.bindString(4, taskId); } - + String taskCode = entity.getTaskCode(); if (taskCode != null) { stmt.bindString(5, taskCode); } - + String markerId = entity.getMarkerId(); if (markerId != null) { stmt.bindString(6, markerId); } - + String markerRealId = entity.getMarkerRealId(); if (markerRealId != null) { stmt.bindString(7, markerRealId); } - + String lng = entity.getLng(); if (lng != null) { stmt.bindString(8, lng); } - + String lat = entity.getLat(); if (lat != null) { stmt.bindString(9, lat); diff --git a/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt index c40dee1..bd2c821 100644 --- a/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt @@ -42,4 +42,10 @@ */ @GET("/ems/rs/task/get") suspend fun getTask(@Query("userName") userName: String): String + + /** + * 安装新标识器 + */ + @POST("/ems/marker/save-marker-photo.do") + suspend fun installLabel(@Body requestBody: RequestBody): String } \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt index d47e14e..9972efd 100644 --- a/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt @@ -58,4 +58,68 @@ suspend fun getTask(userName: String): String { return api.getTask(userName) } + + /** + * 安装新标识器 + */ + suspend fun installLabel( + companyId: String, + recordType: String, + markerObjectType: String, + pipeMaterial: String, + pipeDiameter: String, + depth: String, + belowType: String, + belowMaterial: String, + belowDiameter: String, + belowDepth: String, + layStyle: String, + area: String, + line: String, + road: String, + constructTime: String, + ownerComp: String, + markerObjectId: String, + markerId: String, + markerType: String, + markerDepth: String, + creator: String, + createTime: String, + longitude: String, + latitude: String, + colorType: String, + memo: String + ): String { + val param = JsonObject() + param.addProperty("companyId", companyId) + param.addProperty("recordType", recordType) + param.addProperty("markerObjectType", markerObjectType) + param.addProperty("pipeMaterial", pipeMaterial) + param.addProperty("pipeDiameter", pipeDiameter) + param.addProperty("depth", depth) + param.addProperty("belowType", belowType) + param.addProperty("belowMaterial", belowMaterial) + param.addProperty("belowDiameter", belowDiameter) + param.addProperty("belowDepth", belowDepth) + param.addProperty("layStyle", layStyle) + param.addProperty("area", area) + param.addProperty("line", line) + param.addProperty("road", road) + param.addProperty("constructTime", constructTime) + param.addProperty("ownerComp", ownerComp) + param.addProperty("markerObjectId", markerObjectId) + param.addProperty("markerId", markerId) + param.addProperty("markerType", markerType) + param.addProperty("markerDepth", markerDepth) + param.addProperty("creator", creator) + param.addProperty("createTime", createTime) + param.addProperty("longitude", longitude) + param.addProperty("latitude", latitude) + param.addProperty("colorType", colorType) + param.addProperty("memo", memo) + val requestBody = param.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.installLabel(requestBody) + } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt b/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt index 9ea2905..271e9a1 100644 --- a/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt +++ b/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt @@ -3,6 +3,7 @@ import com.casic.detector.base.BaseApplication import com.casic.detector.bean.LabelBean import com.casic.detector.bean.TaskBean +import com.casic.detector.greendao.LabelBeanDao import com.casic.detector.greendao.TaskBeanDao class DataBaseManager private constructor() { @@ -28,6 +29,12 @@ return labelBeanDao.loadAll() } + fun queryLabelById(identifierId: String): List { + return labelBeanDao.queryBuilder() + .where(LabelBeanDao.Properties.IdentifierId.eq(identifierId)) + .list() + } + fun countTaskById(id: String): Int { val count = taskBeanDao.queryBuilder() .where(TaskBeanDao.Properties.Id.eq(id)) diff --git a/app/src/main/java/com/casic/detector/utils/LocaleConstant.kt b/app/src/main/java/com/casic/detector/utils/LocaleConstant.kt index 522a326..b5aad2a 100644 --- a/app/src/main/java/com/casic/detector/utils/LocaleConstant.kt +++ b/app/src/main/java/com/casic/detector/utils/LocaleConstant.kt @@ -27,4 +27,5 @@ const val APP_AUTHORITY = "com.casic.detector.fileprovider" val POPUP_TITLES = arrayOf("更新数据", "下载工单", "关于软件", "事件上报", "标识器补全") + var POINT_TYPE_ARRAY = arrayOf("", "管线", "管线附属物", "管线特征管点", "交叉穿越点") } \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/utils/RouteOnMap.kt b/app/src/main/java/com/casic/detector/utils/RouteOnMap.kt index 027b992..200121e 100644 --- a/app/src/main/java/com/casic/detector/utils/RouteOnMap.kt +++ b/app/src/main/java/com/casic/detector/utils/RouteOnMap.kt @@ -5,6 +5,7 @@ import com.amap.api.maps.model.LatLng import com.amap.api.maps.model.Poi import com.casic.detector.extensions.showBusRouteOnMap +import com.casic.detector.extensions.showRideRouteOnMap import com.casic.detector.extensions.showRouteOnMap import com.pengxh.kt.lite.widget.dialog.BottomActionSheet @@ -13,13 +14,14 @@ BottomActionSheet.Builder() .setContext(context) .setItemTextColor(Color.BLUE) - .setActionItemTitle(arrayListOf("步行导航", "驾驶模式")) + .setActionItemTitle(arrayListOf("步行导航", "骑行导航", "驾驶模式")) .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { override fun onActionItemClick(position: Int) { when (position) { 0 -> Poi(s, latlng, "").showRouteOnMap(context) - 1 -> Poi(s, latlng, "").showBusRouteOnMap(context) + 1 -> Poi(s, latlng, "").showRideRouteOnMap(context) + 2 -> Poi(s, latlng, "").showBusRouteOnMap(context) } } }).build().show() diff --git a/app/src/main/java/com/casic/detector/view/MainActivity.kt b/app/src/main/java/com/casic/detector/view/MainActivity.kt index ba16ca8..116cf7a 100644 --- a/app/src/main/java/com/casic/detector/view/MainActivity.kt +++ b/app/src/main/java/com/casic/detector/view/MainActivity.kt @@ -18,7 +18,6 @@ import com.amap.api.location.AMapLocation import com.amap.api.maps.AMap import com.amap.api.maps.AMapOptions -import com.amap.api.maps.CameraUpdateFactory import com.amap.api.maps.model.LatLng import com.amap.api.maps.model.LatLngBounds import com.amap.api.maps.model.MyLocationStyle @@ -280,8 +279,10 @@ builder.include(clusterItem.position) item = clusterItem as RegionItem } - val latLngBounds = builder.build() - aMap.animateCamera(CameraUpdateFactory.newLatLngBounds(latLngBounds, 0)) + //TODO 暂时去掉 + //点击Marker移到Marker视图 +// val latLngBounds = builder.build() +// aMap.animateCamera(CameraUpdateFactory.newLatLngBounds(latLngBounds, 0)) AlertControlDialog.Builder() .setContext(this) @@ -327,13 +328,14 @@ 0 -> updateTaskData() 1 -> downloadTask() 2 -> versionViewModel.getApplicationVersion() - 3 -> {} - 4 -> {} + 3 -> uploadEvent() + 4 -> uploadLabel() } } }) } + //更新数据 private fun updateTaskData() { AlertControlDialog.Builder() .setContext(this) @@ -369,6 +371,7 @@ }).build().show() } + //下载工单 private fun downloadTask() { if (isNetworkConnected()) { val userName = SaveKeyValues.getValue(LocaleConstant.USER_NAME, "") @@ -386,6 +389,57 @@ } } + //事件上报 + private fun uploadEvent() { +// if(){ +// +// }else{ +// +// } + } + + //标识器补全 + private fun uploadLabel() { + val companyId = SaveKeyValues.getValue(LocaleConstant.USER_COMPANY_ID, "") as String + val labelBeans = DataBaseManager.get.queryLabelById("0") + if (labelBeans.isNotEmpty()) { + LoadingDialogHub.show(this, "标识器补全中,请稍后...") + labelBeans.forEach { labelBean -> + taskViewModel.installLabel( + companyId, + labelBean.objectType, + labelBean.pipelineType, + labelBean.pipelineMaterial, + labelBean.pipelineDiameter, + labelBean.buryDeep, + labelBean.lowerType, + labelBean.lowerMaterial, + labelBean.lowerDiameter, + labelBean.lowerDeep, + labelBean.buryMethod, + labelBean.area, + labelBean.line, + labelBean.road, + labelBean.constructTime, + labelBean.owner, + labelBean.objectId, + labelBean.identifierId, + labelBean.identifierType, + labelBean.identifierDeep, + labelBean.person, + labelBean.installTime, + labelBean.lng, + labelBean.lat, + labelBean.color, + labelBean.remark + ) + } + LoadingDialogHub.dismiss() + } else { + "没有需要补传的标识器!".show(this) + } + } + private fun observeRequestState() { versionViewModel.loadState.observe(this) { when (it) { diff --git a/app/src/main/java/com/casic/detector/view/ObjectDetailActivity.kt b/app/src/main/java/com/casic/detector/view/ObjectDetailActivity.kt index 20df7bc..082ee39 100644 --- a/app/src/main/java/com/casic/detector/view/ObjectDetailActivity.kt +++ b/app/src/main/java/com/casic/detector/view/ObjectDetailActivity.kt @@ -8,6 +8,7 @@ import androidx.lifecycle.ViewModelProvider import com.casic.detector.R import com.casic.detector.bean.LabelBean +import com.casic.detector.utils.LocaleConstant import com.casic.detector.vm.TaskViewModel import com.google.gson.Gson import com.google.gson.reflect.TypeToken @@ -38,7 +39,7 @@ objectJson, object : TypeToken() {}.type ) - objectTypeView.text = labelBean.objectType + objectTypeView.text = LocaleConstant.POINT_TYPE_ARRAY[labelBean.objectType.toInt()] pipelineTypeView.text = labelBean.pipelineType pipelineDiameterView.text = labelBean.pipelineDiameter pipelineMaterialView.text = labelBean.pipelineMaterial diff --git a/app/src/main/java/com/casic/detector/extensions/Poi.kt b/app/src/main/java/com/casic/detector/extensions/Poi.kt index 35ee8d1..c4955e1 100644 --- a/app/src/main/java/com/casic/detector/extensions/Poi.kt +++ b/app/src/main/java/com/casic/detector/extensions/Poi.kt @@ -19,6 +19,15 @@ AmapNaviPage.getInstance().showRouteActivity(context, params, null) } +fun Poi.showRideRouteOnMap(context: Context) { + val params = AmapNaviParams( + null, null, this, + AmapNaviType.RIDE, + AmapPageType.ROUTE + ) + AmapNaviPage.getInstance().showRouteActivity(context, params, null) +} + fun Poi.showBusRouteOnMap(context: Context) { val params = AmapNaviParams( null, null, this, diff --git a/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java b/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java index 13c5038..fb726e0 100644 --- a/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java +++ b/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java @@ -77,42 +77,42 @@ if (id != null) { stmt.bindLong(1, id); } - + String scanner = entity.getScanner(); if (scanner != null) { stmt.bindString(2, scanner); } - + String desc = entity.getDesc(); if (desc != null) { stmt.bindString(3, desc); } - + String taskId = entity.getTaskId(); if (taskId != null) { stmt.bindString(4, taskId); } - + String taskCode = entity.getTaskCode(); if (taskCode != null) { stmt.bindString(5, taskCode); } - + String markerId = entity.getMarkerId(); if (markerId != null) { stmt.bindString(6, markerId); } - + String markerRealId = entity.getMarkerRealId(); if (markerRealId != null) { stmt.bindString(7, markerRealId); } - + String lng = entity.getLng(); if (lng != null) { stmt.bindString(8, lng); } - + String lat = entity.getLat(); if (lat != null) { stmt.bindString(9, lat); @@ -132,42 +132,42 @@ if (id != null) { stmt.bindLong(1, id); } - + String scanner = entity.getScanner(); if (scanner != null) { stmt.bindString(2, scanner); } - + String desc = entity.getDesc(); if (desc != null) { stmt.bindString(3, desc); } - + String taskId = entity.getTaskId(); if (taskId != null) { stmt.bindString(4, taskId); } - + String taskCode = entity.getTaskCode(); if (taskCode != null) { stmt.bindString(5, taskCode); } - + String markerId = entity.getMarkerId(); if (markerId != null) { stmt.bindString(6, markerId); } - + String markerRealId = entity.getMarkerRealId(); if (markerRealId != null) { stmt.bindString(7, markerRealId); } - + String lng = entity.getLng(); if (lng != null) { stmt.bindString(8, lng); } - + String lat = entity.getLat(); if (lat != null) { stmt.bindString(9, lat); diff --git a/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt index c40dee1..bd2c821 100644 --- a/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt @@ -42,4 +42,10 @@ */ @GET("/ems/rs/task/get") suspend fun getTask(@Query("userName") userName: String): String + + /** + * 安装新标识器 + */ + @POST("/ems/marker/save-marker-photo.do") + suspend fun installLabel(@Body requestBody: RequestBody): String } \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt index d47e14e..9972efd 100644 --- a/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt @@ -58,4 +58,68 @@ suspend fun getTask(userName: String): String { return api.getTask(userName) } + + /** + * 安装新标识器 + */ + suspend fun installLabel( + companyId: String, + recordType: String, + markerObjectType: String, + pipeMaterial: String, + pipeDiameter: String, + depth: String, + belowType: String, + belowMaterial: String, + belowDiameter: String, + belowDepth: String, + layStyle: String, + area: String, + line: String, + road: String, + constructTime: String, + ownerComp: String, + markerObjectId: String, + markerId: String, + markerType: String, + markerDepth: String, + creator: String, + createTime: String, + longitude: String, + latitude: String, + colorType: String, + memo: String + ): String { + val param = JsonObject() + param.addProperty("companyId", companyId) + param.addProperty("recordType", recordType) + param.addProperty("markerObjectType", markerObjectType) + param.addProperty("pipeMaterial", pipeMaterial) + param.addProperty("pipeDiameter", pipeDiameter) + param.addProperty("depth", depth) + param.addProperty("belowType", belowType) + param.addProperty("belowMaterial", belowMaterial) + param.addProperty("belowDiameter", belowDiameter) + param.addProperty("belowDepth", belowDepth) + param.addProperty("layStyle", layStyle) + param.addProperty("area", area) + param.addProperty("line", line) + param.addProperty("road", road) + param.addProperty("constructTime", constructTime) + param.addProperty("ownerComp", ownerComp) + param.addProperty("markerObjectId", markerObjectId) + param.addProperty("markerId", markerId) + param.addProperty("markerType", markerType) + param.addProperty("markerDepth", markerDepth) + param.addProperty("creator", creator) + param.addProperty("createTime", createTime) + param.addProperty("longitude", longitude) + param.addProperty("latitude", latitude) + param.addProperty("colorType", colorType) + param.addProperty("memo", memo) + val requestBody = param.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.installLabel(requestBody) + } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt b/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt index 9ea2905..271e9a1 100644 --- a/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt +++ b/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt @@ -3,6 +3,7 @@ import com.casic.detector.base.BaseApplication import com.casic.detector.bean.LabelBean import com.casic.detector.bean.TaskBean +import com.casic.detector.greendao.LabelBeanDao import com.casic.detector.greendao.TaskBeanDao class DataBaseManager private constructor() { @@ -28,6 +29,12 @@ return labelBeanDao.loadAll() } + fun queryLabelById(identifierId: String): List { + return labelBeanDao.queryBuilder() + .where(LabelBeanDao.Properties.IdentifierId.eq(identifierId)) + .list() + } + fun countTaskById(id: String): Int { val count = taskBeanDao.queryBuilder() .where(TaskBeanDao.Properties.Id.eq(id)) diff --git a/app/src/main/java/com/casic/detector/utils/LocaleConstant.kt b/app/src/main/java/com/casic/detector/utils/LocaleConstant.kt index 522a326..b5aad2a 100644 --- a/app/src/main/java/com/casic/detector/utils/LocaleConstant.kt +++ b/app/src/main/java/com/casic/detector/utils/LocaleConstant.kt @@ -27,4 +27,5 @@ const val APP_AUTHORITY = "com.casic.detector.fileprovider" val POPUP_TITLES = arrayOf("更新数据", "下载工单", "关于软件", "事件上报", "标识器补全") + var POINT_TYPE_ARRAY = arrayOf("", "管线", "管线附属物", "管线特征管点", "交叉穿越点") } \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/utils/RouteOnMap.kt b/app/src/main/java/com/casic/detector/utils/RouteOnMap.kt index 027b992..200121e 100644 --- a/app/src/main/java/com/casic/detector/utils/RouteOnMap.kt +++ b/app/src/main/java/com/casic/detector/utils/RouteOnMap.kt @@ -5,6 +5,7 @@ import com.amap.api.maps.model.LatLng import com.amap.api.maps.model.Poi import com.casic.detector.extensions.showBusRouteOnMap +import com.casic.detector.extensions.showRideRouteOnMap import com.casic.detector.extensions.showRouteOnMap import com.pengxh.kt.lite.widget.dialog.BottomActionSheet @@ -13,13 +14,14 @@ BottomActionSheet.Builder() .setContext(context) .setItemTextColor(Color.BLUE) - .setActionItemTitle(arrayListOf("步行导航", "驾驶模式")) + .setActionItemTitle(arrayListOf("步行导航", "骑行导航", "驾驶模式")) .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { override fun onActionItemClick(position: Int) { when (position) { 0 -> Poi(s, latlng, "").showRouteOnMap(context) - 1 -> Poi(s, latlng, "").showBusRouteOnMap(context) + 1 -> Poi(s, latlng, "").showRideRouteOnMap(context) + 2 -> Poi(s, latlng, "").showBusRouteOnMap(context) } } }).build().show() diff --git a/app/src/main/java/com/casic/detector/view/MainActivity.kt b/app/src/main/java/com/casic/detector/view/MainActivity.kt index ba16ca8..116cf7a 100644 --- a/app/src/main/java/com/casic/detector/view/MainActivity.kt +++ b/app/src/main/java/com/casic/detector/view/MainActivity.kt @@ -18,7 +18,6 @@ import com.amap.api.location.AMapLocation import com.amap.api.maps.AMap import com.amap.api.maps.AMapOptions -import com.amap.api.maps.CameraUpdateFactory import com.amap.api.maps.model.LatLng import com.amap.api.maps.model.LatLngBounds import com.amap.api.maps.model.MyLocationStyle @@ -280,8 +279,10 @@ builder.include(clusterItem.position) item = clusterItem as RegionItem } - val latLngBounds = builder.build() - aMap.animateCamera(CameraUpdateFactory.newLatLngBounds(latLngBounds, 0)) + //TODO 暂时去掉 + //点击Marker移到Marker视图 +// val latLngBounds = builder.build() +// aMap.animateCamera(CameraUpdateFactory.newLatLngBounds(latLngBounds, 0)) AlertControlDialog.Builder() .setContext(this) @@ -327,13 +328,14 @@ 0 -> updateTaskData() 1 -> downloadTask() 2 -> versionViewModel.getApplicationVersion() - 3 -> {} - 4 -> {} + 3 -> uploadEvent() + 4 -> uploadLabel() } } }) } + //更新数据 private fun updateTaskData() { AlertControlDialog.Builder() .setContext(this) @@ -369,6 +371,7 @@ }).build().show() } + //下载工单 private fun downloadTask() { if (isNetworkConnected()) { val userName = SaveKeyValues.getValue(LocaleConstant.USER_NAME, "") @@ -386,6 +389,57 @@ } } + //事件上报 + private fun uploadEvent() { +// if(){ +// +// }else{ +// +// } + } + + //标识器补全 + private fun uploadLabel() { + val companyId = SaveKeyValues.getValue(LocaleConstant.USER_COMPANY_ID, "") as String + val labelBeans = DataBaseManager.get.queryLabelById("0") + if (labelBeans.isNotEmpty()) { + LoadingDialogHub.show(this, "标识器补全中,请稍后...") + labelBeans.forEach { labelBean -> + taskViewModel.installLabel( + companyId, + labelBean.objectType, + labelBean.pipelineType, + labelBean.pipelineMaterial, + labelBean.pipelineDiameter, + labelBean.buryDeep, + labelBean.lowerType, + labelBean.lowerMaterial, + labelBean.lowerDiameter, + labelBean.lowerDeep, + labelBean.buryMethod, + labelBean.area, + labelBean.line, + labelBean.road, + labelBean.constructTime, + labelBean.owner, + labelBean.objectId, + labelBean.identifierId, + labelBean.identifierType, + labelBean.identifierDeep, + labelBean.person, + labelBean.installTime, + labelBean.lng, + labelBean.lat, + labelBean.color, + labelBean.remark + ) + } + LoadingDialogHub.dismiss() + } else { + "没有需要补传的标识器!".show(this) + } + } + private fun observeRequestState() { versionViewModel.loadState.observe(this) { when (it) { diff --git a/app/src/main/java/com/casic/detector/view/ObjectDetailActivity.kt b/app/src/main/java/com/casic/detector/view/ObjectDetailActivity.kt index 20df7bc..082ee39 100644 --- a/app/src/main/java/com/casic/detector/view/ObjectDetailActivity.kt +++ b/app/src/main/java/com/casic/detector/view/ObjectDetailActivity.kt @@ -8,6 +8,7 @@ import androidx.lifecycle.ViewModelProvider import com.casic.detector.R import com.casic.detector.bean.LabelBean +import com.casic.detector.utils.LocaleConstant import com.casic.detector.vm.TaskViewModel import com.google.gson.Gson import com.google.gson.reflect.TypeToken @@ -38,7 +39,7 @@ objectJson, object : TypeToken() {}.type ) - objectTypeView.text = labelBean.objectType + objectTypeView.text = LocaleConstant.POINT_TYPE_ARRAY[labelBean.objectType.toInt()] pipelineTypeView.text = labelBean.pipelineType pipelineDiameterView.text = labelBean.pipelineDiameter pipelineMaterialView.text = labelBean.pipelineMaterial diff --git a/app/src/main/java/com/casic/detector/vm/DownloadViewModel.kt b/app/src/main/java/com/casic/detector/vm/DownloadViewModel.kt deleted file mode 100644 index 54421d8..0000000 --- a/app/src/main/java/com/casic/detector/vm/DownloadViewModel.kt +++ /dev/null @@ -1,7 +0,0 @@ -package com.casic.detector.vm - -import com.pengxh.kt.lite.vm.BaseViewModel - -class DownloadViewModel : BaseViewModel() { - -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/extensions/Poi.kt b/app/src/main/java/com/casic/detector/extensions/Poi.kt index 35ee8d1..c4955e1 100644 --- a/app/src/main/java/com/casic/detector/extensions/Poi.kt +++ b/app/src/main/java/com/casic/detector/extensions/Poi.kt @@ -19,6 +19,15 @@ AmapNaviPage.getInstance().showRouteActivity(context, params, null) } +fun Poi.showRideRouteOnMap(context: Context) { + val params = AmapNaviParams( + null, null, this, + AmapNaviType.RIDE, + AmapPageType.ROUTE + ) + AmapNaviPage.getInstance().showRouteActivity(context, params, null) +} + fun Poi.showBusRouteOnMap(context: Context) { val params = AmapNaviParams( null, null, this, diff --git a/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java b/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java index 13c5038..fb726e0 100644 --- a/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java +++ b/app/src/main/java/com/casic/detector/greendao/TaskBeanDao.java @@ -77,42 +77,42 @@ if (id != null) { stmt.bindLong(1, id); } - + String scanner = entity.getScanner(); if (scanner != null) { stmt.bindString(2, scanner); } - + String desc = entity.getDesc(); if (desc != null) { stmt.bindString(3, desc); } - + String taskId = entity.getTaskId(); if (taskId != null) { stmt.bindString(4, taskId); } - + String taskCode = entity.getTaskCode(); if (taskCode != null) { stmt.bindString(5, taskCode); } - + String markerId = entity.getMarkerId(); if (markerId != null) { stmt.bindString(6, markerId); } - + String markerRealId = entity.getMarkerRealId(); if (markerRealId != null) { stmt.bindString(7, markerRealId); } - + String lng = entity.getLng(); if (lng != null) { stmt.bindString(8, lng); } - + String lat = entity.getLat(); if (lat != null) { stmt.bindString(9, lat); @@ -132,42 +132,42 @@ if (id != null) { stmt.bindLong(1, id); } - + String scanner = entity.getScanner(); if (scanner != null) { stmt.bindString(2, scanner); } - + String desc = entity.getDesc(); if (desc != null) { stmt.bindString(3, desc); } - + String taskId = entity.getTaskId(); if (taskId != null) { stmt.bindString(4, taskId); } - + String taskCode = entity.getTaskCode(); if (taskCode != null) { stmt.bindString(5, taskCode); } - + String markerId = entity.getMarkerId(); if (markerId != null) { stmt.bindString(6, markerId); } - + String markerRealId = entity.getMarkerRealId(); if (markerRealId != null) { stmt.bindString(7, markerRealId); } - + String lng = entity.getLng(); if (lng != null) { stmt.bindString(8, lng); } - + String lat = entity.getLat(); if (lat != null) { stmt.bindString(9, lat); diff --git a/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt index c40dee1..bd2c821 100644 --- a/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/detector/retrofit/RetrofitService.kt @@ -42,4 +42,10 @@ */ @GET("/ems/rs/task/get") suspend fun getTask(@Query("userName") userName: String): String + + /** + * 安装新标识器 + */ + @POST("/ems/marker/save-marker-photo.do") + suspend fun installLabel(@Body requestBody: RequestBody): String } \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt index d47e14e..9972efd 100644 --- a/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/detector/retrofit/RetrofitServiceManager.kt @@ -58,4 +58,68 @@ suspend fun getTask(userName: String): String { return api.getTask(userName) } + + /** + * 安装新标识器 + */ + suspend fun installLabel( + companyId: String, + recordType: String, + markerObjectType: String, + pipeMaterial: String, + pipeDiameter: String, + depth: String, + belowType: String, + belowMaterial: String, + belowDiameter: String, + belowDepth: String, + layStyle: String, + area: String, + line: String, + road: String, + constructTime: String, + ownerComp: String, + markerObjectId: String, + markerId: String, + markerType: String, + markerDepth: String, + creator: String, + createTime: String, + longitude: String, + latitude: String, + colorType: String, + memo: String + ): String { + val param = JsonObject() + param.addProperty("companyId", companyId) + param.addProperty("recordType", recordType) + param.addProperty("markerObjectType", markerObjectType) + param.addProperty("pipeMaterial", pipeMaterial) + param.addProperty("pipeDiameter", pipeDiameter) + param.addProperty("depth", depth) + param.addProperty("belowType", belowType) + param.addProperty("belowMaterial", belowMaterial) + param.addProperty("belowDiameter", belowDiameter) + param.addProperty("belowDepth", belowDepth) + param.addProperty("layStyle", layStyle) + param.addProperty("area", area) + param.addProperty("line", line) + param.addProperty("road", road) + param.addProperty("constructTime", constructTime) + param.addProperty("ownerComp", ownerComp) + param.addProperty("markerObjectId", markerObjectId) + param.addProperty("markerId", markerId) + param.addProperty("markerType", markerType) + param.addProperty("markerDepth", markerDepth) + param.addProperty("creator", creator) + param.addProperty("createTime", createTime) + param.addProperty("longitude", longitude) + param.addProperty("latitude", latitude) + param.addProperty("colorType", colorType) + param.addProperty("memo", memo) + val requestBody = param.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.installLabel(requestBody) + } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt b/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt index 9ea2905..271e9a1 100644 --- a/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt +++ b/app/src/main/java/com/casic/detector/utils/DataBaseManager.kt @@ -3,6 +3,7 @@ import com.casic.detector.base.BaseApplication import com.casic.detector.bean.LabelBean import com.casic.detector.bean.TaskBean +import com.casic.detector.greendao.LabelBeanDao import com.casic.detector.greendao.TaskBeanDao class DataBaseManager private constructor() { @@ -28,6 +29,12 @@ return labelBeanDao.loadAll() } + fun queryLabelById(identifierId: String): List { + return labelBeanDao.queryBuilder() + .where(LabelBeanDao.Properties.IdentifierId.eq(identifierId)) + .list() + } + fun countTaskById(id: String): Int { val count = taskBeanDao.queryBuilder() .where(TaskBeanDao.Properties.Id.eq(id)) diff --git a/app/src/main/java/com/casic/detector/utils/LocaleConstant.kt b/app/src/main/java/com/casic/detector/utils/LocaleConstant.kt index 522a326..b5aad2a 100644 --- a/app/src/main/java/com/casic/detector/utils/LocaleConstant.kt +++ b/app/src/main/java/com/casic/detector/utils/LocaleConstant.kt @@ -27,4 +27,5 @@ const val APP_AUTHORITY = "com.casic.detector.fileprovider" val POPUP_TITLES = arrayOf("更新数据", "下载工单", "关于软件", "事件上报", "标识器补全") + var POINT_TYPE_ARRAY = arrayOf("", "管线", "管线附属物", "管线特征管点", "交叉穿越点") } \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/utils/RouteOnMap.kt b/app/src/main/java/com/casic/detector/utils/RouteOnMap.kt index 027b992..200121e 100644 --- a/app/src/main/java/com/casic/detector/utils/RouteOnMap.kt +++ b/app/src/main/java/com/casic/detector/utils/RouteOnMap.kt @@ -5,6 +5,7 @@ import com.amap.api.maps.model.LatLng import com.amap.api.maps.model.Poi import com.casic.detector.extensions.showBusRouteOnMap +import com.casic.detector.extensions.showRideRouteOnMap import com.casic.detector.extensions.showRouteOnMap import com.pengxh.kt.lite.widget.dialog.BottomActionSheet @@ -13,13 +14,14 @@ BottomActionSheet.Builder() .setContext(context) .setItemTextColor(Color.BLUE) - .setActionItemTitle(arrayListOf("步行导航", "驾驶模式")) + .setActionItemTitle(arrayListOf("步行导航", "骑行导航", "驾驶模式")) .setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener { override fun onActionItemClick(position: Int) { when (position) { 0 -> Poi(s, latlng, "").showRouteOnMap(context) - 1 -> Poi(s, latlng, "").showBusRouteOnMap(context) + 1 -> Poi(s, latlng, "").showRideRouteOnMap(context) + 2 -> Poi(s, latlng, "").showBusRouteOnMap(context) } } }).build().show() diff --git a/app/src/main/java/com/casic/detector/view/MainActivity.kt b/app/src/main/java/com/casic/detector/view/MainActivity.kt index ba16ca8..116cf7a 100644 --- a/app/src/main/java/com/casic/detector/view/MainActivity.kt +++ b/app/src/main/java/com/casic/detector/view/MainActivity.kt @@ -18,7 +18,6 @@ import com.amap.api.location.AMapLocation import com.amap.api.maps.AMap import com.amap.api.maps.AMapOptions -import com.amap.api.maps.CameraUpdateFactory import com.amap.api.maps.model.LatLng import com.amap.api.maps.model.LatLngBounds import com.amap.api.maps.model.MyLocationStyle @@ -280,8 +279,10 @@ builder.include(clusterItem.position) item = clusterItem as RegionItem } - val latLngBounds = builder.build() - aMap.animateCamera(CameraUpdateFactory.newLatLngBounds(latLngBounds, 0)) + //TODO 暂时去掉 + //点击Marker移到Marker视图 +// val latLngBounds = builder.build() +// aMap.animateCamera(CameraUpdateFactory.newLatLngBounds(latLngBounds, 0)) AlertControlDialog.Builder() .setContext(this) @@ -327,13 +328,14 @@ 0 -> updateTaskData() 1 -> downloadTask() 2 -> versionViewModel.getApplicationVersion() - 3 -> {} - 4 -> {} + 3 -> uploadEvent() + 4 -> uploadLabel() } } }) } + //更新数据 private fun updateTaskData() { AlertControlDialog.Builder() .setContext(this) @@ -369,6 +371,7 @@ }).build().show() } + //下载工单 private fun downloadTask() { if (isNetworkConnected()) { val userName = SaveKeyValues.getValue(LocaleConstant.USER_NAME, "") @@ -386,6 +389,57 @@ } } + //事件上报 + private fun uploadEvent() { +// if(){ +// +// }else{ +// +// } + } + + //标识器补全 + private fun uploadLabel() { + val companyId = SaveKeyValues.getValue(LocaleConstant.USER_COMPANY_ID, "") as String + val labelBeans = DataBaseManager.get.queryLabelById("0") + if (labelBeans.isNotEmpty()) { + LoadingDialogHub.show(this, "标识器补全中,请稍后...") + labelBeans.forEach { labelBean -> + taskViewModel.installLabel( + companyId, + labelBean.objectType, + labelBean.pipelineType, + labelBean.pipelineMaterial, + labelBean.pipelineDiameter, + labelBean.buryDeep, + labelBean.lowerType, + labelBean.lowerMaterial, + labelBean.lowerDiameter, + labelBean.lowerDeep, + labelBean.buryMethod, + labelBean.area, + labelBean.line, + labelBean.road, + labelBean.constructTime, + labelBean.owner, + labelBean.objectId, + labelBean.identifierId, + labelBean.identifierType, + labelBean.identifierDeep, + labelBean.person, + labelBean.installTime, + labelBean.lng, + labelBean.lat, + labelBean.color, + labelBean.remark + ) + } + LoadingDialogHub.dismiss() + } else { + "没有需要补传的标识器!".show(this) + } + } + private fun observeRequestState() { versionViewModel.loadState.observe(this) { when (it) { diff --git a/app/src/main/java/com/casic/detector/view/ObjectDetailActivity.kt b/app/src/main/java/com/casic/detector/view/ObjectDetailActivity.kt index 20df7bc..082ee39 100644 --- a/app/src/main/java/com/casic/detector/view/ObjectDetailActivity.kt +++ b/app/src/main/java/com/casic/detector/view/ObjectDetailActivity.kt @@ -8,6 +8,7 @@ import androidx.lifecycle.ViewModelProvider import com.casic.detector.R import com.casic.detector.bean.LabelBean +import com.casic.detector.utils.LocaleConstant import com.casic.detector.vm.TaskViewModel import com.google.gson.Gson import com.google.gson.reflect.TypeToken @@ -38,7 +39,7 @@ objectJson, object : TypeToken() {}.type ) - objectTypeView.text = labelBean.objectType + objectTypeView.text = LocaleConstant.POINT_TYPE_ARRAY[labelBean.objectType.toInt()] pipelineTypeView.text = labelBean.pipelineType pipelineDiameterView.text = labelBean.pipelineDiameter pipelineMaterialView.text = labelBean.pipelineMaterial diff --git a/app/src/main/java/com/casic/detector/vm/DownloadViewModel.kt b/app/src/main/java/com/casic/detector/vm/DownloadViewModel.kt deleted file mode 100644 index 54421d8..0000000 --- a/app/src/main/java/com/casic/detector/vm/DownloadViewModel.kt +++ /dev/null @@ -1,7 +0,0 @@ -package com.casic.detector.vm - -import com.pengxh.kt.lite.vm.BaseViewModel - -class DownloadViewModel : BaseViewModel() { - -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/vm/TaskViewModel.kt b/app/src/main/java/com/casic/detector/vm/TaskViewModel.kt index 136b370..d80069e 100644 --- a/app/src/main/java/com/casic/detector/vm/TaskViewModel.kt +++ b/app/src/main/java/com/casic/detector/vm/TaskViewModel.kt @@ -60,4 +60,71 @@ }, { it.convertChinese().show(BaseApplication.get()) }) + + fun installLabel( + companyId: String, + recordType: String, + markerObjectType: String, + pipeMaterial: String, + pipeDiameter: String, + depth: String, + belowType: String, + belowMaterial: String, + belowDiameter: String, + belowDepth: String, + layStyle: String, + area: String, + line: String, + road: String, + constructTime: String, + ownerComp: String, + markerObjectId: String, + markerId: String, + markerType: String, + markerDepth: String, + creator: String, + createTime: String, + longitude: String, + latitude: String, + colorType: String, + memo: String + ) = launch({ + val response = RetrofitServiceManager.installLabel( + companyId, + recordType, + markerObjectType, + pipeMaterial, + pipeDiameter, + depth, + belowType, + belowMaterial, + belowDiameter, + belowDepth, + layStyle, + area, + line, + road, + constructTime, + ownerComp, + markerObjectId, + markerId, + markerType, + markerDepth, + creator, + createTime, + longitude, + latitude, + colorType, + memo + ) + if (response.separateResponseState()) { +// taskResult.value = gson.fromJson( +// response, object : TypeToken() {}.type +// ) + } else { + response.toErrorMessage().show(BaseApplication.get()) + } + }, { + it.convertChinese().show(BaseApplication.get()) + }) } \ No newline at end of file