Documentation
¶
Index ¶
- func ClubLeader(leaderParams types.RouteParams)
- func CreateClubLeader(db *gorm.DB, leader models.Leader, ...) (*models.Leader, error)
- func DeleteClubLeader(db *gorm.DB, clubID uuid.UUID, leaderID uuid.UUID, ...) error
- func GetClubLeader(db *gorm.DB, clubID uuid.UUID, leaderID uuid.UUID) (*models.Leader, error)
- func GetClubLeaderByClubIDAndEmail(db *gorm.DB, clubID uuid.UUID, email string) (*models.Leader, error)
- func GetClubLeadership(db *gorm.DB, clubID uuid.UUID) ([]models.Leader, error)
- func UpdateClubLeader(db *gorm.DB, clubID uuid.UUID, leaderID uuid.UUID, updatedLeader models.Leader) (*models.Leader, error)
- type ClubLeaderController
- func (l *ClubLeaderController) CreateClubLeader(c *fiber.Ctx) error
- func (l *ClubLeaderController) DeleteClubLeader(c *fiber.Ctx) error
- func (l *ClubLeaderController) GetClubLeader(c *fiber.Ctx) error
- func (l *ClubLeaderController) GetClubLeadership(c *fiber.Ctx) error
- func (l *ClubLeaderController) UpdateClubLeader(c *fiber.Ctx) error
- func (l *ClubLeaderController) UpdateClubLeaderPhoto(c *fiber.Ctx) error
- type ClubLeaderService
- func (cl *ClubLeaderService) CreateClubLeader(clubID string, leaderBody CreateLeaderBody, fileHeader *multipart.FileHeader) (*models.Leader, error)
- func (cl *ClubLeaderService) DeleteClubLeader(clubID, leaderID string) error
- func (cl *ClubLeaderService) GetClubLeader(clubID, leaderID string) (*models.Leader, error)
- func (cl *ClubLeaderService) GetClubLeadership(clubID string) ([]models.Leader, error)
- func (cl *ClubLeaderService) UpdateClubLeader(clubID, leaderID string, leaderBody UpdateLeaderBody) (*models.Leader, error)
- func (cl *ClubLeaderService) UpdateClubLeaderPhoto(clubID, leaderID string, fileHeader *multipart.FileHeader) (*models.Leader, error)
- type ClubLeaderServiceInterface
- type CreateLeaderBody
- type UpdateLeaderBody
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ClubLeader ¶
func ClubLeader(leaderParams types.RouteParams)
func CreateClubLeader ¶
func DeleteClubLeader ¶
func GetClubLeader ¶
func GetClubLeadership ¶
Types ¶
type ClubLeaderController ¶
type ClubLeaderController struct {
// contains filtered or unexported fields
}
func NewClubLeaderController ¶
func NewClubLeaderController(clubLeaderService ClubLeaderServiceInterface) *ClubLeaderController
func (*ClubLeaderController) CreateClubLeader ¶
func (l *ClubLeaderController) CreateClubLeader(c *fiber.Ctx) error
CreateClubLeader godoc
@Summary Create a leader for a club @Description Creates a leader associated with a club @ID create-leader-by-club @Tags club-leader @Accept multipart/form-data @Produce json @Param clubID path string true "Club ID" @Success 201 {object} models.Leader @Failure 400 {object} error @Failure 401 {object} error @Failure 404 {object} error @Failure 500 {object} error @Router /clubs/{clubID}/leadership/ [post]
func (*ClubLeaderController) DeleteClubLeader ¶
func (l *ClubLeaderController) DeleteClubLeader(c *fiber.Ctx) error
DeleteClubLeader godoc
@Summary Delete a leader for a club @Description Delete a leader associated with a club @ID delete-leader-by-club @Tags club-leader @Produce json @Param clubID path string true "Club ID" @Param leaderID path string true "leader ID" @Success 204 {object} nil @Failure 400 {object} error @Failure 404 {object} error @Failure 500 {object} error @Router /clubs/{clubID}/leadership/{leaderID} [delete]
func (*ClubLeaderController) GetClubLeader ¶
func (l *ClubLeaderController) GetClubLeader(c *fiber.Ctx) error
GetClubLeader godoc
@Summary Retrieve a leader for a club @Description Retrieves a leader associated with a club @ID get-leader-by-club @Tags club-leader @Produce json @Param clubID path string true "Club ID" @Param leaderID path string true "leader ID" @Success 200 {object} models.Leader @Failure 400 {object} error @Failure 404 {object} error @Failure 500 {object} error @Router /clubs/{clubID}/leadership/{leaderID} [get]
func (*ClubLeaderController) GetClubLeadership ¶
func (l *ClubLeaderController) GetClubLeadership(c *fiber.Ctx) error
GetClubLeadership godoc
@Summary Retrieve all leadership for a club @Description Retrieves all leadership associated with a club @ID get-leadership-by-club @Tags club-leader @Produce json @Param clubID path string true "Club ID" @Success 200 {object} []models.Leader @Failure 400 {object} error @Failure 404 {object} error @Failure 500 {object} error @Router /clubs/{clubID}/leadership/ [get]
func (*ClubLeaderController) UpdateClubLeader ¶
func (l *ClubLeaderController) UpdateClubLeader(c *fiber.Ctx) error
UpdateClubLeader godoc
@Summary Update a leader for a club @Description Updates a leader associated with a club @ID update-leader-by-club @Tags club-leader @Accept json @Produce json @Param clubID path string true "Club ID" @Param leaderID path string true "leader ID" @Success 200 {object} models.Leader @Failure 400 {object} error @Failure 401 {object} error @Failure 404 {object} error @Failure 500 {object} error @Router /clubs/{clubID}/leadership/{leaderID} [put]
func (*ClubLeaderController) UpdateClubLeaderPhoto ¶
func (l *ClubLeaderController) UpdateClubLeaderPhoto(c *fiber.Ctx) error
UpdateClubLeaderPhoto godoc
@Summary Update a leader photo for a club @Description Updates a leader photo associated with a club @ID update-leader-photo-by-club @Tags club-leader @Accept multipart/form-data @Produce json @Param clubID path string true "Club ID" @Param leaderID path string true "leader ID" @Success 200 {object} models.Leader @Failure 400 {object} error @Failure 401 {object} error @Failure 404 {object} error @Failure 500 {object} error @Router /clubs/{clubID}/leadership/{leaderID} [patch]
type ClubLeaderService ¶
type ClubLeaderService struct {
types.ServiceParams
}
func (*ClubLeaderService) CreateClubLeader ¶
func (cl *ClubLeaderService) CreateClubLeader(clubID string, leaderBody CreateLeaderBody, fileHeader *multipart.FileHeader) (*models.Leader, error)
MOVE THIS TO TRANSACTIOPNS
func (*ClubLeaderService) DeleteClubLeader ¶
func (cl *ClubLeaderService) DeleteClubLeader(clubID, leaderID string) error
func (*ClubLeaderService) GetClubLeader ¶
func (cl *ClubLeaderService) GetClubLeader(clubID, leaderID string) (*models.Leader, error)
func (*ClubLeaderService) GetClubLeadership ¶
func (cl *ClubLeaderService) GetClubLeadership(clubID string) ([]models.Leader, error)
func (*ClubLeaderService) UpdateClubLeader ¶
func (cl *ClubLeaderService) UpdateClubLeader(clubID, leaderID string, leaderBody UpdateLeaderBody) (*models.Leader, error)
func (*ClubLeaderService) UpdateClubLeaderPhoto ¶
func (cl *ClubLeaderService) UpdateClubLeaderPhoto(clubID, leaderID string, fileHeader *multipart.FileHeader) (*models.Leader, error)
type ClubLeaderServiceInterface ¶
type ClubLeaderServiceInterface interface {
GetClubLeadership(clubID string) ([]models.Leader, error)
GetClubLeader(clubID, leaderID string) (*models.Leader, error)
CreateClubLeader(clubID string, leaderBody CreateLeaderBody, fileHeader *multipart.FileHeader) (*models.Leader, error)
UpdateClubLeaderPhoto(clubID, leaderID string, fileHeader *multipart.FileHeader) (*models.Leader, error)
UpdateClubLeader(clubID, leaderID string, leaderBody UpdateLeaderBody) (*models.Leader, error)
DeleteClubLeader(clubID, leaderID string) error
}
func NewClubLeaderService ¶
func NewClubLeaderService(serviceParams types.ServiceParams) ClubLeaderServiceInterface