35 lines
719 B
Go
35 lines
719 B
Go
package user_repository
|
|
|
|
import (
|
|
"netina/models"
|
|
|
|
"gorm.io/gorm"
|
|
)
|
|
|
|
|
|
type UserQuery interface{
|
|
GetUser(id uint)(*models.User , error)
|
|
}
|
|
|
|
type UserQueryRepository struct{
|
|
DB *gorm.DB
|
|
}
|
|
|
|
|
|
func (r *UserQueryRepository) GetUser(id uint)(*models.User , error){
|
|
var user models.User
|
|
if err := r.DB.Where("is_removed = ?" , false).Where("user_id = ?" , id).First(&user).Error; err != nil {
|
|
return nil , err
|
|
}
|
|
|
|
return &user , nil
|
|
}
|
|
|
|
func (r *UserQueryRepository) GetUserByPhoneNumber(phoneNumber string)(*models.User , error){
|
|
var user models.User
|
|
if err := r.DB.Where("is_removed = ?" , false).Where("phone_number = ?" , phoneNumber).First(&user).Error; err != nil {
|
|
return nil , err
|
|
}
|
|
|
|
return &user , nil
|
|
} |