""" Options: Date: 2024-11-21 13:17:01 Version: 8.23 Tip: To override a DTO option, remove "#" prefix before updating BaseUrl: https://api.bokamera.se #GlobalNamespace: #AddServiceStackTypes: True #AddResponseStatus: False #AddImplicitVersion: #AddDescriptionAsComments: True IncludeTypes: DeleteResourceTimeException.* #ExcludeTypes: #DefaultImports: datetime,decimal,marshmallow.fields:*,servicestack:*,typing:*,dataclasses:dataclass/field,dataclasses_json:dataclass_json/LetterCase/Undefined/config,enum:Enum/IntEnum #DataClass: #DataClassJson: """ import datetime import decimal from marshmallow.fields import * from servicestack import * from typing import * from dataclasses import dataclass, field from dataclasses_json import dataclass_json, LetterCase, Undefined, config from enum import Enum, IntEnum class ICompany: company_id: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class TimeExceptionReosurceDetails: # @ApiMember(Description="Ids of the resources that owns this exception") id: int = 0 """ Ids of the resources that owns this exception """ # @ApiMember(Description="Name of the resource") name: Optional[str] = None """ Name of the resource """ # @ApiMember(Description="Description of the resource") description: Optional[str] = None """ Description of the resource """ # @ApiMember(Description="Color of the resource") color: Optional[str] = None """ Color of the resource """ # @ApiMember(Description="Image of the resource") image_url: Optional[str] = None """ Image of the resource """ response_status: Optional[ResponseStatus] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class ExceptionCalendarExportStatus: calendar_id: Optional[str] = None exception_id: int = 0 synced: Optional[bool] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class DayOfWeekDto: day_of_week_id: int = 0 dot_net_day_of_week_id: int = 0 day_of_week: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class ResourceTimeExceptionQueryResponse: # @ApiMember(Description="Time exception id") id: int = 0 """ Time exception id """ # @ApiMember(Description="Time company id") company_id: Optional[str] = None """ Time company id """ # @ApiMember(Description="If it's locked for editing for the logged in administrator") locked: bool = False """ If it's locked for editing for the logged in administrator """ # @ApiMember(Description="Resources that owns this exception") resource_ids: Optional[List[int]] = None """ Resources that owns this exception """ # @ApiMember(Description="Resources that owns this exception") resources: Optional[List[TimeExceptionReosurceDetails]] = None """ Resources that owns this exception """ # @ApiMember(Description="Indicates wheter or not the time exception is recurring") is_recurring: bool = False """ Indicates wheter or not the time exception is recurring """ # @ApiMember(Description="Time exception starting timestamp") from_: datetime.datetime = field(metadata=config(field_name='from'), default=datetime.datetime(1, 1, 1)) """ Time exception starting timestamp """ # @ApiMember(Description="Time exception ending timestamp") to: datetime.datetime = datetime.datetime(1, 1, 1) """ Time exception ending timestamp """ # @ApiMember(Description="If recurring then this value indicates the time of day when the time exception begins") from_time: datetime.timedelta = datetime.timedelta() """ 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 ends") to_time: datetime.timedelta = datetime.timedelta() """ If recurring then this value indicates the time of day when the time exception ends """ # @ApiMember(Description="The reason of the time exception, example: Vacation, doctors appointment, ...") reason_text: Optional[str] = None """ The reason of the time exception, example: Vacation, doctors appointment, ... """ # @ApiMember(Description="The reason of the time exception that could be public to customers, example: Vacation, Closed, Sick leave, ...") reason_text_public: Optional[str] = None """ The reason of the time exception that could be public to customers, example: Vacation, Closed, Sick leave, ... """ # @ApiMember(Description="What hexadecimal color code the exception should have in the scheduler") color: Optional[str] = None """ What hexadecimal color code the exception should have in the scheduler """ # @ApiMember(Description="If the time exception should block the time in the scheduler so it's not avaialable to book") block_time: bool = False """ If the time exception should block the time in the scheduler so it's not avaialable to book """ # @ApiMember(Description="If the ReasonText should only be visible to conncted resources. If false, all resources will be able to see it") private: bool = False """ If the ReasonText should only be visible to conncted resources. If false, all resources will be able to see it """ # @ApiMember(Description="The status for export to calendars like Gcal") calendar_export_status: Optional[ExceptionCalendarExportStatus] = None """ The status for export to calendars like Gcal """ # @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") days_of_week: Optional[List[DayOfWeekDto]] = None """ 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="The datetime the exception was created") created: datetime.datetime = datetime.datetime(1, 1, 1) """ The datetime the exception was created """ response_status: Optional[ResponseStatus] = None # @Route("/timeexceptions/{Id}", "DELETE") # @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401) # @ApiResponse(Description="You have too low privilegies to call this service", StatusCode=403) # @ValidateRequest(Validator="IsAuthenticated") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class DeleteResourceTimeException(IReturn[ResourceTimeExceptionQueryResponse], ICompany): # @ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.") company_id: Optional[str] = None """ The company id, if empty will use the company id for the user you are logged in with. """ # @ApiMember(Description="Time exception id to be deleted") id: int = 0 """ Time exception id to be deleted """