This commit is contained in:
2026-01-18 17:28:53 +03:30
parent a10b6129b9
commit 8db3b8d1ac
8 changed files with 55 additions and 97 deletions
@@ -19,8 +19,8 @@ import { Payment } from '../entities/payment.entity';
@Injectable()
export class PaymentsService {
private readonly logger = new Logger(PaymentsService.name);
export class PaymentService {
private readonly logger = new Logger(PaymentService.name);
constructor(
private readonly em: EntityManager,
@@ -211,7 +211,6 @@ export class PaymentsService {
// TODO : use decimal js
// does need persist or not
payment.order.paidAmount += payment.amount
payment.order.balance = payment.order.total - payment.order.paidAmount
await em.flush();
return payment;
@@ -249,7 +248,6 @@ export class PaymentsService {
// TODO : use decimal js
payment.order.paidAmount += payment.amount
payment.order.balance = payment.order.total - payment.order.paidAmount
em.persist(payment);
em.persist(payment.order);
@@ -259,57 +257,5 @@ export class PaymentsService {
return payment;
}
// private markPaid(payment: Payment, referenceId: string) {
// payment.status = PaymentStatusEnum.Paid;
// payment.paidAt = new Date();
// payment.referenceId = referenceId;
// }
// private failPayment(payment: Payment) {
// payment.status = PaymentStatusEnum.Failed;
// payment.failedAt = new Date();
// payment.order.status = OrderStatus.CANCELED;
// }
// private async getOrCreateLatestPendingPayment(
// orderId: string,
// params: {
// amount: number;
// method: PaymentMethodEnum;
// gateway: PaymentGatewayEnum | null;
// em?: EntityManager;
// },
// ): Promise<Payment> {
// const em = params.em ?? this.em;
// const existing = await em.findOne(
// Payment,
// { order: { id: orderId }, status: PaymentStatusEnum.Pending },
// { orderBy: { createdAt: 'DESC' } },
// );
// if (existing) {
// if (existing.method !== params.method) {
// throw new BadRequestException(PaymentMessage.EXISTING_PENDING_PAYMENT_MISMATCH);
// }
// return existing;
// }
// const orderRef = em.getReference(Order, orderId);
// const payment = em.create(Payment, {
// amount: params.amount,
// order: orderRef,
// method: params.method,
// gateway: params.gateway,
// transactionId: null,
// status: PaymentStatusEnum.Pending,
// });
// em.persist(payment);
// await em.flush();
// return payment;
// }
}