1
0

Lidoapi_list.dart 34 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085
  1. class LidoapiList {
  2. LidoapiList({
  3. required this.briefingId,
  4. required this.leg,
  5. required this.lastGenerated,
  6. required this.readinessTimeStamp,
  7. required this.lidoBriefingData,
  8. required this.latestFuelOrder,
  9. required this.status,
  10. required this.previousStatus,
  11. required this.interfaceHistory,
  12. required this.bpRestrictions,
  13. required this.briefingPackageOrigin,
  14. required this.briefingPackageConfirmationHistory,
  15. required this.bplinkDecorator,
  16. required this.links,
  17. });
  18. final String? briefingId;
  19. static const String briefingIdKey = "briefingId";
  20. final Leg? leg;
  21. static const String legKey = "leg";
  22. final int? lastGenerated;
  23. static const String lastGeneratedKey = "lastGenerated";
  24. final int? readinessTimeStamp;
  25. static const String readinessTimeStampKey = "readinessTimeStamp";
  26. final LidoBriefingData? lidoBriefingData;
  27. static const String lidoBriefingDataKey = "lidoBriefingData";
  28. final dynamic latestFuelOrder;
  29. static const String latestFuelOrderKey = "latestFuelOrder";
  30. final String? status;
  31. static const String statusKey = "status";
  32. final String? previousStatus;
  33. static const String previousStatusKey = "previousStatus";
  34. final InterfaceHistory? interfaceHistory;
  35. static const String interfaceHistoryKey = "interfaceHistory";
  36. final List<dynamic> bpRestrictions;
  37. static const String bpRestrictionsKey = "bpRestrictions";
  38. final String? briefingPackageOrigin;
  39. static const String briefingPackageOriginKey = "briefingPackageOrigin";
  40. final List<BriefingPackageConfirmationHistory>
  41. briefingPackageConfirmationHistory;
  42. static const String briefingPackageConfirmationHistoryKey =
  43. "briefingPackageConfirmationHistory";
  44. final BplinkDecorator? bplinkDecorator;
  45. static const String bplinkDecoratorKey = "bplinkDecorator";
  46. final Links? links;
  47. static const String linksKey = "_links";
  48. LidoapiList copyWith({
  49. String? briefingId,
  50. Leg? leg,
  51. int? lastGenerated,
  52. int? readinessTimeStamp,
  53. LidoBriefingData? lidoBriefingData,
  54. dynamic latestFuelOrder,
  55. String? status,
  56. String? previousStatus,
  57. InterfaceHistory? interfaceHistory,
  58. List<dynamic>? bpRestrictions,
  59. String? briefingPackageOrigin,
  60. List<BriefingPackageConfirmationHistory>?
  61. briefingPackageConfirmationHistory,
  62. BplinkDecorator? bplinkDecorator,
  63. Links? links,
  64. }) {
  65. return LidoapiList(
  66. briefingId: briefingId ?? this.briefingId,
  67. leg: leg ?? this.leg,
  68. lastGenerated: lastGenerated ?? this.lastGenerated,
  69. readinessTimeStamp: readinessTimeStamp ?? this.readinessTimeStamp,
  70. lidoBriefingData: lidoBriefingData ?? this.lidoBriefingData,
  71. latestFuelOrder: latestFuelOrder ?? this.latestFuelOrder,
  72. status: status ?? this.status,
  73. previousStatus: previousStatus ?? this.previousStatus,
  74. interfaceHistory: interfaceHistory ?? this.interfaceHistory,
  75. bpRestrictions: bpRestrictions ?? this.bpRestrictions,
  76. briefingPackageOrigin:
  77. briefingPackageOrigin ?? this.briefingPackageOrigin,
  78. briefingPackageConfirmationHistory: briefingPackageConfirmationHistory ??
  79. this.briefingPackageConfirmationHistory,
  80. bplinkDecorator: bplinkDecorator ?? this.bplinkDecorator,
  81. links: links ?? this.links,
  82. );
  83. }
  84. factory LidoapiList.fromJson(Map<String, dynamic> json) {
  85. return LidoapiList(
  86. briefingId: json["briefingId"],
  87. leg: json["leg"] == null ? null : Leg.fromJson(json["leg"]),
  88. lastGenerated: json["lastGenerated"],
  89. readinessTimeStamp: json["readinessTimeStamp"],
  90. lidoBriefingData: json["lidoBriefingData"] == null
  91. ? null
  92. : LidoBriefingData.fromJson(json["lidoBriefingData"]),
  93. latestFuelOrder: json["latestFuelOrder"],
  94. status: json["status"],
  95. previousStatus: json["previousStatus"],
  96. interfaceHistory: json["interfaceHistory"] == null
  97. ? null
  98. : InterfaceHistory.fromJson(json["interfaceHistory"]),
  99. bpRestrictions: json["bpRestrictions"] == null
  100. ? []
  101. : List<dynamic>.from(json["bpRestrictions"]!.map((x) => x)),
  102. briefingPackageOrigin: json["briefingPackageOrigin"],
  103. briefingPackageConfirmationHistory:
  104. json["briefingPackageConfirmationHistory"] == null
  105. ? []
  106. : List<BriefingPackageConfirmationHistory>.from(
  107. json["briefingPackageConfirmationHistory"]!.map(
  108. (x) => BriefingPackageConfirmationHistory.fromJson(x))),
  109. bplinkDecorator: json["bplinkDecorator"] == null
  110. ? null
  111. : BplinkDecorator.fromJson(json["bplinkDecorator"]),
  112. links: json["_links"] == null ? null : Links.fromJson(json["_links"]),
  113. );
  114. }
  115. Map<String, dynamic> toJson() => {
  116. "briefingId": briefingId,
  117. "leg": leg?.toJson(),
  118. "lastGenerated": lastGenerated,
  119. "readinessTimeStamp": readinessTimeStamp,
  120. "lidoBriefingData": lidoBriefingData?.toJson(),
  121. "latestFuelOrder": latestFuelOrder,
  122. "status": status,
  123. "previousStatus": previousStatus,
  124. "interfaceHistory": interfaceHistory?.toJson(),
  125. "bpRestrictions": bpRestrictions.map((x) => x).toList(),
  126. "briefingPackageOrigin": briefingPackageOrigin,
  127. "briefingPackageConfirmationHistory":
  128. briefingPackageConfirmationHistory.map((x) => x.toJson()).toList(),
  129. "bplinkDecorator": bplinkDecorator?.toJson(),
  130. "_links": links?.toJson(),
  131. };
  132. @override
  133. String toString() {
  134. return "$briefingId, $leg, $lastGenerated, $readinessTimeStamp, $lidoBriefingData, $latestFuelOrder, $status, $previousStatus, $interfaceHistory, $bpRestrictions, $briefingPackageOrigin, $briefingPackageConfirmationHistory, $bplinkDecorator, $links, ";
  135. }
  136. }
  137. class BplinkDecorator {
  138. BplinkDecorator({
  139. required this.link,
  140. required this.pathParams,
  141. required this.queryParams,
  142. });
  143. final String? link;
  144. static const String linkKey = "link";
  145. final List<String> pathParams;
  146. static const String pathParamsKey = "pathParams";
  147. final QueryParams? queryParams;
  148. static const String queryParamsKey = "queryParams";
  149. BplinkDecorator copyWith({
  150. String? link,
  151. List<String>? pathParams,
  152. QueryParams? queryParams,
  153. }) {
  154. return BplinkDecorator(
  155. link: link ?? this.link,
  156. pathParams: pathParams ?? this.pathParams,
  157. queryParams: queryParams ?? this.queryParams,
  158. );
  159. }
  160. factory BplinkDecorator.fromJson(Map<String, dynamic> json) {
  161. return BplinkDecorator(
  162. link: json["link"],
  163. pathParams: json["pathParams"] == null
  164. ? []
  165. : List<String>.from(json["pathParams"]!.map((x) => x)),
  166. queryParams: json["queryParams"] == null
  167. ? null
  168. : QueryParams.fromJson(json["queryParams"]),
  169. );
  170. }
  171. Map<String, dynamic> toJson() => {
  172. "link": link,
  173. "pathParams": pathParams.map((x) => x).toList(),
  174. "queryParams": queryParams?.toJson(),
  175. };
  176. @override
  177. String toString() {
  178. return "$link, $pathParams, $queryParams, ";
  179. }
  180. }
  181. class QueryParams {
  182. QueryParams({required this.json});
  183. final Map<String, dynamic> json;
  184. factory QueryParams.fromJson(Map<String, dynamic> json) {
  185. return QueryParams(json: json);
  186. }
  187. Map<String, dynamic> toJson() => {};
  188. @override
  189. String toString() {
  190. return "";
  191. }
  192. }
  193. class BriefingPackageConfirmationHistory {
  194. BriefingPackageConfirmationHistory({
  195. required this.confirmedBy,
  196. required this.creationTime,
  197. });
  198. final String? confirmedBy;
  199. static const String confirmedByKey = "confirmedBy";
  200. final int? creationTime;
  201. static const String creationTimeKey = "creationTime";
  202. BriefingPackageConfirmationHistory copyWith({
  203. String? confirmedBy,
  204. int? creationTime,
  205. }) {
  206. return BriefingPackageConfirmationHistory(
  207. confirmedBy: confirmedBy ?? this.confirmedBy,
  208. creationTime: creationTime ?? this.creationTime,
  209. );
  210. }
  211. factory BriefingPackageConfirmationHistory.fromJson(
  212. Map<String, dynamic> json) {
  213. return BriefingPackageConfirmationHistory(
  214. confirmedBy: json["confirmedBy"],
  215. creationTime: json["creationTime"],
  216. );
  217. }
  218. Map<String, dynamic> toJson() => {
  219. "confirmedBy": confirmedBy,
  220. "creationTime": creationTime,
  221. };
  222. @override
  223. String toString() {
  224. return "$confirmedBy, $creationTime, ";
  225. }
  226. }
  227. class InterfaceHistory {
  228. InterfaceHistory({
  229. required this.interfaceTimestamp,
  230. });
  231. final int? interfaceTimestamp;
  232. static const String interfaceTimestampKey = "interfaceTimestamp";
  233. InterfaceHistory copyWith({
  234. int? interfaceTimestamp,
  235. }) {
  236. return InterfaceHistory(
  237. interfaceTimestamp: interfaceTimestamp ?? this.interfaceTimestamp,
  238. );
  239. }
  240. factory InterfaceHistory.fromJson(Map<String, dynamic> json) {
  241. return InterfaceHistory(
  242. interfaceTimestamp: json["interfaceTimestamp"],
  243. );
  244. }
  245. Map<String, dynamic> toJson() => {
  246. "interfaceTimestamp": interfaceTimestamp,
  247. };
  248. @override
  249. String toString() {
  250. return "$interfaceTimestamp, ";
  251. }
  252. }
  253. class Leg {
  254. Leg({
  255. required this.legidentifier,
  256. required this.commercialAirlineIata,
  257. required this.commercialAirlineIcao,
  258. required this.flightNumber,
  259. required this.operationalSuffix,
  260. required this.aircraftOperatorIata,
  261. required this.aircraftOperatorIcao,
  262. required this.departureAirport,
  263. required this.destinationAirport,
  264. required this.ofpNumber,
  265. required this.aircraftDetails,
  266. required this.dispatcherInformation,
  267. required this.ctot,
  268. required this.slotAction,
  269. required this.estimatedDepartureTime,
  270. required this.scheduledDepartureTime,
  271. required this.estimatedTimeOfArrival,
  272. required this.scheduledTimeOfArrival,
  273. required this.crewMembers,
  274. required this.fuel,
  275. required this.weight,
  276. required this.reclearanceIndicator,
  277. required this.dateOfOrigin,
  278. required this.dateOfOperation,
  279. required this.masterOffice,
  280. required this.responsibleOffice,
  281. required this.flightDuplicationNumber,
  282. required this.destinationAirportIcao,
  283. required this.departureAirportIcao,
  284. required this.flightRoute,
  285. });
  286. final String? legidentifier;
  287. static const String legidentifierKey = "legidentifier";
  288. final String? commercialAirlineIata;
  289. static const String commercialAirlineIataKey = "commercialAirlineIATA";
  290. final String? commercialAirlineIcao;
  291. static const String commercialAirlineIcaoKey = "commercialAirlineICAO";
  292. final String? flightNumber;
  293. static const String flightNumberKey = "flightNumber";
  294. final String? operationalSuffix;
  295. static const String operationalSuffixKey = "operationalSuffix";
  296. final String? aircraftOperatorIata;
  297. static const String aircraftOperatorIataKey = "aircraftOperatorIATA";
  298. final String? aircraftOperatorIcao;
  299. static const String aircraftOperatorIcaoKey = "aircraftOperatorICAO";
  300. final String? departureAirport;
  301. static const String departureAirportKey = "departureAirport";
  302. final String? destinationAirport;
  303. static const String destinationAirportKey = "destinationAirport";
  304. final String? ofpNumber;
  305. static const String ofpNumberKey = "ofpNumber";
  306. final AircraftDetails? aircraftDetails;
  307. static const String aircraftDetailsKey = "aircraftDetails";
  308. final DispatcherInformation? dispatcherInformation;
  309. static const String dispatcherInformationKey = "dispatcherInformation";
  310. final dynamic ctot;
  311. static const String ctotKey = "ctot";
  312. final dynamic slotAction;
  313. static const String slotActionKey = "slotAction";
  314. final int? estimatedDepartureTime;
  315. static const String estimatedDepartureTimeKey = "estimatedDepartureTime";
  316. final int? scheduledDepartureTime;
  317. static const String scheduledDepartureTimeKey = "scheduledDepartureTime";
  318. final int? estimatedTimeOfArrival;
  319. static const String estimatedTimeOfArrivalKey = "estimatedTimeOfArrival";
  320. final int? scheduledTimeOfArrival;
  321. static const String scheduledTimeOfArrivalKey = "scheduledTimeOfArrival";
  322. final List<CrewMember> crewMembers;
  323. static const String crewMembersKey = "crewMembers";
  324. final Fuel? fuel;
  325. static const String fuelKey = "fuel";
  326. final Weight? weight;
  327. static const String weightKey = "weight";
  328. final bool? reclearanceIndicator;
  329. static const String reclearanceIndicatorKey = "reclearanceIndicator";
  330. final int? dateOfOrigin;
  331. static const String dateOfOriginKey = "dateOfOrigin";
  332. final int? dateOfOperation;
  333. static const String dateOfOperationKey = "dateOfOperation";
  334. final String? masterOffice;
  335. static const String masterOfficeKey = "masterOffice";
  336. final String? responsibleOffice;
  337. static const String responsibleOfficeKey = "responsibleOffice";
  338. final dynamic flightDuplicationNumber;
  339. static const String flightDuplicationNumberKey = "flightDuplicationNumber";
  340. final String? destinationAirportIcao;
  341. static const String destinationAirportIcaoKey = "destinationAirportICAO";
  342. final String? departureAirportIcao;
  343. static const String departureAirportIcaoKey = "departureAirportICAO";
  344. final String? flightRoute;
  345. static const String flightRouteKey = "flightRoute";
  346. Leg copyWith({
  347. String? legidentifier,
  348. String? commercialAirlineIata,
  349. String? commercialAirlineIcao,
  350. String? flightNumber,
  351. String? operationalSuffix,
  352. String? aircraftOperatorIata,
  353. String? aircraftOperatorIcao,
  354. String? departureAirport,
  355. String? destinationAirport,
  356. String? ofpNumber,
  357. AircraftDetails? aircraftDetails,
  358. DispatcherInformation? dispatcherInformation,
  359. dynamic ctot,
  360. dynamic slotAction,
  361. int? estimatedDepartureTime,
  362. int? scheduledDepartureTime,
  363. int? estimatedTimeOfArrival,
  364. int? scheduledTimeOfArrival,
  365. List<CrewMember>? crewMembers,
  366. Fuel? fuel,
  367. Weight? weight,
  368. bool? reclearanceIndicator,
  369. int? dateOfOrigin,
  370. int? dateOfOperation,
  371. String? masterOffice,
  372. String? responsibleOffice,
  373. dynamic flightDuplicationNumber,
  374. String? destinationAirportIcao,
  375. String? departureAirportIcao,
  376. String? flightRoute,
  377. }) {
  378. return Leg(
  379. legidentifier: legidentifier ?? this.legidentifier,
  380. commercialAirlineIata:
  381. commercialAirlineIata ?? this.commercialAirlineIata,
  382. commercialAirlineIcao:
  383. commercialAirlineIcao ?? this.commercialAirlineIcao,
  384. flightNumber: flightNumber ?? this.flightNumber,
  385. operationalSuffix: operationalSuffix ?? this.operationalSuffix,
  386. aircraftOperatorIata: aircraftOperatorIata ?? this.aircraftOperatorIata,
  387. aircraftOperatorIcao: aircraftOperatorIcao ?? this.aircraftOperatorIcao,
  388. departureAirport: departureAirport ?? this.departureAirport,
  389. destinationAirport: destinationAirport ?? this.destinationAirport,
  390. ofpNumber: ofpNumber ?? this.ofpNumber,
  391. aircraftDetails: aircraftDetails ?? this.aircraftDetails,
  392. dispatcherInformation:
  393. dispatcherInformation ?? this.dispatcherInformation,
  394. ctot: ctot ?? this.ctot,
  395. slotAction: slotAction ?? this.slotAction,
  396. estimatedDepartureTime:
  397. estimatedDepartureTime ?? this.estimatedDepartureTime,
  398. scheduledDepartureTime:
  399. scheduledDepartureTime ?? this.scheduledDepartureTime,
  400. estimatedTimeOfArrival:
  401. estimatedTimeOfArrival ?? this.estimatedTimeOfArrival,
  402. scheduledTimeOfArrival:
  403. scheduledTimeOfArrival ?? this.scheduledTimeOfArrival,
  404. crewMembers: crewMembers ?? this.crewMembers,
  405. fuel: fuel ?? this.fuel,
  406. weight: weight ?? this.weight,
  407. reclearanceIndicator: reclearanceIndicator ?? this.reclearanceIndicator,
  408. dateOfOrigin: dateOfOrigin ?? this.dateOfOrigin,
  409. dateOfOperation: dateOfOperation ?? this.dateOfOperation,
  410. masterOffice: masterOffice ?? this.masterOffice,
  411. responsibleOffice: responsibleOffice ?? this.responsibleOffice,
  412. flightDuplicationNumber:
  413. flightDuplicationNumber ?? this.flightDuplicationNumber,
  414. destinationAirportIcao:
  415. destinationAirportIcao ?? this.destinationAirportIcao,
  416. departureAirportIcao: departureAirportIcao ?? this.departureAirportIcao,
  417. flightRoute: flightRoute ?? this.flightRoute,
  418. );
  419. }
  420. factory Leg.fromJson(Map<String, dynamic> json) {
  421. return Leg(
  422. legidentifier: json["legidentifier"],
  423. commercialAirlineIata: json["commercialAirlineIATA"],
  424. commercialAirlineIcao: json["commercialAirlineICAO"],
  425. flightNumber: json["flightNumber"],
  426. operationalSuffix: json["operationalSuffix"],
  427. aircraftOperatorIata: json["aircraftOperatorIATA"],
  428. aircraftOperatorIcao: json["aircraftOperatorICAO"],
  429. departureAirport: json["departureAirport"],
  430. destinationAirport: json["destinationAirport"],
  431. ofpNumber: json["ofpNumber"],
  432. aircraftDetails: json["aircraftDetails"] == null
  433. ? null
  434. : AircraftDetails.fromJson(json["aircraftDetails"]),
  435. dispatcherInformation: json["dispatcherInformation"] == null
  436. ? null
  437. : DispatcherInformation.fromJson(json["dispatcherInformation"]),
  438. ctot: json["ctot"],
  439. slotAction: json["slotAction"],
  440. estimatedDepartureTime: json["estimatedDepartureTime"],
  441. scheduledDepartureTime: json["scheduledDepartureTime"],
  442. estimatedTimeOfArrival: json["estimatedTimeOfArrival"],
  443. scheduledTimeOfArrival: json["scheduledTimeOfArrival"],
  444. crewMembers: json["crewMembers"] == null
  445. ? []
  446. : List<CrewMember>.from(
  447. json["crewMembers"]!.map((x) => CrewMember.fromJson(x))),
  448. fuel: json["fuel"] == null ? null : Fuel.fromJson(json["fuel"]),
  449. weight: json["weight"] == null ? null : Weight.fromJson(json["weight"]),
  450. reclearanceIndicator: json["reclearanceIndicator"],
  451. dateOfOrigin: json["dateOfOrigin"],
  452. dateOfOperation: json["dateOfOperation"],
  453. masterOffice: json["masterOffice"],
  454. responsibleOffice: json["responsibleOffice"],
  455. flightDuplicationNumber: json["flightDuplicationNumber"],
  456. destinationAirportIcao: json["destinationAirportICAO"],
  457. departureAirportIcao: json["departureAirportICAO"],
  458. flightRoute: json["flightRoute"],
  459. );
  460. }
  461. Map<String, dynamic> toJson() => {
  462. "legidentifier": legidentifier,
  463. "commercialAirlineIATA": commercialAirlineIata,
  464. "commercialAirlineICAO": commercialAirlineIcao,
  465. "flightNumber": flightNumber,
  466. "operationalSuffix": operationalSuffix,
  467. "aircraftOperatorIATA": aircraftOperatorIata,
  468. "aircraftOperatorICAO": aircraftOperatorIcao,
  469. "departureAirport": departureAirport,
  470. "destinationAirport": destinationAirport,
  471. "ofpNumber": ofpNumber,
  472. "aircraftDetails": aircraftDetails?.toJson(),
  473. "dispatcherInformation": dispatcherInformation?.toJson(),
  474. "ctot": ctot,
  475. "slotAction": slotAction,
  476. "estimatedDepartureTime": estimatedDepartureTime,
  477. "scheduledDepartureTime": scheduledDepartureTime,
  478. "estimatedTimeOfArrival": estimatedTimeOfArrival,
  479. "scheduledTimeOfArrival": scheduledTimeOfArrival,
  480. "crewMembers": crewMembers.map((x) => x.toJson()).toList(),
  481. "fuel": fuel?.toJson(),
  482. "weight": weight?.toJson(),
  483. "reclearanceIndicator": reclearanceIndicator,
  484. "dateOfOrigin": dateOfOrigin,
  485. "dateOfOperation": dateOfOperation,
  486. "masterOffice": masterOffice,
  487. "responsibleOffice": responsibleOffice,
  488. "flightDuplicationNumber": flightDuplicationNumber,
  489. "destinationAirportICAO": destinationAirportIcao,
  490. "departureAirportICAO": departureAirportIcao,
  491. "flightRoute": flightRoute,
  492. };
  493. @override
  494. String toString() {
  495. return "$legidentifier, $commercialAirlineIata, $commercialAirlineIcao, $flightNumber, $operationalSuffix, $aircraftOperatorIata, $aircraftOperatorIcao, $departureAirport, $destinationAirport, $ofpNumber, $aircraftDetails, $dispatcherInformation, $ctot, $slotAction, $estimatedDepartureTime, $scheduledDepartureTime, $estimatedTimeOfArrival, $scheduledTimeOfArrival, $crewMembers, $fuel, $weight, $reclearanceIndicator, $dateOfOrigin, $dateOfOperation, $masterOffice, $responsibleOffice, $flightDuplicationNumber, $destinationAirportIcao, $departureAirportIcao, $flightRoute, ";
  496. }
  497. }
  498. class AircraftDetails {
  499. AircraftDetails({
  500. required this.aircraftRegistration,
  501. required this.aircraftModel,
  502. required this.aircraftIcaoType,
  503. });
  504. final String? aircraftRegistration;
  505. static const String aircraftRegistrationKey = "aircraftRegistration";
  506. final String? aircraftModel;
  507. static const String aircraftModelKey = "aircraftModel";
  508. final String? aircraftIcaoType;
  509. static const String aircraftIcaoTypeKey = "aircraftICAOType";
  510. AircraftDetails copyWith({
  511. String? aircraftRegistration,
  512. String? aircraftModel,
  513. String? aircraftIcaoType,
  514. }) {
  515. return AircraftDetails(
  516. aircraftRegistration: aircraftRegistration ?? this.aircraftRegistration,
  517. aircraftModel: aircraftModel ?? this.aircraftModel,
  518. aircraftIcaoType: aircraftIcaoType ?? this.aircraftIcaoType,
  519. );
  520. }
  521. factory AircraftDetails.fromJson(Map<String, dynamic> json) {
  522. return AircraftDetails(
  523. aircraftRegistration: json["aircraftRegistration"],
  524. aircraftModel: json["aircraftModel"],
  525. aircraftIcaoType: json["aircraftICAOType"],
  526. );
  527. }
  528. Map<String, dynamic> toJson() => {
  529. "aircraftRegistration": aircraftRegistration,
  530. "aircraftModel": aircraftModel,
  531. "aircraftICAOType": aircraftIcaoType,
  532. };
  533. @override
  534. String toString() {
  535. return "$aircraftRegistration, $aircraftModel, $aircraftIcaoType, ";
  536. }
  537. }
  538. class CrewMember {
  539. CrewMember({
  540. required this.position,
  541. required this.name,
  542. required this.crewId,
  543. });
  544. final String? position;
  545. static const String positionKey = "position";
  546. final String? name;
  547. static const String nameKey = "name";
  548. final String? crewId;
  549. static const String crewIdKey = "crewId";
  550. CrewMember copyWith({
  551. String? position,
  552. String? name,
  553. String? crewId,
  554. }) {
  555. return CrewMember(
  556. position: position ?? this.position,
  557. name: name ?? this.name,
  558. crewId: crewId ?? this.crewId,
  559. );
  560. }
  561. factory CrewMember.fromJson(Map<String, dynamic> json) {
  562. return CrewMember(
  563. position: json["position"],
  564. name: json["name"],
  565. crewId: json["crewId"],
  566. );
  567. }
  568. Map<String, dynamic> toJson() => {
  569. "position": position,
  570. "name": name,
  571. "crewId": crewId,
  572. };
  573. @override
  574. String toString() {
  575. return "$position, $name, $crewId, ";
  576. }
  577. }
  578. class DispatcherInformation {
  579. DispatcherInformation({
  580. required this.dispatchOffice,
  581. required this.dispatcherName,
  582. required this.dispatcherTelephoneNumber,
  583. required this.dispatcherRemarks,
  584. });
  585. final String? dispatchOffice;
  586. static const String dispatchOfficeKey = "dispatchOffice";
  587. final String? dispatcherName;
  588. static const String dispatcherNameKey = "dispatcherName";
  589. final String? dispatcherTelephoneNumber;
  590. static const String dispatcherTelephoneNumberKey =
  591. "dispatcherTelephoneNumber";
  592. final dynamic dispatcherRemarks;
  593. static const String dispatcherRemarksKey = "dispatcherRemarks";
  594. DispatcherInformation copyWith({
  595. String? dispatchOffice,
  596. String? dispatcherName,
  597. String? dispatcherTelephoneNumber,
  598. dynamic dispatcherRemarks,
  599. }) {
  600. return DispatcherInformation(
  601. dispatchOffice: dispatchOffice ?? this.dispatchOffice,
  602. dispatcherName: dispatcherName ?? this.dispatcherName,
  603. dispatcherTelephoneNumber:
  604. dispatcherTelephoneNumber ?? this.dispatcherTelephoneNumber,
  605. dispatcherRemarks: dispatcherRemarks ?? this.dispatcherRemarks,
  606. );
  607. }
  608. factory DispatcherInformation.fromJson(Map<String, dynamic> json) {
  609. return DispatcherInformation(
  610. dispatchOffice: json["dispatchOffice"],
  611. dispatcherName: json["dispatcherName"],
  612. dispatcherTelephoneNumber: json["dispatcherTelephoneNumber"],
  613. dispatcherRemarks: json["dispatcherRemarks"],
  614. );
  615. }
  616. Map<String, dynamic> toJson() => {
  617. "dispatchOffice": dispatchOffice,
  618. "dispatcherName": dispatcherName,
  619. "dispatcherTelephoneNumber": dispatcherTelephoneNumber,
  620. "dispatcherRemarks": dispatcherRemarks,
  621. };
  622. @override
  623. String toString() {
  624. return "$dispatchOffice, $dispatcherName, $dispatcherTelephoneNumber, $dispatcherRemarks, ";
  625. }
  626. }
  627. class Fuel {
  628. Fuel({
  629. required this.unitOfMeasure,
  630. required this.tankCapacity,
  631. required this.averageFuelFlow,
  632. required this.taxiFuel,
  633. required this.tripFuel,
  634. required this.blockFuel,
  635. required this.possibleExtra,
  636. required this.totalTripTimeMinutes,
  637. required this.taxiTimeMinutes,
  638. required this.estimTotalFlightTime,
  639. required this.takeOffFuel,
  640. required this.takeOffFuelTime,
  641. required this.averageTaxiFuelFlow,
  642. required this.fuelOnBoard,
  643. });
  644. final String? unitOfMeasure;
  645. static const String unitOfMeasureKey = "unitOfMeasure";
  646. final int? tankCapacity;
  647. static const String tankCapacityKey = "tankCapacity";
  648. final int? averageFuelFlow;
  649. static const String averageFuelFlowKey = "averageFuelFlow";
  650. final int? taxiFuel;
  651. static const String taxiFuelKey = "taxiFuel";
  652. final int? tripFuel;
  653. static const String tripFuelKey = "tripFuel";
  654. final int? blockFuel;
  655. static const String blockFuelKey = "blockFuel";
  656. final int? possibleExtra;
  657. static const String possibleExtraKey = "possibleExtra";
  658. final int? totalTripTimeMinutes;
  659. static const String totalTripTimeMinutesKey = "totalTripTimeMinutes";
  660. final int? taxiTimeMinutes;
  661. static const String taxiTimeMinutesKey = "taxiTimeMinutes";
  662. final int? estimTotalFlightTime;
  663. static const String estimTotalFlightTimeKey = "estimTotalFlightTime";
  664. final int? takeOffFuel;
  665. static const String takeOffFuelKey = "takeOffFuel";
  666. final int? takeOffFuelTime;
  667. static const String takeOffFuelTimeKey = "takeOffFuelTime";
  668. final int? averageTaxiFuelFlow;
  669. static const String averageTaxiFuelFlowKey = "averageTaxiFuelFlow";
  670. final FuelOnBoard? fuelOnBoard;
  671. static const String fuelOnBoardKey = "fuelOnBoard";
  672. Fuel copyWith({
  673. String? unitOfMeasure,
  674. int? tankCapacity,
  675. int? averageFuelFlow,
  676. int? taxiFuel,
  677. int? tripFuel,
  678. int? blockFuel,
  679. int? possibleExtra,
  680. int? totalTripTimeMinutes,
  681. int? taxiTimeMinutes,
  682. int? estimTotalFlightTime,
  683. int? takeOffFuel,
  684. int? takeOffFuelTime,
  685. int? averageTaxiFuelFlow,
  686. FuelOnBoard? fuelOnBoard,
  687. }) {
  688. return Fuel(
  689. unitOfMeasure: unitOfMeasure ?? this.unitOfMeasure,
  690. tankCapacity: tankCapacity ?? this.tankCapacity,
  691. averageFuelFlow: averageFuelFlow ?? this.averageFuelFlow,
  692. taxiFuel: taxiFuel ?? this.taxiFuel,
  693. tripFuel: tripFuel ?? this.tripFuel,
  694. blockFuel: blockFuel ?? this.blockFuel,
  695. possibleExtra: possibleExtra ?? this.possibleExtra,
  696. totalTripTimeMinutes: totalTripTimeMinutes ?? this.totalTripTimeMinutes,
  697. taxiTimeMinutes: taxiTimeMinutes ?? this.taxiTimeMinutes,
  698. estimTotalFlightTime: estimTotalFlightTime ?? this.estimTotalFlightTime,
  699. takeOffFuel: takeOffFuel ?? this.takeOffFuel,
  700. takeOffFuelTime: takeOffFuelTime ?? this.takeOffFuelTime,
  701. averageTaxiFuelFlow: averageTaxiFuelFlow ?? this.averageTaxiFuelFlow,
  702. fuelOnBoard: fuelOnBoard ?? this.fuelOnBoard,
  703. );
  704. }
  705. factory Fuel.fromJson(Map<String, dynamic> json) {
  706. return Fuel(
  707. unitOfMeasure: json["unitOfMeasure"],
  708. tankCapacity: json["tankCapacity"],
  709. averageFuelFlow: json["averageFuelFlow"],
  710. taxiFuel: json["taxiFuel"],
  711. tripFuel: json["tripFuel"],
  712. blockFuel: json["blockFuel"],
  713. possibleExtra: json["possibleExtra"],
  714. totalTripTimeMinutes: json["totalTripTimeMinutes"],
  715. taxiTimeMinutes: json["taxiTimeMinutes"],
  716. estimTotalFlightTime: json["estimTotalFlightTime"],
  717. takeOffFuel: json["takeOffFuel"],
  718. takeOffFuelTime: json["takeOffFuelTime"],
  719. averageTaxiFuelFlow: json["averageTaxiFuelFlow"],
  720. fuelOnBoard: json["fuelOnBoard"] == null
  721. ? null
  722. : FuelOnBoard.fromJson(json["fuelOnBoard"]),
  723. );
  724. }
  725. Map<String, dynamic> toJson() => {
  726. "unitOfMeasure": unitOfMeasure,
  727. "tankCapacity": tankCapacity,
  728. "averageFuelFlow": averageFuelFlow,
  729. "taxiFuel": taxiFuel,
  730. "tripFuel": tripFuel,
  731. "blockFuel": blockFuel,
  732. "possibleExtra": possibleExtra,
  733. "totalTripTimeMinutes": totalTripTimeMinutes,
  734. "taxiTimeMinutes": taxiTimeMinutes,
  735. "estimTotalFlightTime": estimTotalFlightTime,
  736. "takeOffFuel": takeOffFuel,
  737. "takeOffFuelTime": takeOffFuelTime,
  738. "averageTaxiFuelFlow": averageTaxiFuelFlow,
  739. "fuelOnBoard": fuelOnBoard?.toJson(),
  740. };
  741. @override
  742. String toString() {
  743. return "$unitOfMeasure, $tankCapacity, $averageFuelFlow, $taxiFuel, $tripFuel, $blockFuel, $possibleExtra, $totalTripTimeMinutes, $taxiTimeMinutes, $estimTotalFlightTime, $takeOffFuel, $takeOffFuelTime, $averageTaxiFuelFlow, $fuelOnBoard, ";
  744. }
  745. }
  746. class FuelOnBoard {
  747. FuelOnBoard({
  748. required this.remainingFuel,
  749. required this.unitOfMeasure,
  750. required this.remainingFuelIndicator,
  751. });
  752. final int? remainingFuel;
  753. static const String remainingFuelKey = "remainingFuel";
  754. final String? unitOfMeasure;
  755. static const String unitOfMeasureKey = "unitOfMeasure";
  756. final dynamic remainingFuelIndicator;
  757. static const String remainingFuelIndicatorKey = "remainingFuelIndicator";
  758. FuelOnBoard copyWith({
  759. int? remainingFuel,
  760. String? unitOfMeasure,
  761. dynamic remainingFuelIndicator,
  762. }) {
  763. return FuelOnBoard(
  764. remainingFuel: remainingFuel ?? this.remainingFuel,
  765. unitOfMeasure: unitOfMeasure ?? this.unitOfMeasure,
  766. remainingFuelIndicator:
  767. remainingFuelIndicator ?? this.remainingFuelIndicator,
  768. );
  769. }
  770. factory FuelOnBoard.fromJson(Map<String, dynamic> json) {
  771. return FuelOnBoard(
  772. remainingFuel: json["remainingFuel"],
  773. unitOfMeasure: json["unitOfMeasure"],
  774. remainingFuelIndicator: json["remainingFuelIndicator"],
  775. );
  776. }
  777. Map<String, dynamic> toJson() => {
  778. "remainingFuel": remainingFuel,
  779. "unitOfMeasure": unitOfMeasure,
  780. "remainingFuelIndicator": remainingFuelIndicator,
  781. };
  782. @override
  783. String toString() {
  784. return "$remainingFuel, $unitOfMeasure, $remainingFuelIndicator, ";
  785. }
  786. }
  787. class Weight {
  788. Weight({
  789. required this.maxZfw,
  790. required this.maxTaxiWeight,
  791. required this.maxTakeOffWeight,
  792. required this.plannedZfw,
  793. required this.restrictedTakeOffWeight,
  794. required this.maxLandingWeight,
  795. });
  796. final int? maxZfw;
  797. static const String maxZfwKey = "maxZfw";
  798. final int? maxTaxiWeight;
  799. static const String maxTaxiWeightKey = "maxTaxiWeight";
  800. final int? maxTakeOffWeight;
  801. static const String maxTakeOffWeightKey = "maxTakeOffWeight";
  802. final int? plannedZfw;
  803. static const String plannedZfwKey = "plannedZfw";
  804. final int? restrictedTakeOffWeight;
  805. static const String restrictedTakeOffWeightKey = "restrictedTakeOffWeight";
  806. final int? maxLandingWeight;
  807. static const String maxLandingWeightKey = "maxLandingWeight";
  808. Weight copyWith({
  809. int? maxZfw,
  810. int? maxTaxiWeight,
  811. int? maxTakeOffWeight,
  812. int? plannedZfw,
  813. int? restrictedTakeOffWeight,
  814. int? maxLandingWeight,
  815. }) {
  816. return Weight(
  817. maxZfw: maxZfw ?? this.maxZfw,
  818. maxTaxiWeight: maxTaxiWeight ?? this.maxTaxiWeight,
  819. maxTakeOffWeight: maxTakeOffWeight ?? this.maxTakeOffWeight,
  820. plannedZfw: plannedZfw ?? this.plannedZfw,
  821. restrictedTakeOffWeight:
  822. restrictedTakeOffWeight ?? this.restrictedTakeOffWeight,
  823. maxLandingWeight: maxLandingWeight ?? this.maxLandingWeight,
  824. );
  825. }
  826. factory Weight.fromJson(Map<String, dynamic> json) {
  827. return Weight(
  828. maxZfw: json["maxZfw"],
  829. maxTaxiWeight: json["maxTaxiWeight"],
  830. maxTakeOffWeight: json["maxTakeOffWeight"],
  831. plannedZfw: json["plannedZfw"],
  832. restrictedTakeOffWeight: json["restrictedTakeOffWeight"],
  833. maxLandingWeight: json["maxLandingWeight"],
  834. );
  835. }
  836. Map<String, dynamic> toJson() => {
  837. "maxZfw": maxZfw,
  838. "maxTaxiWeight": maxTaxiWeight,
  839. "maxTakeOffWeight": maxTakeOffWeight,
  840. "plannedZfw": plannedZfw,
  841. "restrictedTakeOffWeight": restrictedTakeOffWeight,
  842. "maxLandingWeight": maxLandingWeight,
  843. };
  844. @override
  845. String toString() {
  846. return "$maxZfw, $maxTaxiWeight, $maxTakeOffWeight, $plannedZfw, $restrictedTakeOffWeight, $maxLandingWeight, ";
  847. }
  848. }
  849. class LidoBriefingData {
  850. LidoBriefingData({
  851. required this.briefingStatus,
  852. });
  853. final String? briefingStatus;
  854. static const String briefingStatusKey = "briefingStatus";
  855. LidoBriefingData copyWith({
  856. String? briefingStatus,
  857. }) {
  858. return LidoBriefingData(
  859. briefingStatus: briefingStatus ?? this.briefingStatus,
  860. );
  861. }
  862. factory LidoBriefingData.fromJson(Map<String, dynamic> json) {
  863. return LidoBriefingData(
  864. briefingStatus: json["briefingStatus"],
  865. );
  866. }
  867. Map<String, dynamic> toJson() => {
  868. "briefingStatus": briefingStatus,
  869. };
  870. @override
  871. String toString() {
  872. return "$briefingStatus, ";
  873. }
  874. }
  875. class Links {
  876. Links({
  877. required this.self,
  878. });
  879. final Self? self;
  880. static const String selfKey = "self";
  881. Links copyWith({
  882. Self? self,
  883. }) {
  884. return Links(
  885. self: self ?? this.self,
  886. );
  887. }
  888. factory Links.fromJson(Map<String, dynamic> json) {
  889. return Links(
  890. self: json["self"] == null ? null : Self.fromJson(json["self"]),
  891. );
  892. }
  893. Map<String, dynamic> toJson() => {
  894. "self": self?.toJson(),
  895. };
  896. @override
  897. String toString() {
  898. return "$self, ";
  899. }
  900. }
  901. class Self {
  902. Self({
  903. required this.href,
  904. });
  905. final String? href;
  906. static const String hrefKey = "href";
  907. Self copyWith({
  908. String? href,
  909. }) {
  910. return Self(
  911. href: href ?? this.href,
  912. );
  913. }
  914. factory Self.fromJson(Map<String, dynamic> json) {
  915. return Self(
  916. href: json["href"],
  917. );
  918. }
  919. Map<String, dynamic> toJson() => {
  920. "href": href,
  921. };
  922. @override
  923. String toString() {
  924. return "$href, ";
  925. }
  926. }