/* Options: Date: 2026-08-01 07:28:01 SwiftVersion: 6.0 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.dev.dynamics.trendsic.com //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True //MakePropertiesOptional: True IncludeTypes: EstimateSubcontractRemoveRequest.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/v1/Rfp/{RfpDocumentUID}/Estimate/Subcontracts/Remove", "POST,OPTIONS") public class EstimateSubcontractRemoveRequest : IReturn, Codable { public typealias Return = EstimateResponse 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 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 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 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 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 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(){} } 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 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 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(){} }