调整任务列表的UI,

增加任务列表和道路link的筛选功能
调整问题原因面板的UI
增加经纬度定位功能
This commit is contained in:
squallzhjch
2023-05-31 15:47:38 +08:00
parent e9735ee4d8
commit b8015a8b20
20 changed files with 590 additions and 286 deletions

View File

@@ -1,9 +1,7 @@
package com.navinfo.omqs.ui.activity
import android.app.Dialog
import android.content.pm.ActivityInfo
import android.os.Bundle
import android.os.PersistableBundle
import androidx.appcompat.app.AlertDialog
import androidx.appcompat.app.AppCompatActivity
import com.google.android.material.R

View File

@@ -23,6 +23,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.RenderEntity
import com.navinfo.collect.library.data.entity.TaskBean
import com.navinfo.collect.library.map.NIMapController
import com.navinfo.collect.library.map.handler.OnQsRecordItemClickListener
import com.navinfo.collect.library.utils.GeometryTools
@@ -31,7 +32,6 @@ import com.navinfo.omqs.Constant
import com.navinfo.omqs.R
import com.navinfo.omqs.bean.ImportConfig
import com.navinfo.omqs.bean.SignBean
import com.navinfo.collect.library.data.entity.TaskBean
import com.navinfo.omqs.db.RealmOperateHelper
import com.navinfo.omqs.ui.dialog.CommonDialog
import com.navinfo.omqs.ui.manager.TakePhotoManager
@@ -115,7 +115,7 @@ class MainViewModel @Inject constructor(
})
initLocation()
//处理地图点击操作
viewModelScope.launch {
viewModelScope.launch(Dispatchers.Default) {
mapController.onMapClickFlow.collectLatest {
// testPoint = it
//线选择状态
@@ -146,9 +146,9 @@ class MainViewModel @Inject constructor(
}
mapController.lineHandler.omdbTaskLinkLayer.removeAll()
for (item in list) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
mapController.lineHandler.omdbTaskLinkLayer.setLineColor(Color.valueOf(item.color))
}
// if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
// mapController.lineHandler.omdbTaskLinkLayer.setLineColor(Color.valueOf(item.color))
// }
mapController.lineHandler.omdbTaskLinkLayer.addLineList(item.hadLinkDvoList)
}
}
@@ -213,10 +213,11 @@ class MainViewModel @Inject constructor(
//看板数据
val signList = mutableListOf<SignBean>()
val topSignList = mutableListOf<SignBean>()
mapController.lineHandler.linksLayer.clear()
if (linkList.isNotEmpty()) {
val link = linkList[0]
val linkId = link.properties[RenderEntity.Companion.LinkTable.linkPid]
Log.e("jingo", "捕捉到的linkid $linkId ${link.geometry}")
mapController.lineHandler.showLine(link.geometry)
linkId?.let {
var elementList = realmOperateHelper.queryLinkByLinkPid(it)
@@ -244,19 +245,37 @@ class MainViewModel @Inject constructor(
4002, 4003, 4004, 4022 -> signList.add(
signBean
)
4006 -> {
mapController.lineHandler.linksLayer.clear()
val inLink = element.properties["linkIn"]
val outLink = element.properties["linkOut"]
if (inLink != null){
}
}
}
}
val realm = Realm.getDefaultInstance()
val entity = realm.where(RenderEntity::class.java)
.equalTo("table", "OMDB_RESTRICTION")
.and()
.equalTo(
"properties['linkIn']",
it
).findFirst()
if (entity != null) {
val outLink = entity.properties["linkOut"]
val linkOutEntity = realm.where(RenderEntity::class.java)
.equalTo("table", "OMDB_RD_LINK")
.and()
.equalTo(
"properties['${RenderEntity.Companion.LinkTable.linkPid}']",
outLink
).findFirst()
if (linkOutEntity != null) {
mapController.lineHandler.linksLayer.addLine(
linkOutEntity.geometry,
0x7DFF0000
)
Log.e("jingo", "捕捉到的linkid $outLink ${linkOutEntity.geometry}")
}
}
}
}
liveDataTopSignList.postValue(topSignList.distinctBy { it.elementCode })
liveDataSignList.postValue(signList.distinctBy { it.elementCode })