feat: add generated code

This commit is contained in:
aid-orchestrator
2026-04-25 16:04:45 +00:00
parent 58936bcb24
commit be7d0ff4d9
84 changed files with 2285 additions and 0 deletions

View File

@@ -0,0 +1,72 @@
import { ApiProperty } from '@nestjs/swagger';
import { Type } from 'class-transformer';
import { IsString, IsNotEmpty, IsEnum, IsISO8601, IsOptional, IsBoolean, IsNumber } from 'class-validator';
import { RepairKind, RepairOrderStatus } from '@prisma/client';
export class CreateRepairOrderDto {
@ApiProperty({ description: 'Номер заявки' })
@IsString()
@IsNotEmpty()
number: string;
@ApiProperty({ description: 'Дата заявки' })
@IsISO8601()
@Type(() => Date)
date: Date;
@ApiProperty({ description: 'Идентификатор оборудования' })
@IsString()
@IsNotEmpty()
equipmentId: string;
@ApiProperty({ enum: RepairKind, enumName: 'RepairKind', description: 'Вид ремонта' })
@IsEnum(RepairKind)
repairKind: RepairKind;
@ApiProperty({ enum: RepairOrderStatus, enumName: 'RepairOrderStatus', description: 'Статус заявки' })
@IsEnum(RepairOrderStatus)
status: RepairOrderStatus;
@ApiProperty({ description: 'Плановая дата начала' })
@IsISO8601()
@Type(() => Date)
plannedAt: Date;
@ApiProperty({ required: false, description: 'Фактическая дата начала' })
@IsISO8601()
@IsOptional()
@Type(() => Date)
startedAt?: Date;
@ApiProperty({ required: false, description: 'Фактическая дата завершения' })
@IsISO8601()
@IsOptional()
@Type(() => Date)
completedAt?: Date;
@ApiProperty({ required: false, description: 'Подрядная организация (если внешний ремонт)' })
@IsString()
@IsOptional()
contractor?: string;
@ApiProperty({ required: false, description: 'Наработка на момент ремонта, моточасов' })
@IsNumber()
@IsOptional()
@Type(() => Number)
engineHoursAtRepair?: number;
@ApiProperty({ required: false, description: 'Описание работ / дефекта' })
@IsString()
@IsOptional()
description?: string;
@ApiProperty({ required: false, description: 'Примечания' })
@IsString()
@IsOptional()
notes?: string;
@ApiProperty({ required: false, description: 'Согласовано/Не согласовано' })
@IsBoolean()
@IsOptional()
confirmed?: boolean;
}