Trendsic Platform Service

<back to all web services

EstimateQtyPutRequest

Requires Authentication
Requires any of the roles:Agent, Administrator
The following routes are available for this service:
PUT,OPTIONS/v1/Rfp/{RfpDocumentUID}/Estimate/Qty
import java.math.*
import java.util.*
import java.io.InputStream
import net.servicestack.client.*


open class EstimateQtyPutRequest
{
    open var RfpDocumentUID:UUID? = null
    open var TaskSeq:Int? = null
    open var Quantity:BigDecimal? = null
}

open class EstimateResponse
{
    open var ResponseStatus:ResponseStatus? = null
    open var View:EstimatingView? = null
}

open class EstimatingView
{
    open var RfpDocumentID:Int? = null
    open var ProjectName:String? = null
    open var ClientName:String? = null
    open var BidDueDate:String? = null
    open var ProjectType:String? = null
    open var Settings:EstimateSettingsView? = null
    open var Jobs:ArrayList<EstimateJobView> = ArrayList<EstimateJobView>()
    open var Schedule:ArrayList<BidScheduleLine> = ArrayList<BidScheduleLine>()
    open var ScheduleTotal:BigDecimal? = null
    open var Variance:EstimateVarianceView? = null
    open var Indicative:IndicativeBidView? = null
    open var Summary:EstimateSummaryView? = null
    open var Timing:EstimateTimingView? = null
    open var NeedsRateCount:Int? = null
    open var NeedsRateKeys:ArrayList<String> = ArrayList<String>()
    open var ReviewItems:ArrayList<EstimateReviewItemView> = ArrayList<EstimateReviewItemView>()
    open var NeedsReviewCount:Int? = null
    open var CanApprove:Boolean? = null
    open var CanSeePay:Boolean? = null
}

open class EstimateSettingsView
{
    open var RfpEstimateID:Int? = null
    open var StartDate:Date? = null
    open var DeadlineDate:Date? = null
    open var WorkdaysPerWeek:Int? = null
    open var HoursPerDay:BigDecimal? = null
    open var WeatherPct:BigDecimal? = null
    open var OhpPct:BigDecimal? = null
    open var ContingencyPct:BigDecimal? = null
    open var BondPct:BigDecimal? = null
    open var Holidays:ArrayList<Date> = ArrayList<Date>()
    open var AppliedStartDate:Date? = null
}

open class EstimateJobView
{
    open var Seq:Int? = null
    open var WorkPackage:WorkPackageView? = null
    open var ItemNo:String? = null
    open var Name:String? = null
    open var Category:String? = null
    open var SourceRef:String? = null
    open var Unit:String? = null
    open var Quantity:BigDecimal? = null
    open var PatternCode:String? = null
    open var Workdays:Int? = null
    open var HoursPerDay:BigDecimal? = null
    open var IsNight:Boolean? = null
    open var WeeklyHours:BigDecimal? = null
    open var OtFraction:BigDecimal? = null
    open var Days:BigDecimal? = null
    open var EffectiveProdPerDay:BigDecimal? = null
    open var CrewPremiumApplied:Boolean? = null
    open var CrewCost:BigDecimal? = null
    open var FringeCost:BigDecimal? = null
    open var EquipmentCost:BigDecimal? = null
    open var MaterialCost:BigDecimal? = null
    open var SubcontractCost:BigDecimal? = null
    open var Direct:BigDecimal? = null
    open var PricingBasis:String? = null
    open var BenchmarkUnitPrice:BigDecimal? = null
    open var Crew:ArrayList<EstimateCrewLineView> = ArrayList<EstimateCrewLineView>()
    open var Equipment:ArrayList<EstimateEquipmentLineView> = ArrayList<EstimateEquipmentLineView>()
    open var Materials:ArrayList<EstimateMaterialLineView> = ArrayList<EstimateMaterialLineView>()
    open var Subcontracts:ArrayList<EstimateSubcontractView> = ArrayList<EstimateSubcontractView>()
}

open class WorkPackageView
{
    open var HasPackage:Boolean? = null
    open var Scope:String? = null
    open var LimitsOfWork:String? = null
    open var SpecRefs:ArrayList<SpecRefView> = ArrayList<SpecRefView>()
    open var Constraints:ArrayList<String> = ArrayList<String>()
    open var HoldPoints:ArrayList<String> = ArrayList<String>()
    open var Dod:ArrayList<DodItemView> = ArrayList<DodItemView>()
    open var SafetyNote:String? = null
    open var Provenance:String? = null
    open var SpecBook:String? = null
    open var UserEdited:Boolean? = null
    open var RedraftNote:String? = null
}

open class SpecRefView
{
    open var Section:String? = null
    open var Title:String? = null
    open var Url:String? = null
}

open class DodItemView
{
    open var Key:String? = null
    open var Text:String? = null
    open var Checked:Boolean? = null
    open var Source:String? = null
}

open class EstimateCrewLineView
{
    open var Role:String? = null
    open var Hours:BigDecimal? = null
    open var StHours:BigDecimal? = null
    open var OtHours:BigDecimal? = null
    open var HasOt:Boolean? = null
    open var PremiumApplied:Boolean? = null
    open var NeedsRate:Boolean? = null
    open var RateKey:String? = null
    open var Chip:String? = null
    open var Rrop:BigDecimal? = null
    open var StCost:BigDecimal? = null
    open var OtCost:BigDecimal? = null
    open var Cost:BigDecimal? = null
    open var FringeCost:BigDecimal? = null
}

open class EstimateEquipmentLineView
{
    open var Name:String? = null
    open var Quantity:BigDecimal? = null
    open var Rate:BigDecimal? = null
    open var NeedsRate:Boolean? = null
    open var MobCost:BigDecimal? = null
    open var Cost:BigDecimal? = null
    open var IsAvailabilityTracked:Boolean? = null
    open var IsOwned:Boolean? = null
    open var AvailabilityLabel:String? = null
    open var FreedFromProject:String? = null
    open var AvailableFrom:Date? = null
    open var RateKey:String? = null
    open var Chip:String? = null
    open var RentalExplain:String? = null
    open var UsageDays:BigDecimal? = null
    open var BilledDays:BigDecimal? = null
}

open class EstimateMaterialLineView
{
    open var Name:String? = null
    open var Quantity:BigDecimal? = null
    open var Unit:String? = null
    open var Rate:BigDecimal? = null
    open var NeedsRate:Boolean? = null
    open var Cost:BigDecimal? = null
    open var RateKey:String? = null
    open var Chip:String? = null
}

open class EstimateSubcontractView
{
    open var EstimateSubcontractID:Int? = null
    open var TaskSeq:Int? = null
    open var Vendor:String? = null
    open var Amount:BigDecimal? = null
    open var Scope:String? = null
}

open class BidScheduleLine
{
    open var ItemNo:String? = null
    open var Description:String? = null
    open var Unit:String? = null
    open var Quantity:BigDecimal? = null
    open var UnitPrice:BigDecimal? = null
    open var Extension:BigDecimal? = null
    open var PricingBasis:String? = null
    open var BenchmarkDeltaPct:BigDecimal? = null
    open var BenchmarkFlagged:Boolean? = null
}

open class EstimateVarianceView
{
    open var Lines:ArrayList<EstimateVarianceLine> = ArrayList<EstimateVarianceLine>()
    open var ItemsTotal:Int? = null
    open var ItemsBenchmarked:Int? = null
    open var CoverageValuePct:BigDecimal? = null
    open var OursTotal:BigDecimal? = null
    open var MarketTotal:BigDecimal? = null
    open var AggregateDeltaPct:BigDecimal? = null
    open var FlooredCount:Int? = null
    open var WatchCount:Int? = null
    open var OutlierCount:Int? = null
    open var CriticalCount:Int? = null
    open var Note:String? = null
}

open class EstimateVarianceLine
{
    open var Seq:Int? = null
    open var ItemNo:String? = null
    open var Name:String? = null
    open var Unit:String? = null
    open var Quantity:BigDecimal? = null
    open var OurUnitPrice:BigDecimal? = null
    open var OurTotal:BigDecimal? = null
    open var BenchmarkUnitPrice:BigDecimal? = null
    open var MarketTotal:BigDecimal? = null
    open var DeltaPct:BigDecimal? = null
    open var RateMin:BigDecimal? = null
    open var RateMax:BigDecimal? = null
    open var SampleSize:Int? = null
    open var OutsideRange:Boolean? = null
    open var IsFloor:Boolean? = null
    open var Severity:String? = null
    open var Note:String? = null
}

open class IndicativeBidView
{
    open var Lines:ArrayList<IndicativeLine> = ArrayList<IndicativeLine>()
    open var BottomUpCount:Int? = null
    open var BottomUpTotal:BigDecimal? = null
    open var BenchmarkCount:Int? = null
    open var BenchmarkTotal:BigDecimal? = null
    open var UncoveredCount:Int? = null
    open var UncoveredFloorTotal:BigDecimal? = null
    open var IndicativeTotal:BigDecimal? = null
    open var FloorTotal:BigDecimal? = null
    open var Note:String? = null
}

open class IndicativeLine
{
    open var Seq:Int? = null
    open var ItemNo:String? = null
    open var Name:String? = null
    open var Unit:String? = null
    open var Quantity:BigDecimal? = null
    open var Source:String? = null
    open var UnitPrice:BigDecimal? = null
    open var LineTotal:BigDecimal? = null
}

open class EstimateSummaryView
{
    open var Direct:BigDecimal? = null
    open var OhpPct:BigDecimal? = null
    open var OhpAmount:BigDecimal? = null
    open var BondPct:BigDecimal? = null
    open var BondAmount:BigDecimal? = null
    open var ContingencyPct:BigDecimal? = null
    open var ContingencyAmount:BigDecimal? = null
    open var BidTotal:BigDecimal? = null
    open var LoadFactor:BigDecimal? = null
    open var MarginPct:BigDecimal? = null
}

open class EstimateTimingView
{
    open var TotalWorkdays:BigDecimal? = null
    open var CalendarDays:Int? = null
    open var Finish:Date? = null
    open var Feasible:Boolean? = null
    open var Deadline:Date? = null
}

open class EstimateReviewItemView
{
    open var TaskSeq:Int? = null
    open var TaskName:String? = null
    open var Reason:String? = null
    open var Status:String? = null
}

Kotlin EstimateQtyPutRequest 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.

PUT /v1/Rfp/{RfpDocumentUID}/Estimate/Qty HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: application/json
Content-Type: application/json
Content-Length: length

{"RfpDocumentUID":"00000000000000000000000000000000","TaskSeq":0,"Quantity":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}}