Spaces:
Running
Running
const Team = require("../models/TeamModel"); | |
const Leaderboard = require("../models/LeaderboardModel"); | |
async function createLeaderboardDocuments() { | |
try { | |
// Retrieve all teams from the Team collection | |
const teams = await Team.find(); | |
// Iterate over each team and create a leaderboard document | |
for (const team of teams) { | |
// Check if a leaderboard document already exists for the team | |
const existingLeaderboard = await Leaderboard.findOne({ TeamID: team._id }); | |
if (!existingLeaderboard) { | |
// Create a new leaderboard document for the team | |
const leaderboard = new Leaderboard({ | |
TeamID: team._id, | |
TeamName: team.TeamName, | |
Points: 0, | |
Time: new Date(), | |
RoomID: team.RoomID, | |
Round: 1, | |
Questions: { Solved: [], Unsolved: [] } | |
}); | |
// Save the leaderboard document | |
await leaderboard.save(); | |
console.log(`Created leaderboard document for team: ${team.TeamName}`); | |
} | |
} | |
console.log("Leaderboard documents created for all teams."); | |
} catch (error) { | |
console.error("Error creating leaderboard documents:", error); | |
} | |
} |