69 lines
1.5 KiB
JavaScript
69 lines
1.5 KiB
JavaScript
// import mongoose from 'mongoose';
|
|
|
|
// const attendanceRecordSchema = new mongoose.Schema({
|
|
// date: {
|
|
// type: Date,
|
|
// required: true,
|
|
// },
|
|
// time: {
|
|
// type: String,
|
|
// required: true,
|
|
// },
|
|
// location: {
|
|
// type: String,
|
|
// required: true,
|
|
// },
|
|
// notes: {
|
|
// type: String,
|
|
// },
|
|
// });
|
|
|
|
// const attendanceSchema = new mongoose.Schema({
|
|
// salesCoordinator: {
|
|
// type: mongoose.Schema.Types.ObjectId,
|
|
// ref: 'SalesCoOrdinator',
|
|
// required: true,
|
|
// unique: true,
|
|
// },
|
|
// records: [attendanceRecordSchema],
|
|
// }, { timestamps: true, versionKey: false });
|
|
|
|
// export const AttendanceSalesCoOrdinator = mongoose.model('Attendance', attendanceSchema);
|
|
import mongoose from 'mongoose';
|
|
|
|
// Define attendance record schema
|
|
const attendanceRecordSchema = new mongoose.Schema({
|
|
date: {
|
|
type: Date,
|
|
required: true,
|
|
},
|
|
time: {
|
|
type: String,
|
|
required: true,
|
|
},
|
|
location: {
|
|
type: String,
|
|
required: true,
|
|
},
|
|
notes: {
|
|
type: String,
|
|
},
|
|
});
|
|
|
|
// Define main attendance schema
|
|
const attendanceSchema = new mongoose.Schema({
|
|
userId: {
|
|
type: mongoose.Schema.Types.ObjectId,
|
|
refPath: 'userType',
|
|
required: true,
|
|
},
|
|
userType: {
|
|
type: String,
|
|
required: true,
|
|
enum: ['SalesCoOrdinator', 'TerritoryManager'], // Specify allowed user types
|
|
},
|
|
records: [attendanceRecordSchema],
|
|
}, { timestamps: true, versionKey: false });
|
|
|
|
export const Attendance = mongoose.model('Attendance', attendanceSchema);
|