/* Options: Date: 2025-12-06 06:26:00 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.dev.dynamics.trendsic.com //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: ProjectEquipmentListRequest.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } export class Project { public ProjectID: number; public ProjectUID: string; public ProjectName: string; public ImageURL: string; public ImageKey: string; public ClientName: string; public ClientPhone: string; public ClientEmail: string; public ProjectManagerID: number; public ProjectManagerName: string; public StartDate?: string; public EndDate?: string; public ActualStartDate?: string; public ActualEndDate?: string; public JobCount: number; public CrewMemberCount: number; public EquipmentCount: number; public MaterialCount: number; public ProjectStatusID: number; public ProjectStatusDescription: string; public Budget: number; public CostToDate: number; public ProjectLocation: string; public ProjectType: string; public ProjectSponsor: string; public CreatedBy: string; public CreatedAt?: string; public UpdatedAt?: string; public ProjectDescription: string; public Scope: string; public StatusId: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Equipment { public EquipmentID: number; public EquipmentName: string; public EquipmentTypeID: number; public Manufacturer: string; public EquipmentType: string; public SerialNumber: string; public BarCode: string; public EquipmentLocation: string; public ImageURL: string; public ProductDetailsURL: string; public RecordCreatedDate: string; public CreatedByUID: string; public Active: boolean; public Notes: string; public Rate: number; public Projects: Project[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ProjectEquipment extends Equipment { public ProjectEquipmentID: number; public ProjectID: number; public ProjectEndDate: string; public EquipmentRate: number; public JobID: number; public BilledEquipmentRate: number; public Status: string; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } // @DataContract export class ResponseStatus { // @DataMember(Order=1) public ErrorCode: string; // @DataMember(Order=2) public Message: string; // @DataMember(Order=3) public StackTrace: string; // @DataMember(Order=4) public Errors: ResponseError[] = []; // @DataMember(Order=5) public Meta: { [index:string]: string; } = {}; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ProjectEquipmentListResponse { public ResponseStatus: ResponseStatus; public ProjectEquipment: ProjectEquipment[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @Route("/v1/Project/Equipment/{ProjectID}", "GET,POST,PUT,DELETE,OPTIONS") // @Route("/v1/Project/Equipment/{ProjectID}/{JobID}", "GET,POST,PUT,DELETE,OPTIONS") export class ProjectEquipmentListRequest implements IReturn { public ProjectID: number; public JobID: number; public ProjectEquipment: Equipment[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } public getTypeName() { return 'ProjectEquipmentListRequest'; } public getMethod() { return 'GET'; } public createResponse() { return new ProjectEquipmentListResponse(); } }