32 lines
658 B
Go
32 lines
658 B
Go
package repository
|
|
|
|
import (
|
|
"BE-MiniERP/modules/auth/models"
|
|
|
|
"gorm.io/gorm"
|
|
)
|
|
|
|
type UserRepository struct {
|
|
DB *gorm.DB
|
|
}
|
|
|
|
func NewUserRepository(db *gorm.DB) *UserRepository {
|
|
return &UserRepository{DB: db}
|
|
}
|
|
|
|
func (r *UserRepository) Create(user *models.User) error {
|
|
return r.DB.Create(user).Error
|
|
}
|
|
|
|
func (r *UserRepository) FindByUsername(username string) (*models.User, error) {
|
|
var user models.User
|
|
result := r.DB.Where("username = ?", username).First(&user)
|
|
return &user, result.Error
|
|
}
|
|
|
|
func (r *UserRepository) FindByID(id uint) (*models.User, error) {
|
|
var user models.User
|
|
result := r.DB.First(&user, id)
|
|
return &user, result.Error
|
|
}
|