Trendsic Platform Service

<back to all web services

CrewAssignmentsCrewMembersRequest

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

class Department implements IConvertible
{
    int? DepartmentID;
    String? DepartmentUID;
    String? Name;
    String? Description;
    String? Code;
    String? Color;
    double? Budget;
    String? BillingMethod;
    String? CostCenter;
    String? BillingContact;
    String? BillingEmail;
    bool? ApprovalOn;
    double? Threshold;
    bool? Active;
    String? CreatedBy;
    DateTime? CreatedAt;
    int? Members;

    Department({this.DepartmentID,this.DepartmentUID,this.Name,this.Description,this.Code,this.Color,this.Budget,this.BillingMethod,this.CostCenter,this.BillingContact,this.BillingEmail,this.ApprovalOn,this.Threshold,this.Active,this.CreatedBy,this.CreatedAt,this.Members});
    Department.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        DepartmentID = json['DepartmentID'];
        DepartmentUID = json['DepartmentUID'];
        Name = json['Name'];
        Description = json['Description'];
        Code = json['Code'];
        Color = json['Color'];
        Budget = JsonConverters.toDouble(json['Budget']);
        BillingMethod = json['BillingMethod'];
        CostCenter = json['CostCenter'];
        BillingContact = json['BillingContact'];
        BillingEmail = json['BillingEmail'];
        ApprovalOn = json['ApprovalOn'];
        Threshold = JsonConverters.toDouble(json['Threshold']);
        Active = json['Active'];
        CreatedBy = json['CreatedBy'];
        CreatedAt = JsonConverters.fromJson(json['CreatedAt'],'DateTime',context!);
        Members = json['Members'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'DepartmentID': DepartmentID,
        'DepartmentUID': DepartmentUID,
        'Name': Name,
        'Description': Description,
        'Code': Code,
        'Color': Color,
        'Budget': Budget,
        'BillingMethod': BillingMethod,
        'CostCenter': CostCenter,
        'BillingContact': BillingContact,
        'BillingEmail': BillingEmail,
        'ApprovalOn': ApprovalOn,
        'Threshold': Threshold,
        'Active': Active,
        'CreatedBy': CreatedBy,
        'CreatedAt': JsonConverters.toJson(CreatedAt,'DateTime',context!),
        'Members': Members
    };

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

class Contact implements IConvertible
{
    int? ContactId;
    int? ContactType;
    String? FirstName;
    String? LastName;
    String? Name;
    String? Role;
    String? Title;
    String? EmailWork;
    String? EmailPersonal;
    String? District;
    int? DistrictID;
    String? School;
    int? SchoolID;
    String? State;
    String? StateName;
    int? StateID;
    int? CountyID;
    String? County;
    String? Phone;
    String? Department;
    String? Flow;
    DateTime? LastContact;
    bool? DoNotContact;
    bool? Active;
    int? AgentId;
    String? PhoneAlt;
    int? PeraContactId;
    String? RoomNumber;
    int? SourceTypeId;
    String? SourceTypeDesc;
    String? SourceNote;
    int? ContactStatusId;
    String? ContactStatusDesc;
    String? SSN;
    DateTime? DateOfBirth;
    bool? Deleted;
    bool? IsShared;
    String? address_line1;
    String? address_city;
    String? address_state;
    String? address_zip;
    String? DeletedBy;
    DateTime? DeletedDateTimeUtc;
    bool? HasNBC;
    bool? HasFactFinderSheet;
    String? MiddleInitial;
    String? Tags;
    DateTime? DateCreated;
    String? PhoneLabel;
    String? AltPhoneLabel;
    String? Carriers;
    String? ContactImage;
    String? CompanyAffiliation;
    String? AdditionalInformation;
    bool? HasGiftCard;
    int? ContactCategory;
    int? WritingAgentId;
    String? WritingAgentName;
    String? MaritalStatus;
    double? TotalDebtAmount;
    int? NumberOfDebtAccounts;
    int? FactFinderCodeId;
    String? BusinessName;
    String? DBA;
    String? ContactGUID;
    DateTime? ProjectEndDate;
    double? Rate;
    int? JobID;
    String? JobName;
    int? JobCount;
    bool? Locked;
    int? LockedByAgentId;
    DateTime? LockedTimestamp;
    String? Initials;
    String? ContactCategoryName;
    bool? SMSOptIn;
    bool? IsPlaceholder;
    List<String>? Skills = [];
    List<Department>? Departments = [];
    String? BranchId;
    String? BranchName;
    int? UnionLocalId;
    int? WorkerClassificationId;
    DateTime? SeniorityDate;
    String? UnionMemberNumber;
    bool? VoiceConsent;
    DateTime? VoiceConsentAtUtc;
    String? VoiceConsentSource;

    Contact({this.ContactId,this.ContactType,this.FirstName,this.LastName,this.Name,this.Role,this.Title,this.EmailWork,this.EmailPersonal,this.District,this.DistrictID,this.School,this.SchoolID,this.State,this.StateName,this.StateID,this.CountyID,this.County,this.Phone,this.Department,this.Flow,this.LastContact,this.DoNotContact,this.Active,this.AgentId,this.PhoneAlt,this.PeraContactId,this.RoomNumber,this.SourceTypeId,this.SourceTypeDesc,this.SourceNote,this.ContactStatusId,this.ContactStatusDesc,this.SSN,this.DateOfBirth,this.Deleted,this.IsShared,this.address_line1,this.address_city,this.address_state,this.address_zip,this.DeletedBy,this.DeletedDateTimeUtc,this.HasNBC,this.HasFactFinderSheet,this.MiddleInitial,this.Tags,this.DateCreated,this.PhoneLabel,this.AltPhoneLabel,this.Carriers,this.ContactImage,this.CompanyAffiliation,this.AdditionalInformation,this.HasGiftCard,this.ContactCategory,this.WritingAgentId,this.WritingAgentName,this.MaritalStatus,this.TotalDebtAmount,this.NumberOfDebtAccounts,this.FactFinderCodeId,this.BusinessName,this.DBA,this.ContactGUID,this.ProjectEndDate,this.Rate,this.JobID,this.JobName,this.JobCount,this.Locked,this.LockedByAgentId,this.LockedTimestamp,this.Initials,this.ContactCategoryName,this.SMSOptIn,this.IsPlaceholder,this.Skills,this.Departments,this.BranchId,this.BranchName,this.UnionLocalId,this.WorkerClassificationId,this.SeniorityDate,this.UnionMemberNumber,this.VoiceConsent,this.VoiceConsentAtUtc,this.VoiceConsentSource});
    Contact.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ContactId = json['ContactId'];
        ContactType = json['ContactType'];
        FirstName = json['FirstName'];
        LastName = json['LastName'];
        Name = json['Name'];
        Role = json['Role'];
        Title = json['Title'];
        EmailWork = json['EmailWork'];
        EmailPersonal = json['EmailPersonal'];
        District = json['District'];
        DistrictID = json['DistrictID'];
        School = json['School'];
        SchoolID = json['SchoolID'];
        State = json['State'];
        StateName = json['StateName'];
        StateID = json['StateID'];
        CountyID = json['CountyID'];
        County = json['County'];
        Phone = json['Phone'];
        Department = json['Department'];
        Flow = json['Flow'];
        LastContact = JsonConverters.fromJson(json['LastContact'],'DateTime',context!);
        DoNotContact = json['DoNotContact'];
        Active = json['Active'];
        AgentId = json['AgentId'];
        PhoneAlt = json['PhoneAlt'];
        PeraContactId = json['PeraContactId'];
        RoomNumber = json['RoomNumber'];
        SourceTypeId = json['SourceTypeId'];
        SourceTypeDesc = json['SourceTypeDesc'];
        SourceNote = json['SourceNote'];
        ContactStatusId = json['ContactStatusId'];
        ContactStatusDesc = json['ContactStatusDesc'];
        SSN = json['SSN'];
        DateOfBirth = JsonConverters.fromJson(json['DateOfBirth'],'DateTime',context!);
        Deleted = json['Deleted'];
        IsShared = json['IsShared'];
        address_line1 = json['address_line1'];
        address_city = json['address_city'];
        address_state = json['address_state'];
        address_zip = json['address_zip'];
        DeletedBy = json['DeletedBy'];
        DeletedDateTimeUtc = JsonConverters.fromJson(json['DeletedDateTimeUtc'],'DateTime',context!);
        HasNBC = json['HasNBC'];
        HasFactFinderSheet = json['HasFactFinderSheet'];
        MiddleInitial = json['MiddleInitial'];
        Tags = json['Tags'];
        DateCreated = JsonConverters.fromJson(json['DateCreated'],'DateTime',context!);
        PhoneLabel = json['PhoneLabel'];
        AltPhoneLabel = json['AltPhoneLabel'];
        Carriers = json['Carriers'];
        ContactImage = json['ContactImage'];
        CompanyAffiliation = json['CompanyAffiliation'];
        AdditionalInformation = json['AdditionalInformation'];
        HasGiftCard = json['HasGiftCard'];
        ContactCategory = json['ContactCategory'];
        WritingAgentId = json['WritingAgentId'];
        WritingAgentName = json['WritingAgentName'];
        MaritalStatus = json['MaritalStatus'];
        TotalDebtAmount = JsonConverters.toDouble(json['TotalDebtAmount']);
        NumberOfDebtAccounts = json['NumberOfDebtAccounts'];
        FactFinderCodeId = json['FactFinderCodeId'];
        BusinessName = json['BusinessName'];
        DBA = json['DBA'];
        ContactGUID = json['ContactGUID'];
        ProjectEndDate = JsonConverters.fromJson(json['ProjectEndDate'],'DateTime',context!);
        Rate = JsonConverters.toDouble(json['Rate']);
        JobID = json['JobID'];
        JobName = json['JobName'];
        JobCount = json['JobCount'];
        Locked = json['Locked'];
        LockedByAgentId = json['LockedByAgentId'];
        LockedTimestamp = JsonConverters.fromJson(json['LockedTimestamp'],'DateTime',context!);
        Initials = json['Initials'];
        ContactCategoryName = json['ContactCategoryName'];
        SMSOptIn = json['SMSOptIn'];
        IsPlaceholder = json['IsPlaceholder'];
        Skills = JsonConverters.fromJson(json['Skills'],'List<String>',context!);
        Departments = JsonConverters.fromJson(json['Departments'],'List<Department>',context!);
        BranchId = json['BranchId'];
        BranchName = json['BranchName'];
        UnionLocalId = json['UnionLocalId'];
        WorkerClassificationId = json['WorkerClassificationId'];
        SeniorityDate = JsonConverters.fromJson(json['SeniorityDate'],'DateTime',context!);
        UnionMemberNumber = json['UnionMemberNumber'];
        VoiceConsent = json['VoiceConsent'];
        VoiceConsentAtUtc = JsonConverters.fromJson(json['VoiceConsentAtUtc'],'DateTime',context!);
        VoiceConsentSource = json['VoiceConsentSource'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ContactId': ContactId,
        'ContactType': ContactType,
        'FirstName': FirstName,
        'LastName': LastName,
        'Name': Name,
        'Role': Role,
        'Title': Title,
        'EmailWork': EmailWork,
        'EmailPersonal': EmailPersonal,
        'District': District,
        'DistrictID': DistrictID,
        'School': School,
        'SchoolID': SchoolID,
        'State': State,
        'StateName': StateName,
        'StateID': StateID,
        'CountyID': CountyID,
        'County': County,
        'Phone': Phone,
        'Department': Department,
        'Flow': Flow,
        'LastContact': JsonConverters.toJson(LastContact,'DateTime',context!),
        'DoNotContact': DoNotContact,
        'Active': Active,
        'AgentId': AgentId,
        'PhoneAlt': PhoneAlt,
        'PeraContactId': PeraContactId,
        'RoomNumber': RoomNumber,
        'SourceTypeId': SourceTypeId,
        'SourceTypeDesc': SourceTypeDesc,
        'SourceNote': SourceNote,
        'ContactStatusId': ContactStatusId,
        'ContactStatusDesc': ContactStatusDesc,
        'SSN': SSN,
        'DateOfBirth': JsonConverters.toJson(DateOfBirth,'DateTime',context!),
        'Deleted': Deleted,
        'IsShared': IsShared,
        'address_line1': address_line1,
        'address_city': address_city,
        'address_state': address_state,
        'address_zip': address_zip,
        'DeletedBy': DeletedBy,
        'DeletedDateTimeUtc': JsonConverters.toJson(DeletedDateTimeUtc,'DateTime',context!),
        'HasNBC': HasNBC,
        'HasFactFinderSheet': HasFactFinderSheet,
        'MiddleInitial': MiddleInitial,
        'Tags': Tags,
        'DateCreated': JsonConverters.toJson(DateCreated,'DateTime',context!),
        'PhoneLabel': PhoneLabel,
        'AltPhoneLabel': AltPhoneLabel,
        'Carriers': Carriers,
        'ContactImage': ContactImage,
        'CompanyAffiliation': CompanyAffiliation,
        'AdditionalInformation': AdditionalInformation,
        'HasGiftCard': HasGiftCard,
        'ContactCategory': ContactCategory,
        'WritingAgentId': WritingAgentId,
        'WritingAgentName': WritingAgentName,
        'MaritalStatus': MaritalStatus,
        'TotalDebtAmount': TotalDebtAmount,
        'NumberOfDebtAccounts': NumberOfDebtAccounts,
        'FactFinderCodeId': FactFinderCodeId,
        'BusinessName': BusinessName,
        'DBA': DBA,
        'ContactGUID': ContactGUID,
        'ProjectEndDate': JsonConverters.toJson(ProjectEndDate,'DateTime',context!),
        'Rate': Rate,
        'JobID': JobID,
        'JobName': JobName,
        'JobCount': JobCount,
        'Locked': Locked,
        'LockedByAgentId': LockedByAgentId,
        'LockedTimestamp': JsonConverters.toJson(LockedTimestamp,'DateTime',context!),
        'Initials': Initials,
        'ContactCategoryName': ContactCategoryName,
        'SMSOptIn': SMSOptIn,
        'IsPlaceholder': IsPlaceholder,
        'Skills': JsonConverters.toJson(Skills,'List<String>',context!),
        'Departments': JsonConverters.toJson(Departments,'List<Department>',context!),
        'BranchId': BranchId,
        'BranchName': BranchName,
        'UnionLocalId': UnionLocalId,
        'WorkerClassificationId': WorkerClassificationId,
        'SeniorityDate': JsonConverters.toJson(SeniorityDate,'DateTime',context!),
        'UnionMemberNumber': UnionMemberNumber,
        'VoiceConsent': VoiceConsent,
        'VoiceConsentAtUtc': JsonConverters.toJson(VoiceConsentAtUtc,'DateTime',context!),
        'VoiceConsentSource': VoiceConsentSource
    };

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

class ProjectCrewMember extends Contact implements IConvertible
{
    int? ProjectCrewContactID;
    int? ProjectID;
    int? CrewID;
    double? CrewRate;
    double? BilledCrewRate;
    int? ProjectCrewID;
    String? Status;
    DateTime? FirstAddedDate;
    DateTime? DateAddedToThisProject;

    ProjectCrewMember({this.ProjectCrewContactID,this.ProjectID,this.CrewID,this.CrewRate,this.BilledCrewRate,this.ProjectCrewID,this.Status,this.FirstAddedDate,this.DateAddedToThisProject});
    ProjectCrewMember.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        ProjectCrewContactID = json['ProjectCrewContactID'];
        ProjectID = json['ProjectID'];
        CrewID = json['CrewID'];
        CrewRate = JsonConverters.toDouble(json['CrewRate']);
        BilledCrewRate = JsonConverters.toDouble(json['BilledCrewRate']);
        ProjectCrewID = json['ProjectCrewID'];
        Status = json['Status'];
        FirstAddedDate = JsonConverters.fromJson(json['FirstAddedDate'],'DateTime',context!);
        DateAddedToThisProject = JsonConverters.fromJson(json['DateAddedToThisProject'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'ProjectCrewContactID': ProjectCrewContactID,
        'ProjectID': ProjectID,
        'CrewID': CrewID,
        'CrewRate': CrewRate,
        'BilledCrewRate': BilledCrewRate,
        'ProjectCrewID': ProjectCrewID,
        'Status': Status,
        'FirstAddedDate': JsonConverters.toJson(FirstAddedDate,'DateTime',context!),
        'DateAddedToThisProject': JsonConverters.toJson(DateAddedToThisProject,'DateTime',context!)
    });

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

class CrewAssignmentsCrewMembersResponse implements IConvertible
{
    ResponseStatus? ResponseStatus;
    List<ProjectCrewMember>? ProjectCrewMembers = [];

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

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

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

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

class CrewAssignmentsCrewMembersRequest implements IConvertible
{
    DateTime? SelectedDate;

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

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

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

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

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'Department': TypeInfo(TypeOf.Class, create:() => Department()),
    'Contact': TypeInfo(TypeOf.Class, create:() => Contact()),
    'List<Department>': TypeInfo(TypeOf.Class, create:() => <Department>[]),
    'ProjectCrewMember': TypeInfo(TypeOf.Class, create:() => ProjectCrewMember()),
    'CrewAssignmentsCrewMembersResponse': TypeInfo(TypeOf.Class, create:() => CrewAssignmentsCrewMembersResponse()),
    'List<ProjectCrewMember>': TypeInfo(TypeOf.Class, create:() => <ProjectCrewMember>[]),
    'CrewAssignmentsCrewMembersRequest': TypeInfo(TypeOf.Class, create:() => CrewAssignmentsCrewMembersRequest()),
});

Dart CrewAssignmentsCrewMembersRequest DTOs

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

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

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

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

{"SelectedDate":"0001-01-01T00:00:00.0000000"}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}},"ProjectCrewMembers":[{"ProjectCrewContactID":0,"ProjectID":0,"CrewID":0,"CrewRate":0,"BilledCrewRate":0,"ProjectCrewID":0,"Status":"String","FirstAddedDate":"0001-01-01T00:00:00.0000000","DateAddedToThisProject":"0001-01-01T00:00:00.0000000","ContactId":0,"ContactType":0,"FirstName":"String","LastName":"String","Name":"String","Role":"String","Title":"String","EmailWork":"String","EmailPersonal":"String","District":"String","DistrictID":0,"School":"String","SchoolID":0,"State":"String","StateName":"String","StateID":0,"CountyID":0,"County":"String","Phone":"String","Department":"String","Flow":"String","LastContact":"0001-01-01T00:00:00.0000000","DoNotContact":false,"Active":false,"AgentId":0,"PhoneAlt":"String","PeraContactId":0,"RoomNumber":"String","SourceTypeId":0,"SourceTypeDesc":"String","SourceNote":"String","ContactStatusId":0,"ContactStatusDesc":"String","SSN":"String","DateOfBirth":"0001-01-01T00:00:00.0000000","Deleted":false,"IsShared":false,"address_line1":"String","address_city":"String","address_state":"String","address_zip":"String","DeletedBy":"String","DeletedDateTimeUtc":"0001-01-01T00:00:00.0000000","HasNBC":false,"HasFactFinderSheet":false,"MiddleInitial":"String","Tags":"String","DateCreated":"0001-01-01T00:00:00.0000000","PhoneLabel":"String","AltPhoneLabel":"String","Carriers":"String","ContactImage":"String","CompanyAffiliation":"String","AdditionalInformation":"String","HasGiftCard":false,"ContactCategory":0,"WritingAgentId":0,"WritingAgentName":"String","MaritalStatus":"String","TotalDebtAmount":0,"NumberOfDebtAccounts":0,"FactFinderCodeId":0,"BusinessName":"String","DBA":"String","ContactGUID":"00000000000000000000000000000000","ProjectEndDate":"0001-01-01T00:00:00.0000000","Rate":0,"JobID":0,"JobName":"String","JobCount":0,"Locked":false,"LockedByAgentId":0,"LockedTimestamp":"0001-01-01T00:00:00.0000000","Initials":"String","ContactCategoryName":"String","SMSOptIn":false,"IsPlaceholder":false,"Skills":["String"],"Departments":[{"DepartmentID":0,"DepartmentUID":"00000000000000000000000000000000","Name":"String","Description":"String","Code":"String","Color":"String","Budget":0,"BillingMethod":"String","CostCenter":"String","BillingContact":"String","BillingEmail":"String","ApprovalOn":false,"Threshold":0,"Active":false,"CreatedBy":"String","CreatedAt":"0001-01-01T00:00:00.0000000","Members":0}],"BranchId":"00000000000000000000000000000000","BranchName":"String","UnionLocalId":0,"WorkerClassificationId":0,"SeniorityDate":"0001-01-01T00:00:00.0000000","UnionMemberNumber":"String","VoiceConsent":false,"VoiceConsentAtUtc":"0001-01-01T00:00:00.0000000","VoiceConsentSource":"String"}]}