[8.2.0][fix]解决线路和站点更新但途经点未更新的问题

This commit is contained in:
chenfufeng
2025-08-29 11:50:06 +08:00
parent 624cad54fb
commit e5d89904d0
3 changed files with 19 additions and 2 deletions

View File

@@ -30,6 +30,10 @@ object PointDb: IDbRepository {
return null
}
fun deletePointByLineIds(lineIds: List<Long>) {
pointDao?.deleteByLineId(lineIds)
}
fun addOrUpdate(serverDataList:List<PointResponse>) {
val contaiBeans = mutableListOf<PointDataBean>()
val needDelete = mutableListOf<Long>()

View File

@@ -5,6 +5,7 @@ import com.mogo.eagle.core.network.utils.digest.DigestUtils
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager
import com.mogo.och.common.module.manager.loop.BizLoopManager
import com.mogo.och.weaknet.model.SynchDataModel
import com.mogo.och.weaknet.repository.db.IDbRepository
import com.mogo.och.weaknet.repository.db.MyDataBase
import com.mogo.och.weaknet.repository.db.bean.SiteDataBean
@@ -38,6 +39,7 @@ object SiteDb: IDbRepository {
siteDataDao.insert(*serverDataList.toTypedArray())
return
}
val delPointByLineIds = mutableSetOf<Long>()
// 后台新增数据
val needAddDatas = serverDataList-localAllSites
// 后台没有本地数据库有的未分配线路
@@ -49,6 +51,7 @@ object SiteDb: IDbRepository {
val md5Source = it.toString()
val md5Hex = DigestUtils.md5Hex(md5Source)
it.md5 = md5Hex
it.lineId?.let { lineId -> delPointByLineIds.add(lineId) }
}
// 新增插入新数据
siteDataDao.insert(*needAddDatas.toTypedArray())
@@ -57,6 +60,9 @@ object SiteDb: IDbRepository {
if (needMinusDatas.isNotEmpty()) {
// 删除线路
siteDataDao.deleteById(*needMinusDatas.toTypedArray())
needMinusDatas.forEach {
it.lineId?.let { it1 -> delPointByLineIds.add(it1) }
}
}
// 交集 服务器端
@@ -86,7 +92,7 @@ object SiteDb: IDbRepository {
}
}else{
needDelete.add(siteDataBean)
siteDataBean.lineId?.let { it1 -> delPointByLineIds.add(it1) }
}
}
}
@@ -95,8 +101,15 @@ object SiteDb: IDbRepository {
siteDataDao.updateInfo(updateDateItem.siteId,updateDateItem.lineId,updateDateItem.name,updateDateItem.nameKr,
updateDateItem.seq,updateDateItem.gcjLon,updateDateItem.gcjLat,updateDateItem.lon,updateDateItem.lat,
updateDateItem.introduction,updateDateItem.isPlayTts,updateDateItem.md5,updateDateItem.videoListDB,updateDateItem.id)
updateDateItem.lineId?.let { delPointByLineIds.add(it) }
}
siteDataDao.deleteById(*needDelete.toTypedArray())
// 清除所有变更的站点
if (delPointByLineIds.isNotEmpty()) {
val delPointList = delPointByLineIds.toMutableList()
PointDb.deletePointByLineIds(delPointList)
SynchDataModel.synContraiInfo(delPointList)
}
checkData()
}
}

View File

@@ -157,7 +157,7 @@ object BusTrajectoryManager : ITrajectoryListListener {
mAutopilotControlParameters?.let {
OchChainLogManager.writeChainLogTrajectory(
"轨迹监控",
"sendTrajectoryReq() 下发轨迹 轨迹id:${it.autoPilotLine!!.lineId}"
"sendTrajectoryReq() 下发轨迹:${GsonUtils.toJson(mAutopilotControlParameters)}"
)
CallerAutoPilotControlManager.sendTrajectoryDownloadReq(it, 0)
}