""" Options: Date: 2026-04-05 18:16:45 Version: 6.110 Tip: To override a DTO option, remove "#" prefix before updating BaseUrl: https://internal.thebunkerbridge.com #GlobalNamespace: #AddServiceStackTypes: True #AddResponseStatus: False #AddImplicitVersion: #AddDescriptionAsComments: True IncludeTypes: SendDealRecap.* #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 DealRecapEnquiryGradesViewModel: id: Optional[int] = None deleted: bool = False product_id: Optional[int] = None version_id: Optional[int] = None grade_id: Optional[int] = None specification_comments: Optional[str] = None volume_from: Optional[int] = None volume_to: Optional[int] = None unit_id: Optional[int] = None volume_unit_id: Optional[int] = None unit_price: Optional[float] = None currency_id: Optional[int] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class GetCurrenciesViewModel: id: int = 0 code: Optional[str] = None description: Optional[str] = None symbol: Optional[str] = None index: int = 0 deleted: bool = False @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class GetDeliveryMethodsViewModel: id: int = 0 name: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class EntityAccountsViewModel: id: int = 0 type: Optional[str] = None name: Optional[str] = None linked_vessel_id: int = 0 @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class GetGradesViewModel: id: int = 0 index: int = 0 name: Optional[str] = None deleted: bool = False @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class GetPortListViewModel: id: int = 0 guid: Optional[str] = None name: Optional[str] = None code: Optional[str] = None latitude: float = 0.0 longitude: float = 0.0 country_id: int = 0 country_name: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class GetProductsViewModel: id: int = 0 index: int = 0 name: Optional[str] = None deleted: bool = False ets_multiplication: float = 0.0 @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class GetUnitsViewModel: id: int = 0 code: Optional[str] = None deleted: bool = False @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class GetVersionsViewModel: id: int = 0 index: int = 0 name: Optional[str] = None deleted: bool = False @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class APISendDealRecapViewModel: enquiry_id: int = 0 enquiry_guid: Optional[str] = None chat_guid: Optional[str] = None imo_number: int = 0 vessel_id: int = 0 vessel_name: Optional[str] = None buyer_account_name: Optional[str] = None date_from: Optional[datetime.datetime] = None date_to: Optional[datetime.datetime] = None port_id: Optional[int] = None delivery_method_id: Optional[int] = None buyer_seller_account_id: Optional[int] = None requested_terms_type: Optional[str] = None credit_term_days: Optional[int] = None recap_comments: Optional[str] = None agent: Optional[str] = None additional_costs: Optional[str] = None from_entity_contact_id: int = 0 document_title: Optional[str] = None recap_can_be_sent: bool = False get_port_list: Optional[List[GetPortListViewModel]] = None get_delivery_methods: Optional[List[GetDeliveryMethodsViewModel]] = None get_products: Optional[List[GetProductsViewModel]] = None get_buyer_seller_accounts: Optional[List[EntityAccountsViewModel]] = None get_versions: Optional[List[GetVersionsViewModel]] = None get_grades: Optional[List[GetGradesViewModel]] = None get_units: Optional[List[GetUnitsViewModel]] = None get_currencies: Optional[List[GetCurrenciesViewModel]] = None deal_recap_enquiry_grades: Optional[List[DealRecapEnquiryGradesViewModel]] = None # @Route("/Send-Deal-Recap", "GET") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class SendDealRecap(IReturn[APISendDealRecapViewModel]): guid: Optional[str] = None from_entity_contact_id: int = 0 chat_guid: Optional[str] = None to_buyer_contact_id: int = 0