Trendsic Platform Service

<back to all web services

CrewAssignmentsEquipmentRequest

Requires Authentication
The following routes are available for this service:
GET,POST,PUT,DELETE,OPTIONS/v1/CrewAssignments/Equipment/{SelectedDate}
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';

class Project implements IConvertible
{
    int? ProjectID;
    String? ProjectUID;
    String? ProjectName;
    String? ImageURL;
    String? ImageKey;
    String? ClientName;
    String? ClientPhone;
    String? ClientEmail;
    int? ProjectManagerID;
    String? ProjectManagerName;
    DateTime? StartDate;
    DateTime? EndDate;
    DateTime? ActualStartDate;
    DateTime? ActualEndDate;
    int? JobCount;
    int? CrewMemberCount;
    int? EquipmentCount;
    int? MaterialCount;
    int? ProjectStatusID;
    String? ProjectStatusDescription;
    double? Budget;
    double? CostToDate;
    String? ProjectLocation;
    String? ProjectType;
    String? ProjectSponsor;
    String? CreatedBy;
    DateTime? CreatedAt;
    DateTime? UpdatedAt;
    String? ProjectDescription;
    String? Scope;
    int? StatusId;

    Project({this.ProjectID,this.ProjectUID,this.ProjectName,this.ImageURL,this.ImageKey,this.ClientName,this.ClientPhone,this.ClientEmail,this.ProjectManagerID,this.ProjectManagerName,this.StartDate,this.EndDate,this.ActualStartDate,this.ActualEndDate,this.JobCount,this.CrewMemberCount,this.EquipmentCount,this.MaterialCount,this.ProjectStatusID,this.ProjectStatusDescription,this.Budget,this.CostToDate,this.ProjectLocation,this.ProjectType,this.ProjectSponsor,this.CreatedBy,this.CreatedAt,this.UpdatedAt,this.ProjectDescription,this.Scope,this.StatusId});
    Project.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ProjectID = json['ProjectID'];
        ProjectUID = json['ProjectUID'];
        ProjectName = json['ProjectName'];
        ImageURL = json['ImageURL'];
        ImageKey = json['ImageKey'];
        ClientName = json['ClientName'];
        ClientPhone = json['ClientPhone'];
        ClientEmail = json['ClientEmail'];
        ProjectManagerID = json['ProjectManagerID'];
        ProjectManagerName = json['ProjectManagerName'];
        StartDate = JsonConverters.fromJson(json['StartDate'],'DateTime',context!);
        EndDate = JsonConverters.fromJson(json['EndDate'],'DateTime',context!);
        ActualStartDate = JsonConverters.fromJson(json['ActualStartDate'],'DateTime',context!);
        ActualEndDate = JsonConverters.fromJson(json['ActualEndDate'],'DateTime',context!);
        JobCount = json['JobCount'];
        CrewMemberCount = json['CrewMemberCount'];
        EquipmentCount = json['EquipmentCount'];
        MaterialCount = json['MaterialCount'];
        ProjectStatusID = json['ProjectStatusID'];
        ProjectStatusDescription = json['ProjectStatusDescription'];
        Budget = JsonConverters.toDouble(json['Budget']);
        CostToDate = JsonConverters.toDouble(json['CostToDate']);
        ProjectLocation = json['ProjectLocation'];
        ProjectType = json['ProjectType'];
        ProjectSponsor = json['ProjectSponsor'];
        CreatedBy = json['CreatedBy'];
        CreatedAt = JsonConverters.fromJson(json['CreatedAt'],'DateTime',context!);
        UpdatedAt = JsonConverters.fromJson(json['UpdatedAt'],'DateTime',context!);
        ProjectDescription = json['ProjectDescription'];
        Scope = json['Scope'];
        StatusId = json['StatusId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ProjectID': ProjectID,
        'ProjectUID': ProjectUID,
        'ProjectName': ProjectName,
        'ImageURL': ImageURL,
        'ImageKey': ImageKey,
        'ClientName': ClientName,
        'ClientPhone': ClientPhone,
        'ClientEmail': ClientEmail,
        'ProjectManagerID': ProjectManagerID,
        'ProjectManagerName': ProjectManagerName,
        'StartDate': JsonConverters.toJson(StartDate,'DateTime',context!),
        'EndDate': JsonConverters.toJson(EndDate,'DateTime',context!),
        'ActualStartDate': JsonConverters.toJson(ActualStartDate,'DateTime',context!),
        'ActualEndDate': JsonConverters.toJson(ActualEndDate,'DateTime',context!),
        'JobCount': JobCount,
        'CrewMemberCount': CrewMemberCount,
        'EquipmentCount': EquipmentCount,
        'MaterialCount': MaterialCount,
        'ProjectStatusID': ProjectStatusID,
        'ProjectStatusDescription': ProjectStatusDescription,
        'Budget': Budget,
        'CostToDate': CostToDate,
        'ProjectLocation': ProjectLocation,
        'ProjectType': ProjectType,
        'ProjectSponsor': ProjectSponsor,
        'CreatedBy': CreatedBy,
        'CreatedAt': JsonConverters.toJson(CreatedAt,'DateTime',context!),
        'UpdatedAt': JsonConverters.toJson(UpdatedAt,'DateTime',context!),
        'ProjectDescription': ProjectDescription,
        'Scope': Scope,
        'StatusId': StatusId
    };

    getTypeName() => "Project";
    TypeContext? context = _ctx;
}

class Equipment implements IConvertible
{
    int? EquipmentID;
    String? EquipmentName;
    int? EquipmentTypeID;
    String? Manufacturer;
    String? EquipmentType;
    String? SerialNumber;
    String? BarCode;
    String? EquipmentLocation;
    String? ImageURL;
    String? ProductDetailsURL;
    DateTime? RecordCreatedDate;
    String? CreatedByUID;
    bool? Active;
    String? Notes;
    double? Rate;
    List<Project>? Projects = [];

    Equipment({this.EquipmentID,this.EquipmentName,this.EquipmentTypeID,this.Manufacturer,this.EquipmentType,this.SerialNumber,this.BarCode,this.EquipmentLocation,this.ImageURL,this.ProductDetailsURL,this.RecordCreatedDate,this.CreatedByUID,this.Active,this.Notes,this.Rate,this.Projects});
    Equipment.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        EquipmentID = json['EquipmentID'];
        EquipmentName = json['EquipmentName'];
        EquipmentTypeID = json['EquipmentTypeID'];
        Manufacturer = json['Manufacturer'];
        EquipmentType = json['EquipmentType'];
        SerialNumber = json['SerialNumber'];
        BarCode = json['BarCode'];
        EquipmentLocation = json['EquipmentLocation'];
        ImageURL = json['ImageURL'];
        ProductDetailsURL = json['ProductDetailsURL'];
        RecordCreatedDate = JsonConverters.fromJson(json['RecordCreatedDate'],'DateTime',context!);
        CreatedByUID = json['CreatedByUID'];
        Active = json['Active'];
        Notes = json['Notes'];
        Rate = JsonConverters.toDouble(json['Rate']);
        Projects = JsonConverters.fromJson(json['Projects'],'List<Project>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'EquipmentID': EquipmentID,
        'EquipmentName': EquipmentName,
        'EquipmentTypeID': EquipmentTypeID,
        'Manufacturer': Manufacturer,
        'EquipmentType': EquipmentType,
        'SerialNumber': SerialNumber,
        'BarCode': BarCode,
        'EquipmentLocation': EquipmentLocation,
        'ImageURL': ImageURL,
        'ProductDetailsURL': ProductDetailsURL,
        'RecordCreatedDate': JsonConverters.toJson(RecordCreatedDate,'DateTime',context!),
        'CreatedByUID': CreatedByUID,
        'Active': Active,
        'Notes': Notes,
        'Rate': Rate,
        'Projects': JsonConverters.toJson(Projects,'List<Project>',context!)
    };

    getTypeName() => "Equipment";
    TypeContext? context = _ctx;
}

class ProjectEquipment extends Equipment implements IConvertible
{
    int? ProjectEquipmentID;
    int? ProjectID;
    DateTime? ProjectEndDate;
    double? EquipmentRate;
    int? JobID;
    double? BilledEquipmentRate;
    String? Status;

    ProjectEquipment({this.ProjectEquipmentID,this.ProjectID,this.ProjectEndDate,this.EquipmentRate,this.JobID,this.BilledEquipmentRate,this.Status});
    ProjectEquipment.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        ProjectEquipmentID = json['ProjectEquipmentID'];
        ProjectID = json['ProjectID'];
        ProjectEndDate = JsonConverters.fromJson(json['ProjectEndDate'],'DateTime',context!);
        EquipmentRate = JsonConverters.toDouble(json['EquipmentRate']);
        JobID = json['JobID'];
        BilledEquipmentRate = JsonConverters.toDouble(json['BilledEquipmentRate']);
        Status = json['Status'];
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'ProjectEquipmentID': ProjectEquipmentID,
        'ProjectID': ProjectID,
        'ProjectEndDate': JsonConverters.toJson(ProjectEndDate,'DateTime',context!),
        'EquipmentRate': EquipmentRate,
        'JobID': JobID,
        'BilledEquipmentRate': BilledEquipmentRate,
        'Status': Status
    });

    getTypeName() => "ProjectEquipment";
    TypeContext? context = _ctx;
}

class CrewAssignmentsEquipmentResponse implements IConvertible
{
    ResponseStatus? ResponseStatus;
    List<ProjectEquipment>? ProjectEquipment = [];

    CrewAssignmentsEquipmentResponse({this.ResponseStatus,this.ProjectEquipment});
    CrewAssignmentsEquipmentResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
        ProjectEquipment = JsonConverters.fromJson(json['ProjectEquipment'],'List<ProjectEquipment>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!),
        'ProjectEquipment': JsonConverters.toJson(ProjectEquipment,'List<ProjectEquipment>',context!)
    };

    getTypeName() => "CrewAssignmentsEquipmentResponse";
    TypeContext? context = _ctx;
}

class CrewAssignmentsEquipmentRequest implements IConvertible
{
    DateTime? SelectedDate;
    List<Equipment>? ProjectEquipment = [];

    CrewAssignmentsEquipmentRequest({this.SelectedDate,this.ProjectEquipment});
    CrewAssignmentsEquipmentRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        SelectedDate = JsonConverters.fromJson(json['SelectedDate'],'DateTime',context!);
        ProjectEquipment = JsonConverters.fromJson(json['ProjectEquipment'],'List<Equipment>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'SelectedDate': JsonConverters.toJson(SelectedDate,'DateTime',context!),
        'ProjectEquipment': JsonConverters.toJson(ProjectEquipment,'List<Equipment>',context!)
    };

    getTypeName() => "CrewAssignmentsEquipmentRequest";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'Project': TypeInfo(TypeOf.Class, create:() => Project()),
    'Equipment': TypeInfo(TypeOf.Class, create:() => Equipment()),
    'List<Project>': TypeInfo(TypeOf.Class, create:() => <Project>[]),
    'ProjectEquipment': TypeInfo(TypeOf.Class, create:() => ProjectEquipment()),
    'CrewAssignmentsEquipmentResponse': TypeInfo(TypeOf.Class, create:() => CrewAssignmentsEquipmentResponse()),
    'List<ProjectEquipment>': TypeInfo(TypeOf.Class, create:() => <ProjectEquipment>[]),
    'CrewAssignmentsEquipmentRequest': TypeInfo(TypeOf.Class, create:() => CrewAssignmentsEquipmentRequest()),
    'List<Equipment>': TypeInfo(TypeOf.Class, create:() => <Equipment>[]),
});

Dart CrewAssignmentsEquipmentRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /v1/CrewAssignments/Equipment/{SelectedDate} HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<CrewAssignmentsEquipmentRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
  <ProjectEquipment>
    <Equipment>
      <Active>false</Active>
      <BarCode>String</BarCode>
      <CreatedByUID>00000000-0000-0000-0000-000000000000</CreatedByUID>
      <EquipmentID>0</EquipmentID>
      <EquipmentLocation>String</EquipmentLocation>
      <EquipmentName>String</EquipmentName>
      <EquipmentType>String</EquipmentType>
      <EquipmentTypeID>0</EquipmentTypeID>
      <ImageURL>String</ImageURL>
      <Manufacturer>String</Manufacturer>
      <Notes>String</Notes>
      <ProductDetailsURL>String</ProductDetailsURL>
      <Projects>
        <Project>
          <ActualEndDate>0001-01-01T00:00:00</ActualEndDate>
          <ActualStartDate>0001-01-01T00:00:00</ActualStartDate>
          <Budget>0</Budget>
          <ClientEmail>String</ClientEmail>
          <ClientName>String</ClientName>
          <ClientPhone>String</ClientPhone>
          <CostToDate>0</CostToDate>
          <CreatedAt>0001-01-01T00:00:00</CreatedAt>
          <CreatedBy>String</CreatedBy>
          <CrewMemberCount>0</CrewMemberCount>
          <EndDate>0001-01-01T00:00:00</EndDate>
          <EquipmentCount>0</EquipmentCount>
          <ImageKey>String</ImageKey>
          <ImageURL>String</ImageURL>
          <JobCount>0</JobCount>
          <MaterialCount>0</MaterialCount>
          <ProjectDescription>String</ProjectDescription>
          <ProjectID>0</ProjectID>
          <ProjectLocation>String</ProjectLocation>
          <ProjectManagerID>0</ProjectManagerID>
          <ProjectManagerName>String</ProjectManagerName>
          <ProjectName>String</ProjectName>
          <ProjectSponsor>String</ProjectSponsor>
          <ProjectStatusDescription>String</ProjectStatusDescription>
          <ProjectStatusID>0</ProjectStatusID>
          <ProjectType>String</ProjectType>
          <ProjectUID>00000000-0000-0000-0000-000000000000</ProjectUID>
          <Scope>String</Scope>
          <StartDate>0001-01-01T00:00:00</StartDate>
          <StatusId>0</StatusId>
          <UpdatedAt>0001-01-01T00:00:00</UpdatedAt>
        </Project>
      </Projects>
      <Rate>0</Rate>
      <RecordCreatedDate>0001-01-01T00:00:00</RecordCreatedDate>
      <SerialNumber>String</SerialNumber>
    </Equipment>
  </ProjectEquipment>
  <SelectedDate>0001-01-01T00:00:00</SelectedDate>
</CrewAssignmentsEquipmentRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<CrewAssignmentsEquipmentResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
  <ProjectEquipment>
    <ProjectEquipment>
      <Active>false</Active>
      <BarCode>String</BarCode>
      <CreatedByUID>00000000-0000-0000-0000-000000000000</CreatedByUID>
      <EquipmentID>0</EquipmentID>
      <EquipmentLocation>String</EquipmentLocation>
      <EquipmentName>String</EquipmentName>
      <EquipmentType>String</EquipmentType>
      <EquipmentTypeID>0</EquipmentTypeID>
      <ImageURL>String</ImageURL>
      <Manufacturer>String</Manufacturer>
      <Notes>String</Notes>
      <ProductDetailsURL>String</ProductDetailsURL>
      <Projects>
        <Project>
          <ActualEndDate>0001-01-01T00:00:00</ActualEndDate>
          <ActualStartDate>0001-01-01T00:00:00</ActualStartDate>
          <Budget>0</Budget>
          <ClientEmail>String</ClientEmail>
          <ClientName>String</ClientName>
          <ClientPhone>String</ClientPhone>
          <CostToDate>0</CostToDate>
          <CreatedAt>0001-01-01T00:00:00</CreatedAt>
          <CreatedBy>String</CreatedBy>
          <CrewMemberCount>0</CrewMemberCount>
          <EndDate>0001-01-01T00:00:00</EndDate>
          <EquipmentCount>0</EquipmentCount>
          <ImageKey>String</ImageKey>
          <ImageURL>String</ImageURL>
          <JobCount>0</JobCount>
          <MaterialCount>0</MaterialCount>
          <ProjectDescription>String</ProjectDescription>
          <ProjectID>0</ProjectID>
          <ProjectLocation>String</ProjectLocation>
          <ProjectManagerID>0</ProjectManagerID>
          <ProjectManagerName>String</ProjectManagerName>
          <ProjectName>String</ProjectName>
          <ProjectSponsor>String</ProjectSponsor>
          <ProjectStatusDescription>String</ProjectStatusDescription>
          <ProjectStatusID>0</ProjectStatusID>
          <ProjectType>String</ProjectType>
          <ProjectUID>00000000-0000-0000-0000-000000000000</ProjectUID>
          <Scope>String</Scope>
          <StartDate>0001-01-01T00:00:00</StartDate>
          <StatusId>0</StatusId>
          <UpdatedAt>0001-01-01T00:00:00</UpdatedAt>
        </Project>
      </Projects>
      <Rate>0</Rate>
      <RecordCreatedDate>0001-01-01T00:00:00</RecordCreatedDate>
      <SerialNumber>String</SerialNumber>
      <BilledEquipmentRate>0</BilledEquipmentRate>
      <EquipmentRate>0</EquipmentRate>
      <JobID>0</JobID>
      <ProjectEndDate>0001-01-01T00:00:00</ProjectEndDate>
      <ProjectEquipmentID>0</ProjectEquipmentID>
      <ProjectID>0</ProjectID>
      <Status>String</Status>
    </ProjectEquipment>
  </ProjectEquipment>
  <ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
    <d2p1:ErrorCode>String</d2p1:ErrorCode>
    <d2p1:Message>String</d2p1:Message>
    <d2p1:StackTrace>String</d2p1:StackTrace>
    <d2p1:Errors>
      <d2p1:ResponseError>
        <d2p1:ErrorCode>String</d2p1:ErrorCode>
        <d2p1:FieldName>String</d2p1:FieldName>
        <d2p1:Message>String</d2p1:Message>
        <d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfstringstring>
            <d5p1:Key>String</d5p1:Key>
            <d5p1:Value>String</d5p1:Value>
          </d5p1:KeyValueOfstringstring>
        </d2p1:Meta>
      </d2p1:ResponseError>
    </d2p1:Errors>
    <d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfstringstring>
        <d3p1:Key>String</d3p1:Key>
        <d3p1:Value>String</d3p1:Value>
      </d3p1:KeyValueOfstringstring>
    </d2p1:Meta>
  </ResponseStatus>
</CrewAssignmentsEquipmentResponse>