-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathJSON.VendorList.pas
More file actions
176 lines (145 loc) · 4.49 KB
/
JSON.VendorList.pas
File metadata and controls
176 lines (145 loc) · 4.49 KB
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
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
unit JSON.VendorList;
// *************************************************
// Generated By: JsonToDelphiClass - 0.65
// Project link: https://github.com/PKGeorgiev/Delphi-JsonToDelphiClass
// Generated On: 2019-05-22 19:53:00
// *************************************************
// Created By : Petar Georgiev - 2014
// WebSite : http://pgeorgiev.com
// *************************************************
interface
uses
Generics.Collections
, Rest.Json
, REST.JSON.Types
;
type
TMetaDataClass = class
private
FCreateTime: String;
FLastUpdatedTime: String;
public
property CreateTime: String read FCreateTime write FCreateTime;
property LastUpdatedTime: String read FLastUpdatedTime write FLastUpdatedTime;
function ToJsonString: string;
class function FromJsonString(AJsonString: string): TMetaDataClass;
end;
TVendorClass = class
private
FActive: Boolean;
FBalance: Extended;
FDisplayName: String;
FId: String;
FMetaData: TMetaDataClass;
FPrintOnCheckName: String;
FSyncToken: String;
FVendor1099: Boolean;
FDomain: String;
FSparse: Boolean;
public
property Active: Boolean read FActive write FActive;
property Balance: Extended read FBalance write FBalance;
property DisplayName: String read FDisplayName write FDisplayName;
property Id: String read FId write FId;
property MetaData: TMetaDataClass read FMetaData write FMetaData;
property PrintOnCheckName: String read FPrintOnCheckName write FPrintOnCheckName;
property SyncToken: String read FSyncToken write FSyncToken;
property Vendor1099: Boolean read FVendor1099 write FVendor1099;
property domain: String read FDomain write FDomain;
property sparse: Boolean read FSparse write FSparse;
constructor Create;
destructor Destroy; override;
function ToJsonString: string;
class function FromJsonString(AJsonString: string): TVendorClass;
end;
TQueryResponseClass = class
private
FVendor: TArray<TVendorClass>;
FMaxResults: Extended;
FStartPosition: Extended;
public
property Vendor: TArray<TVendorClass> read FVendor write FVendor;
property maxResults: Extended read FMaxResults write FMaxResults;
property startPosition: Extended read FStartPosition write FStartPosition;
destructor Destroy; override;
function ToJsonString: string;
class function FromJsonString(AJsonString: string): TQueryResponseClass;
end;
TJSONVendorListClass = class
private
FQueryResponse: TQueryResponseClass;
FTime: String;
public
property QueryResponse: TQueryResponseClass read FQueryResponse write FQueryResponse;
property time: String read FTime write FTime;
constructor Create;
destructor Destroy; override;
function ToJsonString: string;
class function FromJsonString(AJsonString: string): TJSONVendorListClass;
end;
implementation
{TMetaDataClass}
function TMetaDataClass.ToJsonString: string;
begin
result := TJson.ObjectToJsonString(self);
end;
class function TMetaDataClass.FromJsonString(AJsonString: string): TMetaDataClass;
begin
result := TJson.JsonToObject<TMetaDataClass>(AJsonString)
end;
{TVendorClass}
constructor TVendorClass.Create;
begin
inherited;
FMetaData := TMetaDataClass.Create;
end;
destructor TVendorClass.Destroy;
begin
FMetaData.free;
inherited;
end;
function TVendorClass.ToJsonString: string;
begin
result := TJson.ObjectToJsonString(self);
end;
class function TVendorClass.FromJsonString(AJsonString: string): TVendorClass;
begin
result := TJson.JsonToObject<TVendorClass>(AJsonString)
end;
{TQueryResponseClass}
destructor TQueryResponseClass.Destroy;
var
LVendorItem: TVendorClass;
begin
for LVendorItem in FVendor do
LVendorItem.free;
inherited;
end;
function TQueryResponseClass.ToJsonString: string;
begin
result := TJson.ObjectToJsonString(self);
end;
class function TQueryResponseClass.FromJsonString(AJsonString: string): TQueryResponseClass;
begin
result := TJson.JsonToObject<TQueryResponseClass>(AJsonString)
end;
{TRootClass}
constructor TJSONVendorListClass.Create;
begin
inherited;
FQueryResponse := TQueryResponseClass.Create;
end;
destructor TJSONVendorListClass.Destroy;
begin
FQueryResponse.free;
inherited;
end;
function TJSONVendorListClass.ToJsonString: string;
begin
result := TJson.ObjectToJsonString(self);
end;
class function TJSONVendorListClass.FromJsonString(AJsonString: string): TJSONVendorListClass;
begin
result := TJson.JsonToObject<TJSONVendorListClass>(AJsonString)
end;
end.