api/resources/Leaves/LeaveModel.js
Sibunnayak 5722af213c update
2024-08-02 10:27:01 +05:30

47 lines
885 B
JavaScript

import mongoose from "mongoose";
// Define leave record schema
const leaveRecordSchema = new mongoose.Schema({
date: {
type: Date,
required: true,
},
time: {
type: String,
required: true,
},
location: {
type: String,
required: true,
},
reason: {
type: String,
required: true,
},
leaveType: {
type: String,
required: true,
enum: ["Sick Leave", "Casual Leave"],
},
});
// Define main leave schema
const leaveSchema = new mongoose.Schema(
{
userId: {
type: mongoose.Schema.Types.ObjectId,
refPath: "userType",
required: true,
},
userType: {
type: String,
required: true,
enum: ["Sales Coordinator", "Territory Manager"],
},
records: [leaveRecordSchema],
},
{ timestamps: true, versionKey: false }
);
export const Leave = mongoose.model("Leave", leaveSchema);