@ricado/api-client 2.4.1 → 2.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/dist/ricado.api.client.js +1 -1
  2. package/lib/Controllers/Lab/Site/FruitProfileController.js +12 -9
  3. package/lib/Controllers/Lab/Site/ProbeCalibrationController.js +921 -0
  4. package/lib/Controllers/Lab/Site/RackPositionController.js +2 -2
  5. package/lib/Controllers/Lab/Site/SampleController.js +15 -15
  6. package/lib/Controllers/Lab/Site/SampleResultController.js +29 -27
  7. package/lib/Controllers/Lab/Site/index.js +3 -3
  8. package/lib/Models/Lab/Site/FruitProfileModel.js +22 -4
  9. package/lib/Models/Lab/Site/{SampleFailureReasonModel.js → ProbeCalibrationModel.js} +141 -33
  10. package/lib/Models/Lab/Site/RackPositionModel.js +67 -15
  11. package/lib/Models/Lab/Site/SampleModel.js +51 -73
  12. package/lib/Models/Lab/Site/SampleResultModel.js +45 -23
  13. package/lib/Models/Lab/Site/index.js +3 -3
  14. package/lib/PackageVersion.js +1 -1
  15. package/lib/index.d.ts +577 -305
  16. package/package.json +1 -1
  17. package/src/Controllers/Lab/Site/FruitProfileController.js +12 -9
  18. package/src/Controllers/Lab/Site/ProbeCalibrationController.js +1052 -0
  19. package/src/Controllers/Lab/Site/RackPositionController.js +2 -2
  20. package/src/Controllers/Lab/Site/SampleController.js +15 -15
  21. package/src/Controllers/Lab/Site/SampleResultController.js +29 -27
  22. package/src/Controllers/Lab/Site/index.js +2 -2
  23. package/src/Models/Lab/Site/FruitProfileModel.js +24 -4
  24. package/src/Models/Lab/Site/ProbeCalibrationModel.js +290 -0
  25. package/src/Models/Lab/Site/RackPositionModel.js +87 -15
  26. package/src/Models/Lab/Site/SampleModel.js +57 -82
  27. package/src/Models/Lab/Site/SampleResultModel.js +48 -23
  28. package/src/Models/Lab/Site/index.js +2 -2
  29. package/src/PackageVersion.js +1 -1
  30. package/lib/Controllers/Lab/Site/SampleFailureReasonController.js +0 -192
  31. package/src/Controllers/Lab/Site/SampleFailureReasonController.js +0 -169
  32. package/src/Models/Lab/Site/SampleFailureReasonModel.js +0 -170
@@ -0,0 +1,1052 @@
1
+ /**
2
+ * File Auto-Generated by the RICADO Gen 4 PHP API Project
3
+ *
4
+ * Do Not Edit this File Manually!
5
+ */
6
+
7
+ import RequestHelper from '../../../RequestHelper';
8
+ import ProbeCalibrationModel from '../../../Models/Lab/Site/ProbeCalibrationModel';
9
+
10
+ /**
11
+ * Controller Class for Probe Calibrations
12
+ *
13
+ * @class
14
+ */
15
+ class ProbeCalibrationController
16
+ {
17
+ /**
18
+ * Retrieve a Probe Calibration [GET /lab/sites/{siteId}/probe-calibrations/{id}]
19
+ *
20
+ * @static
21
+ * @public
22
+ * @param {number} siteId The Site ID
23
+ * @param {string} id The Probe Calibration ID
24
+ * @return {Promise<ProbeCalibrationModel>}
25
+ */
26
+ static getOne(siteId, id)
27
+ {
28
+ return new Promise((resolve, reject) => {
29
+ RequestHelper.getRequest(`/lab/sites/${siteId}/probe-calibrations/${id}`)
30
+ .then((result) => {
31
+ let resolveValue = (function(){
32
+ return ProbeCalibrationModel.fromJSON(result, siteId);
33
+ }());
34
+
35
+ resolve(resolveValue);
36
+ })
37
+ .catch(error => reject(error));
38
+ });
39
+ }
40
+
41
+ /**
42
+ * Update a Probe Calibration [PATCH /lab/sites/{siteId}/probe-calibrations/{id}]
43
+ *
44
+ * @static
45
+ * @public
46
+ * @param {number} siteId The Site ID
47
+ * @param {string} id The Probe Calibration ID
48
+ * @param {ProbeCalibrationController.UpdateData} updateData The Probe Calibration Update Data
49
+ * @return {Promise<ProbeCalibrationModel>}
50
+ */
51
+ static update(siteId, id, updateData)
52
+ {
53
+ return new Promise((resolve, reject) => {
54
+ RequestHelper.patchRequest(`/lab/sites/${siteId}/probe-calibrations/${id}`, updateData)
55
+ .then((result) => {
56
+ let resolveValue = (function(){
57
+ return ProbeCalibrationModel.fromJSON(result, siteId);
58
+ }());
59
+
60
+ resolve(resolveValue);
61
+ })
62
+ .catch(error => reject(error));
63
+ });
64
+ }
65
+
66
+ /**
67
+ * Delete a Probe Calibration [DELETE /lab/sites/{siteId}/probe-calibrations/{id}]
68
+ *
69
+ * @static
70
+ * @public
71
+ * @param {number} siteId The Site ID
72
+ * @param {string} id The Probe Calibration ID
73
+ * @return {Promise<boolean>}
74
+ */
75
+ static delete(siteId, id)
76
+ {
77
+ return new Promise((resolve, reject) => {
78
+ RequestHelper.deleteRequest(`/lab/sites/${siteId}/probe-calibrations/${id}`)
79
+ .then((result) => {
80
+ resolve(result ?? true);
81
+ })
82
+ .catch(error => reject(error));
83
+ });
84
+ }
85
+
86
+ /**
87
+ * Retrieve Comments [GET /lab/sites/{siteId}/probe-calibrations/{id}/comments]
88
+ *
89
+ * Retrieves Comments for a Probe Calibration
90
+ *
91
+ * @static
92
+ * @public
93
+ * @param {number} siteId The Site ID
94
+ * @param {string} id The Probe Calibration ID
95
+ * @return {Promise<Array<ProbeCalibrationController.CommentItem>>}
96
+ */
97
+ static getComments(siteId, id)
98
+ {
99
+ return new Promise((resolve, reject) => {
100
+ RequestHelper.getRequest(`/lab/sites/${siteId}/probe-calibrations/${id}/comments`)
101
+ .then((result) => {
102
+ let resolveValue = (function(){
103
+ if(Array.isArray(result) !== true)
104
+ {
105
+ return [];
106
+ }
107
+
108
+ return result.map((resultItem) => {
109
+ return (function(){
110
+ let resultItemObject = {};
111
+
112
+ if(typeof resultItem === 'object' && 'id' in resultItem)
113
+ {
114
+ resultItemObject.id = (function(){
115
+ if(typeof resultItem.id !== 'string')
116
+ {
117
+ return String(resultItem.id);
118
+ }
119
+
120
+ return resultItem.id;
121
+ }());
122
+ }
123
+ else
124
+ {
125
+ resultItemObject.id = "";
126
+ }
127
+
128
+ if(typeof resultItem === 'object' && 'userAccount' in resultItem)
129
+ {
130
+ resultItemObject.userAccount = (function(){
131
+ let userAccountObject = {};
132
+
133
+ if(typeof resultItem.userAccount === 'object' && 'id' in resultItem.userAccount)
134
+ {
135
+ userAccountObject.id = (function(){
136
+ if(resultItem.userAccount.id === null)
137
+ {
138
+ return null;
139
+ }
140
+
141
+ if(typeof resultItem.userAccount.id !== 'string')
142
+ {
143
+ return String(resultItem.userAccount.id);
144
+ }
145
+
146
+ return resultItem.userAccount.id;
147
+ }());
148
+ }
149
+ else
150
+ {
151
+ userAccountObject.id = null;
152
+ }
153
+
154
+ if(typeof resultItem.userAccount === 'object' && 'firstName' in resultItem.userAccount)
155
+ {
156
+ userAccountObject.firstName = (function(){
157
+ if(resultItem.userAccount.firstName === null)
158
+ {
159
+ return null;
160
+ }
161
+
162
+ if(typeof resultItem.userAccount.firstName !== 'string')
163
+ {
164
+ return String(resultItem.userAccount.firstName);
165
+ }
166
+
167
+ return resultItem.userAccount.firstName;
168
+ }());
169
+ }
170
+ else
171
+ {
172
+ userAccountObject.firstName = null;
173
+ }
174
+
175
+ if(typeof resultItem.userAccount === 'object' && 'lastName' in resultItem.userAccount)
176
+ {
177
+ userAccountObject.lastName = (function(){
178
+ if(resultItem.userAccount.lastName === null)
179
+ {
180
+ return null;
181
+ }
182
+
183
+ if(typeof resultItem.userAccount.lastName !== 'string')
184
+ {
185
+ return String(resultItem.userAccount.lastName);
186
+ }
187
+
188
+ return resultItem.userAccount.lastName;
189
+ }());
190
+ }
191
+ else
192
+ {
193
+ userAccountObject.lastName = null;
194
+ }
195
+
196
+ return userAccountObject;
197
+ }());
198
+ }
199
+ else
200
+ {
201
+ resultItemObject.userAccount = (function(){
202
+ let userAccountDefaultValue = {};
203
+
204
+ userAccountDefaultValue.id = null;
205
+
206
+ userAccountDefaultValue.firstName = null;
207
+
208
+ userAccountDefaultValue.lastName = null;
209
+
210
+ return userAccountDefaultValue;
211
+ }());
212
+ }
213
+
214
+ if(typeof resultItem === 'object' && 'content' in resultItem)
215
+ {
216
+ resultItemObject.content = (function(){
217
+ if(resultItem.content === null)
218
+ {
219
+ return null;
220
+ }
221
+
222
+ if(typeof resultItem.content !== 'string')
223
+ {
224
+ return String(resultItem.content);
225
+ }
226
+
227
+ return resultItem.content;
228
+ }());
229
+ }
230
+ else
231
+ {
232
+ resultItemObject.content = null;
233
+ }
234
+
235
+ if(typeof resultItem === 'object' && 'createdTimestamp' in resultItem)
236
+ {
237
+ resultItemObject.createdTimestamp = (function(){
238
+ if(resultItem.createdTimestamp === null)
239
+ {
240
+ return null;
241
+ }
242
+
243
+ if(typeof resultItem.createdTimestamp !== 'string')
244
+ {
245
+ return new Date(String(resultItem.createdTimestamp));
246
+ }
247
+
248
+ return new Date(resultItem.createdTimestamp);
249
+ }());
250
+ }
251
+ else
252
+ {
253
+ resultItemObject.createdTimestamp = null;
254
+ }
255
+
256
+ if(typeof resultItem === 'object' && 'updatedTimestamp' in resultItem)
257
+ {
258
+ resultItemObject.updatedTimestamp = (function(){
259
+ if(resultItem.updatedTimestamp === null)
260
+ {
261
+ return null;
262
+ }
263
+
264
+ if(typeof resultItem.updatedTimestamp !== 'string')
265
+ {
266
+ return new Date(String(resultItem.updatedTimestamp));
267
+ }
268
+
269
+ return new Date(resultItem.updatedTimestamp);
270
+ }());
271
+ }
272
+ else
273
+ {
274
+ resultItemObject.updatedTimestamp = null;
275
+ }
276
+
277
+ return resultItemObject;
278
+ }());
279
+ });
280
+ }());
281
+
282
+ resolve(resolveValue);
283
+ })
284
+ .catch(error => reject(error));
285
+ });
286
+ }
287
+
288
+ /**
289
+ * Create a Comment [POST /lab/sites/{siteId}/probe-calibrations/{id}/comments]
290
+ *
291
+ * Create a Comment for a Probe Calibration
292
+ *
293
+ * @static
294
+ * @public
295
+ * @param {number} siteId The Site ID
296
+ * @param {string} id The Probe Calibration ID
297
+ * @param {string} content The Content of the New Comment
298
+ * @return {Promise<ProbeCalibrationController.CommentItem>}
299
+ */
300
+ static createComment(siteId, id, content)
301
+ {
302
+ return new Promise((resolve, reject) => {
303
+ RequestHelper.postRequest(`/lab/sites/${siteId}/probe-calibrations/${id}/comments`, {content})
304
+ .then((result) => {
305
+ let resolveValue = (function(){
306
+ let resultObject = {};
307
+
308
+ if(typeof result === 'object' && 'id' in result)
309
+ {
310
+ resultObject.id = (function(){
311
+ if(typeof result.id !== 'string')
312
+ {
313
+ return String(result.id);
314
+ }
315
+
316
+ return result.id;
317
+ }());
318
+ }
319
+ else
320
+ {
321
+ resultObject.id = "";
322
+ }
323
+
324
+ if(typeof result === 'object' && 'userAccount' in result)
325
+ {
326
+ resultObject.userAccount = (function(){
327
+ let userAccountObject = {};
328
+
329
+ if(typeof result.userAccount === 'object' && 'id' in result.userAccount)
330
+ {
331
+ userAccountObject.id = (function(){
332
+ if(result.userAccount.id === null)
333
+ {
334
+ return null;
335
+ }
336
+
337
+ if(typeof result.userAccount.id !== 'string')
338
+ {
339
+ return String(result.userAccount.id);
340
+ }
341
+
342
+ return result.userAccount.id;
343
+ }());
344
+ }
345
+ else
346
+ {
347
+ userAccountObject.id = null;
348
+ }
349
+
350
+ if(typeof result.userAccount === 'object' && 'firstName' in result.userAccount)
351
+ {
352
+ userAccountObject.firstName = (function(){
353
+ if(result.userAccount.firstName === null)
354
+ {
355
+ return null;
356
+ }
357
+
358
+ if(typeof result.userAccount.firstName !== 'string')
359
+ {
360
+ return String(result.userAccount.firstName);
361
+ }
362
+
363
+ return result.userAccount.firstName;
364
+ }());
365
+ }
366
+ else
367
+ {
368
+ userAccountObject.firstName = null;
369
+ }
370
+
371
+ if(typeof result.userAccount === 'object' && 'lastName' in result.userAccount)
372
+ {
373
+ userAccountObject.lastName = (function(){
374
+ if(result.userAccount.lastName === null)
375
+ {
376
+ return null;
377
+ }
378
+
379
+ if(typeof result.userAccount.lastName !== 'string')
380
+ {
381
+ return String(result.userAccount.lastName);
382
+ }
383
+
384
+ return result.userAccount.lastName;
385
+ }());
386
+ }
387
+ else
388
+ {
389
+ userAccountObject.lastName = null;
390
+ }
391
+
392
+ return userAccountObject;
393
+ }());
394
+ }
395
+ else
396
+ {
397
+ resultObject.userAccount = (function(){
398
+ let userAccountDefaultValue = {};
399
+
400
+ userAccountDefaultValue.id = null;
401
+
402
+ userAccountDefaultValue.firstName = null;
403
+
404
+ userAccountDefaultValue.lastName = null;
405
+
406
+ return userAccountDefaultValue;
407
+ }());
408
+ }
409
+
410
+ if(typeof result === 'object' && 'content' in result)
411
+ {
412
+ resultObject.content = (function(){
413
+ if(result.content === null)
414
+ {
415
+ return null;
416
+ }
417
+
418
+ if(typeof result.content !== 'string')
419
+ {
420
+ return String(result.content);
421
+ }
422
+
423
+ return result.content;
424
+ }());
425
+ }
426
+ else
427
+ {
428
+ resultObject.content = null;
429
+ }
430
+
431
+ if(typeof result === 'object' && 'createdTimestamp' in result)
432
+ {
433
+ resultObject.createdTimestamp = (function(){
434
+ if(result.createdTimestamp === null)
435
+ {
436
+ return null;
437
+ }
438
+
439
+ if(typeof result.createdTimestamp !== 'string')
440
+ {
441
+ return new Date(String(result.createdTimestamp));
442
+ }
443
+
444
+ return new Date(result.createdTimestamp);
445
+ }());
446
+ }
447
+ else
448
+ {
449
+ resultObject.createdTimestamp = null;
450
+ }
451
+
452
+ if(typeof result === 'object' && 'updatedTimestamp' in result)
453
+ {
454
+ resultObject.updatedTimestamp = (function(){
455
+ if(result.updatedTimestamp === null)
456
+ {
457
+ return null;
458
+ }
459
+
460
+ if(typeof result.updatedTimestamp !== 'string')
461
+ {
462
+ return new Date(String(result.updatedTimestamp));
463
+ }
464
+
465
+ return new Date(result.updatedTimestamp);
466
+ }());
467
+ }
468
+ else
469
+ {
470
+ resultObject.updatedTimestamp = null;
471
+ }
472
+
473
+ return resultObject;
474
+ }());
475
+
476
+ resolve(resolveValue);
477
+ })
478
+ .catch(error => reject(error));
479
+ });
480
+ }
481
+
482
+ /**
483
+ * Retrieve a Comment [GET /lab/sites/{siteId}/probe-calibrations/{id}/comments/{commentId}]
484
+ *
485
+ * Retrieves Comments for a Probe Calibration
486
+ *
487
+ * @static
488
+ * @public
489
+ * @param {number} siteId The Site ID
490
+ * @param {string} id The Probe Calibration ID
491
+ * @param {string} commentId The Comment ID
492
+ * @return {Promise<ProbeCalibrationController.CommentItem>}
493
+ */
494
+ static getOneComment(siteId, id, commentId)
495
+ {
496
+ return new Promise((resolve, reject) => {
497
+ RequestHelper.getRequest(`/lab/sites/${siteId}/probe-calibrations/${id}/comments/${commentId}`)
498
+ .then((result) => {
499
+ let resolveValue = (function(){
500
+ let resultObject = {};
501
+
502
+ if(typeof result === 'object' && 'id' in result)
503
+ {
504
+ resultObject.id = (function(){
505
+ if(typeof result.id !== 'string')
506
+ {
507
+ return String(result.id);
508
+ }
509
+
510
+ return result.id;
511
+ }());
512
+ }
513
+ else
514
+ {
515
+ resultObject.id = "";
516
+ }
517
+
518
+ if(typeof result === 'object' && 'userAccount' in result)
519
+ {
520
+ resultObject.userAccount = (function(){
521
+ let userAccountObject = {};
522
+
523
+ if(typeof result.userAccount === 'object' && 'id' in result.userAccount)
524
+ {
525
+ userAccountObject.id = (function(){
526
+ if(result.userAccount.id === null)
527
+ {
528
+ return null;
529
+ }
530
+
531
+ if(typeof result.userAccount.id !== 'string')
532
+ {
533
+ return String(result.userAccount.id);
534
+ }
535
+
536
+ return result.userAccount.id;
537
+ }());
538
+ }
539
+ else
540
+ {
541
+ userAccountObject.id = null;
542
+ }
543
+
544
+ if(typeof result.userAccount === 'object' && 'firstName' in result.userAccount)
545
+ {
546
+ userAccountObject.firstName = (function(){
547
+ if(result.userAccount.firstName === null)
548
+ {
549
+ return null;
550
+ }
551
+
552
+ if(typeof result.userAccount.firstName !== 'string')
553
+ {
554
+ return String(result.userAccount.firstName);
555
+ }
556
+
557
+ return result.userAccount.firstName;
558
+ }());
559
+ }
560
+ else
561
+ {
562
+ userAccountObject.firstName = null;
563
+ }
564
+
565
+ if(typeof result.userAccount === 'object' && 'lastName' in result.userAccount)
566
+ {
567
+ userAccountObject.lastName = (function(){
568
+ if(result.userAccount.lastName === null)
569
+ {
570
+ return null;
571
+ }
572
+
573
+ if(typeof result.userAccount.lastName !== 'string')
574
+ {
575
+ return String(result.userAccount.lastName);
576
+ }
577
+
578
+ return result.userAccount.lastName;
579
+ }());
580
+ }
581
+ else
582
+ {
583
+ userAccountObject.lastName = null;
584
+ }
585
+
586
+ return userAccountObject;
587
+ }());
588
+ }
589
+ else
590
+ {
591
+ resultObject.userAccount = (function(){
592
+ let userAccountDefaultValue = {};
593
+
594
+ userAccountDefaultValue.id = null;
595
+
596
+ userAccountDefaultValue.firstName = null;
597
+
598
+ userAccountDefaultValue.lastName = null;
599
+
600
+ return userAccountDefaultValue;
601
+ }());
602
+ }
603
+
604
+ if(typeof result === 'object' && 'content' in result)
605
+ {
606
+ resultObject.content = (function(){
607
+ if(result.content === null)
608
+ {
609
+ return null;
610
+ }
611
+
612
+ if(typeof result.content !== 'string')
613
+ {
614
+ return String(result.content);
615
+ }
616
+
617
+ return result.content;
618
+ }());
619
+ }
620
+ else
621
+ {
622
+ resultObject.content = null;
623
+ }
624
+
625
+ if(typeof result === 'object' && 'createdTimestamp' in result)
626
+ {
627
+ resultObject.createdTimestamp = (function(){
628
+ if(result.createdTimestamp === null)
629
+ {
630
+ return null;
631
+ }
632
+
633
+ if(typeof result.createdTimestamp !== 'string')
634
+ {
635
+ return new Date(String(result.createdTimestamp));
636
+ }
637
+
638
+ return new Date(result.createdTimestamp);
639
+ }());
640
+ }
641
+ else
642
+ {
643
+ resultObject.createdTimestamp = null;
644
+ }
645
+
646
+ if(typeof result === 'object' && 'updatedTimestamp' in result)
647
+ {
648
+ resultObject.updatedTimestamp = (function(){
649
+ if(result.updatedTimestamp === null)
650
+ {
651
+ return null;
652
+ }
653
+
654
+ if(typeof result.updatedTimestamp !== 'string')
655
+ {
656
+ return new Date(String(result.updatedTimestamp));
657
+ }
658
+
659
+ return new Date(result.updatedTimestamp);
660
+ }());
661
+ }
662
+ else
663
+ {
664
+ resultObject.updatedTimestamp = null;
665
+ }
666
+
667
+ return resultObject;
668
+ }());
669
+
670
+ resolve(resolveValue);
671
+ })
672
+ .catch(error => reject(error));
673
+ });
674
+ }
675
+
676
+ /**
677
+ * Update a Comment [PATCH /lab/sites/{siteId}/probe-calibrations/{id}/comments/{commentId}]
678
+ *
679
+ * Update a Comment for a Probe Calibration
680
+ *
681
+ * @static
682
+ * @public
683
+ * @param {number} siteId The Site ID
684
+ * @param {string} id The Probe Calibration ID
685
+ * @param {string} commentId The Comment ID
686
+ * @param {string} content The Updated Content for the Comment
687
+ * @return {Promise<ProbeCalibrationController.CommentItem>}
688
+ */
689
+ static updateOneComment(siteId, id, commentId, content)
690
+ {
691
+ return new Promise((resolve, reject) => {
692
+ RequestHelper.patchRequest(`/lab/sites/${siteId}/probe-calibrations/${id}/comments/${commentId}`, {content})
693
+ .then((result) => {
694
+ let resolveValue = (function(){
695
+ let resultObject = {};
696
+
697
+ if(typeof result === 'object' && 'id' in result)
698
+ {
699
+ resultObject.id = (function(){
700
+ if(typeof result.id !== 'string')
701
+ {
702
+ return String(result.id);
703
+ }
704
+
705
+ return result.id;
706
+ }());
707
+ }
708
+ else
709
+ {
710
+ resultObject.id = "";
711
+ }
712
+
713
+ if(typeof result === 'object' && 'userAccount' in result)
714
+ {
715
+ resultObject.userAccount = (function(){
716
+ let userAccountObject = {};
717
+
718
+ if(typeof result.userAccount === 'object' && 'id' in result.userAccount)
719
+ {
720
+ userAccountObject.id = (function(){
721
+ if(result.userAccount.id === null)
722
+ {
723
+ return null;
724
+ }
725
+
726
+ if(typeof result.userAccount.id !== 'string')
727
+ {
728
+ return String(result.userAccount.id);
729
+ }
730
+
731
+ return result.userAccount.id;
732
+ }());
733
+ }
734
+ else
735
+ {
736
+ userAccountObject.id = null;
737
+ }
738
+
739
+ if(typeof result.userAccount === 'object' && 'firstName' in result.userAccount)
740
+ {
741
+ userAccountObject.firstName = (function(){
742
+ if(result.userAccount.firstName === null)
743
+ {
744
+ return null;
745
+ }
746
+
747
+ if(typeof result.userAccount.firstName !== 'string')
748
+ {
749
+ return String(result.userAccount.firstName);
750
+ }
751
+
752
+ return result.userAccount.firstName;
753
+ }());
754
+ }
755
+ else
756
+ {
757
+ userAccountObject.firstName = null;
758
+ }
759
+
760
+ if(typeof result.userAccount === 'object' && 'lastName' in result.userAccount)
761
+ {
762
+ userAccountObject.lastName = (function(){
763
+ if(result.userAccount.lastName === null)
764
+ {
765
+ return null;
766
+ }
767
+
768
+ if(typeof result.userAccount.lastName !== 'string')
769
+ {
770
+ return String(result.userAccount.lastName);
771
+ }
772
+
773
+ return result.userAccount.lastName;
774
+ }());
775
+ }
776
+ else
777
+ {
778
+ userAccountObject.lastName = null;
779
+ }
780
+
781
+ return userAccountObject;
782
+ }());
783
+ }
784
+ else
785
+ {
786
+ resultObject.userAccount = (function(){
787
+ let userAccountDefaultValue = {};
788
+
789
+ userAccountDefaultValue.id = null;
790
+
791
+ userAccountDefaultValue.firstName = null;
792
+
793
+ userAccountDefaultValue.lastName = null;
794
+
795
+ return userAccountDefaultValue;
796
+ }());
797
+ }
798
+
799
+ if(typeof result === 'object' && 'content' in result)
800
+ {
801
+ resultObject.content = (function(){
802
+ if(result.content === null)
803
+ {
804
+ return null;
805
+ }
806
+
807
+ if(typeof result.content !== 'string')
808
+ {
809
+ return String(result.content);
810
+ }
811
+
812
+ return result.content;
813
+ }());
814
+ }
815
+ else
816
+ {
817
+ resultObject.content = null;
818
+ }
819
+
820
+ if(typeof result === 'object' && 'createdTimestamp' in result)
821
+ {
822
+ resultObject.createdTimestamp = (function(){
823
+ if(result.createdTimestamp === null)
824
+ {
825
+ return null;
826
+ }
827
+
828
+ if(typeof result.createdTimestamp !== 'string')
829
+ {
830
+ return new Date(String(result.createdTimestamp));
831
+ }
832
+
833
+ return new Date(result.createdTimestamp);
834
+ }());
835
+ }
836
+ else
837
+ {
838
+ resultObject.createdTimestamp = null;
839
+ }
840
+
841
+ if(typeof result === 'object' && 'updatedTimestamp' in result)
842
+ {
843
+ resultObject.updatedTimestamp = (function(){
844
+ if(result.updatedTimestamp === null)
845
+ {
846
+ return null;
847
+ }
848
+
849
+ if(typeof result.updatedTimestamp !== 'string')
850
+ {
851
+ return new Date(String(result.updatedTimestamp));
852
+ }
853
+
854
+ return new Date(result.updatedTimestamp);
855
+ }());
856
+ }
857
+ else
858
+ {
859
+ resultObject.updatedTimestamp = null;
860
+ }
861
+
862
+ return resultObject;
863
+ }());
864
+
865
+ resolve(resolveValue);
866
+ })
867
+ .catch(error => reject(error));
868
+ });
869
+ }
870
+
871
+ /**
872
+ * Delete a Comment [DELETE /lab/sites/{siteId}/probe-calibrations/{id}/comments/{commentId}]
873
+ *
874
+ * Delete a Comment for a Probe Calibration
875
+ *
876
+ * @static
877
+ * @public
878
+ * @param {number} siteId The Site ID
879
+ * @param {string} id The Probe Calibration ID
880
+ * @param {string} commentId The Comment ID
881
+ * @return {Promise<boolean>}
882
+ */
883
+ static deleteOneComment(siteId, id, commentId)
884
+ {
885
+ return new Promise((resolve, reject) => {
886
+ RequestHelper.deleteRequest(`/lab/sites/${siteId}/probe-calibrations/${id}/comments/${commentId}`)
887
+ .then((result) => {
888
+ resolve(result ?? true);
889
+ })
890
+ .catch(error => reject(error));
891
+ });
892
+ }
893
+
894
+ /**
895
+ * List all Probe Calibrations [GET /lab/sites/{siteId}/probe-calibrations]
896
+ *
897
+ * @static
898
+ * @public
899
+ * @param {number} siteId The Site ID
900
+ * @param {ProbeCalibrationController.GetAllQueryParameters} [queryParameters] The Optional Query Parameters
901
+ * @return {Promise<ProbeCalibrationModel[]>}
902
+ */
903
+ static getAll(siteId, queryParameters = {})
904
+ {
905
+ return new Promise((resolve, reject) => {
906
+ RequestHelper.getRequest(`/lab/sites/${siteId}/probe-calibrations`, queryParameters)
907
+ .then((result) => {
908
+ let resolveValue = (function(){
909
+ if(Array.isArray(result) !== true)
910
+ {
911
+ return [];
912
+ }
913
+
914
+ return result.map((resultItem) => {
915
+ return (function(){
916
+ return ProbeCalibrationModel.fromJSON(resultItem, siteId);
917
+ }());
918
+ });
919
+ }());
920
+
921
+ resolve(resolveValue);
922
+ })
923
+ .catch(error => reject(error));
924
+ });
925
+ }
926
+
927
+ /**
928
+ * Create a Probe Calibration [POST /lab/sites/{siteId}/probe-calibrations]
929
+ *
930
+ * @static
931
+ * @public
932
+ * @param {number} siteId The Site ID
933
+ * @param {ProbeCalibrationController.CreateData} createData The Probe Calibration Create Data
934
+ * @return {Promise<ProbeCalibrationModel>}
935
+ */
936
+ static create(siteId, createData)
937
+ {
938
+ return new Promise((resolve, reject) => {
939
+ RequestHelper.postRequest(`/lab/sites/${siteId}/probe-calibrations`, createData)
940
+ .then((result) => {
941
+ let resolveValue = (function(){
942
+ return ProbeCalibrationModel.fromJSON(result, siteId);
943
+ }());
944
+
945
+ resolve(resolveValue);
946
+ })
947
+ .catch(error => reject(error));
948
+ });
949
+ }
950
+
951
+ /**
952
+ * Retrieve the Latest Probe Calibrations [GET /lab/sites/{siteId}/probe-calibrations/latest]
953
+ *
954
+ * Retrieves the Latest Probe Calibrations for all Rack Positions
955
+ *
956
+ * @static
957
+ * @public
958
+ * @param {number} siteId The Site ID
959
+ * @return {Promise<ProbeCalibrationModel[]>}
960
+ */
961
+ static getLatestProbeCalibrations(siteId)
962
+ {
963
+ return new Promise((resolve, reject) => {
964
+ RequestHelper.getRequest(`/lab/sites/${siteId}/probe-calibrations/latest`)
965
+ .then((result) => {
966
+ let resolveValue = (function(){
967
+ if(Array.isArray(result) !== true)
968
+ {
969
+ return [];
970
+ }
971
+
972
+ return result.map((resultItem) => {
973
+ return (function(){
974
+ return ProbeCalibrationModel.fromJSON(resultItem, siteId);
975
+ }());
976
+ });
977
+ }());
978
+
979
+ resolve(resolveValue);
980
+ })
981
+ .catch(error => reject(error));
982
+ });
983
+ }
984
+ }
985
+
986
+ export default ProbeCalibrationController;
987
+
988
+ /**
989
+ * The Optional Query Parameters for the getAll Function
990
+ *
991
+ * @typedef {Object} ProbeCalibrationController.GetAllQueryParameters
992
+ * @property {string} [rackPositionId] The Rack Position ID this Probe Calibration is associated with
993
+ * @property {string} [userId] ID of the User who Completed this Probe Calibration
994
+ * @property {string} [userName] Name of the User who Completed this Probe Calibration
995
+ * @property {Date} [createdTimestampBegin] Filter by the Timestamp when Probe Calibrations were Created. Results Greater than or Equal to Timestamp
996
+ * @property {Date} [createdTimestampEnd] Filter by the Timestamp when Probe Calibrations were Created. Results Less than or Equal to Timestamp
997
+ * @property {Date} [updateTimestampBegin] Filter by the Timestamp when Probe Calibrations were last Updated. Results Greater than or Equal to Timestamp
998
+ * @property {Date} [updateTimestampEnd] Filter by the Timestamp when Probe Calibrations were last Updated. Results Less than or Equal to Timestamp
999
+ * @memberof Controllers.Lab.Site
1000
+ */
1001
+
1002
+ /**
1003
+ * The Create Data for a Probe Calibration
1004
+ *
1005
+ * @typedef {Object} ProbeCalibrationController.CreateData
1006
+ * @property {string} rackPositionId The Rack Position ID this Probe Calibration is associated with
1007
+ * @property {Date} [createdTimestamp] When this Probe Calibration was Created
1008
+ * @property {string} userId ID of the User who Completed this Probe Calibration
1009
+ * @property {string} userName Name of the User who Completed this Probe Calibration
1010
+ * @property {number} preCalibrationOffset The Calibration Offset prior to this Probe Calibration being Created
1011
+ * @property {number} postCalibrationOffset The Calibration Offset after this Probe Calibration was Created
1012
+ * @property {number} preCalibrationTemperature The Temperature Probe reading prior to this Probe Calibration being Created
1013
+ * @property {number} postCalibrationTemperature The Temperature Probe reading after this Probe Calibration was Created
1014
+ * @memberof Controllers.Lab.Site
1015
+ */
1016
+
1017
+ /**
1018
+ * The Update Data for a Probe Calibration
1019
+ *
1020
+ * @typedef {Object} ProbeCalibrationController.UpdateData
1021
+ * @property {string} [rackPositionId] The Rack Position ID this Probe Calibration is associated with
1022
+ * @property {Date} [createdTimestamp] When this Probe Calibration was Created
1023
+ * @property {string} [userId] ID of the User who Completed this Probe Calibration
1024
+ * @property {string} [userName] Name of the User who Completed this Probe Calibration
1025
+ * @property {number} [preCalibrationOffset] The Calibration Offset prior to this Probe Calibration being Created
1026
+ * @property {number} [postCalibrationOffset] The Calibration Offset after this Probe Calibration was Created
1027
+ * @property {number} [preCalibrationTemperature] The Temperature Probe reading prior to this Probe Calibration being Created
1028
+ * @property {number} [postCalibrationTemperature] The Temperature Probe reading after this Probe Calibration was Created
1029
+ * @memberof Controllers.Lab.Site
1030
+ */
1031
+
1032
+ /**
1033
+ * A **UserAccount** Type
1034
+ *
1035
+ * @typedef {Object} ProbeCalibrationController.UserAccount
1036
+ * @property {?string} id The User Account ID
1037
+ * @property {?string} firstName The User's First Name
1038
+ * @property {?string} lastName The User's Last Name
1039
+ * @memberof Controllers.Lab.Site
1040
+ */
1041
+
1042
+ /**
1043
+ * A **CommentItem** Type
1044
+ *
1045
+ * @typedef {Object} ProbeCalibrationController.CommentItem
1046
+ * @property {string} id The Comment ID
1047
+ * @property {ProbeCalibrationController.UserAccount} userAccount
1048
+ * @property {?string} content The Content of the Comment
1049
+ * @property {?Date} createdTimestamp When the Comment was Created
1050
+ * @property {?Date} updatedTimestamp When the Comment was last Updated
1051
+ * @memberof Controllers.Lab.Site
1052
+ */