File size: 1,659 Bytes
df37f6e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
from pydantic import BaseModel


class PassengerDTO(BaseModel):
    CustName: str
    CustMobile: str
    CustEmail: str
    CustDestinationAddress: str


class DropoffDTO(BaseModel):
    office_id: int


class InfoTicketDTO(BaseModel):
    PickUpName: str
    PickUpStreet: str
    OfficePickupId: int
    DropOffName: str
    DropOffStreet: str
    OfficeDropOffId: int
    Dropoff: DropoffDTO
    CarBookingId: int
    DepartureDate: str
    DepartureTime: str
    Kind: str
    WayId: int
    DestCode: str
    DestName: str
    OriginCode: str
    OriginName: str
    Price: int
    RouteId: int
    RouteName: str
    NumOfTicket: int
    SeatIds: list[int]
    SeatNames: list[str]
    Passengers: list[PassengerDTO]
    Channel: str


class TicketBookingDTO(BaseModel):
    CustName: str
    CustMobile: str
    CustEmail: str
    CustDestinationAddress: str
    CustId: str
    PickUpName: str
    PickUpStreet: str
    OfficePickupId: int
    DropOffName: str
    DropOffStreet: str
    OfficeDropOffId: int
    Dropoff: DropoffDTO
    CarBookingId: int
    DepartureDate: str
    DepartureTime: str
    Kind: str
    WayId: int
    DestCode: str
    DestName: str
    OriginCode: str
    OriginName: str
    Price: int
    RouteId: int
    RouteName: str
    NumOfTicket: int
    SeatIds: list[int]
    SeatNames: list[str]
    Passengers: list[PassengerDTO]
    Channel: str
    DeviceId: str | None = None
    EnglishTicket: int
    SeatDiscounts: list[str]  # assuming it's list of strings; adjust as needed
    CustAddress: str
    CustCode: str
    CustHomeAddress: str
    CustMobile2: str
    CustSN: str
    InfoTicket: list[InfoTicketDTO]