/**
 * ProyectoResponseDto - DTO de respuesta para proyectos
 *
 * @module Construction
 * @rf RF-MAI002-001
 */

import { Expose, Type } from 'class-transformer';

/**
 * DTO de respuesta para proyectos.
 * Usar con class-transformer para serializar respuestas.
 */
export class ProyectoResponseDto {
  /** ID unico del proyecto */
  @Expose()
  id: string;

  /** ID del tenant */
  @Expose()
  tenantId: string;

  /** Codigo unico del proyecto */
  @Expose()
  codigo: string;

  /** Nombre del proyecto */
  @Expose()
  nombre: string;

  /** Descripcion del proyecto */
  @Expose()
  descripcion?: string;

  /** Direccion del proyecto */
  @Expose()
  direccion?: string;

  /** Ciudad del proyecto */
  @Expose()
  ciudad?: string;

  /** Estado/Provincia del proyecto */
  @Expose()
  estado?: string;

  /** Fecha de inicio */
  @Expose()
  @Type(() => Date)
  fechaInicio?: Date;

  /** Fecha estimada de fin */
  @Expose()
  @Type(() => Date)
  fechaFinEstimada?: Date;

  /** Estado del proyecto */
  @Expose()
  estadoProyecto: string;

  /** Fecha de creacion */
  @Expose()
  @Type(() => Date)
  createdAt: Date;

  /** Fecha de ultima actualizacion */
  @Expose()
  @Type(() => Date)
  updatedAt: Date;
}
