138 lines
6.6 KiB
Java
138 lines
6.6 KiB
Java
package com.ubt.jimu.base.db;
|
|
|
|
import android.content.Context;
|
|
import android.database.sqlite.SQLiteDatabase;
|
|
import android.util.Log;
|
|
import com.ubt.jimu.gen.BlocklyProjectDao;
|
|
import com.ubt.jimu.gen.DaoMaster;
|
|
import com.ubt.jimu.gen.DiyDBModelDao;
|
|
import com.ubt.jimu.gen.DiyModelActionDao;
|
|
import com.ubt.jimu.gen.DiyProgramFileDao;
|
|
import com.ubt.jimu.gen.FirmwareVersionDao;
|
|
import com.ubt.jimu.gen.JimuMotionDao;
|
|
import com.ubt.jimu.gen.JimuSoundDao;
|
|
import com.ubt.jimu.gen.PackageDao;
|
|
import com.ubt.jimu.gen.TransportFileDao;
|
|
import com.ubtrobot.log.ALog;
|
|
import org.greenrobot.greendao.database.Database;
|
|
|
|
/* loaded from: classes.dex */
|
|
public class JimuOpenHelper extends DaoMaster.OpenHelper {
|
|
public JimuOpenHelper(Context context, String str) {
|
|
super(context, str);
|
|
}
|
|
|
|
private void addColumn(SQLiteDatabase sQLiteDatabase, String str, String str2, String str3, boolean z, int i) {
|
|
sQLiteDatabase.execSQL(createAddColumnSql(str, str2, str3, z, i));
|
|
}
|
|
|
|
private String createAddColumnSql(String str, String str2, String str3, boolean z, int i) {
|
|
StringBuilder sb = new StringBuilder();
|
|
sb.append("ALTER TABLE ");
|
|
sb.append(str);
|
|
sb.append(" ADD COLUMN ");
|
|
sb.append(str2);
|
|
sb.append(" ");
|
|
sb.append(str3);
|
|
if (z) {
|
|
sb.append(";");
|
|
} else {
|
|
sb.append(" NOT NULL DEFAULT(");
|
|
sb.append(i);
|
|
sb.append(");");
|
|
}
|
|
String sb2 = sb.toString();
|
|
ALog.a("JimuOpenHelper").d(sb2);
|
|
return sb2;
|
|
}
|
|
|
|
private void upgrade310(SQLiteDatabase sQLiteDatabase) {
|
|
addColumn(sQLiteDatabase, DiyDBModelDao.TABLENAME, DiyDBModelDao.Properties.LastUploadTime.e, "INTEGER", false, 0);
|
|
addColumn(sQLiteDatabase, TransportFileDao.TABLENAME, TransportFileDao.Properties.FileType.e, "TEXT", true, 0);
|
|
addColumn(sQLiteDatabase, TransportFileDao.TABLENAME, TransportFileDao.Properties.Uploaded.e, "INTEGER", false, 0);
|
|
addColumn(sQLiteDatabase, BlocklyProjectDao.TABLENAME, BlocklyProjectDao.Properties.LastUploadTime.e, "INTEGER", false, 0);
|
|
addColumn(sQLiteDatabase, BlocklyProjectDao.TABLENAME, BlocklyProjectDao.Properties.ModelId.e, "INTEGER", false, 0);
|
|
addColumn(sQLiteDatabase, BlocklyProjectDao.TABLENAME, BlocklyProjectDao.Properties.IsFirst.e, "INTEGER", false, 0);
|
|
addColumn(sQLiteDatabase, BlocklyProjectDao.TABLENAME, BlocklyProjectDao.Properties.IsUploadQiNiu.e, "INTEGER", false, 0);
|
|
addColumn(sQLiteDatabase, BlocklyProjectDao.TABLENAME, BlocklyProjectDao.Properties.IsUploadService.e, "INTEGER", false, 0);
|
|
addColumn(sQLiteDatabase, BlocklyProjectDao.TABLENAME, BlocklyProjectDao.Properties.IsModify.e, "INTEGER", false, 0);
|
|
addColumn(sQLiteDatabase, JimuSoundDao.TABLENAME, JimuSoundDao.Properties.IsUploadQiNiu.e, "INTEGER", false, 0);
|
|
addColumn(sQLiteDatabase, JimuSoundDao.TABLENAME, JimuSoundDao.Properties.IsSyncUbtService.e, "INTEGER", false, 0);
|
|
addColumn(sQLiteDatabase, JimuSoundDao.TABLENAME, JimuSoundDao.Properties.LastUploadTime.e, "INTEGER", false, 0);
|
|
addColumn(sQLiteDatabase, JimuSoundDao.TABLENAME, JimuSoundDao.Properties.IsFirst.e, "INTEGER", false, 0);
|
|
addColumn(sQLiteDatabase, JimuSoundDao.TABLENAME, JimuSoundDao.Properties.AudioId.e, "TEXT", true, 0);
|
|
addColumn(sQLiteDatabase, JimuMotionDao.TABLENAME, JimuMotionDao.Properties.LastUploadTime.e, "INTEGER", false, 0);
|
|
addColumn(sQLiteDatabase, JimuMotionDao.TABLENAME, JimuMotionDao.Properties.IsFirst.e, "INTEGER", false, 0);
|
|
addColumn(sQLiteDatabase, JimuMotionDao.TABLENAME, JimuMotionDao.Properties.IsUploadService.e, "INTEGER", false, 0);
|
|
addColumn(sQLiteDatabase, JimuMotionDao.TABLENAME, JimuMotionDao.Properties.ModelId.e, "INTEGER", false, 0);
|
|
DiyModelActionDao.a(wrap(sQLiteDatabase), true);
|
|
}
|
|
|
|
private void upgrade320(SQLiteDatabase sQLiteDatabase) {
|
|
addColumn(sQLiteDatabase, "PACKAGE", PackageDao.Properties.VideoThumbnail.e, "STRING", true, 0);
|
|
addColumn(sQLiteDatabase, "PACKAGE", PackageDao.Properties.VideoUrl.e, "STRING", true, 0);
|
|
addColumn(sQLiteDatabase, "PACKAGE", PackageDao.Properties.Played.e, "INTEGER", true, 0);
|
|
}
|
|
|
|
private void upgrade7(SQLiteDatabase sQLiteDatabase) {
|
|
addColumn(sQLiteDatabase, DiyDBModelDao.TABLENAME, DiyDBModelDao.Properties.CompleteState.e, "INTEGER", false, 0);
|
|
}
|
|
|
|
private void upgradeFrom122(SQLiteDatabase sQLiteDatabase) {
|
|
sQLiteDatabase.execSQL("ALTER TABLE ROBOT ADD COLUMN HAS_MISSION INTEGER;");
|
|
sQLiteDatabase.execSQL("ALTER TABLE JIMU_COURSE_MISSION ADD COLUMN MODULES_STR TEXT;");
|
|
}
|
|
|
|
private void upgradeFrom223(SQLiteDatabase sQLiteDatabase) {
|
|
addColumn(sQLiteDatabase, DiyProgramFileDao.TABLENAME, DiyProgramFileDao.Properties.Group.e, "TEXT", true, 0);
|
|
addColumn(sQLiteDatabase, DiyProgramFileDao.TABLENAME, DiyProgramFileDao.Properties.Language.e, "TEXT", true, 0);
|
|
}
|
|
|
|
private void upgradeTo5(SQLiteDatabase sQLiteDatabase) {
|
|
addColumn(sQLiteDatabase, "PACKAGE", PackageDao.Properties.EAN.e, "TEXT", true, 0);
|
|
addColumn(sQLiteDatabase, "PACKAGE", PackageDao.Properties.UPC.e, "TEXT", true, 0);
|
|
}
|
|
|
|
private void upgradeTo8(SQLiteDatabase sQLiteDatabase) {
|
|
addColumn(sQLiteDatabase, FirmwareVersionDao.TABLENAME, FirmwareVersionDao.Properties.IsForced.e, "INTEGER", false, 0);
|
|
}
|
|
|
|
@Override // com.ubt.jimu.gen.DaoMaster.OpenHelper, org.greenrobot.greendao.database.DatabaseOpenHelper
|
|
public void onCreate(Database database) {
|
|
super.onCreate(database);
|
|
}
|
|
|
|
@Override // org.greenrobot.greendao.database.DatabaseOpenHelper, android.database.sqlite.SQLiteOpenHelper
|
|
public void onUpgrade(SQLiteDatabase sQLiteDatabase, int i, int i2) {
|
|
super.onUpgrade(sQLiteDatabase, i, i2);
|
|
if (i2 != i) {
|
|
Log.i("JimuOpenHelper", "onUpgrade version " + i + " to " + i2);
|
|
if (i <= 1) {
|
|
upgradeFrom122(sQLiteDatabase);
|
|
}
|
|
if (i <= 2) {
|
|
upgradeFrom223(sQLiteDatabase);
|
|
}
|
|
if (i <= 3) {
|
|
upgrade310(sQLiteDatabase);
|
|
}
|
|
if (i <= 4) {
|
|
upgradeTo5(sQLiteDatabase);
|
|
}
|
|
if (i <= 5) {
|
|
upgrade320(sQLiteDatabase);
|
|
}
|
|
if (i <= 6) {
|
|
upgrade7(sQLiteDatabase);
|
|
}
|
|
if (i <= 7) {
|
|
upgradeTo8(sQLiteDatabase);
|
|
}
|
|
}
|
|
}
|
|
|
|
public JimuOpenHelper(Context context, String str, SQLiteDatabase.CursorFactory cursorFactory) {
|
|
super(context, str, cursorFactory);
|
|
}
|
|
}
|