diff --git a/app/src/main/assets/omdb_config.json b/app/src/main/assets/omdb_config.json index a037ed16..9bcd16ce 100644 --- a/app/src/main/assets/omdb_config.json +++ b/app/src/main/assets/omdb_config.json @@ -7,6 +7,7 @@ "code": 1007, "name": "点形态", "existSubCode": true, + "checkLinkId": false, "zoomMin": 15, "zoomMax": 20 }, @@ -15,6 +16,7 @@ "code": 1007, "name": "点形态PA", "existSubCode": true, + "checkLinkId": false, "zoomMin": 15, "zoomMax": 20 }, @@ -80,6 +82,7 @@ "name": "车道边界类型", "zoomMin": 18, "zoomMax": 20, + "checkLinkId": false, "filterData": true, "catch":true, "transformer": [ diff --git a/app/src/main/java/com/navinfo/omqs/db/ImportPreProcess.kt b/app/src/main/java/com/navinfo/omqs/db/ImportPreProcess.kt index 0a211e9f..4281b648 100644 --- a/app/src/main/java/com/navinfo/omqs/db/ImportPreProcess.kt +++ b/app/src/main/java/com/navinfo/omqs/db/ImportPreProcess.kt @@ -845,10 +845,7 @@ class ImportPreProcess { val listResult = mutableListOf() val coorEnd = Coordinate(pointStart.getX() + dx, pointStart.getY() + dy, pointStart.z) - renderEntity.geometry = GeometryTools.createGeometry(GeoPoint(centerPoint!!.y, centerPoint.x)).toString() -// renderEntity.geometry = -// WKTWriter(3).write(GeometryTools.createLineString(arrayOf(pointStart, coorEnd))) - + renderEntity.geometry = WKTWriter(3).write(GeometryTools.createLineString(arrayOf(pointStart, coorEnd))) val code = renderEntity.properties["signType"] renderEntity.properties["src"] = "assets:omdb/appendix/1105_${code}_0.svg" } diff --git a/app/src/main/java/com/navinfo/omqs/ui/activity/login/LoginViewModel.kt b/app/src/main/java/com/navinfo/omqs/ui/activity/login/LoginViewModel.kt index a6fff588..d0f840ca 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/activity/login/LoginViewModel.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/activity/login/LoginViewModel.kt @@ -271,6 +271,7 @@ class LoginViewModel @Inject constructor( realm.executeTransaction { result.data.obj?.let { list -> for (index in list.indices) { + var inSertData = true val task = list[index] val item = realm.where(TaskBean::class.java).equalTo( "id", task.id @@ -287,12 +288,20 @@ class LoginViewModel @Inject constructor( } } else { for (hadLink in task.hadLinkDvoList) { - hadLink.taskId = task.id + if(hadLink.geometry==null||hadLink.mesh==null){ + inSertData = false + }else{ + hadLink.taskId = task.id + } + Log.e("qj","mesh==${hadLink.mesh}") } //赋值时间,用于查询过滤 task.operationTime = DateTimeUtil.getNowDate().time } - realm.copyToRealmOrUpdate(task) + Log.e("qj","task==${task.id}") + if(inSertData){ + realm.copyToRealmOrUpdate(task) + } } } diff --git a/app/src/main/java/com/navinfo/omqs/ui/fragment/evaluationresult/EvaluationResultViewModel.kt b/app/src/main/java/com/navinfo/omqs/ui/fragment/evaluationresult/EvaluationResultViewModel.kt index 16168314..258ec4ec 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/fragment/evaluationresult/EvaluationResultViewModel.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/fragment/evaluationresult/EvaluationResultViewModel.kt @@ -475,7 +475,10 @@ class EvaluationResultViewModel @Inject constructor( p.latitude, p.longitude ), TAG, "", null ) - + //定位 + val mapPosition = mapController.mMapView.vtmMap.mapPosition + mapPosition.setPosition(p.latitude, p.longitude) + mapController.mMapView.vtmMap.animator().animateTo(300, mapPosition) //获取linkid if (it.linkId.isNotEmpty()) { val link = realmOperateHelper.queryLink(it.linkId) diff --git a/app/src/main/java/com/navinfo/omqs/ui/fragment/tasklist/TaskListAdapter.kt b/app/src/main/java/com/navinfo/omqs/ui/fragment/tasklist/TaskListAdapter.kt index 3467b7f3..cc27c42b 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/fragment/tasklist/TaskListAdapter.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/fragment/tasklist/TaskListAdapter.kt @@ -352,6 +352,10 @@ class TaskListAdapter( refreshData(list) } + fun getSelectTaskPosition():Int{ + return selectPosition + } + companion object { object ItemClickStatus { const val ITEM_LAYOUT_CLICK = 0 //条目点击 diff --git a/app/src/main/java/com/navinfo/omqs/ui/fragment/tasklist/TaskListFragment.kt b/app/src/main/java/com/navinfo/omqs/ui/fragment/tasklist/TaskListFragment.kt index ff2d30cd..a34abfca 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/fragment/tasklist/TaskListFragment.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/fragment/tasklist/TaskListFragment.kt @@ -126,6 +126,12 @@ class TaskListFragment : BaseFragment() { viewModel.liveDataTaskList.observe(viewLifecycleOwner) { loadFinish() adapter.initSelectTask(it, viewModel.currentSelectTaskBean?.id) + var position = adapter.getSelectTaskPosition() + if(position<0){ + position = 0 + } + //定位到被选中的任务 + binding.taskListRecyclerview.smoothScrollToPosition(position) } //监听并调用上传 diff --git a/app/src/main/java/com/navinfo/omqs/util/SignUtil.kt b/app/src/main/java/com/navinfo/omqs/util/SignUtil.kt index 2a234341..47bf4c38 100644 --- a/app/src/main/java/com/navinfo/omqs/util/SignUtil.kt +++ b/app/src/main/java/com/navinfo/omqs/util/SignUtil.kt @@ -126,9 +126,9 @@ class SignUtil { //常规线限速 DataCodeEnum.OMDB_LINK_SPEEDLIMIT.code -> "线限速" - DataCodeEnum.OMDB_LINK_ATTRIBUTE_MAIN_SIDE_ACCESS.code, DataCodeEnum.OMDB_LINK_ATTRIBUTE_FORNTAGE.code, DataCodeEnum.OMDB_LINK_ATTRIBUTE_SA.code, DataCodeEnum.OMDB_LINK_ATTRIBUTE_PA.code -> "形态" + DataCodeEnum.OMDB_LINK_ATTRIBUTE_MAIN_SIDE_ACCESS.code, DataCodeEnum.OMDB_LINK_ATTRIBUTE_FORNTAGE.code, DataCodeEnum.OMDB_LINK_ATTRIBUTE_SA.code, DataCodeEnum.OMDB_LINK_ATTRIBUTE_PA.code -> "道路属性" - DataCodeEnum.OMDB_LINK_FORM1_1.code, DataCodeEnum.OMDB_LINK_FORM1_2.code, DataCodeEnum.OMDB_LINK_FORM1_3.code, DataCodeEnum.OMDB_LINK_FORM2_1.code, DataCodeEnum.OMDB_LINK_FORM2_2.code, DataCodeEnum.OMDB_LINK_FORM2_3.code, DataCodeEnum.OMDB_LINK_FORM2_4.code, DataCodeEnum.OMDB_LINK_FORM2_5.code, DataCodeEnum.OMDB_LINK_FORM2_6.code, DataCodeEnum.OMDB_LINK_FORM2_7.code, DataCodeEnum.OMDB_LINK_FORM2_8.code, DataCodeEnum.OMDB_LINK_FORM2_9.code, DataCodeEnum.OMDB_LINK_FORM2_10.code, DataCodeEnum.OMDB_LINK_FORM2_11.code, DataCodeEnum.OMDB_LINK_FORM2_12.code, DataCodeEnum.OMDB_LINK_FORM2_13.code -> "形态" + DataCodeEnum.OMDB_LINK_FORM1_1.code, DataCodeEnum.OMDB_LINK_FORM1_2.code, DataCodeEnum.OMDB_LINK_FORM1_3.code, DataCodeEnum.OMDB_LINK_FORM2_1.code, DataCodeEnum.OMDB_LINK_FORM2_2.code, DataCodeEnum.OMDB_LINK_FORM2_3.code, DataCodeEnum.OMDB_LINK_FORM2_4.code, DataCodeEnum.OMDB_LINK_FORM2_5.code, DataCodeEnum.OMDB_LINK_FORM2_6.code, DataCodeEnum.OMDB_LINK_FORM2_7.code, DataCodeEnum.OMDB_LINK_FORM2_8.code, DataCodeEnum.OMDB_LINK_FORM2_9.code, DataCodeEnum.OMDB_LINK_FORM2_10.code, DataCodeEnum.OMDB_LINK_FORM2_11.code, DataCodeEnum.OMDB_LINK_FORM2_12.code, DataCodeEnum.OMDB_LINK_FORM2_13.code -> "道路形态" else -> DataCodeEnum.findTableNameByCode(data.code) } @@ -805,6 +805,42 @@ class SignUtil { return "" } } + DataCodeEnum.OMDB_TRAFFIC_SIGN.code -> { + var color = data.properties["color"] + if (color != null) { + when(color){ + "0"->{ + return "颜色:未验证" + } + "1"->{ + return "颜色:白色" + } + "2"->{ + return "颜色:黄色" + } + "3"->{ + return "颜色:红色" + } + "5"->{ + return "颜色:棕色" + } + "6"->{ + return "颜色:蓝色" + } + "7"->{ + return "颜色:绿色" + } + "8"->{ + return "颜色:黑色" + } + "9"->{ + return "颜色:其他" + } + } + + } + return "颜色:未验证" + } else -> "" } } @@ -1026,6 +1062,14 @@ class SignUtil { } return 0 } + DataCodeEnum.OMDB_TRAFFIC_SIGN.code -> { + var trafsignShape = data.properties["trafsignShape"] + if (trafsignShape != null) { + trafsignShape = "icon_${DataCodeEnum.OMDB_TRAFFIC_SIGN.code}_${trafsignShape.lowercase()}" + return getResId(trafsignShape, R.drawable::class.java) + } + return 0 + } else -> 0 } diff --git a/app/src/main/res/drawable-xxhdpi/icon_3005_1.png b/app/src/main/res/drawable-xxhdpi/icon_3005_1.png new file mode 100644 index 00000000..4c76e442 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/icon_3005_1.png differ diff --git a/app/src/main/res/drawable-xxhdpi/icon_3005_2.png b/app/src/main/res/drawable-xxhdpi/icon_3005_2.png new file mode 100644 index 00000000..6f718c50 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/icon_3005_2.png differ diff --git a/app/src/main/res/drawable-xxhdpi/icon_3005_3.png b/app/src/main/res/drawable-xxhdpi/icon_3005_3.png new file mode 100644 index 00000000..ee76722e Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/icon_3005_3.png differ diff --git a/app/src/main/res/drawable-xxhdpi/icon_3005_4.png b/app/src/main/res/drawable-xxhdpi/icon_3005_4.png new file mode 100644 index 00000000..4b3e9e7b Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/icon_3005_4.png differ diff --git a/app/src/main/res/drawable-xxhdpi/icon_3005_6.png b/app/src/main/res/drawable-xxhdpi/icon_3005_6.png new file mode 100644 index 00000000..7de74751 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/icon_3005_6.png differ diff --git a/app/src/main/res/drawable-xxhdpi/icon_3005_7.png b/app/src/main/res/drawable-xxhdpi/icon_3005_7.png new file mode 100644 index 00000000..0b004760 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/icon_3005_7.png differ diff --git a/app/src/main/res/drawable-xxhdpi/icon_3005_8.png b/app/src/main/res/drawable-xxhdpi/icon_3005_8.png new file mode 100644 index 00000000..b9c2f9cf Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/icon_3005_8.png differ diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 54a6017a..cb8689ec 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -544,7 +544,6 @@ android:id="@+id/main_activity_bottom_sheet_group" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:visibility="gone" app:constraint_referenced_ids=" main_bottom_route_text, main_bottom_offline_map_text, @@ -552,7 +551,7 @@ main_bottom_task_text,main_bottom_route, main_bottom_offline_map, main_bottom_res, - main_activity_bottom_sheet_bg, + main_activity_bottom_sheet_bg, main_bottom_task,main_bottom_home" /> diff --git a/collect-library/src/main/assets/editormarker.xml b/collect-library/src/main/assets/editormarker.xml index b418918f..4689d6bc 100644 --- a/collect-library/src/main/assets/editormarker.xml +++ b/collect-library/src/main/assets/editormarker.xml @@ -1811,7 +1811,7 @@ - + diff --git a/collect-library/src/main/assets/omdb/appendix/1105_00101_0.svg b/collect-library/src/main/assets/omdb/appendix/1105_00101_0.svg index 7e87f75d..18fca483 100644 --- a/collect-library/src/main/assets/omdb/appendix/1105_00101_0.svg +++ b/collect-library/src/main/assets/omdb/appendix/1105_00101_0.svg @@ -1,30 +1,36 @@ - - - qita_icon - Created with Sketch. + - + + + + + + + + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + \ No newline at end of file diff --git a/collect-library/src/main/assets/omdb/appendix/1105_00101_01.svg b/collect-library/src/main/assets/omdb/appendix/1105_00101_01.svg new file mode 100644 index 00000000..7e87f75d --- /dev/null +++ b/collect-library/src/main/assets/omdb/appendix/1105_00101_01.svg @@ -0,0 +1,30 @@ + + + + qita_icon + Created with Sketch. + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/collect-library/src/main/assets/omdb/appendix/1105_00101_0_s.svg b/collect-library/src/main/assets/omdb/appendix/1105_00101_0_s.svg new file mode 100644 index 00000000..172175ad --- /dev/null +++ b/collect-library/src/main/assets/omdb/appendix/1105_00101_0_s.svg @@ -0,0 +1,59 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/collect-library/src/main/java/com/navinfo/collect/library/map/NIMapView.java b/collect-library/src/main/java/com/navinfo/collect/library/map/NIMapView.java index 5327e1f0..423f1e96 100644 --- a/collect-library/src/main/java/com/navinfo/collect/library/map/NIMapView.java +++ b/collect-library/src/main/java/com/navinfo/collect/library/map/NIMapView.java @@ -262,7 +262,7 @@ public final class NIMapView extends RelativeLayout { // 增加比例尺图层 NaviMapScaleBar naviMapScaleBar = new NaviMapScaleBar(getVtmMap()); - mapScaleBarLayer = naviMapScaleBar.initScaleBarLayer(GLViewport.Position.BOTTOM_LEFT, 10, 0); + mapScaleBarLayer = naviMapScaleBar.initScaleBarLayer(GLViewport.Position.BOTTOM_LEFT, 256, 60); // if (gridLayer == null) { // gridLayer = new TileGridLayer(getVtmMap());