chore: annoucement module with user-group

This commit is contained in:
Matin
2025-01-26 10:57:20 +03:30
parent 6da4b5114c
commit c8c98be6ee
13 changed files with 239 additions and 5 deletions
@@ -0,0 +1,22 @@
import { Column, Entity, JoinTable, ManyToMany } from "typeorm";
import { User } from "./user.entity";
import { BaseEntity } from "../../../common/entities/base.entity";
import { Announcement } from "../../announcements/entities/announcement.entity";
@Entity()
export class UserGroup extends BaseEntity {
@Column({ type: "varchar", length: 100 })
name: string;
@Column({ nullable: true })
description?: string;
@ManyToMany(() => User, (user) => user.groups)
@JoinTable()
users: User[];
@ManyToMany(() => Announcement, (announcement) => announcement.targetGroups)
@JoinTable()
announcements: Announcement[];
}
+5 -1
View File
@@ -1,6 +1,7 @@
import { Column, Entity, ManyToOne, OneToMany } from "typeorm";
import { Column, Entity, ManyToMany, ManyToOne, OneToMany } from "typeorm";
import { Role } from "./role.entity";
import { UserGroup } from "./user-group.entity";
import { BaseEntity } from "../../../common/entities/base.entity";
import { TicketMessage } from "../../tickets/entities/ticket-message.entity";
import { Ticket } from "../../tickets/entities/ticket.entity";
@@ -39,4 +40,7 @@ export class User extends BaseEntity {
@OneToMany(() => TicketMessage, (ticketMessage) => ticketMessage.author)
ticketMessage: TicketMessage[];
@ManyToMany(() => UserGroup, (group) => group.users)
groups: UserGroup[];
}