@ricado/api-client 2.6.1 → 2.7.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 (25) hide show
  1. package/dist/ricado.api.client.js +1 -1
  2. package/lib/Controllers/Packhouse/Site/ReemoonSizerBatchController.js +915 -0
  3. package/lib/Controllers/Packhouse/Site/ReemoonSizerController.js +300 -0
  4. package/lib/Controllers/Packhouse/Site/ReemoonSizerOutletProductChangeController.js +885 -0
  5. package/lib/Controllers/Packhouse/Site/ReemoonSizerPackrunSummaryController.js +914 -0
  6. package/lib/Controllers/Packhouse/Site/index.js +12 -0
  7. package/lib/Models/Packhouse/Site/ReemoonSizerBatchModel.js +547 -0
  8. package/lib/Models/Packhouse/Site/ReemoonSizerModel.js +1272 -0
  9. package/lib/Models/Packhouse/Site/ReemoonSizerOutletProductChangeModel.js +293 -0
  10. package/lib/Models/Packhouse/Site/ReemoonSizerPackrunSummaryModel.js +461 -0
  11. package/lib/Models/Packhouse/Site/index.js +12 -0
  12. package/lib/PackageVersion.js +1 -1
  13. package/lib/index.d.ts +7125 -5162
  14. package/package.json +1 -1
  15. package/src/Controllers/Packhouse/Site/ReemoonSizerBatchController.js +1046 -0
  16. package/src/Controllers/Packhouse/Site/ReemoonSizerController.js +277 -0
  17. package/src/Controllers/Packhouse/Site/ReemoonSizerOutletProductChangeController.js +1016 -0
  18. package/src/Controllers/Packhouse/Site/ReemoonSizerPackrunSummaryController.js +1045 -0
  19. package/src/Controllers/Packhouse/Site/index.js +8 -0
  20. package/src/Models/Packhouse/Site/ReemoonSizerBatchModel.js +596 -0
  21. package/src/Models/Packhouse/Site/ReemoonSizerModel.js +1576 -0
  22. package/src/Models/Packhouse/Site/ReemoonSizerOutletProductChangeModel.js +280 -0
  23. package/src/Models/Packhouse/Site/ReemoonSizerPackrunSummaryModel.js +501 -0
  24. package/src/Models/Packhouse/Site/index.js +8 -0
  25. package/src/PackageVersion.js +1 -1
@@ -0,0 +1,277 @@
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 ReemoonSizerModel from '../../../Models/Packhouse/Site/ReemoonSizerModel';
9
+
10
+ /**
11
+ * Controller Class for Reemoon Sizers
12
+ *
13
+ * @class
14
+ */
15
+ class ReemoonSizerController
16
+ {
17
+ /**
18
+ * Retrieve a Reemoon Sizer [GET /packhouse/sites/{siteId}/reemoon-sizers/{id}]
19
+ *
20
+ * @static
21
+ * @public
22
+ * @param {number} siteId The Site ID
23
+ * @param {string} id The Reemoon Sizer ID
24
+ * @return {Promise<ReemoonSizerModel>}
25
+ */
26
+ static getOne(siteId, id)
27
+ {
28
+ return new Promise((resolve, reject) => {
29
+ RequestHelper.getRequest(`/packhouse/sites/${siteId}/reemoon-sizers/${id}`)
30
+ .then((result) => {
31
+ let resolveValue = (function(){
32
+ return ReemoonSizerModel.fromJSON(result, siteId);
33
+ }());
34
+
35
+ resolve(resolveValue);
36
+ })
37
+ .catch(error => reject(error));
38
+ });
39
+ }
40
+
41
+ /**
42
+ * Update a Reemoon Sizer [PATCH /packhouse/sites/{siteId}/reemoon-sizers/{id}]
43
+ *
44
+ * @static
45
+ * @public
46
+ * @param {number} siteId The Site ID
47
+ * @param {string} id The Reemoon Sizer ID
48
+ * @param {ReemoonSizerController.UpdateData} updateData The Reemoon Sizer Update Data
49
+ * @return {Promise<ReemoonSizerModel>}
50
+ */
51
+ static update(siteId, id, updateData)
52
+ {
53
+ return new Promise((resolve, reject) => {
54
+ RequestHelper.patchRequest(`/packhouse/sites/${siteId}/reemoon-sizers/${id}`, updateData)
55
+ .then((result) => {
56
+ let resolveValue = (function(){
57
+ return ReemoonSizerModel.fromJSON(result, siteId);
58
+ }());
59
+
60
+ resolve(resolveValue);
61
+ })
62
+ .catch(error => reject(error));
63
+ });
64
+ }
65
+
66
+ /**
67
+ * Delete a Reemoon Sizer [DELETE /packhouse/sites/{siteId}/reemoon-sizers/{id}]
68
+ *
69
+ * @static
70
+ * @public
71
+ * @param {number} siteId The Site ID
72
+ * @param {string} id The Reemoon Sizer ID
73
+ * @return {Promise<boolean>}
74
+ */
75
+ static delete(siteId, id)
76
+ {
77
+ return new Promise((resolve, reject) => {
78
+ RequestHelper.deleteRequest(`/packhouse/sites/${siteId}/reemoon-sizers/${id}`)
79
+ .then((result) => {
80
+ resolve(result ?? true);
81
+ })
82
+ .catch(error => reject(error));
83
+ });
84
+ }
85
+
86
+ /**
87
+ * List all Reemoon Sizers [GET /packhouse/sites/{siteId}/reemoon-sizers]
88
+ *
89
+ * @static
90
+ * @public
91
+ * @param {number} siteId The Site ID
92
+ * @param {ReemoonSizerController.GetAllQueryParameters} [queryParameters] The Optional Query Parameters
93
+ * @return {Promise<ReemoonSizerModel[]>}
94
+ */
95
+ static getAll(siteId, queryParameters = {})
96
+ {
97
+ return new Promise((resolve, reject) => {
98
+ RequestHelper.getRequest(`/packhouse/sites/${siteId}/reemoon-sizers`, queryParameters)
99
+ .then((result) => {
100
+ let resolveValue = (function(){
101
+ if(Array.isArray(result) !== true)
102
+ {
103
+ return [];
104
+ }
105
+
106
+ return result.map((resultItem) => {
107
+ return (function(){
108
+ return ReemoonSizerModel.fromJSON(resultItem, siteId);
109
+ }());
110
+ });
111
+ }());
112
+
113
+ resolve(resolveValue);
114
+ })
115
+ .catch(error => reject(error));
116
+ });
117
+ }
118
+
119
+ /**
120
+ * Create a Reemoon Sizer [POST /packhouse/sites/{siteId}/reemoon-sizers]
121
+ *
122
+ * @static
123
+ * @public
124
+ * @param {number} siteId The Site ID
125
+ * @param {ReemoonSizerController.CreateData} createData The Reemoon Sizer Create Data
126
+ * @return {Promise<ReemoonSizerModel>}
127
+ */
128
+ static create(siteId, createData)
129
+ {
130
+ return new Promise((resolve, reject) => {
131
+ RequestHelper.postRequest(`/packhouse/sites/${siteId}/reemoon-sizers`, createData)
132
+ .then((result) => {
133
+ let resolveValue = (function(){
134
+ return ReemoonSizerModel.fromJSON(result, siteId);
135
+ }());
136
+
137
+ resolve(resolveValue);
138
+ })
139
+ .catch(error => reject(error));
140
+ });
141
+ }
142
+ }
143
+
144
+ export default ReemoonSizerController;
145
+
146
+ /**
147
+ * The Optional Query Parameters for the getAll Function
148
+ *
149
+ * @typedef {Object} ReemoonSizerController.GetAllQueryParameters
150
+ * @property {?number} [rtuId] The RTU this Reemoon Sizer belongs to
151
+ * @property {string} [name] The Reemoon Sizer Name
152
+ * @property {string} [packingLineId] The Packing Line ID that manages this Reemoon Sizer
153
+ * @property {string} [sizerType] The Sizer Type
154
+ * @memberof Controllers.Packhouse.Site
155
+ */
156
+
157
+ /**
158
+ * The Create Data for a Reemoon Sizer
159
+ *
160
+ * @typedef {Object} ReemoonSizerController.CreateData
161
+ * @property {?number} [rtuId] The RTU this Reemoon Sizer belongs to
162
+ * @property {string} name The Reemoon Sizer Name
163
+ * @property {string} packingLineId The Packing Line ID that manages this Reemoon Sizer
164
+ * @property {string} sizerType The Sizer Type
165
+ * @property {number} [autoCreateBatchDelay] The Auto Create Batch Delay in Seconds for this Reemoon Sizer
166
+ * @property {{currentBatchId: number, currentBatchName: number, currentBatchVarietyCode: number, currentBatchStartTimestamp: number, currentBatchPackrunId: number, currentBatchPackrunName: number, machineAverageFruitWeight: number, machineAverageFruitSize: number, machineCupFill: number, machineIncomingFruitPerMinute: number, machineRecycledFruitPerMinute: number, machineTraysPerHour: number, machineTonnesPerHour: number, machineRodsPerMinute: number, machineIncomingFruitPerMinuteBySize: ?number, machineRecycledFruitPerMinuteBySize: ?number, machineLanesFruitPerMinuteBySize: ?number, createNewBatchRequest: number, createBatchOnPackrunChange: number, createBatchOnTimeBatchChange: number, outletGroupSummaries: number, products: number, packTypeOutletUtilizationTargets: number, class1TraysPerHour: ?number}} points The Points used by this Reemoon Sizer
167
+ * @property {Array<ReemoonSizerController.ReemoonSizerLane>} [lanes] The Lanes defined for this Reemoon Sizer
168
+ * @property {Array<ReemoonSizerController.ReemoonSizerOutlet>} [outlets] The Outlets defined for this Reemoon Sizer
169
+ * @property {Array<ReemoonSizerController.ReemoonSizerFruitSize>} [fruitSizes] The Fruit Sizes defined and handled by this Reemoon Sizer
170
+ * @property {?ReemoonSizerController.FreshPackReemoonSizerIntegration} [freshPackIntegration] The FreshPack Integration Configuration for this Reemoon Sizer
171
+ * @property {ReemoonSizerController.ReemoonSizerIntegration} reemoonIntegration The Reemoon Integration Configuration for this Reemoon Sizer
172
+ * @property {Array<ReemoonSizerController.RiserSource|ReemoonSizerController.SizerSource>} [sources] An Array of Sources that deliver Fruit to this Reemoon Sizer
173
+ * @property {Array<ReemoonSizerController.ProductClassType>} [productClassTypes] An Array of Product to Class Type Maps for this Reemoon Sizer
174
+ * @memberof Controllers.Packhouse.Site
175
+ */
176
+
177
+ /**
178
+ * The Update Data for a Reemoon Sizer
179
+ *
180
+ * @typedef {Object} ReemoonSizerController.UpdateData
181
+ * @property {string} [name] The Reemoon Sizer Name
182
+ * @property {string} [packingLineId] The Packing Line ID that manages this Reemoon Sizer
183
+ * @property {string} [sizerType] The Sizer Type
184
+ * @property {number} [autoCreateBatchDelay] The Auto Create Batch Delay in Seconds for this Reemoon Sizer
185
+ * @property {{currentBatchId: number, currentBatchName: number, currentBatchVarietyCode: number, currentBatchStartTimestamp: number, currentBatchPackrunId: number, currentBatchPackrunName: number, machineAverageFruitWeight: number, machineAverageFruitSize: number, machineCupFill: number, machineIncomingFruitPerMinute: number, machineRecycledFruitPerMinute: number, machineTraysPerHour: number, machineTonnesPerHour: number, machineRodsPerMinute: number, machineIncomingFruitPerMinuteBySize: ?number, machineRecycledFruitPerMinuteBySize: ?number, machineLanesFruitPerMinuteBySize: ?number, createNewBatchRequest: number, createBatchOnPackrunChange: number, createBatchOnTimeBatchChange: number, outletGroupSummaries: number, products: number, packTypeOutletUtilizationTargets: number, class1TraysPerHour: ?number}} [points] The Points used by this Reemoon Sizer
186
+ * @property {Array<ReemoonSizerController.ReemoonSizerLane>} [lanes] The Lanes defined for this Reemoon Sizer
187
+ * @property {Array<ReemoonSizerController.ReemoonSizerOutlet>} [outlets] The Outlets defined for this Reemoon Sizer
188
+ * @property {Array<ReemoonSizerController.ReemoonSizerFruitSize>} [fruitSizes] The Fruit Sizes defined and handled by this Reemoon Sizer
189
+ * @property {?ReemoonSizerController.FreshPackReemoonSizerIntegration} [freshPackIntegration] The FreshPack Integration Configuration for this Reemoon Sizer
190
+ * @property {ReemoonSizerController.ReemoonSizerIntegration} [reemoonIntegration] The Reemoon Integration Configuration for this Reemoon Sizer
191
+ * @property {Array<ReemoonSizerController.RiserSource|ReemoonSizerController.SizerSource>} [sources] An Array of Sources that deliver Fruit to this Reemoon Sizer
192
+ * @property {Array<ReemoonSizerController.ProductClassType>} [productClassTypes] An Array of Product to Class Type Maps for this Reemoon Sizer
193
+ * @memberof Controllers.Packhouse.Site
194
+ */
195
+
196
+ /**
197
+ * A **ReemoonSizerLane** Type
198
+ *
199
+ * @typedef {Object} ReemoonSizerController.ReemoonSizerLane
200
+ * @property {string} id Unique ID of this Lane
201
+ * @property {number} number The Lane Number
202
+ * @property {{cupFill: number}} points The Points used by this Lane
203
+ * @memberof Controllers.Packhouse.Site
204
+ */
205
+
206
+ /**
207
+ * A **ReemoonSizerOutlet** Type
208
+ *
209
+ * @typedef {Object} ReemoonSizerController.ReemoonSizerOutlet
210
+ * @property {string} id Unique ID of this Outlet
211
+ * @property {number} number The Outlet Number
212
+ * @property {string} type The Outlet Type
213
+ * @property {{name: number, fruitPerMinute: number, packsPerMinute: number, utilization: number, status: number, productId: number, productName: number}} points The Points used by this Outlet
214
+ * @memberof Controllers.Packhouse.Site
215
+ */
216
+
217
+ /**
218
+ * A **ReemoonSizerFruitSize** Type
219
+ *
220
+ * @typedef {Object} ReemoonSizerController.ReemoonSizerFruitSize
221
+ * @property {string} fruitSize The Fruit Size
222
+ * @property {{incomingFruitPerMinute: number, recycledFruitPerMinute: number, allocatedFruitPerMinute: number}} points The Points used by this Fruit Size Configuration
223
+ * @memberof Controllers.Packhouse.Site
224
+ */
225
+
226
+ /**
227
+ * A **FreshPackReemoonSizerIntegration** Type
228
+ *
229
+ * @typedef {Object} ReemoonSizerController.FreshPackReemoonSizerIntegration
230
+ * @property {Object} points The Points used by this FreshPack Sizer Integration
231
+ * @property {boolean} enabled Whether this FreshPack Sizer Integration is Enabled
232
+ * @property {number} materialGroupId The FreshPack Material Group ID to be used for Multi-Grower Bins from this Sizer
233
+ * @property {number} binTypeId The FreshPack Bin Type ID to be used for Multi-Grower Bins from this Sizer
234
+ * @property {string[]} bulkWeightClassTypes An Array of Class Types that should be Sent to FreshPack as Bulk Weights in Multi-Grower Bins
235
+ * @memberof Controllers.Packhouse.Site
236
+ */
237
+
238
+ /**
239
+ * A **ReemoonSizerIntegration** Type
240
+ *
241
+ * @typedef {Object} ReemoonSizerController.ReemoonSizerIntegration
242
+ * @property {{apiCommunicationStatus: number, machineId: number, machineName: number, machineLaneCount: number, machineOutletCount: number, machineOutletDetails: number}} points The Points used by this Reemoon Sizer Integration
243
+ * @property {boolean} enabled Whether this Reemoon Sizer Integration is Enabled
244
+ * @property {string} username Username for Authenticating with the Reemoon Sizer API
245
+ * @property {string} password Password for Authenticating with the Reemoon Sizer API
246
+ * @property {string} apiBaseUrl Base URL of the Reemoon Sizer API
247
+ * @memberof Controllers.Packhouse.Site
248
+ */
249
+
250
+ /**
251
+ * A **RiserSource** Type
252
+ *
253
+ * @typedef {Object} ReemoonSizerController.RiserSource
254
+ * @property {string} type The Source Type
255
+ * @property {string} riserId ID of the Riser Object
256
+ * @memberof Controllers.Packhouse.Site
257
+ */
258
+
259
+ /**
260
+ * A **SizerSource** Type
261
+ *
262
+ * @typedef {Object} ReemoonSizerController.SizerSource
263
+ * @property {string} type The Source Type
264
+ * @property {string} sizerId ID of the Sizer Object
265
+ * @property {number[]} outletNumbers An Array of Outlet Numbers on the Source Sizer that supply this Reemoon Sizer
266
+ * @memberof Controllers.Packhouse.Site
267
+ */
268
+
269
+ /**
270
+ * A **ProductClassType** Type
271
+ *
272
+ * @typedef {Object} ReemoonSizerController.ProductClassType
273
+ * @property {string} productName Name of the Reemoon Sizer Product
274
+ * @property {string} classType The Class Type for this Reemoon Sizer Product
275
+ * @property {string} matchType The Match Type used when Evaluating the Product Name
276
+ * @memberof Controllers.Packhouse.Site
277
+ */