parent
8079769881
commit
b89f7ac1b4
36
src/models/responses/ResponseSelfServiceDonation.ts
Normal file
36
src/models/responses/ResponseSelfServiceDonation.ts
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
import { IsInt, IsNotEmpty, IsPositive } from 'class-validator';
|
||||||
|
import { DistanceDonation } from '../entities/DistanceDonation';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Defines the runner selfservice donation response.
|
||||||
|
* Why? B/C runner's are not allowed to view all information available to admin users.
|
||||||
|
*/
|
||||||
|
export class ResponseSelfServiceDonation {
|
||||||
|
/**
|
||||||
|
* The donation's donor.
|
||||||
|
*/
|
||||||
|
@IsNotEmpty()
|
||||||
|
donor: string;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The donation's amount in the smalles unit of your currency (default: euro cent).
|
||||||
|
*/
|
||||||
|
@IsInt()
|
||||||
|
amount: number;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The donation's amount donated per distance.
|
||||||
|
* The amount the donor set to be donated per kilometer that the runner ran.
|
||||||
|
*/
|
||||||
|
@IsInt()
|
||||||
|
@IsPositive()
|
||||||
|
amountPerDistance: number;
|
||||||
|
|
||||||
|
public constructor(donation: DistanceDonation) {
|
||||||
|
if (!donation.donor.middlename) { this.donor = donation.donor.firstname + " " + donation.donor.lastname; }
|
||||||
|
else { this.donor = donation.donor.firstname + " " + donation.donor.middlename + " " + donation.donor.lastname; }
|
||||||
|
|
||||||
|
this.amountPerDistance = donation.amountPerDistance;
|
||||||
|
this.amount = donation.amount;
|
||||||
|
}
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user