[8.3.0][站点临时禁用] 数据库增加站点标志
This commit is contained in:
@@ -39,7 +39,7 @@ import java.util.concurrent.Executors
|
||||
@Database(entities = [ContrailDataBean::class, LineDataBean::class,
|
||||
SiteDataBean::class, TaskDataBean::class, TaskSiteDataBean::class,
|
||||
EventDataBean::class, WriteOffDataBean::class,PointDataBean::class
|
||||
], version = 7)
|
||||
], version = 8)
|
||||
abstract class MyDataBase : RoomDatabase() {
|
||||
|
||||
private val dbRepositorys = mutableListOf<IDbRepository>()
|
||||
@@ -114,7 +114,22 @@ abstract class MyDataBase : RoomDatabase() {
|
||||
database.execSQL("ALTER TABLE ${ContrailDataBean.tableName} ADD COLUMN source INTEGER")
|
||||
}
|
||||
}
|
||||
|
||||
private val MIGRATION_7_8 = object : Migration(7, 8) {
|
||||
override fun migrate(db: SupportSQLiteDatabase) {
|
||||
// 获取当前数据库文件名(通过database路径解析)
|
||||
CallerLogger.d(TAG, "数据库路径:${db.path?: "错误"}")
|
||||
val dbPath = db.path ?: return
|
||||
val dbFileName = dbPath.substringAfterLast(File.separator)
|
||||
// 仅当数据库是shuttle_db时,执行新增tag字段操作
|
||||
if (dbFileName == "shuttle_db") {
|
||||
// 新增tag字段:int类型,非空,默认值0
|
||||
db.execSQL("ALTER TABLE ${SiteDataBean.tableName} ADD COLUMN tag INTEGER NOT NULL DEFAULT 0")
|
||||
CallerLogger.d(TAG, "shuttle_db:给${SiteDataBean.tableName}新增tag字段成功")
|
||||
} else {
|
||||
CallerLogger.d(TAG, "非shuttle_db,跳过tag字段新增")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
fun getDBName():MyDataBase{
|
||||
@@ -164,6 +179,7 @@ abstract class MyDataBase : RoomDatabase() {
|
||||
.addMigrations(MIGRATION_4_5)
|
||||
.addMigrations(MIGRATION_5_6)
|
||||
.addMigrations(MIGRATION_6_7)
|
||||
.addMigrations(MIGRATION_7_8)
|
||||
.fallbackToDestructiveMigration()
|
||||
.setQueryCallback({ sqlQuery, bindArgs -> CallerLogger.d(TAG,"sql:$sqlQuery--->参数:$bindArgs") }, Executors.newSingleThreadExecutor())
|
||||
.build()
|
||||
|
||||
@@ -87,6 +87,12 @@ data class SiteDataBean(
|
||||
@ColumnInfo(name = "videoList", typeAffinity = ColumnInfo.TEXT)
|
||||
var videoListDB: String? = null,
|
||||
|
||||
/**
|
||||
* 站点标志 0:未赋值/默认值,与1结果一致 1:正常停靠 2:临时不停靠
|
||||
*/
|
||||
@ColumnInfo(name = "tag", typeAffinity = ColumnInfo.INTEGER, defaultValue = "0")
|
||||
var tag: Int = 0,
|
||||
|
||||
@Ignore
|
||||
var videoList:MutableList<SiteIntroduce>?=null
|
||||
) {
|
||||
@@ -96,7 +102,7 @@ data class SiteDataBean(
|
||||
}
|
||||
|
||||
override fun toString(): String {
|
||||
return "SiteDataBean(siteId=$siteId, lineId=$lineId, name=$name, nameKr=$nameKr, seq=$seq, gcjLon=$gcjLon, gcjLat=$gcjLat, lon=$lon, lat=$lat, introduction=$introduction, isPlayTts=$isPlayTts, videoList=$videoListDB)"
|
||||
return "SiteDataBean(siteId=$siteId, lineId=$lineId, name=$name, nameKr=$nameKr, seq=$seq, gcjLon=$gcjLon, gcjLat=$gcjLat, lon=$lon, lat=$lat, introduction=$introduction, isPlayTts=$isPlayTts, videoList=$videoListDB, tag=$tag)"
|
||||
}
|
||||
|
||||
override fun equals(other: Any?): Boolean {
|
||||
|
||||
Reference in New Issue
Block a user