/* Options: Date: 2024-06-16 23:01:22 Version: 8.23 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://testapi.bokamera.se //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: CreateResourceTimeException.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } export interface ICompany { CompanyId?: string; } // @DataContract export class ResponseError { // @DataMember(Order=1) public ErrorCode: string; // @DataMember(Order=2) public FieldName: string; // @DataMember(Order=3) public Message: string; // @DataMember(Order=4) public Meta: { [index: string]: string; }; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class ResponseStatus { // @DataMember(Order=1) public ErrorCode: string; // @DataMember(Order=2) public Message: string; // @DataMember(Order=3) public StackTrace: string; // @DataMember(Order=4) public Errors: ResponseError[]; // @DataMember(Order=5) public Meta: { [index: string]: string; }; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export enum CollidingBookingOptions { AddWithoutCancelingCollidingBookings = 1, AddAndCancelCollidingBookings = 2, } export class TimeExceptionReosurceDetails { /** @description Ids of the resources that owns this exception */ // @ApiMember(Description="Ids of the resources that owns this exception") public Id: number; /** @description Name of the resource */ // @ApiMember(Description="Name of the resource") public Name: string; /** @description Description of the resource */ // @ApiMember(Description="Description of the resource") public Description: string; /** @description Color of the resource */ // @ApiMember(Description="Color of the resource") public Color: string; /** @description Image of the resource */ // @ApiMember(Description="Image of the resource") public ImageUrl: string; public ResponseStatus: ResponseStatus; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ExceptionCalendarExportStatus { public CalendarId: string; public ExceptionId: number; public Synced?: boolean; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class DayOfWeekDto { public DayOfWeekId: number; public DotNetDayOfWeekId: number; public DayOfWeek: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ResourceTimeExceptionQueryResponse { /** @description Time exception id */ // @ApiMember(Description="Time exception id") public Id: number; /** @description Time company id */ // @ApiMember(Description="Time company id") public CompanyId: string; /** @description If it's locked for editing for the logged in administrator */ // @ApiMember(Description="If it's locked for editing for the logged in administrator") public Locked: boolean; /** @description Resources that owns this exception */ // @ApiMember(Description="Resources that owns this exception") public ResourceIds: number[]; /** @description Resources that owns this exception */ // @ApiMember(Description="Resources that owns this exception") public Resources: TimeExceptionReosurceDetails[]; /** @description Indicates wheter or not the time exception is recurring */ // @ApiMember(Description="Indicates wheter or not the time exception is recurring") public IsRecurring: boolean; /** @description Time exception starting timestamp */ // @ApiMember(Description="Time exception starting timestamp") public From: string; /** @description Time exception ending timestamp */ // @ApiMember(Description="Time exception ending timestamp") public To: string; /** @description If recurring then this value indicates the time of day when the time exception begins */ // @ApiMember(Description="If recurring then this value indicates the time of day when the time exception begins") public FromTime: string; /** @description If recurring then this value indicates the time of day when the time exception ends */ // @ApiMember(Description="If recurring then this value indicates the time of day when the time exception ends") public ToTime: string; /** @description The reason of the time exception, example: Vacation, doctors appointment, ... */ // @ApiMember(Description="The reason of the time exception, example: Vacation, doctors appointment, ...") public ReasonText: string; /** @description The reason of the time exception that could be public to customers, example: Vacation, Closed, Sick leave, ... */ // @ApiMember(Description="The reason of the time exception that could be public to customers, example: Vacation, Closed, Sick leave, ...") public ReasonTextPublic: string; /** @description What hexadecimal color code the exception should have in the scheduler */ // @ApiMember(Description="What hexadecimal color code the exception should have in the scheduler") public Color: string; /** @description If the time exception should block the time in the scheduler so it's not avaialable to book */ // @ApiMember(Description="If the time exception should block the time in the scheduler so it's not avaialable to book") public BlockTime: boolean; /** @description If the ReasonText should only be visible to conncted resources. If false, all resources will be able to see it */ // @ApiMember(Description="If the ReasonText should only be visible to conncted resources. If false, all resources will be able to see it") public Private: boolean; /** @description The status for export to calendars like Gcal */ // @ApiMember(Description="The status for export to calendars like Gcal") public CalendarExportStatus: ExceptionCalendarExportStatus; /** @description If recurring, an array indicating which days of the week the exception recures on where 1 = Monday .. 7 = Sunday. When recurring then the time portion of the Fields From and To indicates the time of day the recurrence occurs */ // @ApiMember(Description="If recurring, an array indicating which days of the week the exception recures on where 1 = Monday .. 7 = Sunday. When recurring then the time portion of the Fields From and To indicates the time of day the recurrence occurs") public DaysOfWeek: DayOfWeekDto[]; /** @description The datetime the exception was created */ // @ApiMember(Description="The datetime the exception was created") public Created: string; public ResponseStatus: ResponseStatus; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @Route("/timeexceptions", "POST") // @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401) // @ApiResponse(Description="You have too low privilegies to call this service", StatusCode=403) // @ApiResponse(Description="Bookings exists that needs to be unbooked before creating this time exceptions, use the /timeexceptions/collidingevents to find which bookings and use the booking service to unbook them", StatusCode=409) // @ValidateRequest(Validator="IsAuthenticated") export class CreateResourceTimeException implements IReturn, ICompany { /** @description 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 CompanyId?: string; /** @description Time exception starting datestamp, only the date of day part is used of this value */ // @ApiMember(Description="Time exception starting datestamp, only the date of day part is used of this value", IsRequired=true) public From: string; /** @description Time exception ending datestamp, only the date of day part is used of this value */ // @ApiMember(Description="Time exception ending datestamp, only the date of day part is used of this value", IsRequired=true) public To: string; /** @description Resource id of the resource that owns this exception */ // @ApiMember(Description="Resource id of the resource that owns this exception", IsRequired=true) public ResourceIds: number[]; /** @description This value indicates the time of day when the time exception begins. Example: 10:00. If Recurring this will be the startime for each recurring day. */ // @ApiMember(Description="This value indicates the time of day when the time exception begins. Example: 10:00. If Recurring this will be the startime for each recurring day.") public FromTime: string; /** @description This value indicates the time of day when the time exception ends. Example: 12:00. If Recurring this will be the endtime for each recurring day. */ // @ApiMember(Description="This value indicates the time of day when the time exception ends. Example: 12:00. If Recurring this will be the endtime for each recurring day.") public ToTime: string; /** @description A comma separated list of which days this day exception belongs to, 1 = Monday .. 7 = Sunday */ // @ApiMember(Description="A comma separated list of which days this day exception belongs to, 1 = Monday .. 7 = Sunday") public DaysOfWeek: number[]; /** @description The reason of the time exception, example: Vacation, doctors appointment, ... */ // @ApiMember(Description="The reason of the time exception, example: Vacation, doctors appointment, ...", IsRequired=true) public ReasonText: string; /** @description The reason of the time exception that could be public to customers, example: Vacation, Closed, Sick leave, ... */ // @ApiMember(Description="The reason of the time exception that could be public to customers, example: Vacation, Closed, Sick leave, ...") public ReasonTextPublic: string; /** @description What hexadecimal color code the exception should have in the scheduler */ // @ApiMember(Description="What hexadecimal color code the exception should have in the scheduler") public Color: string; /** @description If the time exception should block the time in the scheduler so it's not avaialable to book */ // @ApiMember(Description="If the time exception should block the time in the scheduler so it's not avaialable to book") public BlockTime: boolean; /** @description If the ReasonText should only be visible to conncted resources. If false, all resources will be able to see it */ // @ApiMember(Description="If the ReasonText should only be visible to conncted resources. If false, all resources will be able to see it") public Private: boolean; /** @description By default sets to 1, which is to add time exception without canceling colliding bookings */ // @ApiMember(Description="By default sets to 1, which is to add time exception without canceling colliding bookings") public CollidingBookingOptions: CollidingBookingOptions; /** @description If this equals true it will it add the time exception with the option you have selected in CollidingBookingOption. Default is to cancel all colliding bookings. */ // @ApiMember(Description="If this equals true it will it add the time exception with the option you have selected in CollidingBookingOption. Default is to cancel all colliding bookings.") public Force: boolean; /** @description When Force=true and colliding bookings exsists, this message is the message that are sent to the users when canceling their bookings. */ // @ApiMember(Description="When Force=true and colliding bookings exsists, this message is the message that are sent to the users when canceling their bookings.") public CancelMessage: string; /** @description When Force=true and colliding bookings exsists, send cancelmessage as SMS Confirmation */ // @ApiMember(Description="When Force=true and colliding bookings exsists, send cancelmessage as SMS Confirmation") public SendSmsConfirmation?: boolean; /** @description When Force=true and colliding bookings exsists, send cancelmessage as Email Confirmation */ // @ApiMember(Description="When Force=true and colliding bookings exsists, send cancelmessage as Email Confirmation") public SendEmailConfirmation?: boolean; public constructor(init?: Partial) { (Object as any).assign(this, init); } public getTypeName() { return 'CreateResourceTimeException'; } public getMethod() { return 'POST'; } public createResponse() { return new ResourceTimeExceptionQueryResponse(); } }