""" Options: Date: 2026-05-19 09:52:11 Version: 8.22 Tip: To override a DTO option, remove "#" prefix before updating BaseUrl: https://dev-api-booster.richemont.com #GlobalNamespace: #AddServiceStackTypes: True #AddResponseStatus: False #AddImplicitVersion: #AddDescriptionAsComments: True IncludeTypes: ReadEquipmentWarrantyPartner.* #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 ReadEquipmentWarrantyPartnerResponseItem: # @ApiMember(Description="Product name") product_name: Optional[str] = None """ Product name """ # @ApiMember(Description="Product description") product_description: Optional[str] = None """ Product description """ # @ApiMember(Description="Product reference") reference: Optional[str] = None """ Product reference """ # @ApiMember(Description="Product serial number") serial_number: Optional[str] = None """ Product serial number """ # @ApiMember(Description="Quantity") quantity: Optional[float] = None """ Quantity """ # @ApiMember(Description="Status") status: Optional[str] = None """ Status """ # @ApiMember(Description="Return reason") return_reason: Optional[str] = None """ Return reason """ # @ApiMember(Description="Additional notes") additional_notes: Optional[str] = None """ Additional notes """ # @ApiMember(Description="Warranty end date") warranty_end_date: Optional[datetime.datetime] = None """ Warranty end date """ @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class ReadEquipmentWarrantyPartnerResponse: # @ApiMember(Description="Maison") maison: Optional[str] = None """ Maison """ # @ApiMember(Description="Cpo sellout id") cpo_sellout_id: Optional[str] = None """ Cpo sellout id """ # @ApiMember(Description="pos") pos: Optional[str] = None """ pos """ # @ApiMember(Description="Sellout date") sellout_date: Optional[datetime.datetime] = None """ Sellout date """ # @ApiMember(Description="Sellout status") sellout_status: Optional[str] = None """ Sellout status """ # @ApiMember(Description="Sold by") sold_by: Optional[str] = None """ Sold by """ # @ApiMember(Description="Cpo sellout items") read_cpo_sellout_response_items: Optional[List[ReadEquipmentWarrantyPartnerResponseItem]] = None """ Cpo sellout items """ # @Route("/partner/warranty/equipment", "GET") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class ReadEquipmentWarrantyPartner(IReturn[ReadEquipmentWarrantyPartnerResponse]): # @ApiMember(Description="Brand Trigram, e.g. CAR, IWC", IsRequired=true) brand: Optional[str] = None """ Brand Trigram, e.g. CAR, IWC """ # @ApiMember(Description="Richemont POS code, e.g. 102048", IsRequired=true) pos_code: Optional[str] = None """ Richemont POS code, e.g. 102048 """ # @ApiMember(Description="Cpo sellout Id, e.g a0RbW000000qIyXUAU", IsRequired=true) cpo_sellout_id: Optional[str] = None """ Cpo sellout Id, e.g a0RbW000000qIyXUAU """