数据库表迁移

This commit is contained in:
Happi (哈比)
2026-03-06 19:00:25 +08:00
parent 113ecb633a
commit 119b376720
21 changed files with 553 additions and 55 deletions

View File

@@ -0,0 +1,24 @@
import 'package:drift/drift.dart';
@DataClassName('CallLog')
class CallLogs extends Table {
TextColumn get id => text()();
IntColumn get callerId => integer().nullable()();
IntColumn get receiverId => integer().nullable()();
IntColumn get chatId => integer().nullable()();
IntColumn get duration => integer().nullable()();
IntColumn get videoCall => integer().nullable()();
IntColumn get createdAt => integer().nullable()();
IntColumn get updatedAt => integer().nullable()();
IntColumn get endedAt => integer().nullable()();
IntColumn get status => integer().nullable()();
IntColumn get isDeleted => integer().nullable()();
IntColumn get deletedAt => integer().nullable()();
IntColumn get isRead => integer().nullable()();
@override
Set<Column> get primaryKey => {id};
@override
String get tableName => 'call_log';
}

View File

@@ -0,0 +1,33 @@
import 'package:drift/drift.dart';
@DataClassName('ChatBot')
class ChatBots extends Table {
IntColumn get id => integer()();
TextColumn get name => text().nullable()();
TextColumn get username => text().nullable()();
IntColumn get botUserId => integer().nullable()();
TextColumn get icon => text().nullable()();
TextColumn get iconGaussian => text().nullable()();
TextColumn get description => text().nullable()();
TextColumn get token => text().nullable()();
IntColumn get flag => integer().nullable()();
IntColumn get status => integer().nullable()();
TextColumn get webhook => text().withDefault(const Constant(''))();
TextColumn get commands => text().withDefault(const Constant('[]'))();
TextColumn get banner => text().nullable()();
IntColumn get channelId => integer().nullable()();
IntColumn get channelGroupId => integer().nullable()();
IntColumn get deletedAt => integer().nullable()();
TextColumn get internalWebhook => text().nullable()();
IntColumn get mode => integer().nullable()();
TextColumn get redirectUrl => text().nullable()();
IntColumn get isInvitable => integer().nullable()();
IntColumn get isAllowForward => integer().nullable()();
TextColumn get tips => text().nullable()();
@override
Set<Column> get primaryKey => {id};
@override
String get tableName => 'chat_bot';
}

View File

@@ -0,0 +1,20 @@
import 'package:drift/drift.dart';
@DataClassName('ChatCategory')
class ChatCategories extends Table {
IntColumn get id => integer()();
TextColumn get name => text().nullable().unique()();
TextColumn get includedChatIds => text().nullable()();
TextColumn get excludedChatIds => text().nullable()();
IntColumn get seq => integer().nullable()();
IntColumn get isHide => integer().withDefault(const Constant(0))();
IntColumn get createdAt => integer().withDefault(const Constant(0))();
IntColumn get updatedAt => integer().withDefault(const Constant(0))();
IntColumn get deletedAt => integer().withDefault(const Constant(0))();
@override
Set<Column> get primaryKey => {id};
@override
String get tableName => 'chat_category';
}

View File

@@ -0,0 +1,58 @@
import 'package:drift/drift.dart';
@DataClassName('Chat')
class Chats extends Table {
IntColumn get id => integer()();
IntColumn get typ => integer().nullable()();
IntColumn get lastId => integer().nullable()();
IntColumn get lastTyp => integer().nullable()();
TextColumn get lastMsg => text().nullable()();
IntColumn get lastTime => integer().nullable()();
IntColumn get lastPos => integer().withDefault(const Constant(0))();
IntColumn get firstPos => integer().withDefault(const Constant(-1))();
IntColumn get msgIdx => integer().nullable()();
TextColumn get profile => text().nullable()();
TextColumn get pin => text().nullable()();
TextColumn get icon => text().nullable()();
TextColumn get iconGaussian => text().withDefault(const Constant(''))();
TextColumn get name => text().nullable()();
IntColumn get userId => integer().nullable()();
IntColumn get chatId => integer().nullable()();
IntColumn get friendId => integer().nullable()();
IntColumn get sort => integer().nullable()();
IntColumn get unreadNum => integer().nullable()();
IntColumn get unreadCount => integer().nullable()();
IntColumn get hideChatMsgIdx => integer().nullable()();
IntColumn get readChatMsgIdx => integer().nullable()();
IntColumn get otherReadIdx => integer().nullable()();
TextColumn get unreadAtMsgIdx => text().nullable()();
IntColumn get deleteTime => integer().nullable()();
IntColumn get addIndex => integer().nullable()();
IntColumn get flag => integer().withDefault(const Constant(0))();
IntColumn get flagMy => integer().nullable()();
IntColumn get autoDeleteInterval => integer().nullable()();
IntColumn get mute => integer().nullable()();
IntColumn get verified => integer().nullable()();
IntColumn get createTime => integer().nullable()();
IntColumn get startIdx => integer().nullable()();
IntColumn get isReadMsg => integer().nullable()();
TextColumn get translateOutgoing => text().withDefault(const Constant(''))();
TextColumn get translateIncoming => text().withDefault(const Constant(''))();
IntColumn get incomingIdx => integer().withDefault(const Constant(0))();
IntColumn get outgoingIdx => integer().withDefault(const Constant(0))();
IntColumn get incomingSoundId => integer().withDefault(const Constant(0))();
IntColumn get outgoingSoundId => integer().withDefault(const Constant(0))();
IntColumn get notificationSoundId => integer().withDefault(const Constant(0))();
TextColumn get chatKey => text().withDefault(const Constant(''))();
TextColumn get activeChatKey => text().withDefault(const Constant(''))();
IntColumn get coverIdx => integer().withDefault(const Constant(0))();
IntColumn get round => integer().withDefault(const Constant(0))();
IntColumn get workspaceId => integer().withDefault(const Constant(0))();
IntColumn get localPermission => integer().withDefault(const Constant(0))();
@override
Set<Column> get primaryKey => {id};
@override
String get tableName => 'chat';
}

View File

@@ -0,0 +1,36 @@
import 'package:drift/drift.dart';
@DataClassName('DiscoverMiniApp')
class DiscoverMiniApps extends Table {
TextColumn get id => text()();
TextColumn get name => text().nullable()();
TextColumn get openuid => text().nullable()();
TextColumn get devId => text().nullable()();
TextColumn get icon => text().nullable()();
TextColumn get iconGaussian => text().nullable()();
TextColumn get downloadUrl => text().nullable()();
TextColumn get description => text().nullable()();
IntColumn get version => integer().nullable()();
IntColumn get typ => integer().nullable()();
IntColumn get flag => integer().nullable()();
IntColumn get reviewStatus => integer().nullable()();
IntColumn get favoriteAt => integer().nullable()();
IntColumn get isActive => integer().nullable()();
IntColumn get createdAt => integer().nullable()();
IntColumn get updatedAt => integer().nullable()();
IntColumn get deletedAt => integer().nullable()();
RealColumn get score => real().nullable()();
TextColumn get channels => text().nullable()();
TextColumn get devName => text().nullable()();
TextColumn get pictureGaussian => text().nullable()();
TextColumn get picture => text().nullable()();
IntColumn get commentNum => integer().nullable()();
TextColumn get lastLoginAt => text().nullable()();
TextColumn get screen => text().nullable()();
@override
Set<Column> get primaryKey => {id};
@override
String get tableName => 'discover_mini_app';
}

View File

@@ -0,0 +1,36 @@
import 'package:drift/drift.dart';
@DataClassName('ExploreMiniApp')
class ExploreMiniApps extends Table {
TextColumn get id => text()();
TextColumn get name => text().nullable()();
TextColumn get openuid => text().nullable()();
TextColumn get devId => text().nullable()();
TextColumn get icon => text().nullable()();
TextColumn get iconGaussian => text().nullable()();
TextColumn get downloadUrl => text().nullable()();
TextColumn get description => text().nullable()();
IntColumn get version => integer().nullable()();
IntColumn get typ => integer().nullable()();
IntColumn get flag => integer().nullable()();
IntColumn get reviewStatus => integer().nullable()();
IntColumn get favoriteAt => integer().nullable()();
IntColumn get isActive => integer().nullable()();
IntColumn get createdAt => integer().nullable()();
IntColumn get updatedAt => integer().nullable()();
IntColumn get deletedAt => integer().nullable()();
RealColumn get score => real().nullable()();
TextColumn get channels => text().nullable()();
TextColumn get devName => text().nullable()();
TextColumn get pictureGaussian => text().nullable()();
TextColumn get picture => text().nullable()();
IntColumn get commentNum => integer().nullable()();
IntColumn get lastLoginAt => integer().nullable()();
TextColumn get screen => text().nullable()();
@override
Set<Column> get primaryKey => {id};
@override
String get tableName => 'explore_mini_app';
}

View File

@@ -0,0 +1,36 @@
import 'package:drift/drift.dart';
@DataClassName('FavoriteMiniApp')
class FavoriteMiniApps extends Table {
TextColumn get id => text()();
TextColumn get name => text().nullable()();
TextColumn get openuid => text().nullable()();
TextColumn get devId => text().nullable()();
TextColumn get icon => text().nullable()();
TextColumn get iconGaussian => text().nullable()();
TextColumn get downloadUrl => text().nullable()();
TextColumn get description => text().nullable()();
IntColumn get version => integer().nullable()();
IntColumn get typ => integer().nullable()();
IntColumn get flag => integer().nullable()();
IntColumn get reviewStatus => integer().nullable()();
IntColumn get favoriteAt => integer().nullable()();
IntColumn get isActive => integer().nullable()();
IntColumn get createdAt => integer().nullable()();
IntColumn get updatedAt => integer().nullable()();
IntColumn get deletedAt => integer().nullable()();
RealColumn get score => real().nullable()();
TextColumn get channels => text().nullable()();
TextColumn get devName => text().nullable()();
TextColumn get pictureGaussian => text().nullable()();
TextColumn get picture => text().nullable()();
IntColumn get commentNum => integer().nullable()();
IntColumn get lastLoginAt => integer().nullable()();
TextColumn get screen => text().nullable()();
@override
Set<Column> get primaryKey => {id};
@override
String get tableName => 'favorite_mini_app';
}

View File

@@ -0,0 +1,16 @@
import 'package:drift/drift.dart';
@DataClassName('FavouriteDetail')
class FavouriteDetails extends Table {
IntColumn get id => integer().autoIncrement()();
TextColumn get relatedId => text().withDefault(const Constant(''))();
TextColumn get content => text().withDefault(const Constant(''))();
IntColumn get typ => integer().nullable()();
IntColumn get messageId => integer().nullable()();
IntColumn get sendId => integer().nullable()();
IntColumn get chatId => integer().nullable()();
IntColumn get sendTime => integer().nullable()();
@override
String get tableName => 'favourite_detail';
}

View File

@@ -0,0 +1,26 @@
import 'package:drift/drift.dart';
@DataClassName('Favourite')
class Favourites extends Table {
IntColumn get id => integer()();
TextColumn get parentId => text().withDefault(const Constant(''))();
TextColumn get data => text().withDefault(const Constant(''))();
IntColumn get createdAt => integer().withDefault(const Constant(0))();
IntColumn get updatedAt => integer().withDefault(const Constant(0))();
IntColumn get deletedAt => integer().withDefault(const Constant(0))();
IntColumn get source => integer().nullable()();
IntColumn get userId => integer().nullable()();
IntColumn get authorId => integer().nullable()();
TextColumn get typ => text().withDefault(const Constant('[]'))();
TextColumn get tag => text().withDefault(const Constant('[]'))();
IntColumn get isPin => integer().withDefault(const Constant(0))();
IntColumn get chatTyp => integer().withDefault(const Constant(0))();
IntColumn get isUploaded => integer().withDefault(const Constant(1))();
TextColumn get urls => text().withDefault(const Constant('[]'))();
@override
Set<Column> get primaryKey => {id};
@override
String get tableName => 'favourite';
}

View File

@@ -0,0 +1,39 @@
import 'package:drift/drift.dart';
@DataClassName('Group')
class Groups extends Table {
IntColumn get id => integer()();
IntColumn get userJoinDate => integer().nullable()();
TextColumn get name => text().nullable()();
TextColumn get profile => text().nullable()();
TextColumn get icon => text().nullable()();
TextColumn get iconGaussian => text().withDefault(const Constant(''))();
IntColumn get permission => integer().nullable()();
IntColumn get admin => integer().nullable()();
TextColumn get members => text().nullable()();
IntColumn get owner => integer().nullable()();
TextColumn get admins => text().nullable()();
IntColumn get visible => integer().nullable()();
IntColumn get speakInterval => integer().nullable()();
IntColumn get groupType => integer().nullable()();
IntColumn get roomType => integer().nullable()();
IntColumn get maxNumber => integer().nullable()();
IntColumn get channelId => integer().nullable()();
IntColumn get channelGroupId => integer().nullable()();
IntColumn get createTime => integer().nullable()();
IntColumn get updateTime => integer().nullable()();
IntColumn get addIndex => integer().nullable()();
IntColumn get maxMember => integer().nullable()();
IntColumn get expireTime => integer().nullable()();
IntColumn get workspaceId => integer().withDefault(const Constant(0))();
IntColumn get mode => integer().withDefault(const Constant(0))();
IntColumn get redpacketPlay => integer().withDefault(const Constant(0))();
TextColumn get topic => text().nullable()();
TextColumn get rp => text().nullable()();
@override
Set<Column> get primaryKey => {id};
@override
String get tableName => 'chat_group';
}

View File

@@ -0,0 +1,27 @@
import 'package:drift/drift.dart';
@DataClassName('Message')
class Messages extends Table {
IntColumn get id => integer()();
IntColumn get messageId => integer().nullable()();
IntColumn get chatId => integer().nullable()();
IntColumn get chatIdx => integer().nullable()();
IntColumn get sendId => integer().nullable()();
TextColumn get content => text().nullable()();
IntColumn get typ => integer().nullable()();
IntColumn get sendTime => integer().nullable()();
IntColumn get expireTime => integer().nullable()();
IntColumn get createTime => integer().nullable()();
TextColumn get atUsers => text().nullable()();
TextColumn get emojis => text().withDefault(const Constant('[]'))();
IntColumn get editTime => integer().withDefault(const Constant(0))();
IntColumn get refTyp => integer().withDefault(const Constant(0))();
IntColumn get flag => integer().withDefault(const Constant(0))();
TextColumn get cmid => text().withDefault(const Constant(''))();
@override
Set<Column> get primaryKey => {id};
@override
String get tableName => 'message';
}

View File

@@ -0,0 +1,17 @@
import 'package:drift/drift.dart';
@DataClassName('PendingFriendRequestHistory')
class PendingFriendRequestHistories extends Table {
IntColumn get id => integer()();
IntColumn get uid => integer()();
IntColumn get requestTime => integer()();
TextColumn get remarks => text().nullable()();
TextColumn get source => text().nullable()();
IntColumn get rs => integer().nullable()();
@override
Set<Column> get primaryKey => {id};
@override
String get tableName => 'pending_friend_request_histories';
}

View File

@@ -0,0 +1,36 @@
import 'package:drift/drift.dart';
@DataClassName('RecentMiniApp')
class RecentMiniApps extends Table {
TextColumn get id => text()();
TextColumn get name => text().nullable()();
TextColumn get openuid => text().nullable()();
TextColumn get devId => text().nullable()();
TextColumn get icon => text().nullable()();
TextColumn get iconGaussian => text().nullable()();
TextColumn get downloadUrl => text().nullable()();
TextColumn get description => text().nullable()();
IntColumn get version => integer().nullable()();
IntColumn get typ => integer().nullable()();
IntColumn get flag => integer().nullable()();
IntColumn get reviewStatus => integer().nullable()();
IntColumn get favoriteAt => integer().nullable()();
IntColumn get isActive => integer().nullable()();
IntColumn get createdAt => integer().nullable()();
IntColumn get updatedAt => integer().nullable()();
IntColumn get deletedAt => integer().nullable()();
RealColumn get score => real().nullable()();
TextColumn get channels => text().nullable()();
TextColumn get devName => text().nullable()();
TextColumn get pictureGaussian => text().nullable()();
TextColumn get picture => text().nullable()();
IntColumn get commentNum => integer().nullable()();
IntColumn get lastLoginAt => integer().nullable()();
TextColumn get screen => text().nullable()();
@override
Set<Column> get primaryKey => {id};
@override
String get tableName => 'recent_mini_app';
}

View File

@@ -0,0 +1,20 @@
import 'package:drift/drift.dart';
@DataClassName('Retry')
class Retries extends Table {
IntColumn get id => integer().autoIncrement()();
IntColumn get uid => integer().nullable()();
TextColumn get apiType => text().withDefault(const Constant(''))();
TextColumn get endPoint => text().withDefault(const Constant(''))();
TextColumn get requestData => text().withDefault(const Constant(''))();
IntColumn get synced => integer().nullable()();
TextColumn get callbackFun => text().withDefault(const Constant(''))();
IntColumn get expired => integer().nullable()();
IntColumn get replace => integer().nullable()();
IntColumn get expireTime => integer().nullable()();
IntColumn get createTime => integer().nullable()();
IntColumn get addIndex => integer().nullable()();
@override
String get tableName => 'retry';
}

View File

@@ -0,0 +1,20 @@
import 'package:drift/drift.dart';
@DataClassName('Sound')
class Sounds extends Table {
IntColumn get id => integer()();
TextColumn get filePath => text().withDefault(const Constant(''))();
IntColumn get typ => integer()();
TextColumn get name => text().withDefault(const Constant(''))();
IntColumn get createdAt => integer()();
IntColumn get updatedAt => integer()();
IntColumn get deletedAt => integer().withDefault(const Constant(0))();
IntColumn get channelGroupId => integer()();
IntColumn get isDefault => integer()();
@override
Set<Column> get primaryKey => {id};
@override
String get tableName => 'sound';
}

View File

@@ -0,0 +1,15 @@
import 'package:drift/drift.dart';
@DataClassName('Tag')
class Tags extends Table {
IntColumn get id => integer().autoIncrement()();
IntColumn get uid => integer().nullable()();
TextColumn get name => text().withDefault(const Constant(''))();
IntColumn get type => integer().nullable()();
IntColumn get createdAt => integer().nullable()();
IntColumn get updatedAt => integer().nullable()();
IntColumn get addIndex => integer().nullable()();
@override
String get tableName => 'tags';
}

View File

@@ -1,41 +0,0 @@
import 'package:drift/drift.dart';
@DataClassName('TestTable')
class TestTables extends Table {
IntColumn get id => integer().autoIncrement()();
IntColumn get uid => integer().nullable()();
TextColumn get uuid => text().nullable()();
IntColumn get lastOnline => integer().nullable()();
TextColumn get profilePic => text().nullable()();
TextColumn get profilePicGaussian => text().withDefault(const Constant(''))();
TextColumn get nickname => text().nullable()();
TextColumn get depositName => text().nullable()();
IntColumn get hasSetDepositName => integer().withDefault(const Constant(0))();
TextColumn get contact => text().nullable()();
TextColumn get countryCode => text().nullable()();
TextColumn get username => text().nullable()();
IntColumn get role => integer().nullable()();
IntColumn get relationship => integer().nullable()();
IntColumn get friendStatus => integer().nullable()();
TextColumn get bio => text().nullable()();
TextColumn get userAlias => text().nullable()();
IntColumn get requestAt => integer().nullable()();
IntColumn get deletedAt => integer().nullable()();
TextColumn get email => text().nullable()();
TextColumn get recoveryEmail => text().nullable()();
TextColumn get remark => text().nullable()();
TextColumn get source => text().nullable()();
IntColumn get addIndex => integer().nullable()();
IntColumn get incomingSoundId => integer().withDefault(const Constant(0))();
IntColumn get outgoingSoundId => integer().withDefault(const Constant(0))();
IntColumn get notificationSoundId => integer().withDefault(const Constant(0))();
IntColumn get sendMessageSoundId => integer().withDefault(const Constant(0))();
IntColumn get groupNotificationSoundId => integer().withDefault(const Constant(0))();
TextColumn get groupTags => text().withDefault(const Constant('[]'))();
TextColumn get friendTags => text().withDefault(const Constant('[]'))();
TextColumn get publicKey => text().nullable()();
IntColumn get configBits => integer().withDefault(const Constant(0))();
TextColumn get hint => text().nullable()();
@override
String get tableName => 'test_tables';
}

View File

@@ -0,0 +1,14 @@
import 'package:drift/drift.dart';
@DataClassName('UserRequestHistory')
class UserRequestHistories extends Table {
IntColumn get id => integer()();
IntColumn get status => integer().nullable()();
IntColumn get createdAt => integer().nullable()();
@override
Set<Column> get primaryKey => {id};
@override
String get tableName => 'user_request_history';
}

View File

@@ -0,0 +1,24 @@
import 'package:drift/drift.dart';
@DataClassName('Workspace')
class Workspaces extends Table {
IntColumn get id => integer()();
TextColumn get name => text().nullable()();
IntColumn get ownerId => integer().nullable()();
TextColumn get description => text().nullable()();
TextColumn get logo => text().nullable()();
IntColumn get grade => integer().nullable()();
IntColumn get cap => integer().nullable()();
TextColumn get currency => text().nullable()();
IntColumn get status => integer().nullable()();
IntColumn get createdAt => integer().nullable()();
IntColumn get updatedAt => integer().nullable()();
IntColumn get deletedAt => integer().nullable()();
IntColumn get channelGroupId => integer().nullable()();
@override
Set<Column> get primaryKey => {id};
@override
String get tableName => 'workspace';
}