Spaces:
Sleeping
Sleeping
File size: 1,856 Bytes
c01955c | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 | import mongoose from "mongoose";
const performanceSchema = new mongoose.Schema(
{
interview_id: {
type: mongoose.Schema.Types.ObjectId,
ref: "Interview",
required: true
},
user_id: {
type: mongoose.Schema.Types.ObjectId,
ref: "User",
required: true
},
overallScore: {
type: Number,
min: 0,
max: 10,
required: true
},
verdict: {
type: String,
enum: ["hire", "maybe", "reject"],
required: true
},
summaryFeedback: {
type: String,
required: true
},
skills: {
technical: {
score: { type: Number, min: 0, max: 10 },
feedback: String
},
dsa: {
score: { type: Number, min: 0, max: 10 },
feedback: String
},
problemSolving: {
score: { type: Number, min: 0, max: 10 },
feedback: String
},
communication: {
score: { type: Number, min: 0, max: 10 },
feedback: String
},
systemDesign: {
score: { type: Number, min: 0, max: 10 },
feedback: String
},
projects: {
score: { type: Number, min: 0, max: 10 },
feedback: String
},
behaviour: {
score: { type: Number, min: 0, max: 10 },
feedback: String
}
},
strengths: [
{
type: String
}
],
weaknesses: [
{
type: String
}
],
practiceRecommendations: [
{
type: String
}
],
studyRecommendations: [
{
type: String
}
],
lowPriorityOrAvoid: [
{
type: String
}
],
confidenceLevel: {
type: Number,
min: 0,
max: 10
}
},
{
timestamps: true
}
);
export default mongoose.model("Performance", performanceSchema);
|