pl4y-data-library
Version:
This library contains the dtos, enums, schemas, and other data objects needed in the pl4y ecosystem.
34 lines (27 loc) • 887 B
text/typescript
import { Prop, Schema, SchemaFactory } from "@nestjs/mongoose";
import { Document, Types } from "mongoose";
import { ProductStatus } from "../enums/product-status.enum";
// Defines the interface for your document
export type ValidityDocument = Validity & Document;
()
export class Validity {
({
type: Types.ObjectId,
ref: "Product",
required: true,
unique: true,
})
productId: Types.ObjectId;
({ type: Date, required: true })
startDate: Date;
({ type: Date, required: true })
endDate: Date;
({
type: String,
enum: Object.values(ProductStatus).filter((value) => typeof value === "string"),
default: ProductStatus.ACTIVE,
})
status: ProductStatus;
}
// Generates the actual Mongoose Schema
export const ValiditySchema = SchemaFactory.createForClass(Validity);