Remove GroupSkill

This commit is contained in:
Kalle
2022-02-09 21:00:01 +02:00
parent 023c65df18
commit a436692574
4 changed files with 29 additions and 76 deletions

View File

@@ -65,8 +65,4 @@ export async function reportScore({
where lfg2.lfg_group_match_id = lfg."lfgGroupMatchId" and lfg2.order = lfg.order;
`),
]);
// 1) update scores DONE
// 2) update skill DONE
// 3) update team skill?
// 4) if already reported error if different DONE
}

View File

@@ -133,8 +133,6 @@ export const action: ActionFunction = async ({
}
return { ok: data._action };
// TODO: notify watchers
};
interface LFGMatchLoaderData {

View File

@@ -210,18 +210,6 @@ CREATE TABLE "Skill" (
CONSTRAINT "Skill_pkey" PRIMARY KEY ("id")
);
-- CreateTable
CREATE TABLE "GroupSkill" (
"id" TEXT NOT NULL,
"mu" DOUBLE PRECISION NOT NULL,
"sigma" DOUBLE PRECISION NOT NULL,
"matchId" TEXT,
"tournamentId" TEXT,
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
CONSTRAINT "GroupSkill_pkey" PRIMARY KEY ("id")
);
-- CreateTable
CREATE TABLE "_StageToTournament" (
"A" INTEGER NOT NULL,
@@ -234,12 +222,6 @@ CREATE TABLE "_TournamentMatchGameResultToUser" (
"B" TEXT NOT NULL
);
-- CreateTable
CREATE TABLE "_GroupSkillToUser" (
"A" TEXT NOT NULL,
"B" TEXT NOT NULL
);
-- CreateIndex
CREATE UNIQUE INDEX "User_discordId_key" ON "User"("discordId");
@@ -288,6 +270,12 @@ CREATE UNIQUE INDEX "LfgGroupMember_groupId_memberId_key" ON "LfgGroupMember"("g
-- CreateIndex
CREATE UNIQUE INDEX "LfgGroupMatchStage_lfgGroupMatchId_order_key" ON "LfgGroupMatchStage"("lfgGroupMatchId", "order");
-- CreateIndex
CREATE UNIQUE INDEX "Skill_userId_matchId_key" ON "Skill"("userId", "matchId");
-- CreateIndex
CREATE UNIQUE INDEX "Skill_userId_tournamentId_key" ON "Skill"("userId", "tournamentId");
-- CreateIndex
CREATE UNIQUE INDEX "_StageToTournament_AB_unique" ON "_StageToTournament"("A", "B");
@@ -300,12 +288,6 @@ CREATE UNIQUE INDEX "_TournamentMatchGameResultToUser_AB_unique" ON "_Tournament
-- CreateIndex
CREATE INDEX "_TournamentMatchGameResultToUser_B_index" ON "_TournamentMatchGameResultToUser"("B");
-- CreateIndex
CREATE UNIQUE INDEX "_GroupSkillToUser_AB_unique" ON "_GroupSkillToUser"("A", "B");
-- CreateIndex
CREATE INDEX "_GroupSkillToUser_B_index" ON "_GroupSkillToUser"("B");
-- AddForeignKey
ALTER TABLE "Organization" ADD CONSTRAINT "Organization_ownerId_fkey" FOREIGN KEY ("ownerId") REFERENCES "User"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
@@ -393,12 +375,6 @@ ALTER TABLE "Skill" ADD CONSTRAINT "Skill_tournamentId_fkey" FOREIGN KEY ("tourn
-- AddForeignKey
ALTER TABLE "Skill" ADD CONSTRAINT "Skill_matchId_fkey" FOREIGN KEY ("matchId") REFERENCES "LfgGroupMatch"("id") ON DELETE SET NULL ON UPDATE CASCADE;
-- AddForeignKey
ALTER TABLE "GroupSkill" ADD CONSTRAINT "GroupSkill_tournamentId_fkey" FOREIGN KEY ("tournamentId") REFERENCES "Tournament"("id") ON DELETE SET NULL ON UPDATE CASCADE;
-- AddForeignKey
ALTER TABLE "GroupSkill" ADD CONSTRAINT "GroupSkill_matchId_fkey" FOREIGN KEY ("matchId") REFERENCES "LfgGroupMatch"("id") ON DELETE SET NULL ON UPDATE CASCADE;
-- AddForeignKey
ALTER TABLE "_StageToTournament" ADD FOREIGN KEY ("A") REFERENCES "Stage"("id") ON DELETE CASCADE ON UPDATE CASCADE;
@@ -410,9 +386,3 @@ ALTER TABLE "_TournamentMatchGameResultToUser" ADD FOREIGN KEY ("A") REFERENCES
-- AddForeignKey
ALTER TABLE "_TournamentMatchGameResultToUser" ADD FOREIGN KEY ("B") REFERENCES "User"("id") ON DELETE CASCADE ON UPDATE CASCADE;
-- AddForeignKey
ALTER TABLE "_GroupSkillToUser" ADD FOREIGN KEY ("A") REFERENCES "GroupSkill"("id") ON DELETE CASCADE ON UPDATE CASCADE;
-- AddForeignKey
ALTER TABLE "_GroupSkillToUser" ADD FOREIGN KEY ("B") REFERENCES "User"("id") ON DELETE CASCADE ON UPDATE CASCADE;

View File

@@ -27,7 +27,6 @@ model User {
tournamentMatches TournamentMatchGameResult[]
lfgGroups LfgGroupMember[]
skill Skill[]
groupSkills GroupSkill[]
}
model Organization {
@@ -43,28 +42,27 @@ model Organization {
}
model Tournament {
id String @id @default(uuid())
name String
id String @id @default(uuid())
name String
// Name in lower case to show in URL
nameForUrl String
description String
startTime DateTime
checkInStartTime DateTime
nameForUrl String
description String
startTime DateTime
checkInStartTime DateTime
// CSS for tournament banner's background value
bannerBackground String
bannerBackground String
// CSS for tournament banner's color value
bannerTextHSLArgs String
bannerTextHSLArgs String
// Team ID's in an array in the order of the seed. 0 index is 1st seed, 1 index is 2nd seed etc.
// Any team not in the list will be at the bottom in the order of their createdAt time stamp
// (older teams first)
seeds String[]
mapPool Stage[]
organizerId String
organizer Organization @relation(fields: [organizerId], references: [id])
teams TournamentTeam[]
brackets TournamentBracket[]
changedSkills Skill[]
changedGroupSkills GroupSkill[]
seeds String[]
mapPool Stage[]
organizerId String
organizer Organization @relation(fields: [organizerId], references: [id])
teams TournamentTeam[]
brackets TournamentBracket[]
changedSkills Skill[]
// There might be duplicate nameForUrl's but inside an organization they're unique
@@unique([nameForUrl, organizerId])
@@ -257,12 +255,11 @@ model LfgGroupMember {
}
model LfgGroupMatch {
id String @id @default(uuid())
createdAt DateTime @default(now())
groups LfgGroup[]
changedSkills Skill[]
stages LfgGroupMatchStage[]
changedGroupSkills GroupSkill[]
id String @id @default(uuid())
createdAt DateTime @default(now())
groups LfgGroup[]
changedSkills Skill[]
stages LfgGroupMatchStage[]
}
model LfgGroupMatchStage {
@@ -288,16 +285,8 @@ model Skill {
user User @relation(fields: [userId], references: [id])
match LfgGroupMatch? @relation(fields: [matchId], references: [id])
tournament Tournament? @relation(fields: [tournamentId], references: [id])
}
model GroupSkill {
id String @id @default(uuid())
mu Float
sigma Float
matchId String?
tournamentId String?
createdAt DateTime @default(now())
users User[]
match LfgGroupMatch? @relation(fields: [matchId], references: [id])
tournament Tournament? @relation(fields: [tournamentId], references: [id])
// One event can only count for skill once
@@unique([userId, matchId])
@@unique([userId, tournamentId])
}