refactor: update payment entity and users repository

This commit is contained in:
mahyargdz
2025-04-30 14:52:02 +03:30
parent c46cad7ecc
commit 4f54774400
2 changed files with 5 additions and 3 deletions
@@ -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: "SET NULL" }) @ManyToOne(() => User, (user) => user.payments, { nullable: false, onDelete: "CASCADE" })
user: User; user: User;
@ManyToOne(() => PaymentGateway, { nullable: false, onDelete: "RESTRICT" }) @ManyToOne(() => PaymentGateway, { nullable: false, onDelete: "RESTRICT" })
@@ -91,8 +91,10 @@ export class UserRepository extends Repository<User> {
const queryBuilder = this.createQueryBuilder("user") const queryBuilder = this.createQueryBuilder("user")
.leftJoin("user.roles", "role") .leftJoin("user.roles", "role")
.where("role.name = :roleName", { roleName: RoleEnum.USER }) .where("role.name = :roleName", { roleName: RoleEnum.USER })
.leftJoin("user.groups", "groups") .leftJoin("user.legalUser", "legalUser")
.addSelect(["groups.id", "groups.name"]) .addSelect(["legalUser.id", "legalUser.registrationName"])
.leftJoin("user.realUser", "realUser")
.addSelect(["realUser.id", "realUser.firstName", "realUser.lastName"])
.loadRelationCountAndMap("user.invoicesCount", "user.invoices") .loadRelationCountAndMap("user.invoicesCount", "user.invoices")
.loadRelationCountAndMap("user.subscriptionsCount", "user.subscriptions") .loadRelationCountAndMap("user.subscriptionsCount", "user.subscriptions")
.loadRelationCountAndMap("user.ticketsCount", "user.tickets"); .loadRelationCountAndMap("user.ticketsCount", "user.tickets");