Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x | import { ApiProperty } from '@nestjs/swagger';
import { Type } from 'class-transformer';
import { ArrayNotEmpty, IsArray, IsOptional, IsString, ValidateNested } from 'class-validator';
import { Plan, Team, User } from '@amalia/core/models';
import { CsvPlanAssignmentRow, ValidatePlanAssignmentsCsvRequest } from '@amalia/payout-definition/plans/types';
export class CsvPlanAssignmentRowDto implements CsvPlanAssignmentRow {
@ApiProperty()
@IsString()
@IsOptional()
public readonly userEmail?: User['email'];
@ApiProperty()
@IsString()
@IsOptional()
public readonly planName?: Plan['name'];
@ApiProperty()
@IsString()
@IsOptional()
public readonly assignmentStartDate?: string; // YYYY-MM-DD
@ApiProperty()
@IsString()
@IsOptional()
public readonly assignmentEndDate?: string; // YYYY-MM-DD
@ApiProperty()
@IsString()
@IsOptional()
public readonly primaryTeam?: Team['name'];
}
export class ValidatePlanAssignmentsCsvDto implements ValidatePlanAssignmentsCsvRequest {
@ApiProperty()
@IsArray()
@ArrayNotEmpty()
@ValidateNested({ each: true })
@Type(() => CsvPlanAssignmentRowDto)
public readonly csvRows!: CsvPlanAssignmentRowDto[];
}
|