autobrr/internal/domain/user.go
ze0s 45b522abf8
chore: update license header year (#1332)
* chore: update license header year

* chore: update license header year tsx files

* chore: update license header
2024-01-01 16:21:02 +01:00

33 lines
957 B
Go

// Copyright (c) 2021 - 2024, Ludvig Lundgren and the autobrr contributors.
// SPDX-License-Identifier: GPL-2.0-or-later
package domain
import "context"
type UserRepo interface {
GetUserCount(ctx context.Context) (int, error)
FindByUsername(ctx context.Context, username string) (*User, error)
Store(ctx context.Context, req CreateUserRequest) error
Update(ctx context.Context, req UpdateUserRequest) error
Delete(ctx context.Context, username string) error
}
type User struct {
ID int `json:"id"`
Username string `json:"username"`
Password string `json:"password"`
}
type UpdateUserRequest struct {
UsernameCurrent string `json:"username_username"`
UsernameNew string `json:"username_new"`
PasswordCurrent string `json:"password_current"`
PasswordNew string `json:"password_new"`
PasswordNewHash string `json:"-"`
}
type CreateUserRequest struct {
Username string `json:"username"`
Password string `json:"password"`
}