2025-05-28 09:42:00 +05:30
|
|
|
import mongoose, { Document, Schema } from "mongoose";
|
2025-03-28 12:45:59 +05:30
|
|
|
import MainModel from "../../connect/mongoose.ts";
|
2025-05-28 09:42:00 +05:30
|
|
|
export interface ZoneSchema extends Document {
|
|
|
|
|
zoneId: string;
|
|
|
|
|
zoneName: string;
|
|
|
|
|
createBy: mongoose.Types.ObjectId;
|
|
|
|
|
points: [];
|
2025-05-28 10:02:16 +05:30
|
|
|
layer: number;
|
2025-05-28 09:42:00 +05:30
|
|
|
viewPortCenter: [];
|
|
|
|
|
viewPortposition: [];
|
|
|
|
|
isArchive: boolean;
|
2025-03-18 17:46:24 +05:30
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const zoneSchema: Schema = new Schema({
|
2025-05-28 09:42:00 +05:30
|
|
|
zoneId: { type: String },
|
|
|
|
|
zoneName: { type: String },
|
|
|
|
|
createBy: { type: Schema.Types.ObjectId, ref: "Users" },
|
|
|
|
|
points: { type: Array },
|
|
|
|
|
layer: { type: Number, required: true },
|
|
|
|
|
viewPortCenter: { type: Array, required: true },
|
|
|
|
|
viewPortposition: { type: Array, required: true },
|
|
|
|
|
isArchive: { type: Boolean, default: false },
|
2025-03-18 17:46:24 +05:30
|
|
|
});
|
|
|
|
|
|
|
|
|
|
const zoneModel = (db: string) => {
|
2025-05-28 09:42:00 +05:30
|
|
|
return MainModel(db, "zones", zoneSchema, "zones");
|
2025-03-18 17:46:24 +05:30
|
|
|
};
|
2025-05-28 09:42:00 +05:30
|
|
|
export default zoneModel;
|