younger_times
2023-05-06 2a8d65d91258689d2f51448517245b247a08a61b
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
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
//
//  GoogleModel.swift
//  BrokerDriver
//
//  Created by 无故事王国 on 2023/5/6.
//
 
import Foundation
import HandyJSON
 
struct GoogleModel:HandyJSON {
    var plus_code:PlusCode?
    var results:[GoogleResult] = []
    var status:String = ""
}
 
struct GoogleResult:HandyJSON {
    var address_components:[AddressComponent] = []
    var formatted_address:String = ""
    var geometry:Geometry?
    var place_id:String = ""
    var plus_code:PlusCode?
    var types:[String] = []
}
 
struct AddressComponent:HandyJSON {
    var long_name:String = ""
    var short_name:String = ""
    var types:[String] = []
}
 
struct Geometry:HandyJSON {
    var bounds : Bound!
    var location : Northeast!
    var location_type : String = ""
    var viewport : Bound!
}
 
struct Bound:HandyJSON {
    var northeast : Northeast?
    var southwest : Northeast?
}
 
struct Northeast:HandyJSON {
    var lat:CLLocationDegrees = 0
    var lng:CLLocationDegrees = 0
}
 
struct PlusCode:HandyJSON {
    var compound_code : String = ""
    var global_code : String = ""
}
 
struct GooglePOIModel:HandyJSON {
    var html_attributions = [String]()
    var next_page_token = ""
    var results = [GooglePOIResultModel]()
}
 
struct GooglePOIResultModel:HandyJSON{
    var business_status : String = ""
    var formatted_address = ""
    var geometry : Geometry?
    var icon : String = ""
    var icon_background_color : String = ""
    var icon_mask_base_uri : String = ""
    var more_opening_hours : [AnyObject]!
    var name : String = ""
    var photos : [GoogleMapPhoto] = [GoogleMapPhoto]()
    var place_id : String = ""
    var plus_code : PlusCode?
    var rating : Double = 0
    var reference : String = ""
    var scope : String = ""
    var types : [String] = [String]()
    var user_ratings_total : Int = 0
    var vicinity : String = ""
 
}
 
struct GoogleMapPhoto:HandyJSON {
    var height : Int = 0
    var html_attributions = [String]()
    var photo_reference : String = ""
    var width : Int = 0
}
 
struct GoogleRoteModel:HandyJSON {
    var status = ""
    var routes = [GoogleRoteRouteModel]()
    var geocoded_waypoints = [GoogleRoteWaypointModel]()
}
 
struct GoogleRoteWaypointModel:HandyJSON {
    var geocoder_status = ""
    var place_id = ""
    var types = [String]()
}
 
struct GoogleRoteRouteModel:HandyJSON {
    var bounds:Bound?
    var copyrights:String = ""
    var legs = [GoogleRoteRouteLegModel]()
}
struct GoogleRoteRouteLegModel:HandyJSON {
    var distance : GoogleRoteDistanceModel?
    var duration : GoogleRoteDistanceModel?
    var duration_in_traffic : GoogleRoteDistanceModel?
    var end_address : String = ""
    var end_location : Northeast?
    var start_address : String = ""
    var start_location : Northeast?
    var steps  = [GoogleRoteStepModel]()
    var traffic_speed_entry : [String] = []
    var via_waypoint :  [String] = []
}
 
struct GoogleRoteDistanceModel:HandyJSON{
    var text : String = ""
    var value : Int = 0
}
 
struct GoogleRoteStepModel:HandyJSON {
    var distance : GoogleRoteDistanceModel?
    var duration : GoogleRoteDistanceModel?
    var end_location : Northeast?
    var html_instructions : String = ""
    var maneuver : String = ""
    var polyline : GoogleRotePolylineModel?
    var start_location : Northeast?
    var travel_mode : String?
}
 
struct GoogleRotePolylineModel:HandyJSON {
    var points : String!
}
 
 
struct SnappedPointsModel:HandyJSON{
    var snappedPoints = [SnappedPointModel]()
}
 
struct SnappedPointModel:HandyJSON {
    var location:SnappedLocationModel?
    var originalIndex:Int = 0
    var placeId = ""
}
 
struct SnappedLocationModel:HandyJSON {
    var latitude:CLLocationDegrees?
    var longitude:CLLocationDegrees?
}