package production import ( "context" "git.markbailey.dev/cerbervs/ptpp/lib/database/dto" pterror "git.markbailey.dev/cerbervs/ptpp/lib/error" "git.markbailey.dev/cerbervs/ptpp/models/postgres" ) type UserRepository struct{} func (ur UserRepository) CreateUser(u dto.User) (*dto.User, error) { ctx := context.Background() user, err := ProdQueries.CreateUser(ctx, postgres.CreateUserParams{ Username: u.Username, Password: u.Password, Name: u.Name, Email: u.Email, AuthToken: u.AuthToken, Authorized: u.Authorized, Admin: u.Admin, Organization: u.Organization, }) if err != nil { return nil, pterror.Wrap(err, "Error creating user") } return &dto.User{ Identifier: user.Identifier, Username: user.Username, Password: user.Password, Name: user.Name, Email: user.Email, AuthToken: user.AuthToken, Authorized: user.Authorized, Admin: user.Admin, Organization: user.Organization, }, nil } func (ur UserRepository) FindUserByUsername(username string) (*dto.User, error) { ctx := context.Background() user, err := ProdQueries.FindUserByUsername(ctx, username) if err != nil { return nil, pterror.Wrap(err, "Error finding user by username") } return &dto.User{ Identifier: user.Identifier, Username: user.Username, Password: user.Password, Name: user.Name, Email: user.Email, AuthToken: user.AuthToken, Authorized: user.Authorized, Admin: user.Admin, Organization: user.Organization, }, nil }