diff --git a/catalog-service/src/schemas/tag.schema.ts b/catalog-service/src/schemas/tag.schema.ts index e69de29..9114b7b 100644 --- a/catalog-service/src/schemas/tag.schema.ts +++ b/catalog-service/src/schemas/tag.schema.ts @@ -0,0 +1,42 @@ +import { Prop, Schema, SchemaFactory } from '@nestjs/mongoose'; +import { HydratedDocument, Types } from 'mongoose'; + + +@Schema() +export class Tag { + + @Prop({ required: true, unique: true }) + ID: string; + + @Prop() + Name: string; + + @Prop() + Data: string; + + @Prop({ enum: ['user', 'system'] }) + Type: string; + + @Prop({ type: Types.ObjectId, ref: 'User' }) + User: Types.ObjectId; + + @Prop() + Status: boolean; + + @Prop({ enum: ['shop', 'product','shopCategory','shopCategoryDocument','productCategory','productCategoryDocument'] }) + TagType: string; + + @Prop() + EndTime: Date; + + @Prop() + AdminStatus: boolean; + + @Prop({ type: Date, default: Date.now }) + createdAt: Date; + + @Prop({ type: Date, default: Date.now }) + updatedAt: Date; +} +export const TagSchema = SchemaFactory.createForClass(Tag); +TagSchema.index({ ID: 1 }) \ No newline at end of file