// 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 queries import ( "context" "database/sql" "gorm.io/gorm" "gorm.io/gen" "gorm.io/plugin/dbresolver" ) var ( Q = new(Query) Admin *admin AdminRole *adminRole Announcement *announcement Bill *bill Channel *channel Client *client Coupon *coupon Edge *edge Inquiry *inquiry LinkAdminRole *linkAdminRole LinkAdminRolePermission *linkAdminRolePermission LinkClientPermission *linkClientPermission LinkUserRole *linkUserRole LinkUserRolePermission *linkUserRolePermission LogsLogin *logsLogin LogsRequest *logsRequest LogsUserBandwidth *logsUserBandwidth LogsUserUsage *logsUserUsage Permission *permission Product *product Proxy *proxy Refund *refund Resource *resource ResourceLong *resourceLong ResourceShort *resourceShort Session *session Trade *trade User *user UserRole *userRole Whitelist *whitelist ) func SetDefault(db *gorm.DB, opts ...gen.DOOption) { *Q = *Use(db, opts...) Admin = &Q.Admin AdminRole = &Q.AdminRole Announcement = &Q.Announcement Bill = &Q.Bill Channel = &Q.Channel Client = &Q.Client Coupon = &Q.Coupon Edge = &Q.Edge Inquiry = &Q.Inquiry LinkAdminRole = &Q.LinkAdminRole LinkAdminRolePermission = &Q.LinkAdminRolePermission LinkClientPermission = &Q.LinkClientPermission LinkUserRole = &Q.LinkUserRole LinkUserRolePermission = &Q.LinkUserRolePermission LogsLogin = &Q.LogsLogin LogsRequest = &Q.LogsRequest LogsUserBandwidth = &Q.LogsUserBandwidth LogsUserUsage = &Q.LogsUserUsage Permission = &Q.Permission Product = &Q.Product Proxy = &Q.Proxy Refund = &Q.Refund Resource = &Q.Resource ResourceLong = &Q.ResourceLong ResourceShort = &Q.ResourceShort Session = &Q.Session Trade = &Q.Trade User = &Q.User UserRole = &Q.UserRole Whitelist = &Q.Whitelist } func Use(db *gorm.DB, opts ...gen.DOOption) *Query { return &Query{ db: db, Admin: newAdmin(db, opts...), AdminRole: newAdminRole(db, opts...), Announcement: newAnnouncement(db, opts...), Bill: newBill(db, opts...), Channel: newChannel(db, opts...), Client: newClient(db, opts...), Coupon: newCoupon(db, opts...), Edge: newEdge(db, opts...), Inquiry: newInquiry(db, opts...), LinkAdminRole: newLinkAdminRole(db, opts...), LinkAdminRolePermission: newLinkAdminRolePermission(db, opts...), LinkClientPermission: newLinkClientPermission(db, opts...), LinkUserRole: newLinkUserRole(db, opts...), LinkUserRolePermission: newLinkUserRolePermission(db, opts...), LogsLogin: newLogsLogin(db, opts...), LogsRequest: newLogsRequest(db, opts...), LogsUserBandwidth: newLogsUserBandwidth(db, opts...), LogsUserUsage: newLogsUserUsage(db, opts...), Permission: newPermission(db, opts...), Product: newProduct(db, opts...), Proxy: newProxy(db, opts...), Refund: newRefund(db, opts...), Resource: newResource(db, opts...), ResourceLong: newResourceLong(db, opts...), ResourceShort: newResourceShort(db, opts...), Session: newSession(db, opts...), Trade: newTrade(db, opts...), User: newUser(db, opts...), UserRole: newUserRole(db, opts...), Whitelist: newWhitelist(db, opts...), } } type Query struct { db *gorm.DB Admin admin AdminRole adminRole Announcement announcement Bill bill Channel channel Client client Coupon coupon Edge edge Inquiry inquiry LinkAdminRole linkAdminRole LinkAdminRolePermission linkAdminRolePermission LinkClientPermission linkClientPermission LinkUserRole linkUserRole LinkUserRolePermission linkUserRolePermission LogsLogin logsLogin LogsRequest logsRequest LogsUserBandwidth logsUserBandwidth LogsUserUsage logsUserUsage Permission permission Product product Proxy proxy Refund refund Resource resource ResourceLong resourceLong ResourceShort resourceShort Session session Trade trade User user UserRole userRole Whitelist whitelist } func (q *Query) Available() bool { return q.db != nil } func (q *Query) clone(db *gorm.DB) *Query { return &Query{ db: db, Admin: q.Admin.clone(db), AdminRole: q.AdminRole.clone(db), Announcement: q.Announcement.clone(db), Bill: q.Bill.clone(db), Channel: q.Channel.clone(db), Client: q.Client.clone(db), Coupon: q.Coupon.clone(db), Edge: q.Edge.clone(db), Inquiry: q.Inquiry.clone(db), LinkAdminRole: q.LinkAdminRole.clone(db), LinkAdminRolePermission: q.LinkAdminRolePermission.clone(db), LinkClientPermission: q.LinkClientPermission.clone(db), LinkUserRole: q.LinkUserRole.clone(db), LinkUserRolePermission: q.LinkUserRolePermission.clone(db), LogsLogin: q.LogsLogin.clone(db), LogsRequest: q.LogsRequest.clone(db), LogsUserBandwidth: q.LogsUserBandwidth.clone(db), LogsUserUsage: q.LogsUserUsage.clone(db), Permission: q.Permission.clone(db), Product: q.Product.clone(db), Proxy: q.Proxy.clone(db), Refund: q.Refund.clone(db), Resource: q.Resource.clone(db), ResourceLong: q.ResourceLong.clone(db), ResourceShort: q.ResourceShort.clone(db), Session: q.Session.clone(db), Trade: q.Trade.clone(db), User: q.User.clone(db), UserRole: q.UserRole.clone(db), Whitelist: q.Whitelist.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, Admin: q.Admin.replaceDB(db), AdminRole: q.AdminRole.replaceDB(db), Announcement: q.Announcement.replaceDB(db), Bill: q.Bill.replaceDB(db), Channel: q.Channel.replaceDB(db), Client: q.Client.replaceDB(db), Coupon: q.Coupon.replaceDB(db), Edge: q.Edge.replaceDB(db), Inquiry: q.Inquiry.replaceDB(db), LinkAdminRole: q.LinkAdminRole.replaceDB(db), LinkAdminRolePermission: q.LinkAdminRolePermission.replaceDB(db), LinkClientPermission: q.LinkClientPermission.replaceDB(db), LinkUserRole: q.LinkUserRole.replaceDB(db), LinkUserRolePermission: q.LinkUserRolePermission.replaceDB(db), LogsLogin: q.LogsLogin.replaceDB(db), LogsRequest: q.LogsRequest.replaceDB(db), LogsUserBandwidth: q.LogsUserBandwidth.replaceDB(db), LogsUserUsage: q.LogsUserUsage.replaceDB(db), Permission: q.Permission.replaceDB(db), Product: q.Product.replaceDB(db), Proxy: q.Proxy.replaceDB(db), Refund: q.Refund.replaceDB(db), Resource: q.Resource.replaceDB(db), ResourceLong: q.ResourceLong.replaceDB(db), ResourceShort: q.ResourceShort.replaceDB(db), Session: q.Session.replaceDB(db), Trade: q.Trade.replaceDB(db), User: q.User.replaceDB(db), UserRole: q.UserRole.replaceDB(db), Whitelist: q.Whitelist.replaceDB(db), } } type queryCtx struct { Admin *adminDo AdminRole *adminRoleDo Announcement *announcementDo Bill *billDo Channel *channelDo Client *clientDo Coupon *couponDo Edge *edgeDo Inquiry *inquiryDo LinkAdminRole *linkAdminRoleDo LinkAdminRolePermission *linkAdminRolePermissionDo LinkClientPermission *linkClientPermissionDo LinkUserRole *linkUserRoleDo LinkUserRolePermission *linkUserRolePermissionDo LogsLogin *logsLoginDo LogsRequest *logsRequestDo LogsUserBandwidth *logsUserBandwidthDo LogsUserUsage *logsUserUsageDo Permission *permissionDo Product *productDo Proxy *proxyDo Refund *refundDo Resource *resourceDo ResourceLong *resourceLongDo ResourceShort *resourceShortDo Session *sessionDo Trade *tradeDo User *userDo UserRole *userRoleDo Whitelist *whitelistDo } func (q *Query) WithContext(ctx context.Context) *queryCtx { return &queryCtx{ Admin: q.Admin.WithContext(ctx), AdminRole: q.AdminRole.WithContext(ctx), Announcement: q.Announcement.WithContext(ctx), Bill: q.Bill.WithContext(ctx), Channel: q.Channel.WithContext(ctx), Client: q.Client.WithContext(ctx), Coupon: q.Coupon.WithContext(ctx), Edge: q.Edge.WithContext(ctx), Inquiry: q.Inquiry.WithContext(ctx), LinkAdminRole: q.LinkAdminRole.WithContext(ctx), LinkAdminRolePermission: q.LinkAdminRolePermission.WithContext(ctx), LinkClientPermission: q.LinkClientPermission.WithContext(ctx), LinkUserRole: q.LinkUserRole.WithContext(ctx), LinkUserRolePermission: q.LinkUserRolePermission.WithContext(ctx), LogsLogin: q.LogsLogin.WithContext(ctx), LogsRequest: q.LogsRequest.WithContext(ctx), LogsUserBandwidth: q.LogsUserBandwidth.WithContext(ctx), LogsUserUsage: q.LogsUserUsage.WithContext(ctx), Permission: q.Permission.WithContext(ctx), Product: q.Product.WithContext(ctx), Proxy: q.Proxy.WithContext(ctx), Refund: q.Refund.WithContext(ctx), Resource: q.Resource.WithContext(ctx), ResourceLong: q.ResourceLong.WithContext(ctx), ResourceShort: q.ResourceShort.WithContext(ctx), Session: q.Session.WithContext(ctx), Trade: q.Trade.WithContext(ctx), User: q.User.WithContext(ctx), UserRole: q.UserRole.WithContext(ctx), Whitelist: q.Whitelist.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 }