| | import * as mongoose from 'mongoose';
|
| | import { Document } from 'mongoose';
|
| | import { IUserDocument } from '../user/user.schema';
|
| | import { IPropertyDocument } from '../property/property.schema';
|
| |
|
| | export interface IUserActivityDocument extends Document {
|
| | userId: IUserDocument;
|
| | propertyId: IPropertyDocument;
|
| | action: string;
|
| | sessionId: string;
|
| | id: string;
|
| | timestamp: Date;
|
| | duration?: number;
|
| | searchQuery?: string;
|
| | }
|
| |
|
| | const UserActivitySchema = new mongoose.Schema<IUserActivityDocument>(
|
| | {
|
| | userId: {
|
| | type: mongoose.Schema.Types.ObjectId,
|
| | ref: 'User',
|
| |
|
| | },
|
| | propertyId: {
|
| | type: mongoose.Schema.Types.ObjectId,
|
| | ref: 'propertie',
|
| |
|
| | },
|
| | action: { type: String, required: true },
|
| | sessionId: { type: String, required: true },
|
| | id: { type: String },
|
| | searchQuery: { type: String },
|
| | timestamp: { type: Date, default: Date.now },
|
| | duration: { type: Number },
|
| | },
|
| | {
|
| | toJSON: { versionKey: false },
|
| | },
|
| | );
|
| |
|
| | export { UserActivitySchema };
|
| |
|