User edit
This commit is contained in:
@ -12,6 +12,7 @@ type UsersRepository struct {
|
||||
}
|
||||
|
||||
type UserFilter struct {
|
||||
Id *string
|
||||
IsActive *bool
|
||||
}
|
||||
|
||||
@ -22,9 +23,14 @@ func CreateUsersRepository(db *gorm.DB) *UsersRepository {
|
||||
func applyFilter(db *gorm.DB, filter *UserFilter) *gorm.DB {
|
||||
query := db
|
||||
|
||||
// if filter.State != "" {
|
||||
// query = query.Where("state = ?", filter.State)
|
||||
// }
|
||||
if filter.Id != nil {
|
||||
query = query.Where("id = ?", filter.Id)
|
||||
}
|
||||
|
||||
if filter.IsActive != nil {
|
||||
query = query.Where(map[string]interface{}{"is_active": filter.IsActive})
|
||||
}
|
||||
|
||||
// if filter.SendAt_lt != nil {
|
||||
// query = query.Where("send_at < ?", filter.SendAt_lt)
|
||||
// }
|
||||
@ -69,3 +75,18 @@ func (repository *UsersRepository) List(filter *UserFilter, pagination *Paginati
|
||||
|
||||
return &users
|
||||
}
|
||||
|
||||
func (repository *UsersRepository) Get(filter *UserFilter) *models.User {
|
||||
var user models.User
|
||||
|
||||
query := repository.db.Model(&models.User{})
|
||||
query = applyFilter(query, filter)
|
||||
query.First(&user)
|
||||
|
||||
return &user
|
||||
}
|
||||
|
||||
func (repository *UsersRepository) Save(user *models.User) *models.User {
|
||||
repository.db.Save(user)
|
||||
return user
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user