SeasonTeamService

Source: SeasonTeamService.js:20

Service for managing season-team associations. Handles CRUD operations and logic for teams within a season.


Constructor

new SeasonTeamService(): SeasonTeamService

Instance Methods

findById( id: UUID, actingUserId: UUID, isAdmin: boolean, ): Promise.<Object>

Find a season team by ID.

Parameters

  • id (UUID) — The ID of the season team.
  • actingUserId (UUID) — The ID of the acting user.
  • isAdmin (boolean, default: false) — Whether the user is an admin.

Returns

  • Promise.<Object> — The season team object.

getAll( ownerIds: Array.<UUID>, actingUserId: UUID, isAdmin?: boolean, ): Promise.<Array>

Get all season teams.

Parameters

  • ownerIds (Array.<UUID>) — The IDs of the owners.
  • actingUserId (UUID) — The ID of the acting user.
  • isAdmin (boolean, optional, default: false)

Returns

  • Promise.<Array> — List of all season teams.

getCount(): Promise.<number>

Get the count of season teams.

Returns

  • Promise.<number> — The count of season teams.

getTrend(): Promise.<number>

Get the trend of season teams created and deleted in the last 30 days.

Returns

  • Promise.<number> — The trend value (created - deleted).

create( TeamId: UUID, SeasonId: UUID, memberIds: Array.<string>, actingUserId: UUID, isAdmin?: boolean, ): Promise.<Object>

Create a new season team and copy members into it.

Parameters

  • TeamId (UUID) — The ID of the team.
  • SeasonId (UUID) — The ID of the season.
  • memberIds (Array.<string>) — List of member IDs to copy.
  • actingUserId (UUID) — The ID of the acting user.
  • isAdmin (boolean, optional, default: false)

Returns

  • Promise.<Object> — The created season team object.

copyMemberIntoSeasonTeam( SeasonTeamId: UUID, MemberId: UUID, actingUserId: UUID, ): Promise.<Object>

Copy a member into a season team.

Parameters

  • SeasonTeamId (UUID) — The ID of the season team.
  • MemberId (UUID) — The ID of the member.
  • actingUserId (UUID) — The ID of the acting user.

Returns

  • Promise.<Object> — The created member object.

copyMembersIntoSeasonTeam( seasonTeamId: UUID, memberIds: Array.<string>, actingUserId: UUID, isAdmin: boolean, ): Promise.<Array>

Copy multiple members into a season team.

Parameters

  • seasonTeamId (UUID) — The ID of the season team.
  • memberIds (Array.<string>) — List of member IDs to copy.
  • actingUserId (UUID) — The ID of the acting user.
  • isAdmin (boolean, default: false) — Whether the user is an admin.

Returns

  • Promise.<Array> — List of created member objects.

remove(id: UUID, actingUserId: UUID): Promise.<void>

Remove a season team.

Parameters

  • id (UUID) — The season team ID.
  • actingUserId (UUID) — The ID of the acting user.

Returns

  • Promise.<void> — Resolves when the season team is removed.

Throws

  • Error — Throws an error if the season team is not found.