| Requires any of the roles: | Agent, Administrator |
| POST,OPTIONS | /v1/Rfp/{RfpDocumentUID}/Approve |
|---|
import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;
public class dtos
{
public static class RfpApproveRequest
{
public UUID RfpDocumentUID = null;
public ProjectProposal Proposal = null;
public UUID getRfpDocumentUID() { return RfpDocumentUID; }
public RfpApproveRequest setRfpDocumentUID(UUID value) { this.RfpDocumentUID = value; return this; }
public ProjectProposal getProposal() { return Proposal; }
public RfpApproveRequest setProposal(ProjectProposal value) { this.Proposal = value; return this; }
}
public static class ProjectProposal
{
public Integer RfpDocumentID = null;
public String ProjectName = null;
public String ClientName = null;
public String ProjectType = null;
public String ProjectLocation = null;
public String Scope = null;
public String ProjectDescription = null;
public Integer ContractDurationDays = null;
public String BidDueDate = null;
public Date EstimatedStartDate = null;
public Date EstimatedEndDate = null;
public ArrayList<ProposedTask> Tasks = new ArrayList<ProposedTask>();
public Integer getRfpDocumentID() { return RfpDocumentID; }
public ProjectProposal setRfpDocumentID(Integer value) { this.RfpDocumentID = value; return this; }
public String getProjectName() { return ProjectName; }
public ProjectProposal setProjectName(String value) { this.ProjectName = value; return this; }
public String getClientName() { return ClientName; }
public ProjectProposal setClientName(String value) { this.ClientName = value; return this; }
public String getProjectType() { return ProjectType; }
public ProjectProposal setProjectType(String value) { this.ProjectType = value; return this; }
public String getProjectLocation() { return ProjectLocation; }
public ProjectProposal setProjectLocation(String value) { this.ProjectLocation = value; return this; }
public String getScope() { return Scope; }
public ProjectProposal setScope(String value) { this.Scope = value; return this; }
public String getProjectDescription() { return ProjectDescription; }
public ProjectProposal setProjectDescription(String value) { this.ProjectDescription = value; return this; }
public Integer getContractDurationDays() { return ContractDurationDays; }
public ProjectProposal setContractDurationDays(Integer value) { this.ContractDurationDays = value; return this; }
public String getBidDueDate() { return BidDueDate; }
public ProjectProposal setBidDueDate(String value) { this.BidDueDate = value; return this; }
public Date getEstimatedStartDate() { return EstimatedStartDate; }
public ProjectProposal setEstimatedStartDate(Date value) { this.EstimatedStartDate = value; return this; }
public Date getEstimatedEndDate() { return EstimatedEndDate; }
public ProjectProposal setEstimatedEndDate(Date value) { this.EstimatedEndDate = value; return this; }
public ArrayList<ProposedTask> getTasks() { return Tasks; }
public ProjectProposal setTasks(ArrayList<ProposedTask> value) { this.Tasks = value; return this; }
}
public static class ProposedTask
{
public Integer Seq = null;
public String Name = null;
public String Category = null;
public Double Quantity = null;
public String Unit = null;
public String SourceItemNumber = null;
public String SourceReference = null;
public String Notes = null;
public TaskResourcing Resourcing = null;
public Double DurationDays = null;
public ArrayList<Integer> DependsOn = new ArrayList<Integer>();
public Date EstimatedStartDate = null;
public Date EstimatedEndDate = null;
public Integer getSeq() { return Seq; }
public ProposedTask setSeq(Integer value) { this.Seq = value; return this; }
public String getName() { return Name; }
public ProposedTask setName(String value) { this.Name = value; return this; }
public String getCategory() { return Category; }
public ProposedTask setCategory(String value) { this.Category = value; return this; }
public Double getQuantity() { return Quantity; }
public ProposedTask setQuantity(Double value) { this.Quantity = value; return this; }
public String getUnit() { return Unit; }
public ProposedTask setUnit(String value) { this.Unit = value; return this; }
public String getSourceItemNumber() { return SourceItemNumber; }
public ProposedTask setSourceItemNumber(String value) { this.SourceItemNumber = value; return this; }
public String getSourceReference() { return SourceReference; }
public ProposedTask setSourceReference(String value) { this.SourceReference = value; return this; }
public String getNotes() { return Notes; }
public ProposedTask setNotes(String value) { this.Notes = value; return this; }
public TaskResourcing getResourcing() { return Resourcing; }
public ProposedTask setResourcing(TaskResourcing value) { this.Resourcing = value; return this; }
public Double getDurationDays() { return DurationDays; }
public ProposedTask setDurationDays(Double value) { this.DurationDays = value; return this; }
public ArrayList<Integer> getDependsOn() { return DependsOn; }
public ProposedTask setDependsOn(ArrayList<Integer> value) { this.DependsOn = value; return this; }
public Date getEstimatedStartDate() { return EstimatedStartDate; }
public ProposedTask setEstimatedStartDate(Date value) { this.EstimatedStartDate = value; return this; }
public Date getEstimatedEndDate() { return EstimatedEndDate; }
public ProposedTask setEstimatedEndDate(Date value) { this.EstimatedEndDate = value; return this; }
}
public static class TaskResourcing
{
public ArrayList<ResourcedPosition> Positions = new ArrayList<ResourcedPosition>();
public ArrayList<ResourcedEquipment> Equipment = new ArrayList<ResourcedEquipment>();
public ArrayList<ResourcedMaterial> Materials = new ArrayList<ResourcedMaterial>();
public ArrayList<ResourcedPosition> getPositions() { return Positions; }
public TaskResourcing setPositions(ArrayList<ResourcedPosition> value) { this.Positions = value; return this; }
public ArrayList<ResourcedEquipment> getEquipment() { return Equipment; }
public TaskResourcing setEquipment(ArrayList<ResourcedEquipment> value) { this.Equipment = value; return this; }
public ArrayList<ResourcedMaterial> getMaterials() { return Materials; }
public TaskResourcing setMaterials(ArrayList<ResourcedMaterial> value) { this.Materials = value; return this; }
}
public static class ResourcedPosition
{
public String PositionTag = null;
public Double Hours = null;
public Integer Headcount = null;
public String SourceReference = null;
public String Notes = null;
public Boolean IsInCatalog = null;
public Integer ContactID = null;
public String getPositionTag() { return PositionTag; }
public ResourcedPosition setPositionTag(String value) { this.PositionTag = value; return this; }
public Double getHours() { return Hours; }
public ResourcedPosition setHours(Double value) { this.Hours = value; return this; }
public Integer getHeadcount() { return Headcount; }
public ResourcedPosition setHeadcount(Integer value) { this.Headcount = value; return this; }
public String getSourceReference() { return SourceReference; }
public ResourcedPosition setSourceReference(String value) { this.SourceReference = value; return this; }
public String getNotes() { return Notes; }
public ResourcedPosition setNotes(String value) { this.Notes = value; return this; }
public Boolean getIsInCatalog() { return IsInCatalog; }
public ResourcedPosition setIsInCatalog(Boolean value) { this.IsInCatalog = value; return this; }
public Integer getContactID() { return ContactID; }
public ResourcedPosition setContactID(Integer value) { this.ContactID = value; return this; }
}
public static class ResourcedEquipment
{
public Integer EquipmentID = null;
public String EquipmentName = null;
public String MakeModel = null;
public Double Quantity = null;
public Double DurationDays = null;
public String SourceReference = null;
public String Notes = null;
public Boolean IsInCatalog = null;
public Integer SuggestedEquipmentID = null;
public String SuggestedEquipmentName = null;
public Integer getEquipmentID() { return EquipmentID; }
public ResourcedEquipment setEquipmentID(Integer value) { this.EquipmentID = value; return this; }
public String getEquipmentName() { return EquipmentName; }
public ResourcedEquipment setEquipmentName(String value) { this.EquipmentName = value; return this; }
public String getMakeModel() { return MakeModel; }
public ResourcedEquipment setMakeModel(String value) { this.MakeModel = value; return this; }
public Double getQuantity() { return Quantity; }
public ResourcedEquipment setQuantity(Double value) { this.Quantity = value; return this; }
public Double getDurationDays() { return DurationDays; }
public ResourcedEquipment setDurationDays(Double value) { this.DurationDays = value; return this; }
public String getSourceReference() { return SourceReference; }
public ResourcedEquipment setSourceReference(String value) { this.SourceReference = value; return this; }
public String getNotes() { return Notes; }
public ResourcedEquipment setNotes(String value) { this.Notes = value; return this; }
public Boolean getIsInCatalog() { return IsInCatalog; }
public ResourcedEquipment setIsInCatalog(Boolean value) { this.IsInCatalog = value; return this; }
public Integer getSuggestedEquipmentID() { return SuggestedEquipmentID; }
public ResourcedEquipment setSuggestedEquipmentID(Integer value) { this.SuggestedEquipmentID = value; return this; }
public String getSuggestedEquipmentName() { return SuggestedEquipmentName; }
public ResourcedEquipment setSuggestedEquipmentName(String value) { this.SuggestedEquipmentName = value; return this; }
}
public static class ResourcedMaterial
{
public Integer MaterialID = null;
public String MaterialName = null;
public String MakeModel = null;
public Double Quantity = null;
public String Unit = null;
public String SourceReference = null;
public String Notes = null;
public Boolean IsInCatalog = null;
public Integer SuggestedMaterialID = null;
public String SuggestedMaterialName = null;
public Integer getMaterialID() { return MaterialID; }
public ResourcedMaterial setMaterialID(Integer value) { this.MaterialID = value; return this; }
public String getMaterialName() { return MaterialName; }
public ResourcedMaterial setMaterialName(String value) { this.MaterialName = value; return this; }
public String getMakeModel() { return MakeModel; }
public ResourcedMaterial setMakeModel(String value) { this.MakeModel = value; return this; }
public Double getQuantity() { return Quantity; }
public ResourcedMaterial setQuantity(Double value) { this.Quantity = value; return this; }
public String getUnit() { return Unit; }
public ResourcedMaterial setUnit(String value) { this.Unit = value; return this; }
public String getSourceReference() { return SourceReference; }
public ResourcedMaterial setSourceReference(String value) { this.SourceReference = value; return this; }
public String getNotes() { return Notes; }
public ResourcedMaterial setNotes(String value) { this.Notes = value; return this; }
public Boolean getIsInCatalog() { return IsInCatalog; }
public ResourcedMaterial setIsInCatalog(Boolean value) { this.IsInCatalog = value; return this; }
public Integer getSuggestedMaterialID() { return SuggestedMaterialID; }
public ResourcedMaterial setSuggestedMaterialID(Integer value) { this.SuggestedMaterialID = value; return this; }
public String getSuggestedMaterialName() { return SuggestedMaterialName; }
public ResourcedMaterial setSuggestedMaterialName(String value) { this.SuggestedMaterialName = value; return this; }
}
public static class RfpApproveResponse
{
public ResponseStatus ResponseStatus = null;
public Integer RfpDocumentID = null;
public Integer ProjectID = null;
public UUID ProjectUID = null;
public Integer RfpApprovalID = null;
public ArrayList<Integer> JobIDs = new ArrayList<Integer>();
public Integer OpenPositionCount = null;
public ProposalDiff Diff = null;
public ResponseStatus getResponseStatus() { return ResponseStatus; }
public RfpApproveResponse setResponseStatus(ResponseStatus value) { this.ResponseStatus = value; return this; }
public Integer getRfpDocumentID() { return RfpDocumentID; }
public RfpApproveResponse setRfpDocumentID(Integer value) { this.RfpDocumentID = value; return this; }
public Integer getProjectID() { return ProjectID; }
public RfpApproveResponse setProjectID(Integer value) { this.ProjectID = value; return this; }
public UUID getProjectUID() { return ProjectUID; }
public RfpApproveResponse setProjectUID(UUID value) { this.ProjectUID = value; return this; }
public Integer getRfpApprovalID() { return RfpApprovalID; }
public RfpApproveResponse setRfpApprovalID(Integer value) { this.RfpApprovalID = value; return this; }
public ArrayList<Integer> getJobIDs() { return JobIDs; }
public RfpApproveResponse setJobIDs(ArrayList<Integer> value) { this.JobIDs = value; return this; }
public Integer getOpenPositionCount() { return OpenPositionCount; }
public RfpApproveResponse setOpenPositionCount(Integer value) { this.OpenPositionCount = value; return this; }
public ProposalDiff getDiff() { return Diff; }
public RfpApproveResponse setDiff(ProposalDiff value) { this.Diff = value; return this; }
}
public static class ProposalDiff
{
public ArrayList<String> TasksAdded = new ArrayList<String>();
public ArrayList<String> TasksRemoved = new ArrayList<String>();
public ArrayList<TaskDiff> Tasks = new ArrayList<TaskDiff>();
public Boolean HasChanges = null;
public ArrayList<String> getTasksAdded() { return TasksAdded; }
public ProposalDiff setTasksAdded(ArrayList<String> value) { this.TasksAdded = value; return this; }
public ArrayList<String> getTasksRemoved() { return TasksRemoved; }
public ProposalDiff setTasksRemoved(ArrayList<String> value) { this.TasksRemoved = value; return this; }
public ArrayList<TaskDiff> getTasks() { return Tasks; }
public ProposalDiff setTasks(ArrayList<TaskDiff> value) { this.Tasks = value; return this; }
public Boolean isHasChanges() { return HasChanges; }
public ProposalDiff setHasChanges(Boolean value) { this.HasChanges = value; return this; }
}
public static class TaskDiff
{
public String TaskName = null;
public ArrayList<String> PositionsAdded = new ArrayList<String>();
public ArrayList<String> PositionsRemoved = new ArrayList<String>();
public ArrayList<String> PositionsStaffed = new ArrayList<String>();
public ArrayList<Integer> EquipmentAdded = new ArrayList<Integer>();
public ArrayList<Integer> EquipmentRemoved = new ArrayList<Integer>();
public ArrayList<Integer> MaterialsAdded = new ArrayList<Integer>();
public ArrayList<Integer> MaterialsRemoved = new ArrayList<Integer>();
public Boolean HasChanges = null;
public String getTaskName() { return TaskName; }
public TaskDiff setTaskName(String value) { this.TaskName = value; return this; }
public ArrayList<String> getPositionsAdded() { return PositionsAdded; }
public TaskDiff setPositionsAdded(ArrayList<String> value) { this.PositionsAdded = value; return this; }
public ArrayList<String> getPositionsRemoved() { return PositionsRemoved; }
public TaskDiff setPositionsRemoved(ArrayList<String> value) { this.PositionsRemoved = value; return this; }
public ArrayList<String> getPositionsStaffed() { return PositionsStaffed; }
public TaskDiff setPositionsStaffed(ArrayList<String> value) { this.PositionsStaffed = value; return this; }
public ArrayList<Integer> getEquipmentAdded() { return EquipmentAdded; }
public TaskDiff setEquipmentAdded(ArrayList<Integer> value) { this.EquipmentAdded = value; return this; }
public ArrayList<Integer> getEquipmentRemoved() { return EquipmentRemoved; }
public TaskDiff setEquipmentRemoved(ArrayList<Integer> value) { this.EquipmentRemoved = value; return this; }
public ArrayList<Integer> getMaterialsAdded() { return MaterialsAdded; }
public TaskDiff setMaterialsAdded(ArrayList<Integer> value) { this.MaterialsAdded = value; return this; }
public ArrayList<Integer> getMaterialsRemoved() { return MaterialsRemoved; }
public TaskDiff setMaterialsRemoved(ArrayList<Integer> value) { this.MaterialsRemoved = value; return this; }
public Boolean isHasChanges() { return HasChanges; }
public TaskDiff setHasChanges(Boolean value) { this.HasChanges = value; return this; }
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/Rfp/{RfpDocumentUID}/Approve HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"RfpDocumentUID":"00000000000000000000000000000000","Proposal":{"RfpDocumentID":0,"ProjectName":"String","ClientName":"String","ProjectType":"String","ProjectLocation":"String","Scope":"String","ProjectDescription":"String","ContractDurationDays":0,"BidDueDate":"String","EstimatedStartDate":"0001-01-01T00:00:00.0000000","EstimatedEndDate":"0001-01-01T00:00:00.0000000","Tasks":[{"Seq":0,"Name":"String","Category":"String","Quantity":0,"Unit":"String","SourceItemNumber":"String","SourceReference":"String","Notes":"String","Resourcing":{"Positions":[{"PositionTag":"String","Hours":0,"Headcount":0,"SourceReference":"String","Notes":"String","IsInCatalog":false,"ContactID":0}],"Equipment":[{"EquipmentID":0,"EquipmentName":"String","MakeModel":"String","Quantity":0,"DurationDays":0,"SourceReference":"String","Notes":"String","IsInCatalog":false,"SuggestedEquipmentID":0,"SuggestedEquipmentName":"String"}],"Materials":[{"MaterialID":0,"MaterialName":"String","MakeModel":"String","Quantity":0,"Unit":"String","SourceReference":"String","Notes":"String","IsInCatalog":false,"SuggestedMaterialID":0,"SuggestedMaterialName":"String"}]},"DurationDays":0,"DependsOn":[0],"EstimatedStartDate":"0001-01-01T00:00:00.0000000","EstimatedEndDate":"0001-01-01T00:00:00.0000000"}]}}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length
{"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}},"RfpDocumentID":0,"ProjectID":0,"ProjectUID":"00000000000000000000000000000000","RfpApprovalID":0,"JobIDs":[0],"OpenPositionCount":0,"Diff":{"TasksAdded":["String"],"TasksRemoved":["String"],"Tasks":[{"TaskName":"String","PositionsAdded":["String"],"PositionsRemoved":["String"],"PositionsStaffed":["String"],"EquipmentAdded":[0],"EquipmentRemoved":[0],"MaterialsAdded":[0],"MaterialsRemoved":[0],"HasChanges":true}],"HasChanges":true}}