// Code generated by gorm.io/gen. DO NOT EDIT. // Code generated by gorm.io/gen. DO NOT EDIT. // Code generated by gorm.io/gen. DO NOT EDIT. package query import ( "context" "database/sql" "gorm.io/gorm" "gorm.io/gen" "gorm.io/plugin/dbresolver" ) var ( Q = new(Query) ScaAuthMenu *scaAuthMenu ScaAuthPermissionRule *scaAuthPermissionRule ScaAuthRole *scaAuthRole ScaAuthUser *scaAuthUser ScaAuthUserDevice *scaAuthUserDevice ScaAuthUserSocial *scaAuthUserSocial ScaCommentLike *scaCommentLike ScaCommentReply *scaCommentReply ScaMessageReport *scaMessageReport ScaStorageAlbum *scaStorageAlbum ScaStorageConfig *scaStorageConfig ScaStorageInfo *scaStorageInfo ScaStorageTag *scaStorageTag ScaStorageTagInfo *scaStorageTagInfo ScaUserFollow *scaUserFollow ScaUserLevel *scaUserLevel ScaUserMessage *scaUserMessage ) func SetDefault(db *gorm.DB, opts ...gen.DOOption) { *Q = *Use(db, opts...) ScaAuthMenu = &Q.ScaAuthMenu ScaAuthPermissionRule = &Q.ScaAuthPermissionRule ScaAuthRole = &Q.ScaAuthRole ScaAuthUser = &Q.ScaAuthUser ScaAuthUserDevice = &Q.ScaAuthUserDevice ScaAuthUserSocial = &Q.ScaAuthUserSocial ScaCommentLike = &Q.ScaCommentLike ScaCommentReply = &Q.ScaCommentReply ScaMessageReport = &Q.ScaMessageReport ScaStorageAlbum = &Q.ScaStorageAlbum ScaStorageConfig = &Q.ScaStorageConfig ScaStorageInfo = &Q.ScaStorageInfo ScaStorageTag = &Q.ScaStorageTag ScaStorageTagInfo = &Q.ScaStorageTagInfo ScaUserFollow = &Q.ScaUserFollow ScaUserLevel = &Q.ScaUserLevel ScaUserMessage = &Q.ScaUserMessage } func Use(db *gorm.DB, opts ...gen.DOOption) *Query { return &Query{ db: db, ScaAuthMenu: newScaAuthMenu(db, opts...), ScaAuthPermissionRule: newScaAuthPermissionRule(db, opts...), ScaAuthRole: newScaAuthRole(db, opts...), ScaAuthUser: newScaAuthUser(db, opts...), ScaAuthUserDevice: newScaAuthUserDevice(db, opts...), ScaAuthUserSocial: newScaAuthUserSocial(db, opts...), ScaCommentLike: newScaCommentLike(db, opts...), ScaCommentReply: newScaCommentReply(db, opts...), ScaMessageReport: newScaMessageReport(db, opts...), ScaStorageAlbum: newScaStorageAlbum(db, opts...), ScaStorageConfig: newScaStorageConfig(db, opts...), ScaStorageInfo: newScaStorageInfo(db, opts...), ScaStorageTag: newScaStorageTag(db, opts...), ScaStorageTagInfo: newScaStorageTagInfo(db, opts...), ScaUserFollow: newScaUserFollow(db, opts...), ScaUserLevel: newScaUserLevel(db, opts...), ScaUserMessage: newScaUserMessage(db, opts...), } } type Query struct { db *gorm.DB ScaAuthMenu scaAuthMenu ScaAuthPermissionRule scaAuthPermissionRule ScaAuthRole scaAuthRole ScaAuthUser scaAuthUser ScaAuthUserDevice scaAuthUserDevice ScaAuthUserSocial scaAuthUserSocial ScaCommentLike scaCommentLike ScaCommentReply scaCommentReply ScaMessageReport scaMessageReport ScaStorageAlbum scaStorageAlbum ScaStorageConfig scaStorageConfig ScaStorageInfo scaStorageInfo ScaStorageTag scaStorageTag ScaStorageTagInfo scaStorageTagInfo ScaUserFollow scaUserFollow ScaUserLevel scaUserLevel ScaUserMessage scaUserMessage } func (q *Query) Available() bool { return q.db != nil } func (q *Query) clone(db *gorm.DB) *Query { return &Query{ db: db, ScaAuthMenu: q.ScaAuthMenu.clone(db), ScaAuthPermissionRule: q.ScaAuthPermissionRule.clone(db), ScaAuthRole: q.ScaAuthRole.clone(db), ScaAuthUser: q.ScaAuthUser.clone(db), ScaAuthUserDevice: q.ScaAuthUserDevice.clone(db), ScaAuthUserSocial: q.ScaAuthUserSocial.clone(db), ScaCommentLike: q.ScaCommentLike.clone(db), ScaCommentReply: q.ScaCommentReply.clone(db), ScaMessageReport: q.ScaMessageReport.clone(db), ScaStorageAlbum: q.ScaStorageAlbum.clone(db), ScaStorageConfig: q.ScaStorageConfig.clone(db), ScaStorageInfo: q.ScaStorageInfo.clone(db), ScaStorageTag: q.ScaStorageTag.clone(db), ScaStorageTagInfo: q.ScaStorageTagInfo.clone(db), ScaUserFollow: q.ScaUserFollow.clone(db), ScaUserLevel: q.ScaUserLevel.clone(db), ScaUserMessage: q.ScaUserMessage.clone(db), } } func (q *Query) ReadDB() *Query { return q.ReplaceDB(q.db.Clauses(dbresolver.Read)) } func (q *Query) WriteDB() *Query { return q.ReplaceDB(q.db.Clauses(dbresolver.Write)) } func (q *Query) ReplaceDB(db *gorm.DB) *Query { return &Query{ db: db, ScaAuthMenu: q.ScaAuthMenu.replaceDB(db), ScaAuthPermissionRule: q.ScaAuthPermissionRule.replaceDB(db), ScaAuthRole: q.ScaAuthRole.replaceDB(db), ScaAuthUser: q.ScaAuthUser.replaceDB(db), ScaAuthUserDevice: q.ScaAuthUserDevice.replaceDB(db), ScaAuthUserSocial: q.ScaAuthUserSocial.replaceDB(db), ScaCommentLike: q.ScaCommentLike.replaceDB(db), ScaCommentReply: q.ScaCommentReply.replaceDB(db), ScaMessageReport: q.ScaMessageReport.replaceDB(db), ScaStorageAlbum: q.ScaStorageAlbum.replaceDB(db), ScaStorageConfig: q.ScaStorageConfig.replaceDB(db), ScaStorageInfo: q.ScaStorageInfo.replaceDB(db), ScaStorageTag: q.ScaStorageTag.replaceDB(db), ScaStorageTagInfo: q.ScaStorageTagInfo.replaceDB(db), ScaUserFollow: q.ScaUserFollow.replaceDB(db), ScaUserLevel: q.ScaUserLevel.replaceDB(db), ScaUserMessage: q.ScaUserMessage.replaceDB(db), } } type queryCtx struct { ScaAuthMenu IScaAuthMenuDo ScaAuthPermissionRule IScaAuthPermissionRuleDo ScaAuthRole IScaAuthRoleDo ScaAuthUser IScaAuthUserDo ScaAuthUserDevice IScaAuthUserDeviceDo ScaAuthUserSocial IScaAuthUserSocialDo ScaCommentLike IScaCommentLikeDo ScaCommentReply IScaCommentReplyDo ScaMessageReport IScaMessageReportDo ScaStorageAlbum IScaStorageAlbumDo ScaStorageConfig IScaStorageConfigDo ScaStorageInfo IScaStorageInfoDo ScaStorageTag IScaStorageTagDo ScaStorageTagInfo IScaStorageTagInfoDo ScaUserFollow IScaUserFollowDo ScaUserLevel IScaUserLevelDo ScaUserMessage IScaUserMessageDo } func (q *Query) WithContext(ctx context.Context) *queryCtx { return &queryCtx{ ScaAuthMenu: q.ScaAuthMenu.WithContext(ctx), ScaAuthPermissionRule: q.ScaAuthPermissionRule.WithContext(ctx), ScaAuthRole: q.ScaAuthRole.WithContext(ctx), ScaAuthUser: q.ScaAuthUser.WithContext(ctx), ScaAuthUserDevice: q.ScaAuthUserDevice.WithContext(ctx), ScaAuthUserSocial: q.ScaAuthUserSocial.WithContext(ctx), ScaCommentLike: q.ScaCommentLike.WithContext(ctx), ScaCommentReply: q.ScaCommentReply.WithContext(ctx), ScaMessageReport: q.ScaMessageReport.WithContext(ctx), ScaStorageAlbum: q.ScaStorageAlbum.WithContext(ctx), ScaStorageConfig: q.ScaStorageConfig.WithContext(ctx), ScaStorageInfo: q.ScaStorageInfo.WithContext(ctx), ScaStorageTag: q.ScaStorageTag.WithContext(ctx), ScaStorageTagInfo: q.ScaStorageTagInfo.WithContext(ctx), ScaUserFollow: q.ScaUserFollow.WithContext(ctx), ScaUserLevel: q.ScaUserLevel.WithContext(ctx), ScaUserMessage: q.ScaUserMessage.WithContext(ctx), } } func (q *Query) Transaction(fc func(tx *Query) error, opts ...*sql.TxOptions) error { return q.db.Transaction(func(tx *gorm.DB) error { return fc(q.clone(tx)) }, opts...) } func (q *Query) Begin(opts ...*sql.TxOptions) *QueryTx { tx := q.db.Begin(opts...) return &QueryTx{Query: q.clone(tx), Error: tx.Error} } type QueryTx struct { *Query Error error } func (q *QueryTx) Commit() error { return q.db.Commit().Error } func (q *QueryTx) Rollback() error { return q.db.Rollback().Error } func (q *QueryTx) SavePoint(name string) error { return q.db.SavePoint(name).Error } func (q *QueryTx) RollbackTo(name string) error { return q.db.RollbackTo(name).Error }