Merge branch 'master' of gitlab.navinfo.com:CollectVehicle/OneMapQS
Conflicts: app/src/main/java/com/navinfo/omqs/ui/activity/map/MainViewModel.kt app/src/main/java/com/navinfo/omqs/ui/widget/SignUtil.kt vtm
This commit is contained in:
@@ -24,6 +24,7 @@ import androidx.navigation.findNavController
|
||||
import com.blankj.utilcode.util.ToastUtils
|
||||
import com.navinfo.collect.library.data.dao.impl.TraceDataBase
|
||||
import com.navinfo.collect.library.data.entity.*
|
||||
import com.navinfo.collect.library.enum.DataCodeEnum
|
||||
import com.navinfo.collect.library.garminvirbxe.HostBean
|
||||
import com.navinfo.collect.library.map.NIMapController
|
||||
import com.navinfo.collect.library.map.OnGeoPointClickListener
|
||||
@@ -509,7 +510,7 @@ class MainViewModel @Inject constructor(
|
||||
var elementList = realmOperateHelper.queryLinkByLinkPid(it)
|
||||
for (element in elementList) {
|
||||
|
||||
if (element.code == 2011) {
|
||||
if (element.code == "2011") {
|
||||
hisRoadName = true
|
||||
liveDataRoadName.postValue(element)
|
||||
continue
|
||||
@@ -540,12 +541,19 @@ class MainViewModel @Inject constructor(
|
||||
)
|
||||
}
|
||||
}
|
||||
//车道数,种别,功能等级,线限速,道路方向
|
||||
2041, 2008, 2002, 2019, 2010, 2037 ->
|
||||
topSignList.add(
|
||||
signBean
|
||||
)
|
||||
4002, 4003, 4004, 4010, 4022, 4601 -> signList.add(
|
||||
// //车道数,种别,功能等级,线限速,道路方向
|
||||
// 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(
|
||||
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(
|
||||
signBean
|
||||
)
|
||||
}
|
||||
@@ -1061,7 +1069,8 @@ class MainViewModel @Inject constructor(
|
||||
startTimer()
|
||||
}
|
||||
} else {
|
||||
Toast.makeText(mapController.mMapView.context, "无数据了!", Toast.LENGTH_LONG).show()
|
||||
Toast.makeText(mapController.mMapView.context, "无数据了!", Toast.LENGTH_LONG)
|
||||
.show()
|
||||
cancelTrace()
|
||||
}
|
||||
}
|
||||
@@ -1152,6 +1161,7 @@ class MainViewModel @Inject constructor(
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
SearchEnum.MARK -> {
|
||||
viewModelScope.launch(Dispatchers.IO) {
|
||||
val qsRecordBean = realmOperateHelper.queryQcRecordBean(markId = msg)
|
||||
@@ -1176,6 +1186,7 @@ class MainViewModel @Inject constructor(
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
SearchEnum.LOCATION -> {
|
||||
val parts = msg.split("[,,\\s]".toRegex())
|
||||
if (parts.size == 2) {
|
||||
|
||||
@@ -6,6 +6,7 @@ import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import android.widget.ImageView
|
||||
import com.navinfo.collect.library.enum.DataCodeEnum
|
||||
import com.navinfo.omqs.R
|
||||
import com.navinfo.omqs.bean.SignBean
|
||||
import com.navinfo.omqs.databinding.AdapterSignBinding
|
||||
@@ -30,7 +31,7 @@ class SignAdapter(private var listener: OnSignAdapterClickListener?) :
|
||||
private var selectMoreInfoTag: String = ""
|
||||
|
||||
override fun getItemViewType(position: Int): Int {
|
||||
if (data.isNotEmpty() && data[position].renderEntity.code == 4601) {
|
||||
if (data.isNotEmpty() && data[position].renderEntity.code == "4601") {
|
||||
return 4601
|
||||
}
|
||||
return 0
|
||||
@@ -77,7 +78,7 @@ class SignAdapter(private var listener: OnSignAdapterClickListener?) :
|
||||
bd.signMainInfo.visibility = View.GONE
|
||||
}
|
||||
bd.signSecondIcon.text = ""
|
||||
if (item.renderEntity.code == 4002) {
|
||||
if (item.renderEntity.code == DataCodeEnum.OMDB_SPEEDLIMIT.code) {
|
||||
val minSpeed = SignUtil.getSpeedLimitMinText(item.renderEntity)
|
||||
if (minSpeed != "0") {
|
||||
bd.signSecondIcon.text = minSpeed
|
||||
|
||||
@@ -180,7 +180,7 @@ class EvaluationResultViewModel @Inject constructor(
|
||||
}
|
||||
} else {
|
||||
liveDataQsRecordBean.value?.run {
|
||||
elementId = bean.renderEntity.code.toString()
|
||||
elementId = bean.renderEntity.code
|
||||
linkId = bean.linkId
|
||||
if (linkId.isNotEmpty()) {
|
||||
viewModelScope.launch {
|
||||
@@ -257,7 +257,7 @@ class EvaluationResultViewModel @Inject constructor(
|
||||
if (classType2 != null) {
|
||||
classType = classType2
|
||||
}
|
||||
classCode = bean.renderEntity.code.toString()
|
||||
classCode = bean.renderEntity.code
|
||||
}
|
||||
//如果右侧栏没数据,给个默认值
|
||||
if (liveDataQsRecordBean.value!!.classType.isEmpty()) {
|
||||
|
||||
@@ -8,6 +8,7 @@ import androidx.fragment.app.activityViewModels
|
||||
import androidx.navigation.findNavController
|
||||
import androidx.recyclerview.widget.LinearLayoutManager
|
||||
import com.navinfo.collect.library.data.entity.RenderEntity
|
||||
import com.navinfo.collect.library.enum.DataCodeEnum
|
||||
import com.navinfo.omqs.R
|
||||
import com.navinfo.omqs.bean.SignBean
|
||||
import com.navinfo.omqs.databinding.FragmentSignInfoBinding
|
||||
@@ -50,37 +51,37 @@ class SignMoreInfoFragment : BaseFragment() {
|
||||
|
||||
when (it.code) {
|
||||
//道路名
|
||||
2011 -> {
|
||||
DataCodeEnum.OMDB_RD_LINK.code -> {
|
||||
val adapter = RoadNameInfoAdapter()
|
||||
binding.signInfoRecyclerview.adapter = adapter
|
||||
adapter.refreshData(SignUtil.getRoadNameList(it))
|
||||
}
|
||||
//车道边界类型
|
||||
2013 -> {
|
||||
DataCodeEnum.OMDB_LANE_MARK_BOUNDARYTYPE.code -> {
|
||||
val adapter = LaneBoundaryAdapter()
|
||||
binding.signInfoRecyclerview.adapter = adapter
|
||||
adapter.refreshData(SignUtil.getLaneBoundaryTypeInfo(it))
|
||||
}
|
||||
//可变点限速
|
||||
2021 -> {
|
||||
DataCodeEnum.OMDB_LINK_SPEEDLIMIT_VAR.code -> {
|
||||
val adapter = TwoItemAdapter()
|
||||
binding.signInfoRecyclerview.adapter = adapter
|
||||
adapter.refreshData(SignUtil.getChangeLimitSpeedInfo(it))
|
||||
}
|
||||
//常规点限速
|
||||
4002 -> {
|
||||
DataCodeEnum.OMDB_SPEEDLIMIT.code -> {
|
||||
val adapter = TwoItemAdapter()
|
||||
binding.signInfoRecyclerview.adapter = adapter
|
||||
adapter.refreshData(SignUtil.getSpeedLimitMoreInfoText(it))
|
||||
}
|
||||
//条件点限速
|
||||
4003 -> {
|
||||
DataCodeEnum.OMDB_SPEEDLIMIT_COND.code -> {
|
||||
val adapter = TwoItemAdapter()
|
||||
binding.signInfoRecyclerview.adapter = adapter
|
||||
adapter.refreshData(SignUtil.getConditionLimitMoreInfoText(it))
|
||||
}
|
||||
//电子眼
|
||||
4010
|
||||
DataCodeEnum.OMDB_ELECTRONICEYE.code
|
||||
-> {
|
||||
val drawable = resources.getDrawable(R.drawable.icon_electronic_eye_left, null);
|
||||
drawable.setBounds(
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.navinfo.omqs.ui.widget
|
||||
|
||||
import android.util.Log
|
||||
import com.navinfo.collect.library.data.entity.RenderEntity
|
||||
import com.navinfo.collect.library.enum.DataCodeEnum
|
||||
import com.navinfo.omqs.R
|
||||
import com.navinfo.omqs.bean.RoadNameBean
|
||||
import com.navinfo.omqs.bean.SignBean
|
||||
@@ -21,21 +22,21 @@ class SignUtil {
|
||||
fun getSignIconText(data: RenderEntity): String {
|
||||
return when (data.code) {
|
||||
//道路功能等级
|
||||
2002 -> getLinkFunctionClassText(data)
|
||||
DataCodeEnum.OMDB_RD_LINK_FUNCTION_CLASS.code -> getLinkFunctionClassText(data)
|
||||
//道路种别
|
||||
2008 -> getKindText(data)
|
||||
DataCodeEnum.OMDB_RD_LINK_KIND.code -> getKindText(data)
|
||||
//道路方向
|
||||
2010 -> getRoadDirectionText(data)
|
||||
DataCodeEnum.OMDB_LINK_DIRECT.code -> getRoadDirectionText(data)
|
||||
//常规线限速
|
||||
2019 -> getLineSpeedLimitText(data)
|
||||
DataCodeEnum.OMDB_LINK_SPEEDLIMIT.code -> getLineSpeedLimitText(data)
|
||||
//全封闭
|
||||
2022 -> getConAccessText(data)
|
||||
//匝道
|
||||
2037 -> getRampText(data)
|
||||
//车道数
|
||||
2041 -> getLaneNumText(data)
|
||||
DataCodeEnum.OMDB_LANE_NUM.code -> getLaneNumText(data)
|
||||
//常规点限速,条件点限速
|
||||
4002, 4003 -> getSpeedLimitMaxText(data)
|
||||
DataCodeEnum.OMDB_SPEEDLIMIT.code, DataCodeEnum.OMDB_SPEEDLIMIT_COND.code -> getSpeedLimitMaxText(data)
|
||||
else -> ""
|
||||
}
|
||||
}
|
||||
@@ -120,35 +121,35 @@ class SignUtil {
|
||||
fun getSignNameText(data: RenderEntity): String {
|
||||
return when (data.code) {
|
||||
//道路功能等级
|
||||
2002 -> "功能等级"
|
||||
DataCodeEnum.OMDB_RD_LINK_FUNCTION_CLASS.code -> "功能等级"
|
||||
//道路种别
|
||||
2008 -> "种别"
|
||||
DataCodeEnum.OMDB_RD_LINK_KIND.code -> "种别"
|
||||
//道路方向
|
||||
2010 -> "方向"
|
||||
DataCodeEnum.OMDB_LINK_DIRECT.code -> "方向"
|
||||
//车道边界类型
|
||||
2013 -> "车道边界类型"
|
||||
DataCodeEnum.OMDB_LANE_MARK_BOUNDARYTYPE.code -> "车道边界类型"
|
||||
//常规线限速
|
||||
2019 -> "线限速"
|
||||
DataCodeEnum.OMDB_LINK_SPEEDLIMIT.code -> "线限速"
|
||||
//全封闭
|
||||
2022 -> "全封闭"
|
||||
//匝道
|
||||
2037 -> "匝道"
|
||||
//车道数
|
||||
2041 -> "车道数"
|
||||
DataCodeEnum.OMDB_LANE_NUM.code -> "车道数"
|
||||
//常规点限速
|
||||
4002 -> "常规点限速"
|
||||
DataCodeEnum.OMDB_SPEEDLIMIT.code -> "常规点限速"
|
||||
//常点限速
|
||||
4003 -> "条件点限速"
|
||||
DataCodeEnum.OMDB_SPEEDLIMIT_COND.code -> "条件点限速"
|
||||
//可变点限速
|
||||
4004 -> "可变点限速"
|
||||
DataCodeEnum.OMDB_SPEEDLIMIT_VAR.code -> "可变点限速"
|
||||
//普通交限
|
||||
4006 -> "普通交限"
|
||||
DataCodeEnum.OMDB_RESTRICTION.code -> "普通交限"
|
||||
//电子眼
|
||||
4010 -> "电子眼"
|
||||
DataCodeEnum.OMDB_ELECTRONICEYE.code -> "电子眼"
|
||||
//交通灯
|
||||
4022 -> "交通灯"
|
||||
//交限
|
||||
4601 -> "车信"
|
||||
DataCodeEnum.OMDB_TRAFFICLIGHT.code -> "交通灯"
|
||||
//车信
|
||||
DataCodeEnum.OMDB_LANEINFO.code -> "车信"
|
||||
else -> ""
|
||||
}
|
||||
}
|
||||
@@ -250,9 +251,9 @@ class SignUtil {
|
||||
return when (data.code) {
|
||||
|
||||
//条件点限速
|
||||
4003 -> getConditionLimitText(data)
|
||||
DataCodeEnum.OMDB_SPEEDLIMIT_COND.code -> getConditionLimitText(data)
|
||||
//电子眼
|
||||
4010 -> data.properties["name"].toString()
|
||||
DataCodeEnum.OMDB_ELECTRONICEYE.code -> data.properties["name"].toString()
|
||||
else -> ""
|
||||
}
|
||||
}
|
||||
@@ -441,15 +442,15 @@ class SignUtil {
|
||||
// //车道数
|
||||
// 2041 -> getLaneNumIcon(data)
|
||||
//普通点限速
|
||||
4002 -> getSpeedLimitIcon(data)
|
||||
DataCodeEnum.OMDB_SPEEDLIMIT.code -> getSpeedLimitIcon(data)
|
||||
//条件点限速
|
||||
4003 -> getConditionalSpeedLimitIcon(data)
|
||||
DataCodeEnum.OMDB_SPEEDLIMIT_COND.code -> getConditionalSpeedLimitIcon(data)
|
||||
//可变点限速
|
||||
4004 -> R.drawable.icon_change_limit
|
||||
DataCodeEnum.OMDB_SPEEDLIMIT_VAR.code -> R.drawable.icon_change_limit
|
||||
//电子眼
|
||||
4010 -> R.drawable.icon_electronic_eye
|
||||
DataCodeEnum.OMDB_ELECTRONICEYE.code -> R.drawable.icon_electronic_eye
|
||||
//交通灯
|
||||
4022 -> R.drawable.icon_traffic_light
|
||||
DataCodeEnum.OMDB_TRAFFICLIGHT.code -> R.drawable.icon_traffic_light
|
||||
else -> 0
|
||||
}
|
||||
|
||||
@@ -536,10 +537,10 @@ class SignUtil {
|
||||
stringBuffer.append("当前道路")
|
||||
for (item in topSignList) {
|
||||
when (item.renderEntity.code) {
|
||||
2002 -> stringBuffer.append("功能等级${item.iconText.substring(2)}级,")
|
||||
2008 -> stringBuffer.append("种别${item.iconText},")
|
||||
2010 -> stringBuffer.append("${item.iconText},")
|
||||
2041 -> stringBuffer.append("${item.iconText.substringBefore("|")}车道")
|
||||
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("|")}车道")
|
||||
}
|
||||
}
|
||||
return stringBuffer.toString()
|
||||
@@ -550,7 +551,7 @@ class SignUtil {
|
||||
*/
|
||||
fun getRoadNameList(data: RenderEntity): MutableList<RoadNameBean> {
|
||||
val list = mutableListOf<RoadNameBean>()
|
||||
if (data.code == 2011) {
|
||||
if (data.code == "2011") {
|
||||
try {
|
||||
val shapeStr = data.properties["shapeList"]
|
||||
val array = JSONArray(shapeStr)
|
||||
@@ -588,11 +589,11 @@ class SignUtil {
|
||||
fun isMoreInfo(element: RenderEntity): Boolean {
|
||||
val isMore = when (element.code) {
|
||||
//常规点限速
|
||||
4002 -> getSpeedLimitMinText(element) != "0"
|
||||
DataCodeEnum.OMDB_SPEEDLIMIT.code -> getSpeedLimitMinText(element) != "0"
|
||||
//条件点限速
|
||||
4003 -> true
|
||||
DataCodeEnum.OMDB_SPEEDLIMIT_COND.code -> true
|
||||
//电子眼
|
||||
4010 -> true
|
||||
DataCodeEnum.OMDB_ELECTRONICEYE.code -> true
|
||||
else -> false
|
||||
}
|
||||
return isMore
|
||||
@@ -802,11 +803,11 @@ class SignUtil {
|
||||
*/
|
||||
fun getRoadInfoIndex(element: RenderEntity): Int {
|
||||
return when (element.code) {
|
||||
2041 -> 0
|
||||
2008 -> 1
|
||||
2002 -> 2
|
||||
2019 -> 3
|
||||
2010 -> 4
|
||||
DataCodeEnum.OMDB_LANE_NUM.code -> 0
|
||||
DataCodeEnum.OMDB_RD_LINK_KIND.code -> 1
|
||||
DataCodeEnum.OMDB_RD_LINK_FUNCTION_CLASS.code -> 2
|
||||
DataCodeEnum.OMDB_LINK_SPEEDLIMIT.code -> 3
|
||||
DataCodeEnum.OMDB_LINK_DIRECT.code -> 4
|
||||
else -> 999
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user