feat: implement backend API with models and seed data for OctoFit application

This commit is contained in:
2026-06-20 01:49:15 +00:00
parent 39ef098873
commit f8c4a57e78
17 changed files with 669 additions and 5 deletions
+18
View File
@@ -0,0 +1,18 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.LeaderboardModel = void 0;
const mongoose_1 = require("mongoose");
const leaderboardEntrySchema = new mongoose_1.Schema({
user: { type: mongoose_1.Types.ObjectId, ref: "User", required: true },
team: { type: mongoose_1.Types.ObjectId, ref: "Team", required: true },
points: { type: Number, required: true, min: 0 },
rank: { type: Number, required: true, min: 1 },
}, { _id: false });
const leaderboardSchema = new mongoose_1.Schema({
period: { type: String, required: true, trim: true },
generatedAt: { type: Date, required: true },
entries: { type: [leaderboardEntrySchema], required: true },
}, {
timestamps: true,
});
exports.LeaderboardModel = (0, mongoose_1.model)("Leaderboard", leaderboardSchema);