import { PartialType, OmitType } from '@nestjs/mapped-types';
import { IsOptional, IsEnum } from 'class-validator';
import { CreateAuditRequestDto } from './create-audit-request.dto';
import { AuditRequestStatus } from '../entities/audit-request.entity';

/**
 * Marketing can edit their request only BEFORE it's scheduled.
 * company_id cannot change once submitted.
 * status is coordinator/admin-only (enforced on the frontend + service).
 */
export class UpdateAuditRequestDto extends PartialType(
  OmitType(CreateAuditRequestDto, ['company_id'] as const),
) {
  @IsOptional()
  @IsEnum(AuditRequestStatus)
  status?: AuditRequestStatus;
}