mysql

package
v0.0.0-...-ac80cf1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 2, 2026 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewMySQLUserRepository

func NewMySQLUserRepository(db *sql.DB) repositories.UserRepository

NewMySQLUserRepository creates a new MySQL user repository

Types

type MySQLUserRepository

type MySQLUserRepository struct {
	// contains filtered or unexported fields
}

MySQLUserRepository implements UserRepository for MySQL This adapts MySQL-specific types to domain interfaces

func (*MySQLUserRepository) Activate

func (r *MySQLUserRepository) Activate(ctx context.Context, id entities.UserID) error

Activate activates a user in MySQL

func (*MySQLUserRepository) ChangeRole

ChangeRole changes user role in MySQL

func (*MySQLUserRepository) ChangeStatus

func (r *MySQLUserRepository) ChangeStatus(ctx context.Context, id entities.UserID, status entities.UserStatus) error

ChangeStatus changes user status in MySQL

func (*MySQLUserRepository) CountByStatus

func (r *MySQLUserRepository) CountByStatus(ctx context.Context) (map[entities.UserStatus]int64, error)

CountByStatus counts users by status in MySQL

func (*MySQLUserRepository) Create

func (r *MySQLUserRepository) Create(ctx context.Context, user *entities.User) error

Create saves a new user to MySQL

func (*MySQLUserRepository) Deactivate

func (r *MySQLUserRepository) Deactivate(ctx context.Context, id entities.UserID) error

Deactivate deactivates a user in MySQL

func (*MySQLUserRepository) Delete

Delete soft deletes a user from MySQL

func (*MySQLUserRepository) GetByEmail

func (r *MySQLUserRepository) GetByEmail(ctx context.Context, email entities.Email) (*entities.User, error)

GetByEmail retrieves a user by email from MySQL

func (*MySQLUserRepository) GetByID

GetByID retrieves a user by ID from MySQL

func (*MySQLUserRepository) GetByUUID

func (r *MySQLUserRepository) GetByUUID(ctx context.Context, uuid string) (*entities.User, error)

GetByUUID retrieves a user by UUID from MySQL

func (*MySQLUserRepository) GetByUsername

func (r *MySQLUserRepository) GetByUsername(ctx context.Context, username entities.Username) (*entities.User, error)

GetByUsername retrieves a user by username from MySQL

func (*MySQLUserRepository) GetStats

GetStats retrieves user statistics from MySQL

func (*MySQLUserRepository) List

func (r *MySQLUserRepository) List(ctx context.Context, status entities.UserStatus, limit, offset int) ([]*entities.User, error)

List retrieves users with pagination from MySQL

func (*MySQLUserRepository) MarkVerified

func (r *MySQLUserRepository) MarkVerified(ctx context.Context, id entities.UserID) error

MarkVerified marks user as verified in MySQL

func (*MySQLUserRepository) Search

func (r *MySQLUserRepository) Search(ctx context.Context, query string, status entities.UserStatus, limit int) ([]*entities.User, error)

Search searches users by query in MySQL using FULLTEXT

func (*MySQLUserRepository) SearchByTags

func (r *MySQLUserRepository) SearchByTags(ctx context.Context, tags []string, status entities.UserStatus, limit, offset int) ([]*entities.User, error)

SearchByTags searches users by tags in MySQL using JSON operations

func (*MySQLUserRepository) Suspend

Suspend suspends a user in MySQL

func (*MySQLUserRepository) Update

func (r *MySQLUserRepository) Update(ctx context.Context, user *entities.User) error

Update updates an existing user in MySQL

func (*MySQLUserRepository) UpdatePassword

func (r *MySQLUserRepository) UpdatePassword(ctx context.Context, id entities.UserID, password entities.PasswordHash) error

UpdatePassword updates user password in MySQL

func (*MySQLUserRepository) VerifyCredentials

func (r *MySQLUserRepository) VerifyCredentials(ctx context.Context, email entities.Email, password entities.PasswordHash) (*entities.User, error)

VerifyCredentials verifies user credentials in MySQL

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL