ff-admin-server/src/entity/club/newsletter/newsletter.ts

46 lines
1.2 KiB
TypeScript
Raw Normal View History

2024-12-25 12:22:28 +01:00
import { Column, Entity, ManyToOne, OneToMany, PrimaryColumn } from "typeorm";
import { newsletterDates } from "./newsletterDates";
2025-01-05 14:14:00 +01:00
import { member } from "../member/member";
2024-12-25 12:22:28 +01:00
import { newsletterRecipients } from "./newsletterRecipients";
2025-01-05 14:14:00 +01:00
import { query } from "../../settings/query";
2024-12-25 12:22:28 +01:00
@Entity()
export class newsletter {
@PrimaryColumn({ generated: "increment", type: "int" })
id: number;
@Column({ type: "varchar", length: 255 })
title: string;
@Column({ type: "varchar", length: 255, default: "" })
description: string;
@Column({ type: "varchar", length: 255, default: "" })
newsletterTitle: string;
@Column({ type: "text", default: "" })
newsletterText: string;
@Column({ type: "varchar", length: 255, default: "" })
newsletterSignatur: string;
@Column({ type: "boolean", default: false })
isSent: boolean;
2024-12-26 13:57:31 +01:00
@Column({ type: "int", nullable: true })
recipientsByQueryId?: number;
2024-12-25 12:22:28 +01:00
@OneToMany(() => newsletterDates, (dates) => dates.newsletter)
dates: newsletterDates[];
@OneToMany(() => newsletterRecipients, (recipient) => recipient.newsletter)
recipients: newsletterRecipients[];
@ManyToOne(() => query, {
nullable: true,
onDelete: "CASCADE",
onUpdate: "RESTRICT",
})
recipientsByQuery?: query;
}