import type { PageParam } from '@/api';
import { ProjectOrder } from '@/api/tower/project/order/model';
import { ProjectPlace } from '@/api/tower/project/place/model';
import { ProjectUser } from '@/api/tower/project/user/model';

interface FileItem {
  uid: number;
  name?: string;
  status?: string;
  response?: Response;
  thumbUrl?: string;
  downloadUrl?: string;
  url: string;
}

export interface Project {
  projectId?: number;
  projectName?: string;
  projectImage?: string;
  files?: FileItem[];
  companyName?: string;
  customerName?: string;
  projectRegion?: string;
  projectAddress?: string;
  longitude?: string;
  latitude?: string;
  superviseNo?: string;
  licenceNo?: string;
  securityStatus?: string;
  competentDepartment?: string;
  dismantlingCompany?: string;
  truckCraneSpecs?: string;
  contract?: string;
  director?: string;
  projectDirector?: string;
  projectStatus?: string;
  salesman?: string;
  status?: number;
  userId?: number;
  comments?: string;
  sortNumber?: number;
  users?: ProjectUser[];
  orders?: ProjectOrder[];
  places1?: ProjectPlace[];
  places2?: ProjectPlace[];
}

/**
 * 搜索条件
 */
export interface ProjectParam extends PageParam {
  projectId?: number;
  projectName?: string;
  status?: number;
  keywords?: string;
}
