| Requires any of the roles: | Agent, Administrator |
| POST,OPTIONS | /v1/Rfp/{RfpDocumentUID}/Estimate/Subcontracts/Remove |
|---|
import Foundation
import ServiceStack
public class EstimateSubcontractRemoveRequest : Codable
{
public var rfpDocumentUID:String
public var estimateSubcontractID:Int
required public init(){}
}
public class EstimateResponse : Codable
{
public var responseStatus:ResponseStatus
public var view:EstimatingView
required public init(){}
}
public class EstimatingView : Codable
{
public var rfpDocumentID:Int
public var projectName:String
public var clientName:String
public var bidDueDate:String
public var projectType:String
public var settings:EstimateSettingsView
public var jobs:[EstimateJobView] = []
public var schedule:[BidScheduleLine] = []
public var scheduleTotal:Double
public var variance:EstimateVarianceView
public var indicative:IndicativeBidView
public var summary:EstimateSummaryView
public var timing:EstimateTimingView
public var needsRateCount:Int
public var needsRateKeys:[String] = []
public var reviewItems:[EstimateReviewItemView] = []
public var needsReviewCount:Int
public var canApprove:Bool
public var canSeePay:Bool
required public init(){}
}
public class EstimateSettingsView : Codable
{
public var rfpEstimateID:Int
public var startDate:Date?
public var deadlineDate:Date?
public var workdaysPerWeek:Int
public var hoursPerDay:Double
public var weatherPct:Double
public var ohpPct:Double
public var contingencyPct:Double
public var bondPct:Double
public var holidays:[Date] = []
public var appliedStartDate:Date?
required public init(){}
}
public class EstimateJobView : Codable
{
public var seq:Int
public var workPackage:WorkPackageView
public var itemNo:String
public var name:String
public var category:String
public var sourceRef:String
public var unit:String
public var quantity:Double
public var patternCode:String
public var workdays:Int
public var hoursPerDay:Double
public var isNight:Bool
public var weeklyHours:Double
public var otFraction:Double
public var days:Double
public var effectiveProdPerDay:Double?
public var crewPremiumApplied:Bool
public var crewCost:Double
public var fringeCost:Double
public var equipmentCost:Double
public var materialCost:Double
public var subcontractCost:Double
public var direct:Double
public var pricingBasis:String
public var benchmarkUnitPrice:Double?
public var crew:[EstimateCrewLineView] = []
public var equipment:[EstimateEquipmentLineView] = []
public var materials:[EstimateMaterialLineView] = []
public var subcontracts:[EstimateSubcontractView] = []
required public init(){}
}
public class WorkPackageView : Codable
{
public var hasPackage:Bool
public var scope:String
public var limitsOfWork:String
public var specRefs:[SpecRefView] = []
public var constraints:[String] = []
public var holdPoints:[String] = []
public var dod:[DodItemView] = []
public var safetyNote:String
public var provenance:String
public var specBook:String
public var userEdited:Bool
public var redraftNote:String
required public init(){}
}
public class SpecRefView : Codable
{
public var section:String
public var title:String
public var url:String
required public init(){}
}
public class DodItemView : Codable
{
public var key:String
public var text:String
public var checked:Bool
public var source:String
required public init(){}
}
public class EstimateCrewLineView : Codable
{
public var role:String
public var hours:Double
public var stHours:Double
public var otHours:Double
public var hasOt:Bool
public var premiumApplied:Bool
public var needsRate:Bool
public var rateKey:String
public var chip:String
public var rrop:Double?
public var stCost:Double?
public var otCost:Double?
public var cost:Double?
public var fringeCost:Double?
required public init(){}
}
public class EstimateEquipmentLineView : Codable
{
public var name:String
public var quantity:Double
public var rate:Double?
public var needsRate:Bool
public var mobCost:Double
public var cost:Double
public var isAvailabilityTracked:Bool
public var isOwned:Bool
public var availabilityLabel:String
public var freedFromProject:String
public var availableFrom:Date?
public var rateKey:String
public var chip:String
public var rentalExplain:String
public var usageDays:Double
public var billedDays:Double
required public init(){}
}
public class EstimateMaterialLineView : Codable
{
public var name:String
public var quantity:Double
public var unit:String
public var rate:Double?
public var needsRate:Bool
public var cost:Double
public var rateKey:String
public var chip:String
required public init(){}
}
public class EstimateSubcontractView : Codable
{
public var estimateSubcontractID:Int
public var taskSeq:Int
public var vendor:String
public var amount:Double
public var scope:String
required public init(){}
}
public class BidScheduleLine : Codable
{
public var itemNo:String
public var Description:String
public var unit:String
public var quantity:Double
public var unitPrice:Double
public var `extension`:Double
public var pricingBasis:String
public var benchmarkDeltaPct:Double?
public var benchmarkFlagged:Bool
required public init(){}
}
public class EstimateVarianceView : Codable
{
public var lines:[EstimateVarianceLine] = []
public var itemsTotal:Int
public var itemsBenchmarked:Int
public var coverageValuePct:Double
public var oursTotal:Double
public var marketTotal:Double
public var aggregateDeltaPct:Double?
public var flooredCount:Int
public var watchCount:Int
public var outlierCount:Int
public var criticalCount:Int
public var note:String
required public init(){}
}
public class EstimateVarianceLine : Codable
{
public var seq:Int
public var itemNo:String
public var name:String
public var unit:String
public var quantity:Double
public var ourUnitPrice:Double
public var ourTotal:Double
public var benchmarkUnitPrice:Double
public var marketTotal:Double
public var deltaPct:Double
public var rateMin:Double?
public var rateMax:Double?
public var sampleSize:Int?
public var outsideRange:Bool?
public var isFloor:Bool
public var severity:String
public var note:String
required public init(){}
}
public class IndicativeBidView : Codable
{
public var lines:[IndicativeLine] = []
public var bottomUpCount:Int
public var bottomUpTotal:Double
public var benchmarkCount:Int
public var benchmarkTotal:Double
public var uncoveredCount:Int
public var uncoveredFloorTotal:Double
public var indicativeTotal:Double
public var floorTotal:Double
public var note:String
required public init(){}
}
public class IndicativeLine : Codable
{
public var seq:Int
public var itemNo:String
public var name:String
public var unit:String
public var quantity:Double
public var source:String
public var unitPrice:Double
public var lineTotal:Double
required public init(){}
}
public class EstimateSummaryView : Codable
{
public var direct:Double
public var ohpPct:Double
public var ohpAmount:Double
public var bondPct:Double
public var bondAmount:Double
public var contingencyPct:Double
public var contingencyAmount:Double
public var bidTotal:Double
public var loadFactor:Double
public var marginPct:Double
required public init(){}
}
public class EstimateTimingView : Codable
{
public var totalWorkdays:Double
public var calendarDays:Int
public var finish:Date
public var feasible:Bool
public var deadline:Date?
required public init(){}
}
public class EstimateReviewItemView : Codable
{
public var taskSeq:Int
public var taskName:String
public var reason:String
public var status:String
required public init(){}
}
Swift EstimateSubcontractRemoveRequest 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
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/Rfp/{RfpDocumentUID}/Estimate/Subcontracts/Remove HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: application/json
Content-Type: application/json
Content-Length: length
{"RfpDocumentUID":"00000000000000000000000000000000","EstimateSubcontractID":0}
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"}},"View":{"RfpDocumentID":0,"ProjectName":"String","ClientName":"String","BidDueDate":"String","ProjectType":"String","Settings":{"RfpEstimateID":0,"StartDate":"0001-01-01T00:00:00.0000000","DeadlineDate":"0001-01-01T00:00:00.0000000","WorkdaysPerWeek":0,"HoursPerDay":0,"WeatherPct":0,"OhpPct":0,"ContingencyPct":0,"BondPct":0,"Holidays":["0001-01-01T00:00:00.0000000"],"AppliedStartDate":"0001-01-01T00:00:00.0000000"},"Jobs":[{"Seq":0,"WorkPackage":{"HasPackage":false,"Scope":"String","LimitsOfWork":"String","SpecRefs":[{"Section":"String","Title":"String","Url":"String"}],"Constraints":["String"],"HoldPoints":["String"],"Dod":[{"Key":"String","Text":"String","Checked":false,"Source":"String"}],"SafetyNote":"String","Provenance":"String","SpecBook":"String","UserEdited":false,"RedraftNote":"String"},"ItemNo":"String","Name":"String","Category":"String","SourceRef":"String","Unit":"String","Quantity":0,"PatternCode":"String","Workdays":0,"HoursPerDay":0,"IsNight":false,"WeeklyHours":0,"OtFraction":0,"Days":0,"EffectiveProdPerDay":0,"CrewPremiumApplied":false,"CrewCost":0,"FringeCost":0,"EquipmentCost":0,"MaterialCost":0,"SubcontractCost":0,"Direct":0,"PricingBasis":"String","BenchmarkUnitPrice":0,"Crew":[{"Role":"String","Hours":0,"StHours":0,"OtHours":0,"HasOt":false,"PremiumApplied":false,"NeedsRate":false,"RateKey":"String","Chip":"String","Rrop":0,"StCost":0,"OtCost":0,"Cost":0,"FringeCost":0}],"Equipment":[{"Name":"String","Quantity":0,"Rate":0,"NeedsRate":false,"MobCost":0,"Cost":0,"IsAvailabilityTracked":false,"IsOwned":false,"AvailabilityLabel":"String","FreedFromProject":"String","AvailableFrom":"0001-01-01T00:00:00.0000000","RateKey":"String","Chip":"String","RentalExplain":"String","UsageDays":0,"BilledDays":0}],"Materials":[{"Name":"String","Quantity":0,"Unit":"String","Rate":0,"NeedsRate":false,"Cost":0,"RateKey":"String","Chip":"String"}],"Subcontracts":[{"EstimateSubcontractID":0,"TaskSeq":0,"Vendor":"String","Amount":0,"Scope":"String"}]}],"Schedule":[{"ItemNo":"String","Description":"String","Unit":"String","Quantity":0,"UnitPrice":0,"Extension":0,"PricingBasis":"String","BenchmarkDeltaPct":0,"BenchmarkFlagged":false}],"ScheduleTotal":0,"Variance":{"Lines":[{"Seq":0,"ItemNo":"String","Name":"String","Unit":"String","Quantity":0,"OurUnitPrice":0,"OurTotal":0,"BenchmarkUnitPrice":0,"MarketTotal":0,"DeltaPct":0,"RateMin":0,"RateMax":0,"SampleSize":0,"OutsideRange":false,"IsFloor":false,"Severity":"String","Note":"String"}],"ItemsTotal":0,"ItemsBenchmarked":0,"CoverageValuePct":0,"OursTotal":0,"MarketTotal":0,"AggregateDeltaPct":0,"FlooredCount":0,"WatchCount":0,"OutlierCount":0,"CriticalCount":0,"Note":"String"},"Indicative":{"Lines":[{"Seq":0,"ItemNo":"String","Name":"String","Unit":"String","Quantity":0,"Source":"String","UnitPrice":0,"LineTotal":0}],"BottomUpCount":0,"BottomUpTotal":0,"BenchmarkCount":0,"BenchmarkTotal":0,"UncoveredCount":0,"UncoveredFloorTotal":0,"IndicativeTotal":0,"FloorTotal":0,"Note":"String"},"Summary":{"Direct":0,"OhpPct":0,"OhpAmount":0,"BondPct":0,"BondAmount":0,"ContingencyPct":0,"ContingencyAmount":0,"BidTotal":0,"LoadFactor":0,"MarginPct":0},"Timing":{"TotalWorkdays":0,"CalendarDays":0,"Finish":"0001-01-01T00:00:00.0000000","Feasible":false,"Deadline":"0001-01-01T00:00:00.0000000"},"NeedsRateCount":0,"NeedsRateKeys":["String"],"ReviewItems":[{"TaskSeq":0,"TaskName":"String","Reason":"String","Status":"String"}],"NeedsReviewCount":0,"CanApprove":false,"CanSeePay":false}}