@ricado/api-client 2.1.0 → 2.3.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 (123) hide show
  1. package/README.md +5 -7
  2. package/dist/ricado.api.client.js +1 -1
  3. package/lib/Controllers/Packhouse/Site/BinTipBinController.js +622 -0
  4. package/lib/Controllers/Packhouse/Site/CompacSizerController.js +3 -3
  5. package/lib/Controllers/Packhouse/Site/FreshQualityPackrunSummaryController.js +657 -0
  6. package/lib/Controllers/Packhouse/Site/PackingLineController.js +25 -1
  7. package/lib/Controllers/Packhouse/Site/PackrunController.js +42 -0
  8. package/lib/Controllers/Packhouse/Site/RejectBinScaleController.js +24 -2
  9. package/lib/Controllers/Packhouse/Site/ShiftHourlyEntryController.js +15 -0
  10. package/lib/Controllers/Packhouse/Site/ShiftQualitySummaryController.js +661 -0
  11. package/lib/Controllers/Packhouse/Site/ShiftTaskController.js +628 -0
  12. package/lib/Controllers/Packhouse/Site/SoftSortBeltController.js +453 -0
  13. package/lib/Controllers/Packhouse/Site/index.js +15 -0
  14. package/lib/DataItems/PointValueItem.js +3 -3
  15. package/lib/Models/AccountPolicyModel.js +7 -7
  16. package/lib/Models/ApiAccountModel.js +7 -7
  17. package/lib/Models/CompanyModel.js +5 -5
  18. package/lib/Models/FirebaseTokenModel.js +8 -8
  19. package/lib/Models/Packhouse/Site/BinTipBinModel.js +367 -0
  20. package/lib/Models/Packhouse/Site/BinTipWeightModel.js +9 -9
  21. package/lib/Models/Packhouse/Site/CompacSizerBatchModel.js +8 -8
  22. package/lib/Models/Packhouse/Site/CompacSizerModel.js +15 -15
  23. package/lib/Models/Packhouse/Site/CompacSizerOutletProductChangeModel.js +10 -10
  24. package/lib/Models/Packhouse/Site/CompacSizerOutletTypeChangeModel.js +8 -8
  25. package/lib/Models/Packhouse/Site/CompacSizerOutletTypeModel.js +6 -6
  26. package/lib/Models/Packhouse/Site/CompacSizerPackrunSummaryModel.js +12 -12
  27. package/lib/Models/Packhouse/Site/DowntimeEventModel.js +14 -14
  28. package/lib/Models/Packhouse/Site/FreshPackPackrunSummaryModel.js +8 -8
  29. package/lib/Models/Packhouse/Site/FreshQualityPackrunSummaryModel.js +481 -0
  30. package/lib/Models/Packhouse/Site/GrowingMethodModel.js +6 -6
  31. package/lib/Models/Packhouse/Site/PackTypeModel.js +8 -8
  32. package/lib/Models/Packhouse/Site/PackingLineModel.js +539 -16
  33. package/lib/Models/Packhouse/Site/PackrunModel.js +81 -15
  34. package/lib/Models/Packhouse/Site/RejectBinModel.js +9 -9
  35. package/lib/Models/Packhouse/Site/RejectBinScaleModel.js +271 -15
  36. package/lib/Models/Packhouse/Site/RejectBinWeightModel.js +10 -10
  37. package/lib/Models/Packhouse/Site/ShiftFocusMeetingModel.js +12 -12
  38. package/lib/Models/Packhouse/Site/ShiftHourlyEntryModel.js +204 -38
  39. package/lib/Models/Packhouse/Site/ShiftModel.js +26 -19
  40. package/lib/Models/Packhouse/Site/ShiftQualitySummaryModel.js +599 -0
  41. package/lib/Models/Packhouse/Site/ShiftTaskModel.js +373 -0
  42. package/lib/Models/Packhouse/Site/SoftSortBeltModel.js +235 -0
  43. package/lib/Models/Packhouse/Site/VarietyModel.js +8 -8
  44. package/lib/Models/Packhouse/Site/index.js +15 -0
  45. package/lib/Models/RTUModel.js +6 -6
  46. package/lib/Models/RTUPluginModel.js +5 -5
  47. package/lib/Models/Site/AlarmGroupModel.js +7 -7
  48. package/lib/Models/Site/AlarmModel.js +17 -17
  49. package/lib/Models/Site/DefinitionModel.js +6 -6
  50. package/lib/Models/Site/PermanentObjectDataModel.js +8 -8
  51. package/lib/Models/Site/PermanentObjectModel.js +7 -7
  52. package/lib/Models/Site/PointModel.js +11 -11
  53. package/lib/Models/Site/TemporaryObjectModel.js +6 -6
  54. package/lib/Models/SiteModel.js +6 -6
  55. package/lib/Models/TokenModel.js +10 -10
  56. package/lib/Models/UserAccountActionTokenModel.js +11 -11
  57. package/lib/Models/UserAccountModel.js +10 -10
  58. package/lib/PackageVersion.js +1 -1
  59. package/lib/Points.js +22 -12
  60. package/lib/WebSocketHelper.js +29 -13
  61. package/lib/index.d.ts +3853 -1290
  62. package/lib/index.js +3 -3
  63. package/package.json +1 -1
  64. package/src/Controllers/Packhouse/Site/BinTipBinController.js +665 -0
  65. package/src/Controllers/Packhouse/Site/CompacSizerController.js +3 -3
  66. package/src/Controllers/Packhouse/Site/FreshQualityPackrunSummaryController.js +700 -0
  67. package/src/Controllers/Packhouse/Site/PackingLineController.js +25 -1
  68. package/src/Controllers/Packhouse/Site/PackrunController.js +52 -0
  69. package/src/Controllers/Packhouse/Site/RejectBinScaleController.js +24 -2
  70. package/src/Controllers/Packhouse/Site/ShiftHourlyEntryController.js +15 -0
  71. package/src/Controllers/Packhouse/Site/ShiftQualitySummaryController.js +704 -0
  72. package/src/Controllers/Packhouse/Site/ShiftTaskController.js +671 -0
  73. package/src/Controllers/Packhouse/Site/SoftSortBeltController.js +474 -0
  74. package/src/Controllers/Packhouse/Site/index.js +10 -0
  75. package/src/DataItems/PointValueItem.js +3 -3
  76. package/src/Models/AccountPolicyModel.js +7 -7
  77. package/src/Models/ApiAccountModel.js +7 -7
  78. package/src/Models/CompanyModel.js +5 -5
  79. package/src/Models/FirebaseTokenModel.js +8 -8
  80. package/src/Models/Packhouse/Site/BinTipBinModel.js +365 -0
  81. package/src/Models/Packhouse/Site/BinTipWeightModel.js +9 -9
  82. package/src/Models/Packhouse/Site/CompacSizerBatchModel.js +8 -8
  83. package/src/Models/Packhouse/Site/CompacSizerModel.js +15 -15
  84. package/src/Models/Packhouse/Site/CompacSizerOutletProductChangeModel.js +10 -10
  85. package/src/Models/Packhouse/Site/CompacSizerOutletTypeChangeModel.js +8 -8
  86. package/src/Models/Packhouse/Site/CompacSizerOutletTypeModel.js +6 -6
  87. package/src/Models/Packhouse/Site/CompacSizerPackrunSummaryModel.js +12 -12
  88. package/src/Models/Packhouse/Site/DowntimeEventModel.js +14 -14
  89. package/src/Models/Packhouse/Site/FreshPackPackrunSummaryModel.js +8 -8
  90. package/src/Models/Packhouse/Site/FreshQualityPackrunSummaryModel.js +523 -0
  91. package/src/Models/Packhouse/Site/GrowingMethodModel.js +6 -6
  92. package/src/Models/Packhouse/Site/PackTypeModel.js +8 -8
  93. package/src/Models/Packhouse/Site/PackingLineModel.js +720 -16
  94. package/src/Models/Packhouse/Site/PackrunModel.js +90 -15
  95. package/src/Models/Packhouse/Site/RejectBinModel.js +9 -9
  96. package/src/Models/Packhouse/Site/RejectBinScaleModel.js +308 -15
  97. package/src/Models/Packhouse/Site/RejectBinWeightModel.js +10 -10
  98. package/src/Models/Packhouse/Site/ShiftFocusMeetingModel.js +12 -12
  99. package/src/Models/Packhouse/Site/ShiftHourlyEntryModel.js +229 -38
  100. package/src/Models/Packhouse/Site/ShiftModel.js +29 -19
  101. package/src/Models/Packhouse/Site/ShiftQualitySummaryModel.js +664 -0
  102. package/src/Models/Packhouse/Site/ShiftTaskModel.js +369 -0
  103. package/src/Models/Packhouse/Site/SoftSortBeltModel.js +215 -0
  104. package/src/Models/Packhouse/Site/VarietyModel.js +8 -8
  105. package/src/Models/Packhouse/Site/index.js +10 -0
  106. package/src/Models/RTUModel.js +6 -6
  107. package/src/Models/RTUPluginModel.js +5 -5
  108. package/src/Models/Site/AlarmGroupModel.js +7 -7
  109. package/src/Models/Site/AlarmModel.js +17 -17
  110. package/src/Models/Site/DefinitionModel.js +6 -6
  111. package/src/Models/Site/PermanentObjectDataModel.js +8 -8
  112. package/src/Models/Site/PermanentObjectModel.js +7 -7
  113. package/src/Models/Site/PointModel.js +11 -11
  114. package/src/Models/Site/TemporaryObjectModel.js +6 -6
  115. package/src/Models/SiteModel.js +6 -6
  116. package/src/Models/TokenModel.js +10 -10
  117. package/src/Models/UserAccountActionTokenModel.js +11 -11
  118. package/src/Models/UserAccountModel.js +10 -10
  119. package/src/PackageVersion.js +1 -1
  120. package/src/Points.js +24 -12
  121. package/src/WebSocketHelper.js +34 -13
  122. package/src/index.js +3 -3
  123. package/types/tslint.json +2 -1
@@ -31,7 +31,7 @@ class ShiftHourlyEntryModel extends BaseModel
31
31
  * @type {string}
32
32
  * @public
33
33
  */
34
- this.id = undefined;
34
+ this.id = "";
35
35
 
36
36
  /**
37
37
  * The Packing Line ID this Hourly Entry is associated with
@@ -39,7 +39,7 @@ class ShiftHourlyEntryModel extends BaseModel
39
39
  * @type {string}
40
40
  * @public
41
41
  */
42
- this.packingLineId = undefined;
42
+ this.packingLineId = "";
43
43
 
44
44
  /**
45
45
  * The Shift ID this Hourly Entry is asssociated with
@@ -47,7 +47,7 @@ class ShiftHourlyEntryModel extends BaseModel
47
47
  * @type {string}
48
48
  * @public
49
49
  */
50
- this.shiftId = undefined;
50
+ this.shiftId = "";
51
51
 
52
52
  /**
53
53
  * When this Hourly Entry was Created
@@ -55,7 +55,7 @@ class ShiftHourlyEntryModel extends BaseModel
55
55
  * @type {Date}
56
56
  * @public
57
57
  */
58
- this.createdTimestamp = undefined;
58
+ this.createdTimestamp = new Date();
59
59
 
60
60
  /**
61
61
  * The Start Timestamp of this Hourly Entry
@@ -63,7 +63,7 @@ class ShiftHourlyEntryModel extends BaseModel
63
63
  * @type {Date}
64
64
  * @public
65
65
  */
66
- this.startTimestamp = undefined;
66
+ this.startTimestamp = new Date();
67
67
 
68
68
  /**
69
69
  * The End Timestamp of this Hourly Entry
@@ -71,7 +71,7 @@ class ShiftHourlyEntryModel extends BaseModel
71
71
  * @type {Date}
72
72
  * @public
73
73
  */
74
- this.endTimestamp = undefined;
74
+ this.endTimestamp = new Date();
75
75
 
76
76
  /**
77
77
  * The Number of People working in all Areas except Class 2 for this Hour
@@ -79,7 +79,7 @@ class ShiftHourlyEntryModel extends BaseModel
79
79
  * @type {?number}
80
80
  * @public
81
81
  */
82
- this.class1Manning = undefined;
82
+ this.class1Manning = null;
83
83
 
84
84
  /**
85
85
  * The Number of People working in the Class 2 Area for this Hour
@@ -87,7 +87,7 @@ class ShiftHourlyEntryModel extends BaseModel
87
87
  * @type {?number}
88
88
  * @public
89
89
  */
90
- this.class2Manning = undefined;
90
+ this.class2Manning = null;
91
91
 
92
92
  /**
93
93
  * The Average Target Number of People that should be working for this Hour
@@ -95,7 +95,15 @@ class ShiftHourlyEntryModel extends BaseModel
95
95
  * @type {?number}
96
96
  * @public
97
97
  */
98
- this.averageManningTarget = undefined;
98
+ this.averageManningTarget = null;
99
+
100
+ /**
101
+ * The Average Cost per Person working in all Areas for this Hour
102
+ *
103
+ * @type {?number}
104
+ * @public
105
+ */
106
+ this.averageCostPerManningUnit = null;
99
107
 
100
108
  /**
101
109
  * The Percentage of Total Tray Equivalents that are Layered for this Hour
@@ -103,7 +111,7 @@ class ShiftHourlyEntryModel extends BaseModel
103
111
  * @type {?number}
104
112
  * @public
105
113
  */
106
- this.layeredTrayPercentage = undefined;
114
+ this.layeredTrayPercentage = null;
107
115
 
108
116
  /**
109
117
  * The Average Class 1 Percentage for this Hour
@@ -111,7 +119,7 @@ class ShiftHourlyEntryModel extends BaseModel
111
119
  * @type {?number}
112
120
  * @public
113
121
  */
114
- this.averageClass1Percentage = undefined;
122
+ this.averageClass1Percentage = null;
115
123
 
116
124
  /**
117
125
  * The Number of Quality R600 Samples that were Ideal for this Hour
@@ -119,15 +127,23 @@ class ShiftHourlyEntryModel extends BaseModel
119
127
  * @type {?number}
120
128
  * @public
121
129
  */
122
- this.qualityR600IdealSamplesPercentage = undefined;
130
+ this.qualityR600IdealSamplesPercentage = null;
131
+
132
+ /**
133
+ * The Average Target Number of Quality R600 Samples that should be Ideal for this Hour
134
+ *
135
+ * @type {?number}
136
+ * @public
137
+ */
138
+ this.averageQualityR600IdealSamplesTarget = null;
123
139
 
124
140
  /**
125
141
  * An Array of Custom Quality Data Items for this Hour
126
142
  *
127
- * @type {Array<{id: string, name: string, type: string, value: number}>}
143
+ * @type {Array<{id: string, name: string, type: string, value: number, averageTarget: number}>}
128
144
  * @public
129
145
  */
130
- this.customQualityData = undefined;
146
+ this.customQualityData = [];
131
147
 
132
148
  /**
133
149
  * The Total Number of Bins Tipped for this Hour
@@ -135,7 +151,7 @@ class ShiftHourlyEntryModel extends BaseModel
135
151
  * @type {number}
136
152
  * @public
137
153
  */
138
- this.totalBinsTipped = undefined;
154
+ this.totalBinsTipped = 0;
139
155
 
140
156
  /**
141
157
  * The Target Number of Bins to Tip for this Hour
@@ -143,7 +159,7 @@ class ShiftHourlyEntryModel extends BaseModel
143
159
  * @type {number}
144
160
  * @public
145
161
  */
146
- this.binsTippedTarget = undefined;
162
+ this.binsTippedTarget = 0;
147
163
 
148
164
  /**
149
165
  * The Total Downtime for this Hour expressed in Seconds
@@ -151,7 +167,7 @@ class ShiftHourlyEntryModel extends BaseModel
151
167
  * @type {number}
152
168
  * @public
153
169
  */
154
- this.totalDowntime = undefined;
170
+ this.totalDowntime = 0;
155
171
 
156
172
  /**
157
173
  * The Total Time that could be Utilized for Packing Fruit (excludes Planned Downtime such as Smoko Breaks) for this Hour expressed in Seconds
@@ -159,7 +175,7 @@ class ShiftHourlyEntryModel extends BaseModel
159
175
  * @type {number}
160
176
  * @public
161
177
  */
162
- this.totalProductionTime = undefined;
178
+ this.totalProductionTime = 0;
163
179
 
164
180
  /**
165
181
  * The Total Number of Class 1 Tray Equivalents Packed for this Hour
@@ -167,7 +183,7 @@ class ShiftHourlyEntryModel extends BaseModel
167
183
  * @type {number}
168
184
  * @public
169
185
  */
170
- this.totalClass1Trays = undefined;
186
+ this.totalClass1Trays = 0;
171
187
 
172
188
  /**
173
189
  * The Total Number of Class 2 Tray Equivalents Packed for this Hour
@@ -175,7 +191,7 @@ class ShiftHourlyEntryModel extends BaseModel
175
191
  * @type {number}
176
192
  * @public
177
193
  */
178
- this.totalClass2Trays = undefined;
194
+ this.totalClass2Trays = 0;
179
195
 
180
196
  /**
181
197
  * The Target Number of Class 1 Tray Equivalents that should be Packed excluding all Downtime for this Hour
@@ -183,7 +199,31 @@ class ShiftHourlyEntryModel extends BaseModel
183
199
  * @type {number}
184
200
  * @public
185
201
  */
186
- this.class1TraysPerHourExcludingDowntimeTarget = undefined;
202
+ this.class1TraysPerHourExcludingDowntimeTarget = 0;
203
+
204
+ /**
205
+ * The Target Number of Class 1 Tray Equivalents that should be Packed after Adjustment (Manning %, Class 1 %, Soft-Sort %) for this Hour
206
+ *
207
+ * @type {?number}
208
+ * @public
209
+ */
210
+ this.averageClass1TraysPerHourAdjustedTarget = null;
211
+
212
+ /**
213
+ * The Average Cost per Tray Equivalent for this Hour
214
+ *
215
+ * @type {?number}
216
+ * @public
217
+ */
218
+ this.averageCostPerTray = null;
219
+
220
+ /**
221
+ * The Average Cost per Tray Equivalent Target for this Hour
222
+ *
223
+ * @type {?number}
224
+ * @public
225
+ */
226
+ this.averageCostPerTrayTarget = null;
187
227
 
188
228
  /**
189
229
  * The Primary Issue Category for this Hourly Entry
@@ -191,7 +231,7 @@ class ShiftHourlyEntryModel extends BaseModel
191
231
  * @type {?string}
192
232
  * @public
193
233
  */
194
- this.primaryIssueCategory = undefined;
234
+ this.primaryIssueCategory = null;
195
235
 
196
236
  /**
197
237
  * The Primary Issue Tag for this Hourly Entry
@@ -199,7 +239,15 @@ class ShiftHourlyEntryModel extends BaseModel
199
239
  * @type {?string}
200
240
  * @public
201
241
  */
202
- this.primaryIssueTag = undefined;
242
+ this.primaryIssueTag = null;
243
+
244
+ /**
245
+ * A Percentage between 0% and 100% indicating how much the Primary Issue impacted Throughput for this Hourly Entry
246
+ *
247
+ * @type {?number}
248
+ * @public
249
+ */
250
+ this.primaryIssuePercentage = null;
203
251
 
204
252
  /**
205
253
  * The Secondary Issue Category for this Hourly Entry
@@ -207,7 +255,7 @@ class ShiftHourlyEntryModel extends BaseModel
207
255
  * @type {?string}
208
256
  * @public
209
257
  */
210
- this.secondaryIssueCategory = undefined;
258
+ this.secondaryIssueCategory = null;
211
259
 
212
260
  /**
213
261
  * The Secondary Issue Tag for this Hourly Entry
@@ -215,7 +263,15 @@ class ShiftHourlyEntryModel extends BaseModel
215
263
  * @type {?string}
216
264
  * @public
217
265
  */
218
- this.secondaryIssueTag = undefined;
266
+ this.secondaryIssueTag = null;
267
+
268
+ /**
269
+ * A Percentage between 0% and 100% indicating how much the Secondary Issue impacted Throughput for this Hourly Entry
270
+ *
271
+ * @type {?number}
272
+ * @public
273
+ */
274
+ this.secondaryIssuePercentage = null;
219
275
 
220
276
  /**
221
277
  * An Optional Focus for the Next Hour
@@ -223,7 +279,7 @@ class ShiftHourlyEntryModel extends BaseModel
223
279
  * @type {?string}
224
280
  * @public
225
281
  */
226
- this.nextHourFocus = undefined;
282
+ this.nextHourFocus = null;
227
283
 
228
284
  /**
229
285
  * An Optional Rating between 1 and 10 on how Satisfied the Line Manager was with this Hour
@@ -231,7 +287,7 @@ class ShiftHourlyEntryModel extends BaseModel
231
287
  * @type {?number}
232
288
  * @public
233
289
  */
234
- this.satisfactionRating = undefined;
290
+ this.satisfactionRating = null;
235
291
 
236
292
  /**
237
293
  * The Status of this Hourly Entry
@@ -239,7 +295,7 @@ class ShiftHourlyEntryModel extends BaseModel
239
295
  * @type {string}
240
296
  * @public
241
297
  */
242
- this.status = undefined;
298
+ this.status = "";
243
299
 
244
300
  /**
245
301
  * The Number of Class 1 Tray Equivalents that would have been Packed this Hour without Planned Downtime (e.g. Smoko Breaks)
@@ -247,7 +303,7 @@ class ShiftHourlyEntryModel extends BaseModel
247
303
  * @type {number}
248
304
  * @public
249
305
  */
250
- this.class1TraysPerHourPotential = undefined;
306
+ this.class1TraysPerHourPotential = 0;
251
307
 
252
308
  /**
253
309
  * The Number of Class 1 Tray Equivalents that would have been Packed this Hour with Zero Downtime
@@ -255,7 +311,7 @@ class ShiftHourlyEntryModel extends BaseModel
255
311
  * @type {number}
256
312
  * @public
257
313
  */
258
- this.class1TraysPerHourExcludingDowntime = undefined;
314
+ this.class1TraysPerHourExcludingDowntime = 0;
259
315
 
260
316
  /**
261
317
  * The Number of Class 1 Tray Equivalents that would have been Packed per Person this Hour without Planned Downtime (e.g. Smoko Breaks)
@@ -263,7 +319,7 @@ class ShiftHourlyEntryModel extends BaseModel
263
319
  * @type {?number}
264
320
  * @public
265
321
  */
266
- this.class1TraysPerManHourPotential = undefined;
322
+ this.class1TraysPerManHourPotential = null;
267
323
 
268
324
  /**
269
325
  * The Number of Class 1 Tray Equivalents that would have been Packed per Person this Hour with Zero Downtime
@@ -271,7 +327,7 @@ class ShiftHourlyEntryModel extends BaseModel
271
327
  * @type {?number}
272
328
  * @public
273
329
  */
274
- this.class1TraysPerManHourExcludingDowntime = undefined;
330
+ this.class1TraysPerManHourExcludingDowntime = null;
275
331
 
276
332
  /**
277
333
  * The Manning Percentage based on the Average Target for this Hour
@@ -279,7 +335,7 @@ class ShiftHourlyEntryModel extends BaseModel
279
335
  * @type {?number}
280
336
  * @public
281
337
  */
282
- this.manningPercentage = undefined;
338
+ this.manningPercentage = null;
283
339
 
284
340
  /**
285
341
  * The Total Number of People working for this Hour
@@ -287,7 +343,7 @@ class ShiftHourlyEntryModel extends BaseModel
287
343
  * @type {?number}
288
344
  * @public
289
345
  */
290
- this.totalManning = undefined;
346
+ this.totalManning = null;
291
347
 
292
348
  /**
293
349
  * The Percentage of Production Time without Downtime for this Hour
@@ -295,7 +351,7 @@ class ShiftHourlyEntryModel extends BaseModel
295
351
  * @type {number}
296
352
  * @public
297
353
  */
298
- this.uptimePercentage = undefined;
354
+ this.uptimePercentage = 0;
299
355
 
300
356
  /**
301
357
  * The Percentage of Downtime for this Hour
@@ -303,7 +359,7 @@ class ShiftHourlyEntryModel extends BaseModel
303
359
  * @type {number}
304
360
  * @public
305
361
  */
306
- this.downtimePercentage = undefined;
362
+ this.downtimePercentage = 0;
307
363
 
308
364
  /**
309
365
  * Whether the Shift Hourly Entry has been deleted
@@ -311,7 +367,7 @@ class ShiftHourlyEntryModel extends BaseModel
311
367
  * @type {boolean}
312
368
  * @public
313
369
  */
314
- this.deleted = undefined;
370
+ this.deleted = false;
315
371
 
316
372
  /**
317
373
  * When the Shift Hourly Entry was last updated
@@ -319,7 +375,7 @@ class ShiftHourlyEntryModel extends BaseModel
319
375
  * @type {Date}
320
376
  * @public
321
377
  */
322
- this.updateTimestamp = undefined;
378
+ this.updateTimestamp = new Date();
323
379
 
324
380
  /**
325
381
  * The Site ID associated with this Shift Hourly Entry
@@ -482,6 +538,23 @@ class ShiftHourlyEntryModel extends BaseModel
482
538
  }());
483
539
  }
484
540
 
541
+ if('averageCostPerManningUnit' in jsonObject)
542
+ {
543
+ model.averageCostPerManningUnit = (function(){
544
+ if(jsonObject['averageCostPerManningUnit'] === null)
545
+ {
546
+ return null;
547
+ }
548
+
549
+ if(typeof jsonObject['averageCostPerManningUnit'] !== 'number')
550
+ {
551
+ return Number(jsonObject['averageCostPerManningUnit']);
552
+ }
553
+
554
+ return jsonObject['averageCostPerManningUnit'];
555
+ }());
556
+ }
557
+
485
558
  if('layeredTrayPercentage' in jsonObject)
486
559
  {
487
560
  model.layeredTrayPercentage = (function(){
@@ -533,6 +606,23 @@ class ShiftHourlyEntryModel extends BaseModel
533
606
  }());
534
607
  }
535
608
 
609
+ if('averageQualityR600IdealSamplesTarget' in jsonObject)
610
+ {
611
+ model.averageQualityR600IdealSamplesTarget = (function(){
612
+ if(jsonObject['averageQualityR600IdealSamplesTarget'] === null)
613
+ {
614
+ return null;
615
+ }
616
+
617
+ if(typeof jsonObject['averageQualityR600IdealSamplesTarget'] !== 'number')
618
+ {
619
+ return Number(jsonObject['averageQualityR600IdealSamplesTarget']);
620
+ }
621
+
622
+ return jsonObject['averageQualityR600IdealSamplesTarget'];
623
+ }());
624
+ }
625
+
536
626
  if('customQualityData' in jsonObject)
537
627
  {
538
628
  model.customQualityData = (function(){
@@ -608,6 +698,22 @@ class ShiftHourlyEntryModel extends BaseModel
608
698
  {
609
699
  customQualityDataItemObject.value = 0;
610
700
  }
701
+
702
+ if(typeof customQualityDataItem === 'object' && 'averageTarget' in customQualityDataItem)
703
+ {
704
+ customQualityDataItemObject.averageTarget = (function(){
705
+ if(typeof customQualityDataItem.averageTarget !== 'number')
706
+ {
707
+ return Number(customQualityDataItem.averageTarget);
708
+ }
709
+
710
+ return customQualityDataItem.averageTarget;
711
+ }());
712
+ }
713
+ else
714
+ {
715
+ customQualityDataItemObject.averageTarget = 0;
716
+ }
611
717
 
612
718
  return customQualityDataItemObject;
613
719
  }());
@@ -699,6 +805,57 @@ class ShiftHourlyEntryModel extends BaseModel
699
805
  }());
700
806
  }
701
807
 
808
+ if('averageClass1TraysPerHourAdjustedTarget' in jsonObject)
809
+ {
810
+ model.averageClass1TraysPerHourAdjustedTarget = (function(){
811
+ if(jsonObject['averageClass1TraysPerHourAdjustedTarget'] === null)
812
+ {
813
+ return null;
814
+ }
815
+
816
+ if(typeof jsonObject['averageClass1TraysPerHourAdjustedTarget'] !== 'number')
817
+ {
818
+ return Number.isInteger(Number(jsonObject['averageClass1TraysPerHourAdjustedTarget'])) ? Number(jsonObject['averageClass1TraysPerHourAdjustedTarget']) : Math.floor(Number(jsonObject['averageClass1TraysPerHourAdjustedTarget']));
819
+ }
820
+
821
+ return Number.isInteger(jsonObject['averageClass1TraysPerHourAdjustedTarget']) ? jsonObject['averageClass1TraysPerHourAdjustedTarget'] : Math.floor(jsonObject['averageClass1TraysPerHourAdjustedTarget']);
822
+ }());
823
+ }
824
+
825
+ if('averageCostPerTray' in jsonObject)
826
+ {
827
+ model.averageCostPerTray = (function(){
828
+ if(jsonObject['averageCostPerTray'] === null)
829
+ {
830
+ return null;
831
+ }
832
+
833
+ if(typeof jsonObject['averageCostPerTray'] !== 'number')
834
+ {
835
+ return Number(jsonObject['averageCostPerTray']);
836
+ }
837
+
838
+ return jsonObject['averageCostPerTray'];
839
+ }());
840
+ }
841
+
842
+ if('averageCostPerTrayTarget' in jsonObject)
843
+ {
844
+ model.averageCostPerTrayTarget = (function(){
845
+ if(jsonObject['averageCostPerTrayTarget'] === null)
846
+ {
847
+ return null;
848
+ }
849
+
850
+ if(typeof jsonObject['averageCostPerTrayTarget'] !== 'number')
851
+ {
852
+ return Number(jsonObject['averageCostPerTrayTarget']);
853
+ }
854
+
855
+ return jsonObject['averageCostPerTrayTarget'];
856
+ }());
857
+ }
858
+
702
859
  if('primaryIssueCategory' in jsonObject)
703
860
  {
704
861
  model.primaryIssueCategory = (function(){
@@ -733,6 +890,23 @@ class ShiftHourlyEntryModel extends BaseModel
733
890
  }());
734
891
  }
735
892
 
893
+ if('primaryIssuePercentage' in jsonObject)
894
+ {
895
+ model.primaryIssuePercentage = (function(){
896
+ if(jsonObject['primaryIssuePercentage'] === null)
897
+ {
898
+ return null;
899
+ }
900
+
901
+ if(typeof jsonObject['primaryIssuePercentage'] !== 'number')
902
+ {
903
+ return Number(jsonObject['primaryIssuePercentage']);
904
+ }
905
+
906
+ return jsonObject['primaryIssuePercentage'];
907
+ }());
908
+ }
909
+
736
910
  if('secondaryIssueCategory' in jsonObject)
737
911
  {
738
912
  model.secondaryIssueCategory = (function(){
@@ -767,6 +941,23 @@ class ShiftHourlyEntryModel extends BaseModel
767
941
  }());
768
942
  }
769
943
 
944
+ if('secondaryIssuePercentage' in jsonObject)
945
+ {
946
+ model.secondaryIssuePercentage = (function(){
947
+ if(jsonObject['secondaryIssuePercentage'] === null)
948
+ {
949
+ return null;
950
+ }
951
+
952
+ if(typeof jsonObject['secondaryIssuePercentage'] !== 'number')
953
+ {
954
+ return Number(jsonObject['secondaryIssuePercentage']);
955
+ }
956
+
957
+ return jsonObject['secondaryIssuePercentage'];
958
+ }());
959
+ }
960
+
770
961
  if('nextHourFocus' in jsonObject)
771
962
  {
772
963
  model.nextHourFocus = (function(){