update: the cascade option for user raltaions to other entities
This commit is contained in:
@@ -14,7 +14,7 @@ export class Invoice extends BaseEntity {
|
|||||||
@Column({ type: "int", generated: "identity", insert: false })
|
@Column({ type: "int", generated: "identity", insert: false })
|
||||||
numericId: number;
|
numericId: number;
|
||||||
|
|
||||||
@ManyToOne(() => User, (user) => user.invoices, { nullable: true, onDelete: "RESTRICT" })
|
@ManyToOne(() => User, (user) => user.invoices, { nullable: true, onDelete: "SET NULL" })
|
||||||
user: User;
|
user: User;
|
||||||
|
|
||||||
@Column({ type: "decimal", precision: 16, scale: 2, nullable: false, transformer: new DecimalTransformer() })
|
@Column({ type: "decimal", precision: 16, scale: 2, nullable: false, transformer: new DecimalTransformer() })
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ export class DepositRequest extends BaseEntity {
|
|||||||
@ManyToOne(() => BankAccount, (bankAccount) => bankAccount.depositRequests, { nullable: false, onDelete: "RESTRICT" })
|
@ManyToOne(() => BankAccount, (bankAccount) => bankAccount.depositRequests, { nullable: false, onDelete: "RESTRICT" })
|
||||||
bankAccount: BankAccount;
|
bankAccount: BankAccount;
|
||||||
|
|
||||||
@ManyToOne(() => User, { nullable: false, onDelete: "RESTRICT" })
|
@ManyToOne(() => User, { nullable: false, onDelete: "SET NULL" })
|
||||||
user: User;
|
user: User;
|
||||||
|
|
||||||
@Column({ type: "varchar", length: 250, nullable: false })
|
@Column({ type: "varchar", length: 250, nullable: false })
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ export class Payment extends BaseEntity {
|
|||||||
@Column({ type: "enum", enum: PaymentStatus, default: PaymentStatus.PENDING })
|
@Column({ type: "enum", enum: PaymentStatus, default: PaymentStatus.PENDING })
|
||||||
status: PaymentStatus;
|
status: PaymentStatus;
|
||||||
|
|
||||||
@ManyToOne(() => User, (user) => user.payments, { nullable: false, onDelete: "RESTRICT" })
|
@ManyToOne(() => User, (user) => user.payments, { nullable: false, onDelete: "SET NULL" })
|
||||||
user: User;
|
user: User;
|
||||||
|
|
||||||
@ManyToOne(() => PaymentGateway, { nullable: false, onDelete: "RESTRICT" })
|
@ManyToOne(() => PaymentGateway, { nullable: false, onDelete: "RESTRICT" })
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ export class ReferralCode extends BaseEntity {
|
|||||||
expiresAt: Date;
|
expiresAt: Date;
|
||||||
|
|
||||||
//*********************************** */
|
//*********************************** */
|
||||||
@OneToOne(() => User, (user) => user.referralCode)
|
@OneToOne(() => User, (user) => user.referralCode, { onDelete: "CASCADE" })
|
||||||
@JoinColumn()
|
@JoinColumn()
|
||||||
user: User;
|
user: User;
|
||||||
|
|
||||||
|
|||||||
@@ -8,13 +8,13 @@ import { ReferralStatus } from "../enums/referral-status.enum";
|
|||||||
|
|
||||||
@Entity()
|
@Entity()
|
||||||
export class Referral extends BaseEntity {
|
export class Referral extends BaseEntity {
|
||||||
@ManyToOne(() => User, (user) => user.referrals)
|
@ManyToOne(() => User, (user) => user.referrals, { onDelete: "CASCADE" })
|
||||||
referrer: User;
|
referrer: User;
|
||||||
|
|
||||||
@ManyToOne(() => User, (user) => user.referredBy)
|
@ManyToOne(() => User, (user) => user.referredBy, { onDelete: "CASCADE" })
|
||||||
referredUser: User;
|
referredUser: User;
|
||||||
|
|
||||||
@ManyToOne(() => ReferralCode, (code) => code.referrals)
|
@ManyToOne(() => ReferralCode, (code) => code.referrals, { onDelete: "CASCADE" })
|
||||||
referralCode: ReferralCode;
|
referralCode: ReferralCode;
|
||||||
|
|
||||||
@OneToMany(() => ReferralReward, (reward) => reward.referral)
|
@OneToMany(() => ReferralReward, (reward) => reward.referral)
|
||||||
|
|||||||
@@ -18,6 +18,6 @@ export class UserSetting extends BaseEntity {
|
|||||||
@ManyToOne(() => NotificationSetting, (notifSetting) => notifSetting.userSettings, { nullable: false })
|
@ManyToOne(() => NotificationSetting, (notifSetting) => notifSetting.userSettings, { nullable: false })
|
||||||
notificationSetting: NotificationSetting;
|
notificationSetting: NotificationSetting;
|
||||||
|
|
||||||
@ManyToOne(() => User, (user) => user.settings, { nullable: false })
|
@ManyToOne(() => User, (user) => user.settings, { nullable: false, onDelete: "CASCADE" })
|
||||||
user: User;
|
user: User;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -25,17 +25,17 @@ export class Ticket extends BaseEntity {
|
|||||||
@Column({ type: "enum", enum: TicketPriority, nullable: false })
|
@Column({ type: "enum", enum: TicketPriority, nullable: false })
|
||||||
priority: TicketPriority;
|
priority: TicketPriority;
|
||||||
|
|
||||||
@ManyToOne(() => DanakService, (danakService) => danakService.tickets, { onDelete: "RESTRICT", nullable: true })
|
@ManyToOne(() => DanakService, (danakService) => danakService.tickets, { onDelete: "SET NULL", nullable: true })
|
||||||
danakService: DanakService | null;
|
danakService: DanakService | null;
|
||||||
|
|
||||||
@ManyToOne(() => User, (user) => user.tickets, { nullable: true })
|
@ManyToOne(() => User, (user) => user.tickets, { nullable: true, onDelete: "SET NULL" })
|
||||||
assignedTo: User | null;
|
assignedTo: User | null;
|
||||||
|
|
||||||
@ManyToOne(() => User, (user) => user.tickets, { onDelete: "CASCADE", nullable: false })
|
@ManyToOne(() => User, (user) => user.tickets, { onDelete: "CASCADE", nullable: false })
|
||||||
user: User;
|
user: User;
|
||||||
|
|
||||||
@ManyToOne(() => TicketCategory, (category) => category.tickets, { onDelete: "RESTRICT", nullable: false })
|
@ManyToOne(() => TicketCategory, (category) => category.tickets, { onDelete: "SET NULL", nullable: true })
|
||||||
category: TicketCategory;
|
category: TicketCategory | null;
|
||||||
|
|
||||||
@OneToMany(() => TicketMessage, (message) => message.ticket, { cascade: true })
|
@OneToMany(() => TicketMessage, (message) => message.ticket, { cascade: true })
|
||||||
messages: TicketMessage[];
|
messages: TicketMessage[];
|
||||||
|
|||||||
Reference in New Issue
Block a user