feat: working on money requests jounrey

This commit is contained in:
Abdalhamid Alhamad
2024-12-18 12:57:23 +03:00
parent 33453b193f
commit ed57ce6e91
23 changed files with 465 additions and 2 deletions

View File

@ -0,0 +1,49 @@
import { ApiProperty } from '@nestjs/swagger';
import { JuniorResponseDto } from '~/junior/dtos/response';
import { MoneyRequest } from '~/money-request/entities';
import { MoneyRequestFrequency, MoneyRequestStatus } from '~/money-request/enums';
export class MoneyRequestResponseDto {
@ApiProperty({ example: 'f5c7e193-bc5e-4aa5-837b-c1edc6449880' })
id!: string;
@ApiProperty({ type: JuniorResponseDto })
requester!: JuniorResponseDto;
@ApiProperty({ example: 'f5c7e193-bc5e-4aa5-837b-c1edc6449880' })
reviewerId!: string;
@ApiProperty({ example: 100.0 })
requestedAmount!: number;
@ApiProperty({ example: 'Please give me money' })
message!: string;
@ApiProperty({ example: MoneyRequestFrequency.ONE_TIME })
frequency!: MoneyRequestFrequency;
@ApiProperty({ example: '2021-01-01' })
endDate!: Date | null;
@ApiProperty({ example: MoneyRequestStatus.PENDING })
status!: MoneyRequestStatus;
@ApiProperty()
reviewedAt!: Date | null;
@ApiProperty()
createdAt!: Date;
constructor(moneyRequest: MoneyRequest) {
this.id = moneyRequest.id;
this.requester = new JuniorResponseDto(moneyRequest.requester);
this.reviewerId = moneyRequest.reviewerId;
this.requestedAmount = moneyRequest.requestedAmount;
this.message = moneyRequest.message;
this.frequency = moneyRequest.frequency;
this.endDate = moneyRequest.endDate || null;
this.status = moneyRequest.status;
this.reviewedAt = moneyRequest.reviewedAt || null;
this.createdAt = moneyRequest.createdAt;
}
}