Trendsic Platform Service

<back to all web services

RfpAddendaRejectRequest

Requires Authentication
Requires any of the roles:Agent, Administrator
The following routes are available for this service:
POST,OPTIONS/v1/Rfp/{RfpDocumentUID}/Addenda/{ChangeId}/Reject
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';

class AddendaChange implements IConvertible
{
    String? ChangeId;
    String? ChangeType;
    int? TargetSeq;
    String? ItemNumber;
    String? ItemName;
    String? Field;
    String? OldValue;
    String? NewValue;
    String? Description;
    String? Status;

    AddendaChange({this.ChangeId,this.ChangeType,this.TargetSeq,this.ItemNumber,this.ItemName,this.Field,this.OldValue,this.NewValue,this.Description,this.Status});
    AddendaChange.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ChangeId = json['ChangeId'];
        ChangeType = json['ChangeType'];
        TargetSeq = json['TargetSeq'];
        ItemNumber = json['ItemNumber'];
        ItemName = json['ItemName'];
        Field = json['Field'];
        OldValue = json['OldValue'];
        NewValue = json['NewValue'];
        Description = json['Description'];
        Status = json['Status'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ChangeId': ChangeId,
        'ChangeType': ChangeType,
        'TargetSeq': TargetSeq,
        'ItemNumber': ItemNumber,
        'ItemName': ItemName,
        'Field': Field,
        'OldValue': OldValue,
        'NewValue': NewValue,
        'Description': Description,
        'Status': Status
    };

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

class AddendaChangeSet implements IConvertible
{
    String? ChangeSetId;
    int? SourceRfpDocumentID;
    String? SourceFileName;
    String? DocumentType;
    DateTime? ExtractedAtUtc;
    String? Summary;
    List<AddendaChange>? Changes = [];

    AddendaChangeSet({this.ChangeSetId,this.SourceRfpDocumentID,this.SourceFileName,this.DocumentType,this.ExtractedAtUtc,this.Summary,this.Changes});
    AddendaChangeSet.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ChangeSetId = json['ChangeSetId'];
        SourceRfpDocumentID = json['SourceRfpDocumentID'];
        SourceFileName = json['SourceFileName'];
        DocumentType = json['DocumentType'];
        ExtractedAtUtc = JsonConverters.fromJson(json['ExtractedAtUtc'],'DateTime',context!);
        Summary = json['Summary'];
        Changes = JsonConverters.fromJson(json['Changes'],'List<AddendaChange>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ChangeSetId': ChangeSetId,
        'SourceRfpDocumentID': SourceRfpDocumentID,
        'SourceFileName': SourceFileName,
        'DocumentType': DocumentType,
        'ExtractedAtUtc': JsonConverters.toJson(ExtractedAtUtc,'DateTime',context!),
        'Summary': Summary,
        'Changes': JsonConverters.toJson(Changes,'List<AddendaChange>',context!)
    };

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

class WageClassification implements IConvertible
{
    String? Title;
    double? BaseRate;
    double? FringeRate;
    String? ParishNote;
    String? SourceLine;
    double? BenchmarkFringeRate;
    String? FringeCompareNote;

    WageClassification({this.Title,this.BaseRate,this.FringeRate,this.ParishNote,this.SourceLine,this.BenchmarkFringeRate,this.FringeCompareNote});
    WageClassification.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Title = json['Title'];
        BaseRate = JsonConverters.toDouble(json['BaseRate']);
        FringeRate = JsonConverters.toDouble(json['FringeRate']);
        ParishNote = json['ParishNote'];
        SourceLine = json['SourceLine'];
        BenchmarkFringeRate = JsonConverters.toDouble(json['BenchmarkFringeRate']);
        FringeCompareNote = json['FringeCompareNote'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Title': Title,
        'BaseRate': BaseRate,
        'FringeRate': FringeRate,
        'ParishNote': ParishNote,
        'SourceLine': SourceLine,
        'BenchmarkFringeRate': BenchmarkFringeRate,
        'FringeCompareNote': FringeCompareNote
    };

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

class WageDeterminationResult implements IConvertible
{
    int? SourceRfpDocumentID;
    String? SourceFileName;
    String? WdNumber;
    DateTime? ExtractedAtUtc;
    List<WageClassification>? Classifications = [];
    String? Source;
    bool? IsTrustworthy;
    double? ExecutiveOrderFloor;
    String? PublishedDate;
    String? ProjectParish;
    List<String>? Warnings = [];

    WageDeterminationResult({this.SourceRfpDocumentID,this.SourceFileName,this.WdNumber,this.ExtractedAtUtc,this.Classifications,this.Source,this.IsTrustworthy,this.ExecutiveOrderFloor,this.PublishedDate,this.ProjectParish,this.Warnings});
    WageDeterminationResult.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        SourceRfpDocumentID = json['SourceRfpDocumentID'];
        SourceFileName = json['SourceFileName'];
        WdNumber = json['WdNumber'];
        ExtractedAtUtc = JsonConverters.fromJson(json['ExtractedAtUtc'],'DateTime',context!);
        Classifications = JsonConverters.fromJson(json['Classifications'],'List<WageClassification>',context!);
        Source = json['Source'];
        IsTrustworthy = json['IsTrustworthy'];
        ExecutiveOrderFloor = JsonConverters.toDouble(json['ExecutiveOrderFloor']);
        PublishedDate = json['PublishedDate'];
        ProjectParish = json['ProjectParish'];
        Warnings = JsonConverters.fromJson(json['Warnings'],'List<String>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'SourceRfpDocumentID': SourceRfpDocumentID,
        'SourceFileName': SourceFileName,
        'WdNumber': WdNumber,
        'ExtractedAtUtc': JsonConverters.toJson(ExtractedAtUtc,'DateTime',context!),
        'Classifications': JsonConverters.toJson(Classifications,'List<WageClassification>',context!),
        'Source': Source,
        'IsTrustworthy': IsTrustworthy,
        'ExecutiveOrderFloor': ExecutiveOrderFloor,
        'PublishedDate': PublishedDate,
        'ProjectParish': ProjectParish,
        'Warnings': JsonConverters.toJson(Warnings,'List<String>',context!)
    };

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

class RfpAddendaResponse implements IConvertible
{
    ResponseStatus? ResponseStatus;
    int? RfpDocumentID;
    List<AddendaChangeSet>? Diffs = [];
    List<WageDeterminationResult>? WageDeterminations = [];
    String? Message;
    bool? Reflowed;

    RfpAddendaResponse({this.ResponseStatus,this.RfpDocumentID,this.Diffs,this.WageDeterminations,this.Message,this.Reflowed});
    RfpAddendaResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
        RfpDocumentID = json['RfpDocumentID'];
        Diffs = JsonConverters.fromJson(json['Diffs'],'List<AddendaChangeSet>',context!);
        WageDeterminations = JsonConverters.fromJson(json['WageDeterminations'],'List<WageDeterminationResult>',context!);
        Message = json['Message'];
        Reflowed = json['Reflowed'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!),
        'RfpDocumentID': RfpDocumentID,
        'Diffs': JsonConverters.toJson(Diffs,'List<AddendaChangeSet>',context!),
        'WageDeterminations': JsonConverters.toJson(WageDeterminations,'List<WageDeterminationResult>',context!),
        'Message': Message,
        'Reflowed': Reflowed
    };

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

class RfpAddendaRejectRequest implements IConvertible
{
    String? RfpDocumentUID;
    String? ChangeId;

    RfpAddendaRejectRequest({this.RfpDocumentUID,this.ChangeId});
    RfpAddendaRejectRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        RfpDocumentUID = json['RfpDocumentUID'];
        ChangeId = json['ChangeId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'RfpDocumentUID': RfpDocumentUID,
        'ChangeId': ChangeId
    };

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

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'AddendaChange': TypeInfo(TypeOf.Class, create:() => AddendaChange()),
    'AddendaChangeSet': TypeInfo(TypeOf.Class, create:() => AddendaChangeSet()),
    'List<AddendaChange>': TypeInfo(TypeOf.Class, create:() => <AddendaChange>[]),
    'WageClassification': TypeInfo(TypeOf.Class, create:() => WageClassification()),
    'WageDeterminationResult': TypeInfo(TypeOf.Class, create:() => WageDeterminationResult()),
    'List<WageClassification>': TypeInfo(TypeOf.Class, create:() => <WageClassification>[]),
    'RfpAddendaResponse': TypeInfo(TypeOf.Class, create:() => RfpAddendaResponse()),
    'List<AddendaChangeSet>': TypeInfo(TypeOf.Class, create:() => <AddendaChangeSet>[]),
    'List<WageDeterminationResult>': TypeInfo(TypeOf.Class, create:() => <WageDeterminationResult>[]),
    'RfpAddendaRejectRequest': TypeInfo(TypeOf.Class, create:() => RfpAddendaRejectRequest()),
});

Dart RfpAddendaRejectRequest 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/Rfp/{RfpDocumentUID}/Addenda/{ChangeId}/Reject HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<RfpAddendaRejectRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
  <ChangeId>String</ChangeId>
  <RfpDocumentUID>00000000-0000-0000-0000-000000000000</RfpDocumentUID>
</RfpAddendaRejectRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<RfpAddendaResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
  <Diffs>
    <AddendaChangeSet>
      <ChangeSetId>String</ChangeSetId>
      <Changes>
        <AddendaChange>
          <ChangeId>String</ChangeId>
          <ChangeType>String</ChangeType>
          <Description>String</Description>
          <Field>String</Field>
          <ItemName>String</ItemName>
          <ItemNumber>String</ItemNumber>
          <NewValue>String</NewValue>
          <OldValue>String</OldValue>
          <Status>String</Status>
          <TargetSeq>0</TargetSeq>
        </AddendaChange>
      </Changes>
      <DocumentType>String</DocumentType>
      <ExtractedAtUtc>0001-01-01T00:00:00</ExtractedAtUtc>
      <SourceFileName>String</SourceFileName>
      <SourceRfpDocumentID>0</SourceRfpDocumentID>
      <Summary>String</Summary>
    </AddendaChangeSet>
  </Diffs>
  <Message>String</Message>
  <Reflowed>false</Reflowed>
  <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>
  <RfpDocumentID>0</RfpDocumentID>
  <WageDeterminations>
    <WageDeterminationResult>
      <Classifications>
        <WageClassification>
          <BaseRate>0</BaseRate>
          <BenchmarkFringeRate>0</BenchmarkFringeRate>
          <FringeCompareNote>String</FringeCompareNote>
          <FringeRate>0</FringeRate>
          <ParishNote>String</ParishNote>
          <SourceLine>String</SourceLine>
          <Title>String</Title>
        </WageClassification>
      </Classifications>
      <ExecutiveOrderFloor>0</ExecutiveOrderFloor>
      <ExtractedAtUtc>0001-01-01T00:00:00</ExtractedAtUtc>
      <IsTrustworthy>false</IsTrustworthy>
      <ProjectParish>String</ProjectParish>
      <PublishedDate>String</PublishedDate>
      <Source>String</Source>
      <SourceFileName>String</SourceFileName>
      <SourceRfpDocumentID>0</SourceRfpDocumentID>
      <Warnings xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </Warnings>
      <WdNumber>String</WdNumber>
    </WageDeterminationResult>
  </WageDeterminations>
</RfpAddendaResponse>