-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathJSON.CustomerList.pas
242 lines (201 loc) · 6.7 KB
/
JSON.CustomerList.pas
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
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
unit JSON.CustomerList;
// *************************************************
// Generated By: JsonToDelphiClass - 0.65
// Project link: https://github.com/PKGeorgiev/Delphi-JsonToDelphiClass
// Generated On: 2019-05-22 22:07:06
// *************************************************
// Created By : Petar Georgiev - 2014
// WebSite : http://pgeorgiev.com
// *************************************************
interface
uses
Generics.Collections
, Rest.Json
, REST.JSON.Types
;
type
TPrimaryEmailAddrClass = class
private
FAddress: String;
public
property Address: String read FAddress write FAddress;
function ToJsonString: string;
class function FromJsonString(AJsonString: string): TPrimaryEmailAddrClass;
end;
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;
TCurrencyRefClass = class
private
FName: String;
FValue: String;
public
property name: String read FName write FName;
property value: String read FValue write FValue;
function ToJsonString: string;
class function FromJsonString(AJsonString: string): TCurrencyRefClass;
end;
TCustomerClass = class
private
FActive: Boolean;
FBalance: Extended;
FBalanceWithJobs: Extended;
FBillWithParent: Boolean;
FCurrencyRef: TCurrencyRefClass;
FDisplayName: String;
FFullyQualifiedName: String;
FId: String;
FIsProject: Boolean;
FJob: Boolean;
FMetaData: TMetaDataClass;
FPreferredDeliveryMethod: String;
FPrimaryEmailAddr: TPrimaryEmailAddrClass;
FPrintOnCheckName: String;
FSyncToken: String;
FTaxable: Boolean;
FDomain: String;
FSparse: Boolean;
public
property Active: Boolean read FActive write FActive;
property Balance: Extended read FBalance write FBalance;
property BalanceWithJobs: Extended read FBalanceWithJobs write FBalanceWithJobs;
property BillWithParent: Boolean read FBillWithParent write FBillWithParent;
property CurrencyRef: TCurrencyRefClass read FCurrencyRef write FCurrencyRef;
property DisplayName: String read FDisplayName write FDisplayName;
property FullyQualifiedName: String read FFullyQualifiedName write FFullyQualifiedName;
property Id: String read FId write FId;
property IsProject: Boolean read FIsProject write FIsProject;
property Job: Boolean read FJob write FJob;
property MetaData: TMetaDataClass read FMetaData write FMetaData;
property PreferredDeliveryMethod: String read FPreferredDeliveryMethod write FPreferredDeliveryMethod;
property PrimaryEmailAddr: TPrimaryEmailAddrClass read FPrimaryEmailAddr write FPrimaryEmailAddr;
property PrintOnCheckName: String read FPrintOnCheckName write FPrintOnCheckName;
property SyncToken: String read FSyncToken write FSyncToken;
property Taxable: Boolean read FTaxable write FTaxable;
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): TCustomerClass;
end;
TQueryResponseClass = class
private
FCustomer: TArray<TCustomerClass>;
FMaxResults: Extended;
FStartPosition: Extended;
public
property Customer: TArray<TCustomerClass> read FCustomer write FCustomer;
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;
TCustomerListClass = 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): TCustomerListClass;
end;
implementation
{TPrimaryEmailAddrClass}
function TPrimaryEmailAddrClass.ToJsonString: string;
begin
result := TJson.ObjectToJsonString(self);
end;
class function TPrimaryEmailAddrClass.FromJsonString(AJsonString: string): TPrimaryEmailAddrClass;
begin
result := TJson.JsonToObject<TPrimaryEmailAddrClass>(AJsonString)
end;
{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;
{TCurrencyRefClass}
function TCurrencyRefClass.ToJsonString: string;
begin
result := TJson.ObjectToJsonString(self);
end;
class function TCurrencyRefClass.FromJsonString(AJsonString: string): TCurrencyRefClass;
begin
result := TJson.JsonToObject<TCurrencyRefClass>(AJsonString)
end;
{TCustomerClass}
constructor TCustomerClass.Create;
begin
inherited;
FCurrencyRef := TCurrencyRefClass.Create();
FMetaData := TMetaDataClass.Create();
FPrimaryEmailAddr := TPrimaryEmailAddrClass.Create();
end;
destructor TCustomerClass.Destroy;
begin
FCurrencyRef.free;
FMetaData.free;
FPrimaryEmailAddr.free;
inherited;
end;
function TCustomerClass.ToJsonString: string;
begin
result := TJson.ObjectToJsonString(self);
end;
class function TCustomerClass.FromJsonString(AJsonString: string): TCustomerClass;
begin
result := TJson.JsonToObject<TCustomerClass>(AJsonString)
end;
{TQueryResponseClass}
destructor TQueryResponseClass.Destroy;
var
LCustomerItem: TCustomerClass;
begin
for LCustomerItem in FCustomer do
LCustomerItem.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 TCustomerListClass.Create;
begin
inherited;
FQueryResponse := TQueryResponseClass.Create();
end;
destructor TCustomerListClass.Destroy;
begin
FQueryResponse.free;
inherited;
end;
function TCustomerListClass.ToJsonString: string;
begin
result := TJson.ObjectToJsonString(self);
end;
class function TCustomerListClass.FromJsonString(AJsonString: string): TCustomerListClass;
begin
result := TJson.JsonToObject<TCustomerListClass>(AJsonString)
end;
end.