fix: the bug in the payment service
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
import { EntityManager, RequiredEntityData } from "@mikro-orm/postgresql";
|
||||
import { Seeder } from "@mikro-orm/seeder";
|
||||
import { Logger } from "@nestjs/common";
|
||||
|
||||
import { PaymentGateway } from "../../src/modules/payments/entities/payment-gateway.entity";
|
||||
import { GatewayEnum } from "../../src/modules/payments/enums/gateway.enum";
|
||||
|
||||
export class PaymentGatewaySeeder extends Seeder {
|
||||
private readonly logger = new Logger(PaymentGatewaySeeder.name);
|
||||
|
||||
async run(em: EntityManager): Promise<void> {
|
||||
const paymentGateways: RequiredEntityData<PaymentGateway>[] = [
|
||||
{
|
||||
name: GatewayEnum.ZARINPAL,
|
||||
nameFa: "زرین پال",
|
||||
logoUrl: "https://storage.danakcorp.com/logo/fa-dark.png",
|
||||
description: "درگاه پرداخت زرین پال",
|
||||
},
|
||||
];
|
||||
|
||||
for (const paymentGateway of paymentGateways) {
|
||||
const existingPaymentGateway = await em.findOne(PaymentGateway, { name: paymentGateway.name });
|
||||
|
||||
if (!existingPaymentGateway) {
|
||||
const createdPaymentGateway = em.create(PaymentGateway, paymentGateway);
|
||||
|
||||
await em.persistAndFlush(createdPaymentGateway);
|
||||
this.logger.log(`[PaymentGatewaySeeder] Created payment gateway: ${createdPaymentGateway.name}`);
|
||||
} else {
|
||||
this.logger.log(`[PaymentGatewaySeeder] Payment gateway already exists: ${paymentGateway.name}`);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user