修改多线程安装
This commit is contained in:
parent
ed116d2acd
commit
459970d01b
File diff suppressed because it is too large
Load Diff
@ -144,7 +144,7 @@ class TableInfo {
|
|||||||
val checkLinkId: Boolean = true//是否需要校验linkid
|
val checkLinkId: Boolean = true//是否需要校验linkid
|
||||||
val filterData: Boolean = false//是否需要过滤数据
|
val filterData: Boolean = false//是否需要过滤数据
|
||||||
val existSubCode: Boolean = false//是否存在子编码
|
val existSubCode: Boolean = false//是否存在子编码
|
||||||
|
val isDependOnOtherTable = false//是否依赖其他表
|
||||||
val catch: Boolean =
|
val catch: Boolean =
|
||||||
false//是否需要捕捉 // 需要根据丹丹提供的捕捉原则进行设置,参考文档W行设置条件,https://navinfo.feishu.cn/sheets/shtcnfsxKZhekU26ezBcHgl7aWh?sheet=BZd6yM
|
false//是否需要捕捉 // 需要根据丹丹提供的捕捉原则进行设置,参考文档W行设置条件,https://navinfo.feishu.cn/sheets/shtcnfsxKZhekU26ezBcHgl7aWh?sheet=BZd6yM
|
||||||
val name: String = ""
|
val name: String = ""
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -155,7 +155,7 @@ class TaskDownloadScope(
|
|||||||
fileNew
|
fileNew
|
||||||
)
|
)
|
||||||
if (task != null) {
|
if (task != null) {
|
||||||
importOMDBHelper.importOmdbZipFile(importOMDBHelper.omdbFile, task).collect {
|
importOMDBHelper.importOmdbZipFile(importOMDBHelper.omdbFile, task, this).collect {
|
||||||
Log.e("jingo", "数据安装 $it")
|
Log.e("jingo", "数据安装 $it")
|
||||||
if (it == "finish") {
|
if (it == "finish") {
|
||||||
change(FileDownloadStatus.DONE)
|
change(FileDownloadStatus.DONE)
|
||||||
|
@ -78,30 +78,30 @@ class PersonalCenterFragment(private var indoorDataListener: ((Boolean) -> Unit?
|
|||||||
R.id.personal_center_menu_offline_map ->
|
R.id.personal_center_menu_offline_map ->
|
||||||
findNavController().navigate(R.id.OfflineMapFragment)
|
findNavController().navigate(R.id.OfflineMapFragment)
|
||||||
|
|
||||||
R.id.personal_center_menu_obtain_data -> { // 生成数据,根据sqlite文件生成对应的zip文件
|
// R.id.personal_center_menu_obtain_data -> { // 生成数据,根据sqlite文件生成对应的zip文件
|
||||||
fileChooser.openChooseFileDialog(object : FileChooserCallback() {
|
// fileChooser.openChooseFileDialog(object : FileChooserCallback() {
|
||||||
override fun onCancel(reason: String) {
|
// override fun onCancel(reason: String) {
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
@RequiresApi(Build.VERSION_CODES.N)
|
// @RequiresApi(Build.VERSION_CODES.N)
|
||||||
override fun onResult(uri: Uri) {
|
// override fun onResult(uri: Uri) {
|
||||||
val file = UriUtils.uri2File(uri)
|
// val file = UriUtils.uri2File(uri)
|
||||||
// 开始导入数据
|
// // 开始导入数据
|
||||||
// 656e6372797000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
// // 656e6372797000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||||
CoroutineUtils.launchWithLoading(
|
// CoroutineUtils.launchWithLoading(
|
||||||
requireContext(),
|
// requireContext(),
|
||||||
loadingMessage = "生成数据..."
|
// loadingMessage = "生成数据..."
|
||||||
) {
|
// ) {
|
||||||
val importOMDBHelper: ImportOMDBHelper =
|
// val importOMDBHelper: ImportOMDBHelper =
|
||||||
importOMDBHiltFactory.obtainImportOMDBHelper(
|
// importOMDBHiltFactory.obtainImportOMDBHelper(
|
||||||
requireContext(),
|
// requireContext(),
|
||||||
file
|
// file
|
||||||
)
|
// )
|
||||||
viewModel.obtainOMDBZipData(importOMDBHelper)
|
// viewModel.obtainOMDBZipData(importOMDBHelper)
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
})
|
// })
|
||||||
}
|
// }
|
||||||
|
|
||||||
R.id.personal_center_menu_import_data -> { // 导入zip数据
|
R.id.personal_center_menu_import_data -> { // 导入zip数据
|
||||||
fileChooser.openChooseFileDialog(object : FileChooserCallback() {
|
fileChooser.openChooseFileDialog(object : FileChooserCallback() {
|
||||||
|
@ -37,119 +37,119 @@ class PersonalCenterViewModel @Inject constructor(
|
|||||||
|
|
||||||
val liveDataMessage = MutableLiveData<String>()
|
val liveDataMessage = MutableLiveData<String>()
|
||||||
|
|
||||||
/**
|
// /**
|
||||||
* 导入OMDB数据
|
// * 导入OMDB数据
|
||||||
* */
|
// * */
|
||||||
@RequiresApi(Build.VERSION_CODES.N)
|
// @RequiresApi(Build.VERSION_CODES.N)
|
||||||
suspend fun obtainOMDBZipData(importOMDBHelper: ImportOMDBHelper) {
|
// suspend fun obtainOMDBZipData(importOMDBHelper: ImportOMDBHelper) {
|
||||||
Log.d("OMQSApplication", "开始生成数据")
|
// Log.d("OMQSApplication", "开始生成数据")
|
||||||
val gson = Gson()
|
// val gson = Gson()
|
||||||
val hadLinkFile = File(importOMDBHelper.omdbFile.parentFile, "HAD_LINK.txt")
|
// val hadLinkFile = File(importOMDBHelper.omdbFile.parentFile, "HAD_LINK.txt")
|
||||||
val hadLinkKindFile = File(importOMDBHelper.omdbFile.parentFile, "HAD_LINK_KIND.txt")
|
// val hadLinkKindFile = File(importOMDBHelper.omdbFile.parentFile, "HAD_LINK_KIND.txt")
|
||||||
val hadLinkDirectFile = File(importOMDBHelper.omdbFile.parentFile, "HAD_LINK_DIRECT.txt")
|
// val hadLinkDirectFile = File(importOMDBHelper.omdbFile.parentFile, "HAD_LINK_DIRECT.txt")
|
||||||
val hadSpeedLimitFile = File(importOMDBHelper.omdbFile.parentFile, "HAD_SPEEDLIMIT.txt")
|
// val hadSpeedLimitFile = File(importOMDBHelper.omdbFile.parentFile, "HAD_SPEEDLIMIT.txt")
|
||||||
val hadSpeedLimitCondFile =
|
// val hadSpeedLimitCondFile =
|
||||||
File(importOMDBHelper.omdbFile.parentFile, "HAD_SPEEDLIMIT_COND.txt")
|
// File(importOMDBHelper.omdbFile.parentFile, "HAD_SPEEDLIMIT_COND.txt")
|
||||||
val hadSpeedLimitVarFile =
|
// val hadSpeedLimitVarFile =
|
||||||
File(importOMDBHelper.omdbFile.parentFile, "HAD_SPEEDLIMIT_VAR.txt")
|
// File(importOMDBHelper.omdbFile.parentFile, "HAD_SPEEDLIMIT_VAR.txt")
|
||||||
|
//
|
||||||
for (tableName in listOf<String>(
|
// for (tableName in listOf<String>(
|
||||||
"HAD_LINK", "HAD_SPEEDLIMIT", "HAD_SPEEDLIMIT_COND", "HAD_SPEEDLIMIT_VAR"
|
// "HAD_LINK", "HAD_SPEEDLIMIT", "HAD_SPEEDLIMIT_COND", "HAD_SPEEDLIMIT_VAR"
|
||||||
)/*listOf<String>("HAD_LINK")*/) {
|
// )/*listOf<String>("HAD_LINK")*/) {
|
||||||
importOMDBHelper.getOMDBTableData(tableName).collect {
|
// importOMDBHelper.getOMDBTableData(tableName).collect {
|
||||||
for (map in it) {
|
// for (map in it) {
|
||||||
if ("HAD_LINK" == tableName) {
|
// if ("HAD_LINK" == tableName) {
|
||||||
// 根据HAD_Link生成json文件
|
// // 根据HAD_Link生成json文件
|
||||||
val hadLink = HAD_LINK()
|
// val hadLink = HAD_LINK()
|
||||||
hadLink.LINK_PID = map["LINK_PID"].toString()
|
// hadLink.LINK_PID = map["LINK_PID"].toString()
|
||||||
hadLink.MESH = map["MESH"].toString()
|
// hadLink.MESH = map["MESH"].toString()
|
||||||
hadLink.S_NODE_PID = map["S_NODE_PID"].toString()
|
// hadLink.S_NODE_PID = map["S_NODE_PID"].toString()
|
||||||
hadLink.E_NODE_PID = map["E_NODE_PID"].toString()
|
// hadLink.E_NODE_PID = map["E_NODE_PID"].toString()
|
||||||
hadLink.GEOMETRY = map["GEOMETRY"].toString()
|
// hadLink.GEOMETRY = map["GEOMETRY"].toString()
|
||||||
// 将该数据写入到对应的txt文件
|
// // 将该数据写入到对应的txt文件
|
||||||
FileIOUtils.writeFileFromString(
|
// FileIOUtils.writeFileFromString(
|
||||||
hadLinkFile, gson.toJson(hadLink) + "\r", true
|
// hadLinkFile, gson.toJson(hadLink) + "\r", true
|
||||||
)
|
// )
|
||||||
|
//
|
||||||
val hadLinkDirect = HAD_LINK_DIRECT()
|
// val hadLinkDirect = HAD_LINK_DIRECT()
|
||||||
hadLinkDirect.LINK_PID = map["LINK_PID"].toString()
|
// hadLinkDirect.LINK_PID = map["LINK_PID"].toString()
|
||||||
hadLinkDirect.MESH = map["MESH"].toString()
|
// hadLinkDirect.MESH = map["MESH"].toString()
|
||||||
hadLinkDirect.DIRECT = map["DIRECT"].toString().toInt()
|
// hadLinkDirect.DIRECT = map["DIRECT"].toString().toInt()
|
||||||
hadLinkDirect.GEOMETRY = map["GEOMETRY"].toString()
|
// hadLinkDirect.GEOMETRY = map["GEOMETRY"].toString()
|
||||||
// 将该数据写入到对应的txt文件
|
// // 将该数据写入到对应的txt文件
|
||||||
FileIOUtils.writeFileFromString(
|
// FileIOUtils.writeFileFromString(
|
||||||
hadLinkDirectFile, gson.toJson(hadLinkDirect) + "\r", true
|
// hadLinkDirectFile, gson.toJson(hadLinkDirect) + "\r", true
|
||||||
)
|
// )
|
||||||
|
//
|
||||||
val hadLinkKind = HAD_LINK_KIND()
|
// val hadLinkKind = HAD_LINK_KIND()
|
||||||
hadLinkKind.LINK_PID = map["LINK_PID"].toString()
|
// hadLinkKind.LINK_PID = map["LINK_PID"].toString()
|
||||||
hadLinkKind.MESH = map["MESH"].toString()
|
// hadLinkKind.MESH = map["MESH"].toString()
|
||||||
hadLinkKind.KIND = map["KIND"].toString().toInt()
|
// hadLinkKind.KIND = map["KIND"].toString().toInt()
|
||||||
hadLinkKind.GEOMETRY = map["GEOMETRY"].toString()
|
// hadLinkKind.GEOMETRY = map["GEOMETRY"].toString()
|
||||||
// 将该数据写入到对应的txt文件
|
// // 将该数据写入到对应的txt文件
|
||||||
FileIOUtils.writeFileFromString(
|
// FileIOUtils.writeFileFromString(
|
||||||
hadLinkKindFile, gson.toJson(hadLinkKind) + "\r", true
|
// hadLinkKindFile, gson.toJson(hadLinkKind) + "\r", true
|
||||||
)
|
// )
|
||||||
} else if ("HAD_SPEEDLIMIT" == tableName) {
|
// } else if ("HAD_SPEEDLIMIT" == tableName) {
|
||||||
val hadSpeedlimit = HAD_SPEEDLIMIT()
|
// val hadSpeedlimit = HAD_SPEEDLIMIT()
|
||||||
hadSpeedlimit.SPEED_ID = map["SPEED_ID"].toString()
|
// hadSpeedlimit.SPEED_ID = map["SPEED_ID"].toString()
|
||||||
hadSpeedlimit.MESH = map["MESH"].toString()
|
// hadSpeedlimit.MESH = map["MESH"].toString()
|
||||||
hadSpeedlimit.LINK_PID = map["LINK_PID"].toString()
|
// hadSpeedlimit.LINK_PID = map["LINK_PID"].toString()
|
||||||
hadSpeedlimit.GEOMETRY = map["GEOMETRY"].toString()
|
// hadSpeedlimit.GEOMETRY = map["GEOMETRY"].toString()
|
||||||
hadSpeedlimit.DIRECT = map["DIRECT"].toString().toInt()
|
// hadSpeedlimit.DIRECT = map["DIRECT"].toString().toInt()
|
||||||
hadSpeedlimit.SPEED_FLAG = map["SPEED_FLAG"].toString().toInt()
|
// hadSpeedlimit.SPEED_FLAG = map["SPEED_FLAG"].toString().toInt()
|
||||||
hadSpeedlimit.MAX_SPEED = map["MAX_SPEED"].toString().toInt()
|
// hadSpeedlimit.MAX_SPEED = map["MAX_SPEED"].toString().toInt()
|
||||||
hadSpeedlimit.MIN_SPEED = map["MIN_SPEED"].toString().toInt()
|
// hadSpeedlimit.MIN_SPEED = map["MIN_SPEED"].toString().toInt()
|
||||||
// 将该数据写入到对应的txt文件
|
// // 将该数据写入到对应的txt文件
|
||||||
FileIOUtils.writeFileFromString(
|
// FileIOUtils.writeFileFromString(
|
||||||
hadSpeedLimitFile, gson.toJson(hadSpeedlimit) + "\r", true
|
// hadSpeedLimitFile, gson.toJson(hadSpeedlimit) + "\r", true
|
||||||
)
|
// )
|
||||||
} else if ("HAD_SPEEDLIMIT_COND" == tableName) {
|
// } else if ("HAD_SPEEDLIMIT_COND" == tableName) {
|
||||||
val hadSpeedlimitCond = HAD_SPEEDLIMIT_COND()
|
// val hadSpeedlimitCond = HAD_SPEEDLIMIT_COND()
|
||||||
hadSpeedlimitCond.SPEED_COND_ID = map["SPEED_COND_ID"].toString()
|
// hadSpeedlimitCond.SPEED_COND_ID = map["SPEED_COND_ID"].toString()
|
||||||
hadSpeedlimitCond.MESH = map["MESH"].toString()
|
// hadSpeedlimitCond.MESH = map["MESH"].toString()
|
||||||
hadSpeedlimitCond.LINK_PID = map["LINK_PID"].toString()
|
// hadSpeedlimitCond.LINK_PID = map["LINK_PID"].toString()
|
||||||
hadSpeedlimitCond.GEOMETRY = map["GEOMETRY"].toString()
|
// hadSpeedlimitCond.GEOMETRY = map["GEOMETRY"].toString()
|
||||||
hadSpeedlimitCond.DIRECT = map["DIRECT"].toString().toInt()
|
// hadSpeedlimitCond.DIRECT = map["DIRECT"].toString().toInt()
|
||||||
hadSpeedlimitCond.SPEED_FLAG = map["SPEED_FLAG"].toString().toInt()
|
// hadSpeedlimitCond.SPEED_FLAG = map["SPEED_FLAG"].toString().toInt()
|
||||||
hadSpeedlimitCond.MAX_SPEED = map["MAX_SPEED"].toString().toInt()
|
// hadSpeedlimitCond.MAX_SPEED = map["MAX_SPEED"].toString().toInt()
|
||||||
hadSpeedlimitCond.SPEED_DEPENDENT =
|
// hadSpeedlimitCond.SPEED_DEPENDENT =
|
||||||
map["SPEED_DEPENDENT"].toString().toInt()
|
// map["SPEED_DEPENDENT"].toString().toInt()
|
||||||
hadSpeedlimitCond.VEHICLE_TYPE = map["VEHICLE_TYPE"].toString().toInt()
|
// hadSpeedlimitCond.VEHICLE_TYPE = map["VEHICLE_TYPE"].toString().toInt()
|
||||||
hadSpeedlimitCond.VALID_PERIOD = map["VALID_PERIOD"].toString()
|
// hadSpeedlimitCond.VALID_PERIOD = map["VALID_PERIOD"].toString()
|
||||||
// 将该数据写入到对应的txt文件
|
// // 将该数据写入到对应的txt文件
|
||||||
FileIOUtils.writeFileFromString(
|
// FileIOUtils.writeFileFromString(
|
||||||
hadSpeedLimitCondFile, gson.toJson(hadSpeedlimitCond) + "\r", true
|
// hadSpeedLimitCondFile, gson.toJson(hadSpeedlimitCond) + "\r", true
|
||||||
)
|
// )
|
||||||
} else if ("HAD_SPEEDLIMIT_VAR" == tableName) {
|
// } else if ("HAD_SPEEDLIMIT_VAR" == tableName) {
|
||||||
val hadSpeedlimitVar = HAD_SPEEDLIMIT_VAR()
|
// val hadSpeedlimitVar = HAD_SPEEDLIMIT_VAR()
|
||||||
hadSpeedlimitVar.SPEED_VAR_ID = map["SPEED_ID"].toString()
|
// hadSpeedlimitVar.SPEED_VAR_ID = map["SPEED_ID"].toString()
|
||||||
hadSpeedlimitVar.MESH = map["MESH"].toString()
|
// hadSpeedlimitVar.MESH = map["MESH"].toString()
|
||||||
hadSpeedlimitVar.LINK_PID = map["LINK_PID"].toString()
|
// hadSpeedlimitVar.LINK_PID = map["LINK_PID"].toString()
|
||||||
hadSpeedlimitVar.GEOMETRY = map["GEOMETRY"].toString()
|
// hadSpeedlimitVar.GEOMETRY = map["GEOMETRY"].toString()
|
||||||
hadSpeedlimitVar.DIRECT = map["DIRECT"].toString().toInt()
|
// hadSpeedlimitVar.DIRECT = map["DIRECT"].toString().toInt()
|
||||||
hadSpeedlimitVar.LOCATION = map["LOCATION"].toString()
|
// hadSpeedlimitVar.LOCATION = map["LOCATION"].toString()
|
||||||
// 将该数据写入到对应的txt文件
|
// // 将该数据写入到对应的txt文件
|
||||||
FileIOUtils.writeFileFromString(
|
// FileIOUtils.writeFileFromString(
|
||||||
hadSpeedLimitVarFile, gson.toJson(hadSpeedlimitVar) + "\r", true
|
// hadSpeedLimitVarFile, gson.toJson(hadSpeedlimitVar) + "\r", true
|
||||||
)
|
// )
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
ZipUtils.zipFiles(
|
// ZipUtils.zipFiles(
|
||||||
mutableListOf(
|
// mutableListOf(
|
||||||
hadLinkFile,
|
// hadLinkFile,
|
||||||
hadLinkKindFile,
|
// hadLinkKindFile,
|
||||||
hadLinkDirectFile,
|
// hadLinkDirectFile,
|
||||||
hadSpeedLimitFile,
|
// hadSpeedLimitFile,
|
||||||
hadSpeedLimitCondFile,
|
// hadSpeedLimitCondFile,
|
||||||
hadSpeedLimitVarFile
|
// hadSpeedLimitVarFile
|
||||||
), File(importOMDBHelper.omdbFile.parentFile, "output.zip")
|
// ), File(importOMDBHelper.omdbFile.parentFile, "output.zip")
|
||||||
)
|
// )
|
||||||
|
//
|
||||||
Log.d("OMQSApplication", "生成数据完成")
|
// Log.d("OMQSApplication", "生成数据完成")
|
||||||
}
|
// }
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 导入OMDB数据
|
* 导入OMDB数据
|
||||||
@ -158,15 +158,16 @@ class PersonalCenterViewModel @Inject constructor(
|
|||||||
viewModelScope.launch(Dispatchers.IO) {
|
viewModelScope.launch(Dispatchers.IO) {
|
||||||
Log.d("OMQSApplication", "开始导入数据")
|
Log.d("OMQSApplication", "开始导入数据")
|
||||||
if (task != null) {
|
if (task != null) {
|
||||||
importOMDBHelper.importOmdbZipFile(importOMDBHelper.omdbFile, task).collect {
|
importOMDBHelper.importOmdbZipFile(importOMDBHelper.omdbFile, task, this).collect {
|
||||||
Log.d("importOMDBData", it)
|
Log.d("importOMDBData", it)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
val newTask = TaskBean()
|
val newTask = TaskBean()
|
||||||
newTask.id = -1
|
newTask.id = -1
|
||||||
importOMDBHelper.importOmdbZipFile(importOMDBHelper.omdbFile, newTask).collect {
|
importOMDBHelper.importOmdbZipFile(importOMDBHelper.omdbFile, newTask, this)
|
||||||
Log.d("importOMDBData", it)
|
.collect {
|
||||||
}
|
Log.d("importOMDBData", it)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Log.d("OMQSApplication", "导入数据完成")
|
Log.d("OMQSApplication", "导入数据完成")
|
||||||
}
|
}
|
||||||
|
@ -38,7 +38,6 @@ class NaviEngineNew(
|
|||||||
geoPoint: GeoPoint,
|
geoPoint: GeoPoint,
|
||||||
realm:Realm
|
realm:Realm
|
||||||
) {
|
) {
|
||||||
// val geoPoint = GeoPoint(niLocation.latitude, niLocation.longitude)
|
|
||||||
var latestRoute: HadLinkDvoBean? = null
|
var latestRoute: HadLinkDvoBean? = null
|
||||||
var lastDis = -1.0
|
var lastDis = -1.0
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user