populate order with payments

This commit is contained in:
2025-12-20 13:01:26 +03:30
parent 31a786b4d7
commit 48524542f2
2 changed files with 9 additions and 1 deletions
@@ -19,6 +19,7 @@ import { PaymentMethod } from '../../payments/entities/payment-method.entity';
import { OrderItem } from './order-item.entity';
import { Delivery } from '../../delivery/entities/delivery.entity';
import { OrderUserAddress, OrderCarAddress } from '../interface/order.interface';
import { Payment } from 'src/modules/payments/entities/payment.entity';
@Entity({ tableName: 'orders' })
@Unique({ properties: ['restaurant', 'orderNumber'] })
@@ -36,6 +37,12 @@ export class Order extends BaseEntity {
@ManyToOne(() => Delivery)
deliveryMethod!: Delivery;
@OneToMany(() => Payment, payment => payment.order, {
cascade: [Cascade.ALL],
orphanRemoval: true,
})
payments = new Collection<Payment>(this);
@OneToMany(() => OrderItem, item => item.order, {
cascade: [Cascade.ALL],
orphanRemoval: true,
@@ -1,4 +1,4 @@
import { Entity, ManyToOne, Property, Enum } from '@mikro-orm/core';
import { Entity, ManyToOne, Property, Enum, Index } from '@mikro-orm/core';
import { BaseEntity } from '../../../common/entities/base.entity';
import { Order } from '../../orders/entities/order.entity';
import { PaymentGatewayEnum, PaymentMethodEnum, PaymentStatusEnum } from '../interface/payment';
@@ -6,6 +6,7 @@ import { PaymentGatewayEnum, PaymentMethodEnum, PaymentStatusEnum } from '../int
@Entity({ tableName: 'payments' })
export class Payment extends BaseEntity {
@ManyToOne(() => Order)
@Index()
order!: Order;
@Property({ type: 'decimal', precision: 10, scale: 0 })