chore: complete payment system

This commit is contained in:
mahyargdz
2025-02-08 14:18:51 +03:30
parent ab23706b6a
commit ffa2a2a806
12 changed files with 273 additions and 45 deletions
@@ -2,7 +2,7 @@ import { ApiProperty } from "@nestjs/swagger";
import { IsEnum, IsInt, IsNotEmpty, IsUUID, IsUrl, Min } from "class-validator";
import { WalletMessage } from "../../../common/enums/message.enum";
import { TransferMethod } from "../enums/payment-type.enum";
import { TransferType } from "../enums/payment-type.enum";
export class DepositDto {
@IsNotEmpty({ message: WalletMessage.AMOUNT_REQUIRED })
@@ -36,7 +36,7 @@ export class TransferDepositDto extends DepositDto {
bankAccountId: string;
@IsNotEmpty({ message: WalletMessage.TRANSFER_METHOD_REQUIRED })
@IsEnum(TransferMethod)
@ApiProperty({ description: "transfer method", example: TransferMethod.CARD_TO_CARD, enum: TransferMethod })
method: TransferMethod;
@IsEnum(TransferType)
@ApiProperty({ description: "transfer method", example: TransferType.CARD_TO_CARD, enum: TransferType })
method: TransferType;
}
@@ -0,0 +1,17 @@
import { ApiProperty } from "@nestjs/swagger";
import { IsEnum, IsNotEmpty } from "class-validator";
import { PaginationDto } from "../../../common/DTO/pagination.dto";
import { CommonMessage } from "../../../common/enums/message.enum";
import { TransferType } from "../enums/payment-type.enum";
export class PaymentTransactionQueryDto extends PaginationDto {
@IsNotEmpty({ message: CommonMessage.PaymentTypeQueryNotEmpty })
@IsEnum(TransferType)
@ApiProperty({
description: `payment type ${TransferType.CARD_TO_CARD} ${TransferType.SHEBA} `,
enum: TransferType,
example: TransferType.CARD_TO_CARD,
})
type: TransferType;
}
@@ -0,0 +1,12 @@
import { ApiProperty } from "@nestjs/swagger";
import { IsNotEmpty, IsString, Length } from "class-validator";
import { PaymentMessage } from "../../../common/enums/message.enum";
export class RejectDepositRequestDto {
@IsNotEmpty({ message: PaymentMessage.REJECT_COMMENT_REQUIRED })
@IsString({ message: PaymentMessage.REJECT_COMMENT_STRING })
@Length(3, 250, { message: PaymentMessage.REJECT_COMMENT_LENGTH })
@ApiProperty({ description: "Comment for rejecting the deposit request", example: "The receipt is not clear" })
comment: string;
}