2025-02-23 22:34:26 +08:00
|
|
|
package staffrepository
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"errors"
|
|
|
|
|
|
2025-02-27 07:25:25 +08:00
|
|
|
authdomain "legalgo-BE-go/internal/domain/auth"
|
|
|
|
|
|
2025-02-23 22:34:26 +08:00
|
|
|
"gorm.io/gorm"
|
|
|
|
|
)
|
|
|
|
|
|
2025-02-24 19:47:40 +08:00
|
|
|
func (sr *StaffRepository) GetStaffByEmail(email string) (*authdomain.Staff, error) {
|
|
|
|
|
var staff authdomain.Staff
|
2025-02-23 22:34:26 +08:00
|
|
|
|
|
|
|
|
if email == "" {
|
2025-02-27 18:59:58 +08:00
|
|
|
return nil, errors.New("email is required")
|
2025-02-23 22:34:26 +08:00
|
|
|
}
|
|
|
|
|
|
2025-03-01 19:00:12 +08:00
|
|
|
if err := sr.DB.First(&staff, "email = ?", email).Error; err != nil {
|
2025-02-23 22:34:26 +08:00
|
|
|
if errors.Is(err, gorm.ErrRecordNotFound) {
|
|
|
|
|
return nil, errors.New("staff not found")
|
|
|
|
|
}
|
|
|
|
|
return nil, err
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return &staff, nil
|
|
|
|
|
}
|