/* Options: Date: 2024-06-02 08:15:27 SwiftVersion: 5.0 Version: 8.23 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://testapi.bokamera.se //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True IncludeTypes: UpdateHomepageSchedulerSettings.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/homepage/scheduler/settings", "PUT") // @ValidateRequest(Validator="IsAuthenticated") public class UpdateHomepageSchedulerSettings : IReturn, ICompany, Codable { public typealias Return = HomepageSchedulerSettingsQueryResponse /** * The company id, if empty will use the company id for the user you are logged in with. */ // @ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.") public var companyId:String? /** * If the user schedule is activated. */ // @ApiMember(Description="If the user schedule is activated.") public var active:Bool? /** * If the user schedule views id. */ // @ApiMember(Description="If the user schedule views id.") public var scheduleViewId:Int? /** * If the user schedule time slots in minutes. */ // @ApiMember(Description="If the user schedule time slots in minutes.") public var scheduleTimeSlotMinutes:Int? /** * If the user schedule time start time. */ // @ApiMember(Description="If the user schedule time start time.") @TimeSpan public var startTime:TimeInterval? /** * If the user schedule time end time. */ // @ApiMember(Description="If the user schedule time end time.") @TimeSpan public var endTime:TimeInterval? /** * If the user schedule should contain time exceptions. */ // @ApiMember(Description="If the user schedule should contain time exceptions.") public var showTimeExceptions:Bool? /** * If allow booking in the scheduler. */ // @ApiMember(Description="If allow booking in the scheduler.") public var enableBooking:Bool? /** * What resources you want to be shown in scheduler. */ // @ApiMember(Description="What resources you want to be shown in scheduler.") public var resources:[HomepageSchedulerResource] = [] /** * What services you want to be shown in scheduler. */ // @ApiMember(Description="What services you want to be shown in scheduler.") public var services:[HomepageSchedulerService] = [] /** * What fields you want to be shown in scheduler. */ // @ApiMember(Description="What fields you want to be shown in scheduler.") public var fields:[HomepageScheduleField] = [] required public init(){} } public class HomepageSchedulerSettingsQueryResponse : Codable { /** * The company id. */ // @ApiMember(Description="The company id.") public var companyId:String /** * If the user schedule is activated. */ // @ApiMember(Description="If the user schedule is activated.") public var active:Bool /** * If the user schedule views id. */ // @ApiMember(Description="If the user schedule views id.") public var scheduleViewId:Int /** * If the user schedule time slots in minutes. */ // @ApiMember(Description="If the user schedule time slots in minutes.") public var scheduleTimeSlotMinutes:Int /** * If the user schedule time start time. */ // @ApiMember(Description="If the user schedule time start time.") @TimeSpan public var startTime:TimeInterval? /** * If the user schedule time end time. */ // @ApiMember(Description="If the user schedule time end time.") @TimeSpan public var endTime:TimeInterval? /** * If the user schedule should contain time exceptions. */ // @ApiMember(Description="If the user schedule should contain time exceptions.") public var showTimeExceptions:Bool /** * If allow booking in the scheduler. */ // @ApiMember(Description="If allow booking in the scheduler.") public var enableBooking:Bool /** * The homepage schedule services that are selected */ // @ApiMember(Description="The homepage schedule services that are selected") public var services:[HomepageSchedulerServiceResponse] = [] /** * The homepage schedule resources that are selected */ // @ApiMember(Description="The homepage schedule resources that are selected") public var resources:[HomepageSchedulerResourceResponse] = [] /** * The homepage schedule fields that are selected */ // @ApiMember(Description="The homepage schedule fields that are selected") public var fields:[HomepageSchedulerFieldResponse] = [] /** * The homepage schedule fields select from */ // @ApiMember(Description="The homepage schedule fields select from") public var fieldOptions:[HomepageSchedulerFieldOptionsResponse] = [] /** * The available schedule view options to choose from */ // @ApiMember(Description="The available schedule view options to choose from") public var scheduleViewOptions:[ScheduleViewResponse] = [] required public init(){} } public protocol ICompany { var companyId:String? { get set } } public class HomepageSchedulerResource : Codable { /** * The resource id. */ // @ApiMember(Description="The resource id.") public var id:Int required public init(){} } public class HomepageSchedulerService : Codable { /** * The service id. */ // @ApiMember(Description="The service id.") public var id:Int required public init(){} } public class HomepageScheduleField : Codable { /** * The field id. */ // @ApiMember(Description="The field id.", IsRequired=true) public var id:Int /** * If the field showed on the booking. */ // @ApiMember(Description="If the field showed on the booking.", IsRequired=true) public var showOnBooking:Bool /** * If the field showed on the bookings tooltip. */ // @ApiMember(Description="If the field showed on the bookings tooltip.", IsRequired=true) public var showOnTooltip:Bool required public init(){} } public class HomepageSchedulerServiceResponse : Codable { /** * The service id. */ // @ApiMember(Description="The service id.") public var id:Int /** * The service name. */ // @ApiMember(Description="The service name.") public var name:String /** * The service description. */ // @ApiMember(Description="The service description.") public var Description:String /** * The service image url. */ // @ApiMember(Description="The service image url.") public var imageUrl:Uri required public init(){} } public class HomepageSchedulerResourceResponse : Codable { /** * The resource id. */ // @ApiMember(Description="The resource id.") public var id:Int /** * The resource name. */ // @ApiMember(Description="The resource name.") public var name:String /** * The resource description. */ // @ApiMember(Description="The resource description.") public var Description:String /** * The resource image url. */ // @ApiMember(Description="The resource image url.") public var imageUrl:Uri required public init(){} } public class HomepageSchedulerFieldResponse : Codable { /** * The field id. */ // @ApiMember(Description="The field id.") public var id:Int /** * If the field should be shown on booking. */ // @ApiMember(Description="If the field should be shown on booking.") public var showOnBooking:Bool /** * If the field should be shown on tooltip. */ // @ApiMember(Description="If the field should be shown on tooltip.") public var showOnTooltip:Bool required public init(){} } public class HomepageSchedulerFieldOptionsResponse : Codable { /** * The field id. */ // @ApiMember(Description="The field id.") public var id:Int /** * The field name. */ // @ApiMember(Description="The field name.") public var name:String /** * The field description. */ // @ApiMember(Description="The field description.") public var Description:String /** * The field sort order when listing. */ // @ApiMember(Description="The field sort order when listing.") public var sortOrder:Int required public init(){} } public class ScheduleViewResponse : Codable { public var id:Int public var name:String required public init(){} }