37 lines
693 B
Go
37 lines
693 B
Go
package Role_repository
|
|
|
|
import (
|
|
"netina/models"
|
|
|
|
"gorm.io/gorm"
|
|
)
|
|
|
|
type RoleQuery interface{
|
|
GetRole(id uint)(*models.Role , error)
|
|
}
|
|
|
|
type RoleQueryRepository struct{
|
|
DB *gorm.DB
|
|
}
|
|
|
|
|
|
func (r *RoleQueryRepository) GetRole(id uint)(*models.Role , error){
|
|
var role models.Role
|
|
if err := r.DB.Where("is_removed = ?" , false).Where("role_id = ?" , id).First(&role).Error; err != nil {
|
|
return nil , err
|
|
}
|
|
|
|
return &role , nil
|
|
}
|
|
|
|
|
|
func (r *RoleQueryRepository) GetRoleByName(name string)(*models.Role , error) {
|
|
var role models.Role
|
|
if err := r.DB.Where("is_removed = ?" , false).Where("name = ?" , name).First(&role).Error; err != nil {
|
|
return nil , err
|
|
}
|
|
|
|
return &role , nil
|
|
}
|
|
|