41 lines
1.2 KiB
Go
41 lines
1.2 KiB
Go
package staffsvc
|
|
|
|
import (
|
|
staffrepository "legalgo-BE-go/internal/accessor/staff"
|
|
subscriberepository "legalgo-BE-go/internal/accessor/subscribe"
|
|
subscribeplanrepository "legalgo-BE-go/internal/accessor/subscribe_plan"
|
|
userrepository "legalgo-BE-go/internal/accessor/user"
|
|
staffdomain "legalgo-BE-go/internal/domain/staff"
|
|
userdomain "legalgo-BE-go/internal/domain/user"
|
|
)
|
|
|
|
type impl struct {
|
|
staffRepo staffrepository.Staff
|
|
userRepo userrepository.User
|
|
subsRepo subscriberepository.Subscribe
|
|
subsPlanRepo subscribeplanrepository.SubscribePlan
|
|
}
|
|
|
|
type Auth interface {
|
|
Login(staffdomain.StaffLogin) (string, error)
|
|
Register(staffdomain.StaffRegister) (string, error)
|
|
GetProfile(string) (*staffdomain.StaffProfile, error)
|
|
GetStaffs() ([]staffdomain.StaffProfile, error)
|
|
GetUsers() ([]userdomain.UserProfile, error)
|
|
Update(string, staffdomain.StaffUpdate) error
|
|
}
|
|
|
|
func New(
|
|
staffRepo staffrepository.Staff,
|
|
userRepo userrepository.User,
|
|
subsRepo subscriberepository.Subscribe,
|
|
subsPlanRepo subscribeplanrepository.SubscribePlan,
|
|
) Auth {
|
|
return &impl{
|
|
staffRepo: staffRepo,
|
|
userRepo: userRepo,
|
|
subsRepo: subsRepo,
|
|
subsPlanRepo: subsPlanRepo,
|
|
}
|
|
}
|