* INFRA-3664 : Make get users in conversation api more performant * INFRA-3664 : Add apis for incident user sync and get users in incident performance improvements * INFRA-3664 : Self review * INFRA-3664 : Add migration script * INFRA-3664 : Review comments * INFRA-3664 : Constant chanes * INFRA-3664 : Add rate limit constants * INFRA-3664 : Add rate limit constants * INFRA-3664 : Fix failing tests * INFRA-3664 : Add UT's
23 lines
656 B
Go
23 lines
656 B
Go
package user
|
|
|
|
import (
|
|
"houston/model/user"
|
|
"houston/service/slack"
|
|
)
|
|
|
|
type UserService interface {
|
|
GetHoustonUserByEmailId(emailId string) (*user.UserDTO, error)
|
|
GetHoustonUserBySlackID(slackID string) (*user.UserDTO, error)
|
|
GetHoustonUserById(id uint) (*user.UserDTO, error)
|
|
GetHoustonUserBySlackUserId(slackUserId string) (*user.UserDTO, error)
|
|
UpsertUsers()
|
|
GetSlackUserIdToHoustonUserIdMap(slackUserIds []string) (map[string]uint, error)
|
|
}
|
|
|
|
func NewUserService(userRepository user.IUserRepository, slackService slack.ISlackService) UserService {
|
|
return &userServiceImpl{
|
|
userRepository: userRepository,
|
|
slackService: slackService,
|
|
}
|
|
}
|