chore: user announcement

This commit is contained in:
Matin
2025-02-01 10:32:36 +03:30
parent 2c7a9286ee
commit 014aaf353d
15 changed files with 192 additions and 11 deletions
@@ -1,5 +1,6 @@
import { Column, Entity, Index, ManyToMany, ManyToOne } from "typeorm";
import { Column, Entity, Index, ManyToMany, ManyToOne, OneToMany } from "typeorm";
import { UserAnnouncement } from "./user-announcement.entity";
import { BaseEntity } from "../../../common/entities/base.entity";
import { DanakService } from "../../danak-services/entities/danak-service.entity";
import { UserGroup } from "../../users/entities/user-group.entity";
@@ -32,4 +33,7 @@ export class Announcement extends BaseEntity {
isPublicAnnouncement(): boolean {
return this.isPublic;
}
@OneToMany(() => UserAnnouncement, (userAnnouncement) => userAnnouncement.announcement)
userAnnouncements: UserAnnouncement[];
}
@@ -0,0 +1,19 @@
import { Column, Entity, JoinColumn, ManyToOne } from "typeorm";
import { Announcement } from "./announcement.entity";
import { BaseEntity } from "../../../common/entities/base.entity";
import { User } from "../../users/entities/user.entity"; // Assuming you have a User entity
@Entity()
export class UserAnnouncement extends BaseEntity {
@ManyToOne(() => User, (user) => user.userAnnouncements, { onDelete: "CASCADE" })
@JoinColumn({ name: "userId" })
user: User;
@ManyToOne(() => Announcement, (announcement) => announcement.userAnnouncements, { onDelete: "CASCADE" })
@JoinColumn({ name: "announcementId" })
announcement: Announcement;
@Column({ type: "boolean", default: false })
isRead: boolean;
}