/* Options: Date: 2026-07-08 20:22: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: JobScheduleUpdateRequest.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/v1/project/job/{JobID}/schedule", "PUT,OPTIONS") public class JobScheduleUpdateRequest : IReturn, Codable { public typealias Return = JobScheduleUpdateResponse public var jobID:Int? public var expectedStartDate:Date? public var expectedCompletionDate:Date? public var percentComplete:Double? required public init(){} } public class JobScheduleUpdateResponse : Codable { public var responseStatus:ResponseStatus? public var job:TimelineJob? required public init(){} } public class TimelineJob : Codable { public var jobID:Int? public var jobName:String? public var expectedStartDate:Date? public var expectedCompletionDate:Date? public var actualStartDate:Date? public var actualEndDate:Date? public var percentComplete:Double? public var statusID:Int? public var jobCategory:String? public var isAgreementVisit:Bool? public var occurrenceDate:Date? public var crew:[TimelineCrew] = [] public var equipment:[TimelineEquipment] = [] required public init(){} } public class TimelineCrew : Codable { public var projectJobCrewMemberID:Int? public var contactID:Int? public var contactName:String? public var budgetedHours:Double? required public init(){} } public class TimelineEquipment : Codable { public var projectJobEquipmentID:Int? public var equipmentID:Int? public var equipmentName:String? required public init(){} }