/* Options: Date: 2026-07-08 20:41:53 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: ExecutiveDashboardRequest.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/v1/dashboards/executive", "GET,OPTIONS") public class ExecutiveDashboardRequest : IReturn, Codable { public typealias Return = ExecutiveDashboardResponse public var period:String? public var region:String? public var fy:Int? required public init(){} } public class ExecutiveDashboardResponse : Codable { public var responseStatus:ResponseStatus? public var dashboard:ExecutiveDashboard? required public init(){} } public class ExecutiveDashboard : Codable { public var period:String? public var fromDate:Date? public var toDate:Date? public var fy:Int? public var kpis:[ExecKpi] = [] public var costVsBilling:[ExecCostCategory] = [] public var monthly:[ExecMonthPoint] = [] public var backlog:ExecBacklog? public var wip:[ExecWipRow] = [] public var pipeline:[ExecPipelineStage] = [] public var winRatePct:Double? public var receivables:[ExecAgingBucket] = [] public var retainageUSD:Double? public var dsoDays:Int? public var safety:[ExecSafetyMetric] = [] required public init(){} } public class ExecKpi : Codable { public var key:String? public var label:String? public var value:String? public var sub_:String? public var delta:String? public var deltaUp:Bool? public var hasDelta:Bool? public var good:Bool? required public init(){} } public class ExecCostCategory : Codable { public var name:String? public var costUSD:Double? public var billedUSD:Double? required public init(){} } public class ExecMonthPoint : Codable { public var month:String? public var revenueUSD:Double? public var costUSD:Double? required public init(){} } public class ExecBacklog : Codable { public var totalUSD:Double? public var monthsAhead:Double? public var awardsYtdUSD:Double? public var burnYtdUSD:Double? public var byYear:[ExecBacklogYear] = [] required public init(){} } public class ExecWipRow : Codable { public var contractId:Int? public var name:String? public var owner:String? public var valueUSD:Double? public var pctComplete:Double? public var billedUSD:Double? public var overUnderUSD:Double? public var marginPct:Double? public var fadePts:Double? required public init(){} } public class ExecPipelineStage : Codable { public var stage:String? public var valueUSD:Double? public var count:Int? required public init(){} } public class ExecAgingBucket : Codable { public var bucket:String? public var amountUSD:Double? public var isRetainage:Bool? required public init(){} } public class ExecSafetyMetric : Codable { public var label:String? public var value:String? public var sub_:String? public var good:Bool? required public init(){} } public class ExecBacklogYear : Codable { public var year:String? public var valueUSD:Double? required public init(){} }