@ijodkor/nest-payme
Version:
NestJs ilovalar uchun Payme ETT bilan integratsiya qilish uchun kutubxona.
53 lines (45 loc) • 1.19 kB
text/typescript
import { Body, Controller, Post, } from '@nestjs/common';
import { ApiTags } from '@nestjs/swagger';
import { PayComException } from "../exceptions/pay-com.exception";
import { ReceiptPayDto } from "../dto/receipt-pay.dto";
import { ReceiptCreateDto } from "../dto/receipt-create.dto";
import { ReceiptService } from "./receipt.service";
('payment')
('payment/payme')
export class ReceiptController {
constructor(private readonly receiptService: ReceiptService) {}
('prepare')
async prepare(() dto: ReceiptCreateDto) {
try {
const receipt = await this.receiptService.create(
dto.account,
dto.amount,
dto.detail
);
return {
receipt: {
id: receipt._id,
amount: receipt.amount
}
}
} catch (e) {
return { e };
}
}
('pay')
async pay(() dto: ReceiptPayDto) {
try {
const receipt = await this.receiptService.pay(dto.id, dto.token);
return {
receipt
}
} catch (e: any) {
if (e instanceof PayComException) {
return e.error
}
return {
message: e.message
};
}
}
}