import { Table, Column, Model, DataType } from 'sequelize-typescript'; import { ApiProperty } from '@nestjs/swagger'; @Table({ tableName: 'event_episodes', paranoid: true }) export default class EventEpisode extends Model { @ApiProperty({ type: Number }) @Column({ type: DataType.NUMBER, allowNull: false, field: 'event_id' }) eventId: number; @ApiProperty({ type: String }) @Column({ type: DataType.TEXT, field: 'episode_name' }) episodeName: string; @ApiProperty({ type: String }) @Column({ type: DataType.TEXT, field: 'episode_description' }) episodeDescription: string; @ApiProperty({ type: Date }) @Column({ type: DataType.DATEONLY, field: 'episode_start_date' }) episodeStartDate: Date; @ApiProperty({ type: Date }) @Column({ type: DataType.DATEONLY, field: 'episode_end_date' }) episodeEndDate: Date; @ApiProperty({ type: String }) @Column({ type: DataType.TEXT, field: 'episode_location' }) episodeLocation: string; @ApiProperty({ type: String }) @Column({ type: DataType.TEXT, field: 'episode_type' }) episodeType: string; @ApiProperty({ type: Object }) @Column({ type: DataType.JSON, field: 'images' }) images: object; @ApiProperty({ type: String }) @Column({ type: DataType.TEXT, field: 'status' }) status: string; @ApiProperty({ type: Date }) @Column({ type: DataType.DATEONLY, field: 'validFrom' }) validFrom: Date; @ApiProperty({ type: Date }) @Column({ type: DataType.DATEONLY, field: 'validTill' }) validTill: Date; @ApiProperty({ type: Date }) @Column({ type: DataType.DATE, field: 'createdAt' }) createdAt: Date; @ApiProperty({ type: Date }) @Column({ type: DataType.DATE, field: 'updatedAt' }) updatedAt: Date; @ApiProperty({ type: String }) @Column({ type: DataType.TEXT, field: 'createdBy' }) createdBy: string; @ApiProperty({ type: String }) @Column({ type: DataType.TEXT, field: 'modifiedBy' }) modifiedBy: string; @ApiProperty({ type: Date }) @Column({ type: DataType.DATE, field: 'deletedAt' }) deletedAt: Date; @ApiProperty({ type: Number }) @Column({ type: DataType.NUMBER, field: 'version' }) version: number; }