diff --git a/apps/server/src/rooms/dto/bed.dto.ts b/apps/server/src/rooms/dto/bed.dto.ts new file mode 100644 index 0000000..ec052de --- /dev/null +++ b/apps/server/src/rooms/dto/bed.dto.ts @@ -0,0 +1,34 @@ +import { IsString, IsOptional, IsInt, Min, IsEnum, IsArray, ArrayMinSize } from 'class-validator'; + +export class CreateBedDto { + @IsString() + bedNumber: string; + + @IsOptional() + @IsString() + status?: string; + + @IsOptional() + @IsString() + notes?: string; +} + +export class UpdateBedDto { + @IsOptional() + @IsString() + bedNumber?: string; + + @IsOptional() + @IsEnum(['available', 'occupied', 'maintenance']) + status?: string; + + @IsOptional() + @IsString() + notes?: string; +} + +export class BatchCreateBedDto { + @IsInt() + @Min(1) + count: number; +} diff --git a/apps/server/src/rooms/dto/locker.dto.ts b/apps/server/src/rooms/dto/locker.dto.ts new file mode 100644 index 0000000..b0d9c50 --- /dev/null +++ b/apps/server/src/rooms/dto/locker.dto.ts @@ -0,0 +1,34 @@ +import { IsString, IsOptional, IsInt, Min, IsEnum } from 'class-validator'; + +export class CreateLockerDto { + @IsString() + lockerNumber: string; + + @IsOptional() + @IsString() + status?: string; + + @IsOptional() + @IsString() + notes?: string; +} + +export class UpdateLockerDto { + @IsOptional() + @IsString() + lockerNumber?: string; + + @IsOptional() + @IsEnum(['available', 'occupied', 'maintenance']) + status?: string; + + @IsOptional() + @IsString() + notes?: string; +} + +export class BatchCreateLockerDto { + @IsInt() + @Min(1) + count: number; +}