api/resources/Leaves/LeaveModel.js
Sibunnayak ad4857629a update
2024-08-02 11:31:11 +05:30

47 lines
883 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: ['SalesCoOrdinator', 'TerritoryManager'],
},
records: [leaveRecordSchema],
},
{ timestamps: true, versionKey: false }
);
export const Leave = mongoose.model("Leave", leaveSchema);