| GET | /Send-Deal-Recap |
|---|
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 SendDealRecap:
guid: Optional[str] = None
from_entity_contact_id: int = 0
chat_guid: Optional[str] = None
to_buyer_contact_id: int = 0
@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 GetDeliveryMethodsViewModel:
id: int = 0
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 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 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 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 GetUnitsViewModel:
id: int = 0
code: Optional[str] = None
deleted: bool = False
@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 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 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
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /Send-Deal-Recap HTTP/1.1 Host: internal.thebunkerbridge.com Accept: application/json
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length
{"EnquiryId":0,"EnquiryGuid":"00000000000000000000000000000000","ChatGuid":"00000000000000000000000000000000","IMONumber":0,"VesselId":0,"VesselName":"String","BuyerAccountName":"String","DateFrom":"0001-01-01T00:00:00.0000000","DateTo":"0001-01-01T00:00:00.0000000","PortId":0,"DeliveryMethodId":0,"BuyerSellerAccountId":0,"RequestedTermsType":"String","CreditTermDays":0,"RecapComments":"String","Agent":"String","AdditionalCosts":"String","FromEntityContactId":0,"DocumentTitle":"String","RecapCanBeSent":false,"GetPortList":[{"Id":0,"Guid":"00000000000000000000000000000000","Name":"String","Code":"String","Latitude":0,"Longitude":0,"CountryId":0,"CountryName":"String"}],"GetDeliveryMethods":[{"Id":0,"Name":"String"}],"GetProducts":[{"Id":0,"Index":0,"Name":"String","Deleted":false,"ETSMultiplication":0}],"GetBuyerSellerAccounts":[{"Id":0,"Type":"String","Name":"String","LinkedVesselId":0}],"GetVersions":[{"Id":0,"Index":0,"Name":"String","Deleted":false}],"GetGrades":[{"Id":0,"Index":0,"Name":"String","Deleted":false}],"GetUnits":[{"Id":0,"Code":"String","Deleted":false}],"GetCurrencies":[{"Id":0,"Code":"String","Description":"String","Symbol":"String","Index":0,"Deleted":false}],"DealRecapEnquiryGrades":[{"Id":0,"Deleted":false,"ProductId":0,"VersionId":0,"GradeId":0,"SpecificationComments":"String","VolumeFrom":0,"VolumeTo":0,"UnitId":0,"VolumeUnitId":0,"UnitPrice":0,"CurrencyId":0}]}