| GET | /Enquiries/History |
|---|
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 EnquiriesHistory:
just_my_enquiries: bool = False
can_view_company_enquiries: bool = False
vessel_id: Optional[int] = None
port_of_supply_id: Optional[int] = None
closed_deals_only: Optional[bool] = None
supplier_id: Optional[int] = None
date_from: Optional[datetime.datetime] = None
date_to: Optional[datetime.datetime] = None
status: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class GetFilterValuesForContactEntityViewModel:
id: int = 0
type: Optional[str] = None
text: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class GetEnquiryHistoryForContactFiltersViewModel:
just_my_enquiries: bool = False
can_view_company_enquiries: bool = False
vessel_id: Optional[int] = None
port_of_supply_id: Optional[int] = None
closed_deals_only: Optional[bool] = None
supplier_id: Optional[int] = None
date_from: Optional[datetime.datetime] = None
date_to: Optional[datetime.datetime] = None
status: Optional[str] = None
filters: Optional[List[GetFilterValuesForContactEntityViewModel]] = None
vessels_list: Optional[List[SelectListItem]] = None
port_of_supplies_list: Optional[List[SelectListItem]] = None
enquiries_with_list: Optional[List[SelectListItem]] = None
enquiry_statuses_list: Optional[List[SelectListItem]] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class GetLiveEnquiriesForContactAndEntityBeingWorkedOnByListViewModel:
handling_enquiry_name: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class GetEnquiryHistoryForContactViewModel:
enquiry_id: int = 0
enquiry_guid: Optional[str] = None
flag_round: Optional[bytes] = None
country_name: Optional[str] = None
port_name: Optional[str] = None
latitude: float = 0.0
longitude: float = 0.0
vessel_name: Optional[str] = None
imo_number: int = 0
delivery_date: Optional[str] = None
recap_accepted: bool = False
recap_from_company: Optional[str] = None
recap_from_name: Optional[str] = None
recap_from_entity_contact_guid: Optional[str] = None
recap_to_company: Optional[str] = None
recap_to_name: Optional[str] = None
recap_to_entity_contact_guid: Optional[str] = None
deal_with_company_and_contact: Optional[str] = None
recap_guid: Optional[str] = None
recap_from_entity_contact_image_guid: Optional[str] = None
recap_to_entity_contact_image_guid: Optional[str] = None
worked_on_by: Optional[List[GetLiveEnquiriesForContactAndEntityBeingWorkedOnByListViewModel]] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class EnquiryHistoryViewModel:
get_enquiry_history_for_contact_filters: Optional[GetEnquiryHistoryForContactFiltersViewModel] = None
get_enquiry_history_for_contact: Optional[List[GetEnquiryHistoryForContactViewModel]] = None
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /Enquiries/History HTTP/1.1 Host: internal.thebunkerbridge.com Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
GetEnquiryHistoryForContactFilters:
{
JustMyEnquiries: False,
CanViewCompanyEnquiries: False,
VesselId: 0,
PortOfSupplyId: 0,
ClosedDealsOnly: False,
SupplierId: 0,
DateFrom: 0001-01-01,
DateTo: 0001-01-01,
Status: String,
Filters:
[
{
Id: 0,
Type: String,
Text: String
}
],
VesselsList:
[
{
Disabled: False,
Group:
{
Disabled: False,
Name: String
},
Selected: False,
Text: String,
Value: String
}
],
PortOfSuppliesList:
[
{
Disabled: False,
Group:
{
Disabled: False,
Name: String
},
Selected: False,
Text: String,
Value: String
}
],
EnquiriesWithList:
[
{
Disabled: False,
Group:
{
Disabled: False,
Name: String
},
Selected: False,
Text: String,
Value: String
}
],
EnquiryStatusesList:
[
{
Disabled: False,
Group:
{
Disabled: False,
Name: String
},
Selected: False,
Text: String,
Value: String
}
]
},
GetEnquiryHistoryForContact:
[
{
EnquiryId: 0,
EnquiryGuid: 00000000000000000000000000000000,
FlagRound: AA==,
CountryName: String,
PortName: String,
Latitude: 0,
Longitude: 0,
VesselName: String,
IMONumber: 0,
DeliveryDate: String,
RecapAccepted: False,
RecapFromCompany: String,
RecapFromName: String,
RecapFromEntityContactGuid: 00000000000000000000000000000000,
RecapToCompany: String,
RecapToName: String,
RecapToEntityContactGuid: 00000000000000000000000000000000,
DealWithCompanyAndContact: String,
RecapGuid: 00000000000000000000000000000000,
RecapFromEntityContactImageGuid: 00000000000000000000000000000000,
RecapToEntityContactImageGuid: 00000000000000000000000000000000,
WorkedOnBy:
[
{
HandlingEnquiryName: String
}
]
}
]
}