""" Options: Date: 2025-05-05 17:23:04 Version: 8.61 Tip: To override a DTO option, remove "#" prefix before updating BaseUrl: https://prod-api-agency-orch-mb-dhc.rapp-customers.co.uk #GlobalNamespace: #AddServiceStackTypes: True #AddResponseStatus: False #AddImplicitVersion: #AddDescriptionAsComments: True IncludeTypes: UpdateBackOrderRequest.* #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 @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class JsonVersion(IJsonVersion): version: int = 0 @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class CriteriaModel: description: Optional[str] = None id: int = 0 @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class CriteriaDifference: model: bool = False transmission: bool = False fuel: bool = False upholstery: bool = False equipment: bool = False line: bool = False body_style: bool = False colour_group: bool = False packages: bool = False engine: bool = False additional_information: bool = False url_referrer: bool = False preferred_delivery_date: bool = False is_smart: bool = False is_specialised: bool = False @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class CriteriaBase(JsonVersion): transmission: List[str] = field(default_factory=list) fuel: List[str] = field(default_factory=list) upholstery: List[str] = field(default_factory=list) equipment: List[str] = field(default_factory=list) line: List[str] = field(default_factory=list) body_style: List[str] = field(default_factory=list) colour_group: List[str] = field(default_factory=list) packages: List[str] = field(default_factory=list) model: List[CriteriaModel] = field(default_factory=list) url_referrer: Optional[str] = None preferred_delivery_date: Optional[str] = None # @ApiMember(ExcludeInSchema=true) is_new_model: bool = False # @ApiMember(ExcludeInSchema=true) is_smart: bool = False # @ApiMember(ExcludeInSchema=true) is_specialised: bool = False # @ApiMember(ExcludeInSchema=true) criteria_difference: Optional[CriteriaDifference] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class V2EngineCriteria: badge: Optional[str] = None brand: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class V2Criteria(CriteriaBase): engine: List[V2EngineCriteria] = field(default_factory=list) class IJsonVersion: version: int = 0 @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class UpdateBackOrderResponse: pass # @Route("/v1/backorder/{Guid}", "PUT") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class UpdateBackOrderRequest(IReturn[UpdateBackOrderResponse], IPut): guid: Optional[str] = None agent_criteria: Optional[V2Criteria] = None additional_information: Optional[str] = None config_code: Optional[str] = None motability_pricing_id: Optional[int] = None assistance_provider_id: Optional[int] = None assistance_detail: Optional[str] = None is_c_o_p_converter: bool = False configurator_code: Optional[str] = None is_one_admin_update: bool = False