From 8fba6764bba28c67894976203ddf802e54dcdabc Mon Sep 17 00:00:00 2001 From: squallzhjch Date: Tue, 15 Aug 2023 09:47:55 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=85=A8=E5=B0=81?= =?UTF-8?q?=E9=97=AD=EF=BC=8C=E5=8C=9D=E9=81=93=E5=86=85=E5=AE=B9=E6=98=BE?= =?UTF-8?q?=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../omqs/ui/activity/map/MainActivity.kt | 10 ++- .../omqs/ui/activity/map/MainViewModel.kt | 83 ++++++++++++------- .../com/navinfo/omqs/ui/widget/SignUtil.kt | 47 +++++++++++ vtm | 2 +- 4 files changed, 107 insertions(+), 35 deletions(-) diff --git a/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainActivity.kt b/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainActivity.kt index 26e67c78..3c714088 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainActivity.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainActivity.kt @@ -158,9 +158,13 @@ class MainActivity : BaseActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) - val checkIntent = Intent() - checkIntent.action = TextToSpeech.Engine.ACTION_CHECK_TTS_DATA - someActivityResultLauncher.launch(checkIntent) + try { + val checkIntent = Intent() + checkIntent.action = TextToSpeech.Engine.ACTION_CHECK_TTS_DATA + someActivityResultLauncher.launch(checkIntent) + } catch (e: Exception) { + Log.e("jingo", "检查TTS失败 $e") + } binding = DataBindingUtil.setContentView(this, R.layout.activity_main) diff --git a/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainViewModel.kt b/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainViewModel.kt index 84761c47..a741ab5e 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainViewModel.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainViewModel.kt @@ -484,11 +484,11 @@ class MainViewModel @Inject constructor( captureLinkState = true if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { -/* val linkList = realmOperateHelper.queryLink( + val linkList = realmOperateHelper.queryLink( point = point, - )*/ + ) - val linkList = realmOperateHelper.queryLine(point = point, buffer = 2.5, table = "OMDB_LANE_MARK_BOUNDARYTYPE") +// val linkList = realmOperateHelper.queryLine(point = point, buffer = 2.5, table = "OMDB_LANE_MARK_BOUNDARYTYPE") var hisRoadName = false @@ -532,11 +532,19 @@ class MainViewModel @Inject constructor( ) Log.e("jingo", "捕捉到的数据code ${element.code}") when (element.code) { + //全封闭 + 2022 -> { + if (signBean.iconText.isNotEmpty()) { + topSignList.add( + signBean + ) + } + } //车道数,种别,功能等级,线限速,道路方向 - 2041, 2008, 2002, 2019, 2010 -> topSignList.add( - signBean - ) - + 2041, 2008, 2002, 2019, 2010, 2037 -> + topSignList.add( + signBean + ) 4002, 4003, 4004, 4010, 4022, 4601 -> signList.add( signBean ) @@ -1100,13 +1108,13 @@ class MainViewModel @Inject constructor( * 设置测量类型 0:距离 2:面积 3:角度 */ fun setMeasuringToolType(type: MeasureLayerHandler.MEASURE_TYPE) { - if(measuringType != type) { + if (measuringType != type) { measuringType = type mapController.measureLayerHandler.clear() } } - fun click2Dor3D(){ + fun click2Dor3D() { viewModelScope.launch(Dispatchers.IO) { Log.e( "qj", @@ -1122,39 +1130,48 @@ class MainViewModel @Inject constructor( * @param searchEnum 枚举类 * @param msg 搜索内容 */ - fun search(searchEnum: SearchEnum,msg:String,dialog:DialogInterface){ - if(searchEnum!=null&&msg.isNotEmpty()&&dialog!=null){ + fun search(searchEnum: SearchEnum, msg: String, dialog: DialogInterface) { + if (searchEnum != null && msg.isNotEmpty() && dialog != null) { when (searchEnum) { SearchEnum.LINK -> { - viewModelScope.launch(Dispatchers.IO) { - val link = realmOperateHelper.queryLink(linkPid = msg) - if(link!=null){ - link?.let { l -> - mapController.lineHandler.showLine(l.geometry) - dialog.dismiss() - } - }else{ - withContext(Dispatchers.Main){ - Toast.makeText(mapController.mMapView.context, "未查询到数据", Toast.LENGTH_SHORT).show() - } - } - } + viewModelScope.launch(Dispatchers.IO) { + val link = realmOperateHelper.queryLink(linkPid = msg) + if (link != null) { + link?.let { l -> + mapController.lineHandler.showLine(l.geometry) + dialog.dismiss() + } + } else { + withContext(Dispatchers.Main) { + Toast.makeText( + mapController.mMapView.context, + "未查询到数据", + Toast.LENGTH_SHORT + ).show() + } + } + } } SearchEnum.MARK -> { viewModelScope.launch(Dispatchers.IO) { val qsRecordBean = realmOperateHelper.queryQcRecordBean(markId = msg) - if(qsRecordBean!=null){ + if (qsRecordBean != null) { qsRecordBean?.let { l -> - val naviController = (mapController.mMapView.context as Activity).findNavController(R.id.main_activity_right_fragment) + val naviController = + (mapController.mMapView.context as Activity).findNavController(R.id.main_activity_right_fragment) val bundle = Bundle() bundle.putString("QsId", l.id) naviController.navigate(R.id.EvaluationResultFragment, bundle) ToastUtils.showLong(l.classType) dialog.dismiss() } - }else{ - withContext(Dispatchers.Main){ - Toast.makeText(mapController.mMapView.context, "未查询到数据", Toast.LENGTH_SHORT).show() + } else { + withContext(Dispatchers.Main) { + Toast.makeText( + mapController.mMapView.context, + "未查询到数据", + Toast.LENGTH_SHORT + ).show() } } } @@ -1165,10 +1182,14 @@ class MainViewModel @Inject constructor( val x = parts[0].toDouble() val y = parts[1].toDouble() mapController.animationHandler.animationByLatLon(y, x) - mapController.markerHandle.addMarker(GeoPoint(y,x),"location") + mapController.markerHandle.addMarker(GeoPoint(y, x), "location") dialog.dismiss() } else { - Toast.makeText(mapController.mMapView.context, "输入格式不正确", Toast.LENGTH_SHORT).show() + Toast.makeText( + mapController.mMapView.context, + "输入格式不正确", + Toast.LENGTH_SHORT + ).show() } } } diff --git a/app/src/main/java/com/navinfo/omqs/ui/widget/SignUtil.kt b/app/src/main/java/com/navinfo/omqs/ui/widget/SignUtil.kt index f0b50afc..08482f52 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/widget/SignUtil.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/widget/SignUtil.kt @@ -28,6 +28,10 @@ class SignUtil { 2010 -> getRoadDirectionText(data) //常规线限速 2019 -> getLineSpeedLimitText(data) + //全封闭 + 2022 -> getConAccessText(data) + //匝道 + 2037 -> getRampText(data) //车道数 2041 -> getLaneNumText(data) //常规点限速,条件点限速 @@ -43,6 +47,45 @@ class SignUtil { return "${data.properties["maxSpeed"]}" } + /** + * 获取全封闭值 + */ + private fun getConAccessText(data: RenderEntity): String { + val conAccess = data.properties["conAccess"] + try { + if (conAccess?.toInt() == 1) + return "是" + } catch (e: Throwable) { + + } + return "" + } + + /** + * 获取匝道值 + */ + private fun getRampText(data: RenderEntity): String { + try { + val ramp = data.properties["formOfWay"] + return when (ramp?.toInt()) { + 93 -> "普通匝" + 98 -> "高入匝" + 99 -> "高出匝" + 100 -> "高连匝" + 102 -> "直入匝" + 103 -> "直出匝" + 104 -> "出入匝" + + else -> { + "" + } + } + } catch (e: Throwable) { + + } + return "" + } + /** *获取道路功能等级文字 */ @@ -86,6 +129,10 @@ class SignUtil { 2013 -> "车道边界类型" //常规线限速 2019 -> "线限速" + //全封闭 + 2022 -> "全封闭" + //匝道 + 2037 -> "匝道" //车道数 2041 -> "车道数" //常规点限速 diff --git a/vtm b/vtm index c1234a9f..bd83adb7 160000 --- a/vtm +++ b/vtm @@ -1 +1 @@ -Subproject commit c1234a9fd22d69d83eb50bdaa8eda6a56247dc94 +Subproject commit bd83adb7df464686b3f19e8a08aeef2cb49f5c17 From 2431fc3bdda1b2478aa52fce75d147b563315f98 Mon Sep 17 00:00:00 2001 From: squallzhjch Date: Wed, 16 Aug 2023 11:22:07 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E9=81=93=E8=B7=AF?= =?UTF-8?q?=E5=B1=9E=E6=80=A7=EF=BC=8C=E8=B7=A8=E7=BA=BF=E7=AB=8B=E4=BA=A4?= =?UTF-8?q?=EF=BC=8C=E5=8C=9D=E9=81=93=EF=BC=8C=E4=B8=8A=E4=B8=8B=E7=BA=BF?= =?UTF-8?q?=E5=88=86=E7=A6=BB=EF=BC=8C=E9=9A=A7=E9=81=93=EF=BC=8C=E7=8E=AF?= =?UTF-8?q?=E5=B2=9B=E7=9A=84=E9=81=93=E8=B7=AF=E5=B1=9E=E6=80=A7=E5=B1=95?= =?UTF-8?q?=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/assets/omdb_config.json | 4 +- .../com/navinfo/omqs/db/RealmOperateHelper.kt | 16 +- .../omqs/ui/activity/map/MainViewModel.kt | 38 ++-- .../omqs/ui/activity/map/TopSignAdapter.kt | 11 +- .../com/navinfo/omqs/ui/widget/SignUtil.kt | 83 +++++++- app/src/main/res/layout/activity_main.xml | 2 +- .../collect/library/enum/DataCodeEnum.kt | 196 +++++------------- 7 files changed, 169 insertions(+), 181 deletions(-) diff --git a/app/src/main/assets/omdb_config.json b/app/src/main/assets/omdb_config.json index 325256e2..650ce626 100644 --- a/app/src/main/assets/omdb_config.json +++ b/app/src/main/assets/omdb_config.json @@ -111,7 +111,7 @@ "name": "全封闭" }, "2037": { - "table": "OMDB_TAMP", + "table": "OMDB_RAMP", "code": 2037, "name": "匝道" }, @@ -157,7 +157,7 @@ "transformer2Code": "" }, "2204":{ - "table": "OMDB_RoundAbout", + "table": "OMDB_ROUNDABOUT", "code": 2204, "name": "环岛", "zoomMin": 15, diff --git a/app/src/main/java/com/navinfo/omqs/db/RealmOperateHelper.kt b/app/src/main/java/com/navinfo/omqs/db/RealmOperateHelper.kt index e6fa44bb..6f66f784 100644 --- a/app/src/main/java/com/navinfo/omqs/db/RealmOperateHelper.kt +++ b/app/src/main/java/com/navinfo/omqs/db/RealmOperateHelper.kt @@ -63,7 +63,7 @@ class RealmOperateHelper() { val realmList = realm.where(RenderEntity::class.java) .equalTo("table", "OMDB_RD_LINK") .and() - .rawPredicate("tileX>=$xStart and tileX<=$xEnd and tileY>=$yStart and tileY<=$yEnd").and().equalTo("taskId",RealmDBParamUtils.getTaskId()).and().between("enable",1,2) + .rawPredicate("tileX>=$xStart and tileX<=$xEnd and tileY>=$yStart and tileY<=$yEnd").and().equalTo("taskId",RealmDBParamUtils.getTaskId())//.and().between("enable",1,2) .findAll() // 将获取到的数据和查询的polygon做相交,只返回相交的数据 val dataList = realm.copyFromRealm(realmList) @@ -126,7 +126,7 @@ class RealmOperateHelper() { val realmList = realm.where(RenderEntity::class.java) .equalTo("table", table) .and() - .rawPredicate("tileX>=$xStart and tileX<=$xEnd and tileY>=$yStart and tileY<=$yEnd").and().equalTo("taskId",RealmDBParamUtils.getTaskId()).and().between("enable",1,2) + .rawPredicate("tileX>=$xStart and tileX<=$xEnd and tileY>=$yStart and tileY<=$yEnd").and().equalTo("taskId",RealmDBParamUtils.getTaskId())//.and().between("enable",1,2) .findAll() // 将获取到的数据和查询的polygon做相交,只返回相交的数据 val dataList = realm.copyFromRealm(realmList) @@ -165,7 +165,7 @@ class RealmOperateHelper() { val realm = Realm.getDefaultInstance() val realmList = realm.where(HadLinkDvoBean::class.java) - .equalTo("taskId",RealmDBParamUtils.getTaskId()).and().between("enable",1,2) + .equalTo("taskId",RealmDBParamUtils.getTaskId())//.and().between("enable",1,2) .findAll() var linkBean: HadLinkDvoBean? = null var nearLast: Double = 99999.99 @@ -189,7 +189,7 @@ class RealmOperateHelper() { val realmR = realm.where(RenderEntity::class.java) .equalTo("table", "OMDB_RD_LINK") .and() - .equalTo("properties['${LinkTable.linkPid}']", linkPid).and().equalTo("taskId",RealmDBParamUtils.getTaskId()).and().between("enable",1,2) + .equalTo("properties['${LinkTable.linkPid}']", linkPid).and().equalTo("taskId",RealmDBParamUtils.getTaskId())//.and().between("enable",1,2) .findFirst() if (realmR != null) { link = realm.copyFromRealm(realmR) @@ -207,7 +207,7 @@ class RealmOperateHelper() { val realmR = realm.where(QsRecordBean::class.java) .equalTo("table", "QsRecordBean") .and() - .equalTo("id", markId).and().equalTo("taskId",RealmDBParamUtils.getTaskId()).and().between("enable",1,2) + .equalTo("id", markId).and().equalTo("taskId",RealmDBParamUtils.getTaskId())//.and().between("enable",1,2) .findFirst() if (realmR != null) { qsRecordBean = realm.copyFromRealm(realmR) @@ -221,7 +221,7 @@ class RealmOperateHelper() { val realm = Realm.getDefaultInstance() val realmR = realm.where(RenderEntity::class.java) - .equalTo("properties['${LinkTable.linkPid}']", linkPid).and().equalTo("taskId",RealmDBParamUtils.getTaskId()).and().between("enable",1,2) + .equalTo("properties['${LinkTable.linkPid}']", linkPid).and().equalTo("taskId",RealmDBParamUtils.getTaskId())//.and().between("enable",1,2) .findAll() val dataList = realm.copyFromRealm(realmR) @@ -266,7 +266,7 @@ class RealmOperateHelper() { val realmList = realm.where(RenderEntity::class.java) .notEqualTo("table", "OMDB_RD_LINK") .and() - .rawPredicate("tileX>=$xStart and tileX<=$xEnd and tileY>=$yStart and tileY<=$yEnd").and().equalTo("taskId",RealmDBParamUtils.getTaskId()).and().between("enable",1,2) + .rawPredicate("tileX>=$xStart and tileX<=$xEnd and tileY>=$yStart and tileY<=$yEnd").and().equalTo("taskId",RealmDBParamUtils.getTaskId())//.and().between("enable",1,2) .findAll() // 将获取到的数据和查询的polygon做相交,只返回相交的数据 val queryResult = realmList?.stream()?.filter { @@ -296,7 +296,7 @@ class RealmOperateHelper() { val realmList = realm.where(RenderEntity::class.java) .notEqualTo("table", "OMDB_RD_LINK") .and() - .equalTo("properties['${LinkTable.linkPid}']", linkPid).and().equalTo("taskId",RealmDBParamUtils.getTaskId()).and().between("enable",1,2) + .equalTo("properties['${LinkTable.linkPid}']", linkPid).and().equalTo("taskId",RealmDBParamUtils.getTaskId())//.and().between("enable",1,2) .findAll() result.addAll(realm.copyFromRealm(realmList)) return result diff --git a/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainViewModel.kt b/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainViewModel.kt index f158615a..95516104 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainViewModel.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainViewModel.kt @@ -8,6 +8,7 @@ import android.graphics.drawable.AnimationDrawable import android.graphics.drawable.BitmapDrawable import android.os.Build import android.os.Bundle +import android.provider.ContactsContract.Data import android.text.TextUtils import android.util.Log import android.view.Gravity @@ -510,7 +511,7 @@ class MainViewModel @Inject constructor( var elementList = realmOperateHelper.queryLinkByLinkPid(it) for (element in elementList) { - if (element.code == "2011") { + if (element.code == DataCodeEnum.OMDB_LINK_NAME.code) { hisRoadName = true liveDataRoadName.postValue(element) continue @@ -533,27 +534,36 @@ class MainViewModel @Inject constructor( ) Log.e("jingo", "捕捉到的数据code ${element.code}") when (element.code) { - //全封闭 - 2022 -> { - if (signBean.iconText.isNotEmpty()) { + DataCodeEnum.OMDB_MULTI_DIGITIZED.code,//上下线分离 + DataCodeEnum.OMDB_CON_ACCESS.code,//全封闭 + -> { + if (signBean.iconText != "") { topSignList.add( signBean ) } } -// //车道数,种别,功能等级,线限速,道路方向 -// 2041, 2008, 2002, 2019, 2010, 2037 -> -// topSignList.add( -// signBean -// ) -// 4002, 4003, 4004, 4010, 4022, 4601 -> signList.add( -// signBean -// ) - DataCodeEnum.OMDB_LANE_NUM.code, DataCodeEnum.OMDB_RD_LINK_KIND.code, DataCodeEnum.OMDB_RD_LINK_FUNCTION_CLASS.code, DataCodeEnum.OMDB_LINK_SPEEDLIMIT.code, DataCodeEnum.OMDB_LINK_DIRECT.code -> topSignList.add( + DataCodeEnum.OMDB_LANE_NUM.code, //车道数 + DataCodeEnum.OMDB_RD_LINK_KIND.code,//种别, + DataCodeEnum.OMDB_RD_LINK_FUNCTION_CLASS.code, // 功能等级, + DataCodeEnum.OMDB_LINK_SPEEDLIMIT.code, //线限速, + DataCodeEnum.OMDB_LINK_DIRECT.code,//道路方向, + DataCodeEnum.OMDB_RAMP.code, //匝道 + DataCodeEnum.OMDB_BRIDGE.code,//桥 + DataCodeEnum.OMDB_TUNNEL.code,//隧道 + DataCodeEnum.OMDB_ROUNDABOUT.code,//环岛 + DataCodeEnum.OMDB_LINK_ATTRIBUTE_MAIN_SIDE_ACCESS.code,//出入口 + -> topSignList.add( signBean ) - DataCodeEnum.OMDB_SPEEDLIMIT.code, DataCodeEnum.OMDB_SPEEDLIMIT_COND.code, DataCodeEnum.OMDB_SPEEDLIMIT_VAR.code, DataCodeEnum.OMDB_ELECTRONICEYE.code, DataCodeEnum.OMDB_TRAFFICLIGHT.code, DataCodeEnum.OMDB_LANEINFO.code -> signList.add( + DataCodeEnum.OMDB_SPEEDLIMIT.code,//常规点限速 + DataCodeEnum.OMDB_SPEEDLIMIT_COND.code,//条件点限速 + DataCodeEnum.OMDB_SPEEDLIMIT_VAR.code,//可变点限速 + DataCodeEnum.OMDB_ELECTRONICEYE.code,//电子眼 + DataCodeEnum.OMDB_TRAFFICLIGHT.code,//交通灯 + DataCodeEnum.OMDB_LANEINFO.code,//车信 + -> signList.add( signBean ) } diff --git a/app/src/main/java/com/navinfo/omqs/ui/activity/map/TopSignAdapter.kt b/app/src/main/java/com/navinfo/omqs/ui/activity/map/TopSignAdapter.kt index 1e01ed5d..766ba731 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/activity/map/TopSignAdapter.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/activity/map/TopSignAdapter.kt @@ -3,6 +3,7 @@ package com.navinfo.omqs.ui.activity.map import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import com.navinfo.collect.library.enum.DataCodeEnum import com.navinfo.omqs.R import com.navinfo.omqs.bean.SignBean import com.navinfo.omqs.databinding.AdapterTopSignBinding @@ -23,7 +24,15 @@ class TopSignAdapter(private var itemListener: ((Int, SignBean) -> Unit?)? = nul val item = data[position] if (item.iconId != 0) bd.topSignText.background = holder.viewBinding.root.context.getDrawable(item.iconId) - bd.topSignName.text = item.name + when (item.renderEntity.code) { + DataCodeEnum.OMDB_CON_ACCESS.code, + DataCodeEnum.OMDB_MULTI_DIGITIZED.code, + DataCodeEnum.OMDB_TUNNEL.code, + DataCodeEnum.OMDB_ROUNDABOUT.code + -> bd.topSignName.text = "" + else -> bd.topSignName.text = item.name + } + bd.topSignText.text = item.iconText if (data.size == 1) { bd.topSignLeftLine.visibility = View.GONE diff --git a/app/src/main/java/com/navinfo/omqs/ui/widget/SignUtil.kt b/app/src/main/java/com/navinfo/omqs/ui/widget/SignUtil.kt index d70915ec..c34521fe 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/widget/SignUtil.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/widget/SignUtil.kt @@ -30,17 +30,46 @@ class SignUtil { //常规线限速 DataCodeEnum.OMDB_LINK_SPEEDLIMIT.code -> getLineSpeedLimitText(data) //全封闭 - 2022 -> getConAccessText(data) + DataCodeEnum.OMDB_CON_ACCESS.code -> getConAccessText(data) //匝道 - 2037 -> getRampText(data) + DataCodeEnum.OMDB_RAMP.code -> getRampText(data) //车道数 DataCodeEnum.OMDB_LANE_NUM.code -> getLaneNumText(data) //常规点限速,条件点限速 - DataCodeEnum.OMDB_SPEEDLIMIT.code, DataCodeEnum.OMDB_SPEEDLIMIT_COND.code -> getSpeedLimitMaxText(data) + DataCodeEnum.OMDB_SPEEDLIMIT.code, DataCodeEnum.OMDB_SPEEDLIMIT_COND.code -> getSpeedLimitMaxText( + data + ) + //上下线分离 + DataCodeEnum.OMDB_MULTI_DIGITIZED.code -> getMultiDigitized(data) + //桥 + DataCodeEnum.OMDB_BRIDGE.code -> getBridgeType(data) + //隧道 + DataCodeEnum.OMDB_TUNNEL.code -> "隧道" + //环岛 + DataCodeEnum.OMDB_ROUNDABOUT.code -> "环岛" + //主辅路出入口 + DataCodeEnum.OMDB_LINK_ATTRIBUTE_MAIN_SIDE_ACCESS.code ->"道路属性" else -> "" } } + /** + * 获取桥的类型值 + */ + private fun getBridgeType(data: RenderEntity): String { + val bridgeType = data.properties["bridgeType"] + try { + when (bridgeType?.toInt()) { + 1 -> return "固定桥" + 2 -> return "可移桥" + 3 -> return "跨线桥" + } + } catch (e: Throwable) { + + } + return "" + } + /** * 常规线限速值 */ @@ -55,7 +84,7 @@ class SignUtil { val conAccess = data.properties["conAccess"] try { if (conAccess?.toInt() == 1) - return "是" + return "全封闭" } catch (e: Throwable) { } @@ -131,9 +160,9 @@ class SignUtil { //常规线限速 DataCodeEnum.OMDB_LINK_SPEEDLIMIT.code -> "线限速" //全封闭 - 2022 -> "全封闭" + DataCodeEnum.OMDB_CON_ACCESS.code -> "全封闭" //暂时不要标题 //匝道 - 2037 -> "匝道" + DataCodeEnum.OMDB_RAMP.code -> "匝道" //车道数 DataCodeEnum.OMDB_LANE_NUM.code -> "车道数" //常规点限速 @@ -150,10 +179,21 @@ class SignUtil { DataCodeEnum.OMDB_TRAFFICLIGHT.code -> "交通灯" //车信 DataCodeEnum.OMDB_LANEINFO.code -> "车信" + //上下线分离 + DataCodeEnum.OMDB_MULTI_DIGITIZED.code -> "上下线分离" + //桥 + DataCodeEnum.OMDB_BRIDGE.code -> "桥" + //隧道 + DataCodeEnum.OMDB_TUNNEL.code -> "隧道" + //环岛 + DataCodeEnum.OMDB_ROUNDABOUT.code -> "环岛" + //主辅路出入口 + DataCodeEnum.OMDB_LINK_ATTRIBUTE_MAIN_SIDE_ACCESS.code ->"出入口" else -> "" } } + /** * 获取车道边界类型详细信息 */ @@ -343,6 +383,21 @@ class SignUtil { return result != 0 } + /** + * 获取上下线分离值 + */ + private fun getMultiDigitized(data: RenderEntity): String { + + val multiDigitized = data.properties["multiDigitized"] + try { + if (multiDigitized?.toInt() == 1) + return "上下线" + } catch (e: Throwable) { + + } + return "" + } + /** * 获取限速值文字 */ @@ -537,10 +592,22 @@ class SignUtil { stringBuffer.append("当前道路") for (item in topSignList) { when (item.renderEntity.code) { - DataCodeEnum.OMDB_RD_LINK_FUNCTION_CLASS.code -> stringBuffer.append("功能等级${item.iconText.substring(2)}级,") + DataCodeEnum.OMDB_RD_LINK_FUNCTION_CLASS.code -> stringBuffer.append( + "功能等级${ + item.iconText.substring( + 2 + ) + }级," + ) DataCodeEnum.OMDB_RD_LINK_KIND.code -> stringBuffer.append("种别${item.iconText},") DataCodeEnum.OMDB_LINK_DIRECT.code -> stringBuffer.append("${item.iconText},") - DataCodeEnum.OMDB_LANE_NUM.code -> stringBuffer.append("${item.iconText.substringBefore("|")}车道") + DataCodeEnum.OMDB_LANE_NUM.code -> stringBuffer.append( + "${ + item.iconText.substringBefore( + "|" + ) + }车道" + ) } } return stringBuffer.toString() diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 223e386e..1ea17e10 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -82,7 +82,7 @@ android:id="@+id/main_activity_top_sign_recyclerview" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_marginLeft="280dp" + android:layout_marginLeft="220dp" android:layout_marginTop="2dp" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent" /> diff --git a/collect-library/src/main/java/com/navinfo/collect/library/enum/DataCodeEnum.kt b/collect-library/src/main/java/com/navinfo/collect/library/enum/DataCodeEnum.kt index 2d05ca77..9eb2da54 100644 --- a/collect-library/src/main/java/com/navinfo/collect/library/enum/DataCodeEnum.kt +++ b/collect-library/src/main/java/com/navinfo/collect/library/enum/DataCodeEnum.kt @@ -4,161 +4,63 @@ package com.navinfo.collect.library.enum * 要素枚举定义 * */ enum class DataCodeEnum(var tableName: String, var code: String) { - OMDB_CHECKPOINT("检查点", "1012"), OMDB_RD_LINK( - "道路线", - "2001" - ), + OMDB_CHECKPOINT("检查点", "1012"), + OMDB_RD_LINK("道路线", "2001"), OMDB_RD_LINK_FUNCTION_CLASS("道路功能等级", "2002"), OMDB_LINK_ATTRIBUTE("道路属性", "2004"), - OMDB_LINK_ATTRIBUTE_SA("道路属性-SA", "2004-1"), OMDB_LINK_ATTRIBUTE_PA( - "道路属性-PA", - "2004-2" - ), - OMDB_LINK_ATTRIBUTE_FORNTAGE( - "道路属性-辅路", - "2004-3" - ), - OMDB_LINK_ATTRIBUTE_MAIN_SIDE_ACCESS( - "道路属性-主辅路出入口", - "2004-4" - ), + OMDB_LINK_ATTRIBUTE_SA("道路属性-SA", "2004-1"), + OMDB_LINK_ATTRIBUTE_PA("道路属性-PA", "2004-2"), + OMDB_LINK_ATTRIBUTE_FORNTAGE("道路属性-辅路", "2004-3"), + OMDB_LINK_ATTRIBUTE_MAIN_SIDE_ACCESS("道路属性-主辅路出入口", "2004-4"), OMDB_RD_LINK_KIND("道路种别", "2008"), - OMDB_LINK_DIRECT("道路方向", "2010"), OMDB_LINK_NAME( - "道路名", - "2011" - ), + OMDB_LINK_DIRECT("道路方向", "2010"), + OMDB_LINK_NAME("道路名", "2011"), OMDB_LANE_MARK_BOUNDARYTYPE("车道边界类型", "2013"), - OMDB_LINK_SPEEDLIMIT("常规线限速", "2019"), OMDB_LINK_SPEEDLIMIT_COND( - "条件线限速", - "2020" - ), + OMDB_LINK_SPEEDLIMIT("常规线限速", "2019"), + OMDB_LINK_SPEEDLIMIT_COND("条件线限速", "2020"), OMDB_LINK_SPEEDLIMIT_VAR("可变线限速", "2021"), OMDB_CON_ACCESS("全封闭", "2022"), - OMDB_RAMP( - "匝道", - "2037" - ), - OMDB_RAMP_1( - "普通路连接匝道", - "2037-1" - ), - OMDB_RAMP_2( - "高速入口匝道", - "2037-2" - ), - OMDB_RAMP_3( - "高速出口匝道", - "2037-3" - ), - OMDB_RAMP_4( - "高速连接匝道", - "2037-4" - ), - OMDB_RAMP_5( - "高速直连入口匝道", - "2037-5" - ), - OMDB_RAMP_6( - "高速直连出口匝道", - "2037-6" - ), - OMDB_RAMP_7( - "高速直连出口匝道高速出入口匝道", - "2037-7" - ), - OMDB_MULTI_DIGITIZED("上下线分离", "2040"), OMDB_LANE_NUM("车道数", "2041"), + OMDB_RAMP("匝道", "2037"), + OMDB_RAMP_1("普通路连接匝道", "2037-1"), + OMDB_RAMP_2("高速入口匝道", "2037-2"), + OMDB_RAMP_3("高速出口匝道", "2037-3"), + OMDB_RAMP_4("高速连接匝道", "2037-4"), + OMDB_RAMP_5("高速直连入口匝道", "2037-5"), + OMDB_RAMP_6("高速直连出口匝道", "2037-6"), + OMDB_RAMP_7("高速直连出口匝道高速出入口匝道", "2037-7"), + OMDB_MULTI_DIGITIZED("上下线分离", "2040"), + OMDB_LANE_NUM("车道数", "2041"), OMDB_VIADUCT("高架", "2043"), - OMDB_RDBOUND_BOUNDARYTYPE("道路边界类型", "2083"), OMDB_BRIDGE( - "桥", - "2201" - ), + OMDB_RDBOUND_BOUNDARYTYPE("道路边界类型", "2083"), + OMDB_BRIDGE("桥", "2201"), OMDB_TUNNEL("隧道", "2202"), - OMDB_RoundAbout( - "环岛", - "2204" - ), - OMDB_LINK_FORM1( - "道路形态1", - "2205" - ), - OMDB_LINK_FORM1_1( - "U-Turn", - "2205-1" - ), - OMDB_LINK_FORM1_2( - "提前右转", - "2205-2" - ), - OMDB_LINK_FORM1_3( - "提前左转", - "2205-3" - ), - OMDB_LINK_FORM2( - "道路形态2", - "2206" - ), - OMDB_LINK_FORM2_1( - "IC", - "2206-1" - ), - OMDB_LINK_FORM2_2( - "JCT", - "2206-2" - ), - OMDB_LINK_FORM2_3( - "跨线地道", - "2206-3" - ), - OMDB_LINK_FORM2_4( - "私道", - "2206-4" - ), - OMDB_LINK_FORM2_5( - "步行街", - "2206-5" - ), - OMDB_LINK_FORM2_6( - "公交专用道", - "2206-6" - ), - OMDB_LINK_FORM2_7( - "POI 连接路", - "2206-7" - ), - OMDB_LINK_FORM2_8( - "区域内道路", - "2206-8" - ), - OMDB_LINK_FORM2_9( - "停车场出入口连接路", - "2206-9" - ), - OMDB_LINK_FORM2_10( - "停车场内部虚拟连接路", - "2206-10" - ), - OMDB_LINK_FORM2_11( - "风景路线", - "2206-11" - ),OMDB_LINK_FORM2_12( - "车辆测试路段", - "2206-12" - ), - OMDB_LINK_FORM2_13( - "驾照考试路段", - "2206-13" - ), - + OMDB_ROUNDABOUT("环岛", "2204"), + OMDB_LINK_FORM1("道路形态1", "2205"), + OMDB_LINK_FORM1_1("U-Turn", "2205-1"), + OMDB_LINK_FORM1_2("提前右转", "2205-2"), + OMDB_LINK_FORM1_3("提前左转", "2205-3"), + OMDB_LINK_FORM2("道路形态2", "2206"), + OMDB_LINK_FORM2_1("IC", "2206-1"), + OMDB_LINK_FORM2_2("JCT", "2206-2"), + OMDB_LINK_FORM2_3("跨线地道", "2206-3"), + OMDB_LINK_FORM2_4("私道", "2206-4"), + OMDB_LINK_FORM2_5("步行街", "2206-5"), + OMDB_LINK_FORM2_6("公交专用道", "2206-6"), + OMDB_LINK_FORM2_7("POI 连接路", "2206-7"), + OMDB_LINK_FORM2_8("区域内道路", "2206-8"), + OMDB_LINK_FORM2_9("停车场出入口连接路", "2206-9"), + OMDB_LINK_FORM2_10("停车场内部虚拟连接路", "2206-10"), + OMDB_LINK_FORM2_11("风景路线", "2206-11"), + OMDB_LINK_FORM2_12("车辆测试路段", "2206-12"), + OMDB_LINK_FORM2_13("驾照考试路段", "2206-13"), OMDB_INTERSECTION("路口", "4001"), - OMDB_SPEEDLIMIT("常规点限速", "4002"), OMDB_SPEEDLIMIT_COND( - "条件点限速", - "4003" - ), - OMDB_SPEEDLIMIT_VAR("可变点限速", "4004"), OMDB_RESTRICTION("普通交限", "4006"), - OMDB_ELECTRONICEYE("电子眼", "4010"), OMDB_TRAFFICLIGHT( - "交通灯", - "4022" - ), - OMDB_LANEINFO("车信", "4601"), OMDB_LANE_LINK_LG("车道中心线", "5001") + OMDB_SPEEDLIMIT("常规点限速", "4002"), + OMDB_SPEEDLIMIT_COND("条件点限速", "4003"), + OMDB_SPEEDLIMIT_VAR("可变点限速", "4004"), + OMDB_RESTRICTION("普通交限", "4006"), + OMDB_ELECTRONICEYE("电子眼", "4010"), + OMDB_TRAFFICLIGHT("交通灯", "4022"), + OMDB_LANEINFO("车信", "4601"), + OMDB_LANE_LINK_LG("车道中心线", "5001") } From 51b9a398a4ead4c736f084171df1b189de0fda86 Mon Sep 17 00:00:00 2001 From: squallzhjch Date: Wed, 16 Aug 2023 16:43:48 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E9=81=93=E8=B7=AF?= =?UTF-8?q?=E5=B1=9E=E6=80=A7=EF=BC=8C=E9=81=93=E8=B7=AF=E5=BD=A2=E6=80=81?= =?UTF-8?q?=E5=B1=95=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../omqs/ui/activity/map/MainViewModel.kt | 50 +++++++-- .../omqs/ui/activity/map/TopSignAdapter.kt | 5 +- .../signMoreInfo/SignMoreInfoFragment.kt | 2 +- .../com/navinfo/omqs/ui/widget/SignUtil.kt | 104 +++++++++++++----- app/src/main/res/layout/adapter_road_name.xml | 5 +- 5 files changed, 120 insertions(+), 46 deletions(-) diff --git a/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainViewModel.kt b/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainViewModel.kt index 070868bf..f7b64a8e 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainViewModel.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/activity/map/MainViewModel.kt @@ -328,7 +328,7 @@ class MainViewModel @Inject constructor( val realm = realmOperateHelper.getRealmDefaultInstance() realm.executeTransaction { val objects = - realmOperateHelper.getRealmTools(QsRecordBean::class.java,false).findAll() + realmOperateHelper.getRealmTools(QsRecordBean::class.java, false).findAll() list = realm.copyFromRealm(objects) } mapController.markerHandle.removeAllQsMarker() @@ -345,7 +345,7 @@ class MainViewModel @Inject constructor( var list = mutableListOf() val realm = realmOperateHelper.getRealmDefaultInstance() realm.executeTransaction { - val objects = realmOperateHelper.getRealmTools(NoteBean::class.java,false).findAll() + val objects = realmOperateHelper.getRealmTools(NoteBean::class.java, false).findAll() list = realm.copyFromRealm(objects) } @@ -487,7 +487,7 @@ class MainViewModel @Inject constructor( if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { - val linkList = realmOperateHelper.queryLink(point = point) + val linkList = realmOperateHelper.queryLink(point = point) /* val linkList = realmOperateHelper.queryLine( point = point, @@ -559,6 +559,26 @@ class MainViewModel @Inject constructor( DataCodeEnum.OMDB_TUNNEL.code,//隧道 DataCodeEnum.OMDB_ROUNDABOUT.code,//环岛 DataCodeEnum.OMDB_LINK_ATTRIBUTE_MAIN_SIDE_ACCESS.code,//出入口 + DataCodeEnum.OMDB_LINK_ATTRIBUTE_FORNTAGE.code,//辅路 + DataCodeEnum.OMDB_LINK_ATTRIBUTE_SA.code,//SA + DataCodeEnum.OMDB_LINK_ATTRIBUTE_PA.code,//PA + 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_VIADUCT.code, -> topSignList.add( signBean ) @@ -578,17 +598,23 @@ class MainViewModel @Inject constructor( val realm = realmOperateHelper.getRealmDefaultInstance() - val entity = realmOperateHelper.getRealmTools(RenderEntity::class.java,true).and() - .equalTo("table", DataCodeEnum.OMDB_RESTRICTION.tableName).and().equalTo( - "properties['linkIn']", it - ).findFirst() + val entity = + realmOperateHelper.getRealmTools(RenderEntity::class.java, true) + .and() + .equalTo("table", DataCodeEnum.OMDB_RESTRICTION.tableName).and() + .equalTo( + "properties['linkIn']", it + ).findFirst() if (entity != null) { val outLink = entity.properties["linkOut"] - val linkOutEntity = realmOperateHelper.getRealmTools(RenderEntity::class.java,true).and() - .equalTo("table", DataCodeEnum.OMDB_RD_LINK.tableName).and().equalTo( - "properties['${RenderEntity.Companion.LinkTable.linkPid}']", - outLink - ).findFirst() + val linkOutEntity = + realmOperateHelper.getRealmTools(RenderEntity::class.java, true) + .and() + .equalTo("table", DataCodeEnum.OMDB_RD_LINK.tableName).and() + .equalTo( + "properties['${RenderEntity.Companion.LinkTable.linkPid}']", + outLink + ).findFirst() if (linkOutEntity != null) { mapController.lineHandler.linksLayer.addLine( linkOutEntity.geometry, 0x7DFF0000 diff --git a/app/src/main/java/com/navinfo/omqs/ui/activity/map/TopSignAdapter.kt b/app/src/main/java/com/navinfo/omqs/ui/activity/map/TopSignAdapter.kt index 766ba731..cf76f01b 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/activity/map/TopSignAdapter.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/activity/map/TopSignAdapter.kt @@ -3,7 +3,7 @@ package com.navinfo.omqs.ui.activity.map import android.view.LayoutInflater import android.view.View import android.view.ViewGroup -import com.navinfo.collect.library.enum.DataCodeEnum +import com.navinfo.collect.library.enums.DataCodeEnum import com.navinfo.omqs.R import com.navinfo.omqs.bean.SignBean import com.navinfo.omqs.databinding.AdapterTopSignBinding @@ -28,7 +28,8 @@ class TopSignAdapter(private var itemListener: ((Int, SignBean) -> Unit?)? = nul DataCodeEnum.OMDB_CON_ACCESS.code, DataCodeEnum.OMDB_MULTI_DIGITIZED.code, DataCodeEnum.OMDB_TUNNEL.code, - DataCodeEnum.OMDB_ROUNDABOUT.code + DataCodeEnum.OMDB_ROUNDABOUT.code, + DataCodeEnum.OMDB_VIADUCT.code, -> bd.topSignName.text = "" else -> bd.topSignName.text = item.name } diff --git a/app/src/main/java/com/navinfo/omqs/ui/fragment/signMoreInfo/SignMoreInfoFragment.kt b/app/src/main/java/com/navinfo/omqs/ui/fragment/signMoreInfo/SignMoreInfoFragment.kt index d683faa9..833596fa 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/fragment/signMoreInfo/SignMoreInfoFragment.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/fragment/signMoreInfo/SignMoreInfoFragment.kt @@ -51,7 +51,7 @@ class SignMoreInfoFragment : BaseFragment() { when (it.code) { //道路名 - DataCodeEnum.OMDB_RD_LINK.code -> { + DataCodeEnum.OMDB_LINK_NAME.code -> { val adapter = RoadNameInfoAdapter() binding.signInfoRecyclerview.adapter = adapter adapter.refreshData(SignUtil.getRoadNameList(it)) diff --git a/app/src/main/java/com/navinfo/omqs/ui/widget/SignUtil.kt b/app/src/main/java/com/navinfo/omqs/ui/widget/SignUtil.kt index 772ed298..b10fdb92 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/widget/SignUtil.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/widget/SignUtil.kt @@ -48,7 +48,30 @@ class SignUtil { //环岛 DataCodeEnum.OMDB_ROUNDABOUT.code -> "环岛" //主辅路出入口 - DataCodeEnum.OMDB_LINK_ATTRIBUTE_MAIN_SIDE_ACCESS.code ->"道路属性" + DataCodeEnum.OMDB_LINK_ATTRIBUTE_MAIN_SIDE_ACCESS.code -> "出入口" + //辅路 + DataCodeEnum.OMDB_LINK_ATTRIBUTE_FORNTAGE.code -> "辅路" + //SA + DataCodeEnum.OMDB_LINK_ATTRIBUTE_SA.code -> "SA" + //PA + DataCodeEnum.OMDB_LINK_ATTRIBUTE_PA.code -> "PA" + DataCodeEnum.OMDB_LINK_FORM1_1.code -> "U-T" + DataCodeEnum.OMDB_LINK_FORM1_2.code -> "提右" + DataCodeEnum.OMDB_LINK_FORM1_3.code -> "提左" + DataCodeEnum.OMDB_LINK_FORM2_1.code -> "IC" + DataCodeEnum.OMDB_LINK_FORM2_2.code -> "JCT" + 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 -> "POI" + DataCodeEnum.OMDB_LINK_FORM2_8.code -> "区域内" + DataCodeEnum.OMDB_LINK_FORM2_9.code -> "P出入" + DataCodeEnum.OMDB_LINK_FORM2_10.code -> "P虚拟" + DataCodeEnum.OMDB_LINK_FORM2_11.code -> "风景路" + DataCodeEnum.OMDB_LINK_FORM2_12.code -> "测试路" + DataCodeEnum.OMDB_LINK_FORM2_13.code -> "驾考路" + DataCodeEnum.OMDB_VIADUCT.code->"高架" else -> "" } } @@ -187,8 +210,31 @@ class SignUtil { DataCodeEnum.OMDB_TUNNEL.code -> "隧道" //环岛 DataCodeEnum.OMDB_ROUNDABOUT.code -> "环岛" - //主辅路出入口 - DataCodeEnum.OMDB_LINK_ATTRIBUTE_MAIN_SIDE_ACCESS.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_VIADUCT.code -> "高架" + else -> "" } } @@ -618,34 +664,32 @@ class SignUtil { */ fun getRoadNameList(data: RenderEntity): MutableList { val list = mutableListOf() - if (data.code == "2011") { - try { - val shapeStr = data.properties["shapeList"] - val array = JSONArray(shapeStr) - for (i in 0 until array.length()) { - val jsonObject = array.getJSONObject(0) - val name = jsonObject.optString("name", "") - val type = jsonObject.optInt("nameType", 0) - val seqNum = jsonObject.optInt("seqNum", 1) - val nameClass = jsonObject.optInt("nameClass", 1) - val bean = RoadNameBean( - name = name, type = type, seqNum = seqNum, nameClass = nameClass - ) - list.add(bean) - } - /** - * 排序 - */ - list.sortWith { n1, n2 -> - if (n1.nameClass != n2.nameClass) { - n1.nameClass.compareTo(n2.nameClass) - } else { - n1.seqNum.compareTo(n2.seqNum) - } - } - } catch (e: Exception) { - + try { + val shapeStr = data.properties["shapeList"] + val array = JSONArray(shapeStr) + for (i in 0 until array.length()) { + val jsonObject = array.getJSONObject(i) + val name = jsonObject.optString("name", "") + val type = jsonObject.optInt("nameType", 0) + val seqNum = jsonObject.optInt("seqNum", 1) + val nameClass = jsonObject.optInt("nameClass", 1) + val bean = RoadNameBean( + name = name, type = type, seqNum = seqNum, nameClass = nameClass + ) + list.add(bean) } + /** + * 排序 + */ + list.sortWith { n1, n2 -> + if (n1.nameClass != n2.nameClass) { + n1.nameClass.compareTo(n2.nameClass) + } else { + n1.seqNum.compareTo(n2.seqNum) + } + } + } catch (e: Exception) { + } return list } diff --git a/app/src/main/res/layout/adapter_road_name.xml b/app/src/main/res/layout/adapter_road_name.xml index 4a4d65dd..eec65679 100644 --- a/app/src/main/res/layout/adapter_road_name.xml +++ b/app/src/main/res/layout/adapter_road_name.xml @@ -1,7 +1,10 @@ + android:layout_height="wrap_content" + android:paddingTop="5dp" + android:paddingBottom="5dp" + >