@d19n/youfibre-odin-sdk 2.0.294 → 2.0.296
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.
- package/README.md +5 -2
- package/dist/EntityRegistry.d.ts +2 -2
- package/dist/EntityRegistry.js +2 -2
- package/dist/OdinApiClient.d.ts +4 -4
- package/dist/OdinApiClient.js +6 -6
- package/dist/OdinDbClient.d.ts +4 -4
- package/dist/OdinDbClient.js +6 -6
- package/dist/accessors-v2/{YfFieldServiceVisitAccessor.d.ts → YfFieldVisitOutcomeFormAccessor.d.ts} +24 -24
- package/dist/accessors-v2/{YfFieldServiceVisitAccessor.js → YfFieldVisitOutcomeFormAccessor.js} +21 -21
- package/dist/accessors-v2/index.d.ts +1 -1
- package/dist/accessors-v2/index.js +3 -3
- package/dist/actions-v2/CompleteServiceWorkOrderFlowDto.d.ts +230 -594
- package/dist/actions-v2/CompleteServiceWorkOrderFlowDto.js +30 -30
- package/dist/actions-v2/CreateAmcoCollectionReminder10DayEmailDto.d.ts +135 -0
- package/dist/actions-v2/CreateAmcoCollectionReminder10DayEmailDto.js +59 -0
- package/dist/actions-v2/CreateAmcoCollectionReminder5DayEmailDto.d.ts +135 -0
- package/dist/actions-v2/CreateAmcoCollectionReminder5DayEmailDto.js +59 -0
- package/dist/api-sdk-v2/AddressApi.d.ts +2 -0
- package/dist/api-sdk-v2/AddressApi.js +6 -0
- package/dist/api-sdk-v2/FileApi.d.ts +2 -0
- package/dist/api-sdk-v2/FileApi.js +6 -0
- package/dist/api-sdk-v2/NoteApi.d.ts +2 -0
- package/dist/api-sdk-v2/NoteApi.js +6 -0
- package/dist/api-sdk-v2/WorkOrderApi.d.ts +2 -0
- package/dist/api-sdk-v2/WorkOrderApi.js +6 -0
- package/dist/api-sdk-v2/YfFieldVisitOutcomeFormApi.d.ts +54 -0
- package/dist/api-sdk-v2/YfFieldVisitOutcomeFormApi.js +173 -0
- package/dist/db-accessors-v2/{YfFieldServiceVisitDbAccessor.d.ts → YfFieldVisitOutcomeFormDbAccessor.d.ts} +22 -22
- package/dist/db-accessors-v2/{YfFieldServiceVisitDbAccessor.js → YfFieldVisitOutcomeFormDbAccessor.js} +21 -21
- package/dist/db-accessors-v2/index.d.ts +1 -1
- package/dist/db-accessors-v2/index.js +3 -3
- package/dist/db-sdk-v2/AddressDb.d.ts +2 -0
- package/dist/db-sdk-v2/AddressDb.js +6 -0
- package/dist/db-sdk-v2/FileDb.d.ts +2 -0
- package/dist/db-sdk-v2/FileDb.js +6 -0
- package/dist/db-sdk-v2/NoteDb.d.ts +2 -0
- package/dist/db-sdk-v2/NoteDb.js +6 -0
- package/dist/db-sdk-v2/WorkOrderDb.d.ts +2 -0
- package/dist/db-sdk-v2/WorkOrderDb.js +6 -0
- package/dist/db-sdk-v2/YfFieldVisitOutcomeFormDb.d.ts +126 -0
- package/dist/db-sdk-v2/YfFieldVisitOutcomeFormDb.js +222 -0
- package/dist/entities-v2/Address.d.ts +3 -0
- package/dist/entities-v2/File.d.ts +3 -0
- package/dist/entities-v2/Note.d.ts +3 -0
- package/dist/entities-v2/WorkOrder.d.ts +106 -1
- package/dist/entities-v2/WorkOrder.js +7 -1
- package/dist/entities-v2/YfFieldVisitOutcomeForm.d.ts +1223 -0
- package/dist/entities-v2/YfFieldVisitOutcomeForm.js +503 -0
- package/dist/records-v2/AddressRecord.d.ts +20 -20
- package/dist/records-v2/AddressRecord.js +33 -33
- package/dist/records-v2/EmailRecord.d.ts +58 -0
- package/dist/records-v2/EmailRecord.js +72 -0
- package/dist/records-v2/FileRecord.d.ts +20 -20
- package/dist/records-v2/FileRecord.js +33 -33
- package/dist/records-v2/NoteRecord.d.ts +20 -20
- package/dist/records-v2/NoteRecord.js +33 -33
- package/dist/records-v2/WorkOrderRecord.d.ts +24 -24
- package/dist/records-v2/WorkOrderRecord.js +38 -38
- package/dist/records-v2/{YfFieldServiceVisitRecord.d.ts → YfFieldVisitOutcomeFormRecord.d.ts} +76 -61
- package/dist/records-v2/{YfFieldServiceVisitRecord.js → YfFieldVisitOutcomeFormRecord.js} +112 -96
- package/dist/records-v2/index.d.ts +1 -1
- package/dist/records-v2/index.js +4 -4
- package/package.json +1 -1
|
@@ -112,880 +112,516 @@ export declare class CompleteServiceWorkOrderDto extends OdinRecordUpdateDto<Com
|
|
|
112
112
|
});
|
|
113
113
|
}
|
|
114
114
|
/**
|
|
115
|
-
* Properties for
|
|
115
|
+
* Properties for YfFieldVisitOutcomeForm action
|
|
116
116
|
*
|
|
117
|
-
* @property Required fields:
|
|
118
|
-
* @property Optional fields:
|
|
117
|
+
* @property Required fields: 42
|
|
118
|
+
* @property Optional fields: 15
|
|
119
119
|
*/
|
|
120
|
-
export interface
|
|
120
|
+
export interface YfFieldVisitOutcomeFormProperties {
|
|
121
121
|
/**
|
|
122
|
-
*
|
|
122
|
+
* ServiceVisitDateTime
|
|
123
123
|
*
|
|
124
|
-
*
|
|
125
|
-
* @type {
|
|
124
|
+
* When the visit started. Field Services asked whether this can auto-populate to now; prefill is a form-renderer capability and is tracked separately, so it is captured by hand until then.
|
|
125
|
+
* @type {DATE_TIME}
|
|
126
126
|
* @required
|
|
127
127
|
*/
|
|
128
|
-
|
|
128
|
+
ServiceVisitDateTime: string;
|
|
129
129
|
/**
|
|
130
|
-
*
|
|
130
|
+
* EngineerName
|
|
131
131
|
*
|
|
132
|
-
*
|
|
133
|
-
* @type {
|
|
132
|
+
* The attending engineer. Asked for as free text; auto-populating from the logged-in user is the same prefill question as ServiceVisitDateTime.
|
|
133
|
+
* @type {NAME}
|
|
134
134
|
* @required
|
|
135
135
|
*/
|
|
136
|
-
|
|
136
|
+
EngineerName: string;
|
|
137
137
|
/**
|
|
138
|
-
*
|
|
138
|
+
* WorkOrderNumber
|
|
139
139
|
*
|
|
140
|
-
*
|
|
141
|
-
* @type {
|
|
140
|
+
* The work order this visit was made against. Deliberately carries no UNIQUE validator: a repeat visit to the same work order is a second form, not an overwrite of the first.
|
|
141
|
+
* @type {ALPHA_NUMERICAL}
|
|
142
142
|
* @required
|
|
143
143
|
*/
|
|
144
|
-
|
|
144
|
+
WorkOrderNumber: string;
|
|
145
145
|
/**
|
|
146
|
-
*
|
|
146
|
+
* Location
|
|
147
147
|
*
|
|
148
|
-
*
|
|
149
|
-
* @type {
|
|
148
|
+
* The property visited, linked to the CRM address record.
|
|
149
|
+
* @type {LOOKUP}
|
|
150
150
|
* @required
|
|
151
151
|
*/
|
|
152
|
-
|
|
152
|
+
Location: string;
|
|
153
153
|
/**
|
|
154
|
-
*
|
|
154
|
+
* PropertyFrontPhotoConfirmed
|
|
155
155
|
*
|
|
156
|
-
*
|
|
156
|
+
* Proof of attendance at the right property. The confirmation is the enforced half; the photo beside it is not.
|
|
157
157
|
* @type {ENUM}
|
|
158
158
|
* @required
|
|
159
159
|
*/
|
|
160
|
-
|
|
161
|
-
/**
|
|
162
|
-
* What makes your working environment unsafe?
|
|
163
|
-
*
|
|
164
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
165
|
-
* @type {TEXT_LONG}
|
|
166
|
-
* @required
|
|
167
|
-
* @visibleWhen WorkEnvironmentSafe = ["NO"]
|
|
168
|
-
*/
|
|
169
|
-
WorkEnvironmentUnsafe: string;
|
|
170
|
-
/**
|
|
171
|
-
* Please capture images
|
|
172
|
-
*
|
|
173
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
174
|
-
* @type {FILE_MULTIPLE}
|
|
175
|
-
* @required
|
|
176
|
-
* @visibleWhen WorkEnvironmentSafe = ["NO"]
|
|
177
|
-
*/
|
|
178
|
-
WorkEnvironmentUnsafePhoto: string;
|
|
160
|
+
PropertyFrontPhotoConfirmed: string;
|
|
179
161
|
/**
|
|
180
|
-
*
|
|
162
|
+
* CustomerAtInstall
|
|
181
163
|
*
|
|
182
|
-
*
|
|
164
|
+
* Whether the person on site witnessed the original install — the difference between a first-hand account of what changed and a second-hand one.
|
|
183
165
|
* @type {ENUM}
|
|
184
166
|
* @required
|
|
185
167
|
*/
|
|
186
|
-
|
|
168
|
+
CustomerAtInstall: string;
|
|
187
169
|
/**
|
|
188
|
-
*
|
|
170
|
+
* ONTFixedToWall
|
|
189
171
|
*
|
|
190
|
-
*
|
|
172
|
+
* An ONT on an extension lead or sitting loose is a repeat-fault cause in its own right.
|
|
191
173
|
* @type {ENUM}
|
|
192
174
|
* @required
|
|
193
175
|
*/
|
|
194
|
-
|
|
176
|
+
ONTFixedToWall: string;
|
|
195
177
|
/**
|
|
196
|
-
*
|
|
178
|
+
* ONTChecksPassed
|
|
197
179
|
*
|
|
198
|
-
*
|
|
180
|
+
* The gate on the whole ONT branch: NO is what asks for a failure reason.
|
|
199
181
|
* @type {ENUM}
|
|
200
182
|
* @required
|
|
201
183
|
*/
|
|
202
|
-
|
|
184
|
+
ONTChecksPassed: string;
|
|
203
185
|
/**
|
|
204
|
-
*
|
|
186
|
+
* ONTCheckFailReason
|
|
205
187
|
*
|
|
206
|
-
*
|
|
188
|
+
* Why the ONT check failed. Only asked when ONTChecksPassed is NO.
|
|
207
189
|
* @type {ENUM}
|
|
208
190
|
* @required
|
|
191
|
+
* @visibleWhen ONTChecksPassed = ["NO"]
|
|
209
192
|
*/
|
|
210
|
-
|
|
193
|
+
ONTCheckFailReason: string;
|
|
211
194
|
/**
|
|
212
|
-
*
|
|
195
|
+
* EngineerDiagnosis
|
|
213
196
|
*
|
|
214
|
-
*
|
|
197
|
+
* The engineer's diagnosis category. A clean 8-option list from the 2026-08-21 template; the legacy 16-option list stays on YfFieldServiceVisit with the records that used it.
|
|
215
198
|
* @type {ENUM}
|
|
216
199
|
* @required
|
|
217
200
|
*/
|
|
218
201
|
EngineerDiagnosis: string;
|
|
219
202
|
/**
|
|
220
|
-
*
|
|
221
|
-
*
|
|
222
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
223
|
-
* @type {ENUM}
|
|
224
|
-
* @required
|
|
225
|
-
* @visibleWhen EngineerDiagnosis = ["NEW_INSTALL_SETUP"]
|
|
226
|
-
*/
|
|
227
|
-
YouMeshCustomerBenefit: string;
|
|
228
|
-
/**
|
|
229
|
-
* Offer this solution, factoring in guidelines for YouMesh based on property size. If accepted, install this and demo to the CM. Call CS to add this cost to the customers account.
|
|
230
|
-
*
|
|
231
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
232
|
-
* @type {ENUM}
|
|
233
|
-
* @required
|
|
234
|
-
* @visibleWhen YouMeshCustomerBenefit = ["YES"]
|
|
235
|
-
*/
|
|
236
|
-
YouMeshCustomerOutcome: string;
|
|
237
|
-
/**
|
|
238
|
-
* Will the customer benefit from YouPhone?
|
|
239
|
-
*
|
|
240
|
-
* Contact information field for YfFieldServiceVisit. Used by Field Operations team for communication.
|
|
241
|
-
* @type {ENUM}
|
|
242
|
-
* @required
|
|
243
|
-
* @visibleWhen EngineerDiagnosis = ["NEW_INSTALL_SETUP"]
|
|
244
|
-
*/
|
|
245
|
-
YouPhoneCustomerBenefit: string;
|
|
246
|
-
/**
|
|
247
|
-
* Offer this solution, factoring in, if the customer wishes to retain an existing number. If accepted, install this by swapping ONT. Call CS to add this cost to the customer account / arrange retaining thier number.
|
|
248
|
-
*
|
|
249
|
-
* Contact information field for YfFieldServiceVisit. Used by Field Operations team for communication.
|
|
250
|
-
* @type {ENUM}
|
|
251
|
-
* @required
|
|
252
|
-
* @visibleWhen YouPhoneCustomerBenefit = ["YES"]
|
|
253
|
-
*/
|
|
254
|
-
YouPhoneCustomerOutcome: string;
|
|
255
|
-
/**
|
|
256
|
-
* What are you replacing?
|
|
257
|
-
*
|
|
258
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
259
|
-
* @type {ENUM}
|
|
260
|
-
* @required
|
|
261
|
-
* @visibleWhen EngineerDiagnosis = ["EQUIPMENT_REPLACEMENT_FAULTY"]
|
|
262
|
-
*/
|
|
263
|
-
WhatAreYouReplacing1: string;
|
|
264
|
-
/**
|
|
265
|
-
* Does the Customer report any other concerns?
|
|
266
|
-
*
|
|
267
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
268
|
-
* @type {ENUM}
|
|
269
|
-
* @required
|
|
270
|
-
* @visibleWhen EngineerDiagnosis = ["EQUIPMENT_REPLACEMENT_FAULTY"]
|
|
271
|
-
*/
|
|
272
|
-
CustomerOtherConcerns: string;
|
|
273
|
-
/**
|
|
274
|
-
* Write which other concerns customer is reporting.
|
|
275
|
-
*
|
|
276
|
-
* Free-text notes field for YfFieldServiceVisit. Used by Field Operations team for documentation.
|
|
277
|
-
* @type {TEXT_LONG}
|
|
278
|
-
* @required
|
|
279
|
-
* @visibleWhen CustomerOtherConcerns = ["YES"]
|
|
280
|
-
*/
|
|
281
|
-
OtherConcernsDescription: string;
|
|
282
|
-
/**
|
|
283
|
-
* Is this the first time Mesh is being installed?
|
|
284
|
-
*
|
|
285
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
286
|
-
* @type {ENUM}
|
|
287
|
-
* @required
|
|
288
|
-
* @visibleWhen EngineerDiagnosis = ["INSTALL_MESH"]
|
|
289
|
-
*/
|
|
290
|
-
YouMeshInstalledFirstTime: string;
|
|
291
|
-
/**
|
|
292
|
-
* Please include a screenshot of the Network Topology from Eero insights before you add Mesh.
|
|
293
|
-
*
|
|
294
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
295
|
-
* @type {FILE_MULTIPLE}
|
|
296
|
-
* @required
|
|
297
|
-
* @visibleWhen YouMeshInstalledFirstTime = ["NO"]
|
|
298
|
-
*/
|
|
299
|
-
NetworkTopologyPhoto: string;
|
|
300
|
-
/**
|
|
301
|
-
* Go to the problem area & perfrom a Wi-Fi speedtest using EX1 before adding Mesh - this is to show a clear improvement once it is installed.
|
|
302
|
-
*
|
|
303
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
304
|
-
* @type {FILE_MULTIPLE}
|
|
305
|
-
* @required
|
|
306
|
-
* @visibleWhen EngineerDiagnosis = ["INSTALL_MESH"]
|
|
307
|
-
*/
|
|
308
|
-
WiFiSpeedTest: string;
|
|
309
|
-
/**
|
|
310
|
-
* What are you going to hardwire?
|
|
311
|
-
*
|
|
312
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
313
|
-
* @type {TEXT_LONG}
|
|
314
|
-
* @required
|
|
315
|
-
* @visibleWhen EngineerDiagnosis = ["HARDWIRE_DEVICES"]
|
|
316
|
-
*/
|
|
317
|
-
HardWireDevices: string;
|
|
318
|
-
/**
|
|
319
|
-
* Go to the worst-performing location and perform one Wi-Fi speed test using approved test equipment. Save and attach a screenshot or test report once complete.
|
|
320
|
-
*
|
|
321
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
322
|
-
* @type {FILE_MULTIPLE}
|
|
323
|
-
* @required
|
|
324
|
-
* @visibleWhen EngineerDiagnosis = ["SLOW_SPEEDS"]
|
|
325
|
-
*/
|
|
326
|
-
WiFiSpeedTestWorstLocation: string;
|
|
327
|
-
/**
|
|
328
|
-
* Hardwire EX1 to router and complete speedtest Screen Shot of EX1 Report by tapping the clipboard icon awaiting the report to generate then attach to form.
|
|
329
|
-
*
|
|
330
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
331
|
-
* @type {FILE_MULTIPLE}
|
|
332
|
-
* @required
|
|
333
|
-
* @visibleWhen EngineerDiagnosis = ["CONNECTION_DROP_OUTS"]
|
|
334
|
-
*/
|
|
335
|
-
EX1Report1: string;
|
|
336
|
-
/**
|
|
337
|
-
* If a particular area is impacted, go to this location and perform 1 Wi-Fi Speedtest using the EX1 Screen Shot of EX1 Report by tapping the clipboard icon awating the report ro generate then attach to form. If a particular area is impacted, go to this location and perform 1 Wi-Fi Speedtest using the EX1 Screen Shot of EX1 Report by tapping the clipboard icon awating the report ro generate then attach to form. Turn on screen reader support. To enable screen reader support, press Ctrl+Alt+Z To learn about keyboard shortcuts, press Ctrl+slash.
|
|
338
|
-
*
|
|
339
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
340
|
-
* @type {FILE_MULTIPLE}
|
|
341
|
-
* @required
|
|
342
|
-
* @visibleWhen EngineerDiagnosis = ["CONNECTION_DROP_OUTS"]
|
|
343
|
-
*/
|
|
344
|
-
EX1Report2: string;
|
|
345
|
-
/**
|
|
346
|
-
* Go to the problem location and perform 1 Wi-Fi Speedtest using the EX1 - include screen shot of Eero insights network topology. Attach PDF results
|
|
347
|
-
*
|
|
348
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
349
|
-
* @type {FILE_MULTIPLE}
|
|
350
|
-
* @required
|
|
351
|
-
* @visibleWhen EngineerDiagnosis = ["WIFI_COVERAGE_ISSUE"]
|
|
352
|
-
*/
|
|
353
|
-
WiFiCoverageReport: string;
|
|
354
|
-
/**
|
|
355
|
-
* Go to the problem location and perform 1 Wi-Fi Speedtest using the EX1 Screen Shot of EX1 Report by tapping the clipboard icon awating the report ro generate then attach to form. Go to the problem location and perform 1 Wi-Fi Speedtest using the EX1. Screen Shot of EX1 Report by tapping the clipboard icon awating the report ro generate then attach to form. Turn on screen reader support. To enable screen reader support, press Ctrl+Alt+Z. To learn about keyboard shortcuts, press Ctrl+slash.
|
|
356
|
-
*
|
|
357
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
358
|
-
* @type {FILE_MULTIPLE}
|
|
359
|
-
* @required
|
|
360
|
-
* @visibleWhen EngineerDiagnosis = ["WIFI_INTERFERENCE_ISSUE"]
|
|
361
|
-
*/
|
|
362
|
-
WiFiInterferenceReport: string;
|
|
363
|
-
/**
|
|
364
|
-
* What is the device having the issue?
|
|
365
|
-
*
|
|
366
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
367
|
-
* @type {TEXT}
|
|
368
|
-
* @required
|
|
369
|
-
* @visibleWhen EngineerDiagnosis = ["DEVICE_ISSUE"]
|
|
370
|
-
*/
|
|
371
|
-
DeviceReport1: string;
|
|
372
|
-
/**
|
|
373
|
-
* Have you checked the CUI database?
|
|
374
|
-
*
|
|
375
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
376
|
-
* @type {ENUM}
|
|
377
|
-
* @required
|
|
378
|
-
* @visibleWhen EngineerDiagnosis = ["DEVICE_ISSUE"]
|
|
379
|
-
*/
|
|
380
|
-
DeviceReport2: string;
|
|
381
|
-
/**
|
|
382
|
-
* What is the other device?
|
|
203
|
+
* EngineerDiagnosisCustomerDevice
|
|
383
204
|
*
|
|
384
|
-
*
|
|
385
|
-
* @type {TEXT}
|
|
386
|
-
* @required
|
|
387
|
-
* @visibleWhen EngineerDiagnosis = ["OTHER_DEVICE_ISSUE"]
|
|
388
|
-
*/
|
|
389
|
-
OtherDeviceReport1: string;
|
|
390
|
-
/**
|
|
391
|
-
* Have you checked the CUI database?
|
|
392
|
-
*
|
|
393
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
205
|
+
* Which of the customer's own devices is at fault. Only asked when the diagnosis is Customer Device Issue.
|
|
394
206
|
* @type {ENUM}
|
|
395
207
|
* @required
|
|
396
|
-
* @visibleWhen EngineerDiagnosis = ["
|
|
397
|
-
*/
|
|
398
|
-
OtherDeviceReport2: string;
|
|
399
|
-
/**
|
|
400
|
-
* What does the customer need help with?
|
|
401
|
-
*
|
|
402
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
403
|
-
* @type {TEXT_LONG}
|
|
404
|
-
* @required
|
|
405
|
-
* @visibleWhen EngineerDiagnosis = ["CM_TRAINING"]
|
|
406
|
-
*/
|
|
407
|
-
CMTraining: string;
|
|
408
|
-
/**
|
|
409
|
-
* What is the issue?
|
|
410
|
-
*
|
|
411
|
-
* Contact information field for YfFieldServiceVisit. Used by Field Operations team for communication.
|
|
412
|
-
* @type {TEXT_LONG}
|
|
413
|
-
* @required
|
|
414
|
-
* @visibleWhen EngineerDiagnosis = ["YOUPHONE_ISSUE"]
|
|
208
|
+
* @visibleWhen EngineerDiagnosis = ["CUSTOMER_DEVICE_ISSUE"]
|
|
415
209
|
*/
|
|
416
|
-
|
|
210
|
+
EngineerDiagnosisCustomerDevice: string;
|
|
417
211
|
/**
|
|
418
|
-
*
|
|
212
|
+
* RouterLocationProperty
|
|
419
213
|
*
|
|
420
|
-
*
|
|
214
|
+
* Where the main router sits, as found on arrival.
|
|
421
215
|
* @type {TEXT_LONG}
|
|
422
216
|
* @required
|
|
423
|
-
* @visibleWhen EngineerDiagnosis = ["YOUPHONE_ISSUE"]
|
|
424
|
-
*/
|
|
425
|
-
YouPhoneReport2: string;
|
|
426
|
-
/**
|
|
427
|
-
* Have you swapped and provisioned the ONT?
|
|
428
|
-
*
|
|
429
|
-
* Contact information field for YfFieldServiceVisit. Used by Field Operations team for communication.
|
|
430
|
-
* @type {ENUM}
|
|
431
|
-
* @required
|
|
432
|
-
* @visibleWhen EngineerDiagnosis = ["YOUPHONE_ISSUE"]
|
|
433
|
-
*/
|
|
434
|
-
YouPhoneReport3: string;
|
|
435
|
-
/**
|
|
436
|
-
* ONT location within property
|
|
437
|
-
*
|
|
438
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
439
|
-
* @type {TEXT_LONG}
|
|
440
|
-
* @required
|
|
441
|
-
* @visibleWhen FaultResolvedEngineer = ["YES"]
|
|
442
|
-
*/
|
|
443
|
-
ONTLocationProperty: string;
|
|
444
|
-
/**
|
|
445
|
-
* Main Router location within property
|
|
446
|
-
*
|
|
447
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
448
|
-
* @type {TEXT_LONG}
|
|
449
|
-
* @required
|
|
450
|
-
* @visibleWhen FaultResolvedEngineer = ["YES"]
|
|
451
217
|
*/
|
|
452
218
|
RouterLocationProperty: string;
|
|
453
219
|
/**
|
|
454
|
-
*
|
|
220
|
+
* MainRouterSerial
|
|
455
221
|
*
|
|
456
|
-
*
|
|
222
|
+
* Serial of the router found on site.
|
|
457
223
|
* @type {ALPHA_NUMERICAL}
|
|
458
224
|
* @required
|
|
459
|
-
* @visibleWhen FaultResolvedEngineer = ["YES"]
|
|
460
225
|
*/
|
|
461
226
|
MainRouterSerial: string;
|
|
462
227
|
/**
|
|
463
|
-
*
|
|
464
|
-
*
|
|
465
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
466
|
-
* @type {ENUM}
|
|
467
|
-
* @required
|
|
468
|
-
* @visibleWhen FaultResolvedEngineer = ["YES"]
|
|
469
|
-
*/
|
|
470
|
-
YouMeshConfirmation: string;
|
|
471
|
-
/**
|
|
472
|
-
* How many mesh nodes are installed?
|
|
228
|
+
* HowManyYouMeshNodes
|
|
473
229
|
*
|
|
474
|
-
*
|
|
230
|
+
* Gates the mesh serial/location pairs below — 1 reveals the first pair, 2 the first two, 3 all three.
|
|
475
231
|
* @type {ENUM}
|
|
476
232
|
* @required
|
|
477
|
-
* @visibleWhen YouMeshConfirmation = ["YES"]
|
|
478
233
|
*/
|
|
479
234
|
HowManyYouMeshNodes: string;
|
|
480
235
|
/**
|
|
481
|
-
*
|
|
236
|
+
* YouMeshSerial1
|
|
482
237
|
*
|
|
483
|
-
*
|
|
238
|
+
* Serial of the first existing mesh node.
|
|
484
239
|
* @type {ALPHA_NUMERICAL}
|
|
485
240
|
* @required
|
|
486
|
-
* @visibleWhen HowManyYouMeshNodes = [1,2,3
|
|
241
|
+
* @visibleWhen HowManyYouMeshNodes = ["1","2","3"]
|
|
487
242
|
*/
|
|
488
243
|
YouMeshSerial1: string;
|
|
489
244
|
/**
|
|
490
|
-
*
|
|
245
|
+
* YouMeshLocation1
|
|
491
246
|
*
|
|
492
|
-
*
|
|
247
|
+
* Where the first mesh node sits.
|
|
493
248
|
* @type {TEXT_LONG}
|
|
494
249
|
* @required
|
|
495
|
-
* @visibleWhen HowManyYouMeshNodes = [1,2,3
|
|
250
|
+
* @visibleWhen HowManyYouMeshNodes = ["1","2","3"]
|
|
496
251
|
*/
|
|
497
252
|
YouMeshLocation1: string;
|
|
498
253
|
/**
|
|
499
|
-
*
|
|
254
|
+
* YouMeshSerial2
|
|
500
255
|
*
|
|
501
|
-
*
|
|
256
|
+
* Serial of the second existing mesh node.
|
|
502
257
|
* @type {ALPHA_NUMERICAL}
|
|
503
258
|
* @required
|
|
504
|
-
* @visibleWhen HowManyYouMeshNodes = [2,3
|
|
259
|
+
* @visibleWhen HowManyYouMeshNodes = ["2","3"]
|
|
505
260
|
*/
|
|
506
261
|
YouMeshSerial2: string;
|
|
507
262
|
/**
|
|
508
|
-
*
|
|
263
|
+
* YouMeshLocation2
|
|
509
264
|
*
|
|
510
|
-
*
|
|
265
|
+
* Where the second mesh node sits.
|
|
511
266
|
* @type {TEXT_LONG}
|
|
512
267
|
* @required
|
|
513
|
-
* @visibleWhen HowManyYouMeshNodes = [2,3
|
|
268
|
+
* @visibleWhen HowManyYouMeshNodes = ["2","3"]
|
|
514
269
|
*/
|
|
515
270
|
YouMeshLocation2: string;
|
|
516
271
|
/**
|
|
517
|
-
*
|
|
272
|
+
* YouMeshSerial3
|
|
518
273
|
*
|
|
519
|
-
*
|
|
274
|
+
* Serial of the third existing mesh node.
|
|
520
275
|
* @type {ALPHA_NUMERICAL}
|
|
521
276
|
* @required
|
|
522
|
-
* @visibleWhen HowManyYouMeshNodes = [3
|
|
277
|
+
* @visibleWhen HowManyYouMeshNodes = ["3"]
|
|
523
278
|
*/
|
|
524
279
|
YouMeshSerial3: string;
|
|
525
280
|
/**
|
|
526
|
-
*
|
|
281
|
+
* YouMeshLocation3
|
|
527
282
|
*
|
|
528
|
-
*
|
|
283
|
+
* Where the third mesh node sits.
|
|
529
284
|
* @type {TEXT_LONG}
|
|
530
285
|
* @required
|
|
531
|
-
* @visibleWhen HowManyYouMeshNodes = [3
|
|
286
|
+
* @visibleWhen HowManyYouMeshNodes = ["3"]
|
|
532
287
|
*/
|
|
533
288
|
YouMeshLocation3: string;
|
|
534
289
|
/**
|
|
535
|
-
*
|
|
290
|
+
* PreFaultInvestigationConsent
|
|
536
291
|
*
|
|
537
|
-
*
|
|
538
|
-
* @type {
|
|
292
|
+
* The instruction the engineer acknowledges before touching anything. Testing before changing is what makes the post-fault results mean something.
|
|
293
|
+
* @type {BOOLEAN}
|
|
539
294
|
* @required
|
|
540
|
-
* @visibleWhen HowManyYouMeshNodes = [4]
|
|
541
295
|
*/
|
|
542
|
-
|
|
296
|
+
PreFaultInvestigationConsent: boolean;
|
|
543
297
|
/**
|
|
544
|
-
*
|
|
298
|
+
* PreTestOntSpeedtest
|
|
545
299
|
*
|
|
546
|
-
*
|
|
547
|
-
* @type {
|
|
300
|
+
* Hard-wired speed test at the ONT — the reading that separates a network fault from everything inside the property.
|
|
301
|
+
* @type {FILE_MULTIPLE}
|
|
548
302
|
* @required
|
|
549
|
-
* @visibleWhen HowManyYouMeshNodes = [4]
|
|
550
303
|
*/
|
|
551
|
-
|
|
304
|
+
PreTestOntSpeedtest: string;
|
|
552
305
|
/**
|
|
553
|
-
*
|
|
306
|
+
* PreTestRouterSpeedtest
|
|
554
307
|
*
|
|
555
|
-
*
|
|
556
|
-
* @type {
|
|
308
|
+
* Hard-wired speed test at the router — with the ONT reading beside it, this is what places a fault on one side of the router or the other.
|
|
309
|
+
* @type {FILE_MULTIPLE}
|
|
557
310
|
* @required
|
|
558
|
-
* @visibleWhen HowManyYouMeshNodes = ["YES"]
|
|
559
311
|
*/
|
|
560
|
-
|
|
312
|
+
PreTestRouterSpeedtest: string;
|
|
561
313
|
/**
|
|
562
|
-
*
|
|
314
|
+
* AbleToAchieveMinimumSpeed
|
|
563
315
|
*
|
|
564
|
-
*
|
|
316
|
+
* One question covering both thresholds. The old form asked two (20mbps, and -67dBm separately); the merge and the tightening to -65dBm were confirmed with the DRI 2026-08-25.
|
|
565
317
|
* @type {ENUM}
|
|
566
318
|
* @required
|
|
567
|
-
* @visibleWhen YouMeshConfirmation = ["YES"]
|
|
568
319
|
*/
|
|
569
|
-
|
|
320
|
+
AbleToAchieveMinimumSpeed: string;
|
|
570
321
|
/**
|
|
571
|
-
*
|
|
322
|
+
* NotAbleToAchieveSignalNote
|
|
572
323
|
*
|
|
573
|
-
*
|
|
324
|
+
* Why the property falls short. Only asked when the standard was not met, and it is the record of whose decision that was.
|
|
574
325
|
* @type {TEXT_LONG}
|
|
575
326
|
* @required
|
|
576
|
-
* @visibleWhen
|
|
327
|
+
* @visibleWhen AbleToAchieveMinimumSpeed = ["NO"]
|
|
577
328
|
*/
|
|
578
329
|
NotAbleToAchieveSignalNote: string;
|
|
579
330
|
/**
|
|
580
|
-
*
|
|
331
|
+
* AbleToAchieveSignalEvidence
|
|
581
332
|
*
|
|
582
|
-
*
|
|
333
|
+
* The proof behind a YES: a reading taken at the worst point in the property, not the best.
|
|
583
334
|
* @type {FILE_MULTIPLE}
|
|
584
335
|
* @required
|
|
585
|
-
* @visibleWhen
|
|
586
|
-
*/
|
|
587
|
-
EX1SpeedtestReport: string;
|
|
588
|
-
/**
|
|
589
|
-
* (Summarise the actions taken to resolve the issue, providing sufficient detail to understand the steps and reasoning.)
|
|
590
|
-
*
|
|
591
|
-
* Free-text notes field for YfFieldServiceVisit. Used by Field Operations team for documentation.
|
|
592
|
-
* @type {TEXT_LONG}
|
|
593
|
-
* @required
|
|
594
|
-
* @visibleWhen FaultResolvedEngineer = ["YES"]
|
|
336
|
+
* @visibleWhen AbleToAchieveMinimumSpeed = ["YES"]
|
|
595
337
|
*/
|
|
596
|
-
|
|
338
|
+
AbleToAchieveSignalEvidence: string;
|
|
597
339
|
/**
|
|
598
|
-
*
|
|
340
|
+
* EscalatedToManager
|
|
599
341
|
*
|
|
600
|
-
*
|
|
601
|
-
* @type {
|
|
342
|
+
* Who the visit was escalated to, if anyone. Free text per the template — the old form hard-coded one manager's address into a yes/no, which is what free text avoids.
|
|
343
|
+
* @type {TEXT}
|
|
602
344
|
* @required
|
|
603
|
-
* @visibleWhen FaultResolvedEngineer = ["YES"]
|
|
604
345
|
*/
|
|
605
|
-
|
|
346
|
+
EscalatedToManager: string;
|
|
606
347
|
/**
|
|
607
|
-
*
|
|
348
|
+
* HardwareReplaced
|
|
608
349
|
*
|
|
609
|
-
*
|
|
350
|
+
* Gates the whole hardware branch. YES is what asks what changed and how many devices went in.
|
|
610
351
|
* @type {ENUM}
|
|
611
352
|
* @required
|
|
612
|
-
* @visibleWhen NetworkSwitchesUse = ["YES"]
|
|
613
|
-
*/
|
|
614
|
-
NetworkSwitchesApproval: string;
|
|
615
|
-
/**
|
|
616
|
-
* Please provide justification as to why you could not obtain this.
|
|
617
|
-
*
|
|
618
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
619
|
-
* @type {TEXT_LONG}
|
|
620
|
-
* @required
|
|
621
|
-
* @visibleWhen NetworkSwitchesApproval = ["NO"]
|
|
622
353
|
*/
|
|
623
|
-
|
|
354
|
+
HardwareReplaced: string;
|
|
624
355
|
/**
|
|
625
|
-
*
|
|
356
|
+
* HardwareRemoved
|
|
626
357
|
*
|
|
627
|
-
*
|
|
358
|
+
* Which kit came out or was swapped.
|
|
628
359
|
* @type {ENUM}
|
|
629
360
|
* @required
|
|
630
|
-
* @visibleWhen
|
|
361
|
+
* @visibleWhen HardwareReplaced = ["YES"]
|
|
631
362
|
*/
|
|
632
|
-
|
|
363
|
+
HardwareRemoved: string;
|
|
633
364
|
/**
|
|
634
|
-
*
|
|
365
|
+
* HowManyNewDevices
|
|
635
366
|
*
|
|
636
|
-
*
|
|
367
|
+
* Gates the new-device serial captures below, one at a time — 1 reveals the first, 4 all four.
|
|
637
368
|
* @type {ENUM}
|
|
638
369
|
* @required
|
|
639
|
-
* @visibleWhen
|
|
370
|
+
* @visibleWhen HardwareReplaced = ["YES"]
|
|
640
371
|
*/
|
|
641
|
-
|
|
372
|
+
HowManyNewDevices: string;
|
|
642
373
|
/**
|
|
643
|
-
*
|
|
374
|
+
* NewDeviceSerial1
|
|
644
375
|
*
|
|
645
|
-
*
|
|
646
|
-
* @type {
|
|
376
|
+
* Serial of the first device installed on this visit. The template repeated "first" on all four rows; first/second/third/fourth confirmed with the DRI 2026-08-25.
|
|
377
|
+
* @type {ALPHA_NUMERICAL}
|
|
647
378
|
* @required
|
|
648
|
-
* @visibleWhen
|
|
379
|
+
* @visibleWhen HowManyNewDevices = ["1","2","3","4"]
|
|
649
380
|
*/
|
|
650
|
-
|
|
381
|
+
NewDeviceSerial1: string;
|
|
651
382
|
/**
|
|
652
|
-
*
|
|
383
|
+
* NewDeviceSerial2
|
|
653
384
|
*
|
|
654
|
-
*
|
|
655
|
-
* @type {
|
|
385
|
+
* Serial of the second device installed on this visit.
|
|
386
|
+
* @type {ALPHA_NUMERICAL}
|
|
656
387
|
* @required
|
|
657
|
-
* @visibleWhen
|
|
388
|
+
* @visibleWhen HowManyNewDevices = ["2","3","4"]
|
|
658
389
|
*/
|
|
659
|
-
|
|
390
|
+
NewDeviceSerial2: string;
|
|
660
391
|
/**
|
|
661
|
-
*
|
|
392
|
+
* NewDeviceSerial3
|
|
662
393
|
*
|
|
663
|
-
*
|
|
664
|
-
* @type {
|
|
394
|
+
* Serial of the third device installed on this visit.
|
|
395
|
+
* @type {ALPHA_NUMERICAL}
|
|
665
396
|
* @required
|
|
666
|
-
* @visibleWhen
|
|
397
|
+
* @visibleWhen HowManyNewDevices = ["3","4"]
|
|
667
398
|
*/
|
|
668
|
-
|
|
399
|
+
NewDeviceSerial3: string;
|
|
669
400
|
/**
|
|
670
|
-
*
|
|
401
|
+
* NewDeviceSerial4
|
|
671
402
|
*
|
|
672
|
-
*
|
|
673
|
-
* @type {
|
|
403
|
+
* Serial of the fourth device installed on this visit.
|
|
404
|
+
* @type {ALPHA_NUMERICAL}
|
|
674
405
|
* @required
|
|
675
|
-
* @visibleWhen
|
|
406
|
+
* @visibleWhen HowManyNewDevices = ["4"]
|
|
676
407
|
*/
|
|
677
|
-
|
|
408
|
+
NewDeviceSerial4: string;
|
|
678
409
|
/**
|
|
679
|
-
*
|
|
410
|
+
* EngineerOutcome
|
|
680
411
|
*
|
|
681
|
-
*
|
|
412
|
+
* What the visit actually achieved. 43 options: the template's 58-row sheet with the 15 "… Outcome" duplicates removed and the typos corrected, per the DRI 2026-08-25. The label is a rewrite — the template repeated the diagnosis question here.
|
|
682
413
|
* @type {ENUM}
|
|
683
414
|
* @required
|
|
684
|
-
* @visibleWhen FaultResolvedEngineer = ["NO"]
|
|
685
415
|
*/
|
|
686
|
-
|
|
416
|
+
EngineerOutcome: string;
|
|
687
417
|
/**
|
|
688
|
-
*
|
|
418
|
+
* EndDateTime
|
|
689
419
|
*
|
|
690
|
-
*
|
|
420
|
+
* When the visit finished. With ServiceVisitDateTime it is the visit duration.
|
|
691
421
|
* @type {DATE_TIME}
|
|
692
422
|
* @required
|
|
693
|
-
* @visibleWhen FaultResolvedEngineer = ["NO"]
|
|
694
|
-
* @format DD/MM/YYYY hh:mm:ss
|
|
695
423
|
*/
|
|
696
|
-
|
|
424
|
+
EndDateTime: string;
|
|
697
425
|
/**
|
|
698
|
-
*
|
|
426
|
+
* TrustPilotRequest
|
|
699
427
|
*
|
|
700
|
-
*
|
|
701
|
-
* @type {
|
|
428
|
+
* Whether the engineer asked for a review before leaving.
|
|
429
|
+
* @type {ENUM}
|
|
702
430
|
* @required
|
|
703
|
-
* @visibleWhen FaultResolvedEngineer = ["INSTALL_SETUP_REPLACEMENT"]
|
|
704
431
|
*/
|
|
705
|
-
|
|
432
|
+
TrustPilotRequest: string;
|
|
706
433
|
/**
|
|
707
|
-
*
|
|
434
|
+
* HappyWithOutcome
|
|
708
435
|
*
|
|
709
|
-
*
|
|
710
|
-
* @type {
|
|
436
|
+
* Yes/No rather than a tick box, on the DRI's call 2026-08-25: a tick box cannot record an unhappy customer, and UnhappyReason below only exists because NO is answerable.
|
|
437
|
+
* @type {ENUM}
|
|
711
438
|
* @required
|
|
712
|
-
* @visibleWhen WhatAreYouReplacing2 = ["EERO6"]
|
|
713
439
|
*/
|
|
714
|
-
|
|
440
|
+
HappyWithOutcome: string;
|
|
715
441
|
/**
|
|
716
|
-
*
|
|
442
|
+
* UnhappyReason
|
|
717
443
|
*
|
|
718
|
-
*
|
|
719
|
-
* @type {
|
|
444
|
+
* What went wrong and what happens next. Only asked when the customer is not happy.
|
|
445
|
+
* @type {TEXT_LONG}
|
|
720
446
|
* @required
|
|
721
|
-
* @visibleWhen
|
|
447
|
+
* @visibleWhen HappyWithOutcome = ["NO"]
|
|
722
448
|
*/
|
|
723
|
-
|
|
449
|
+
UnhappyReason: string;
|
|
724
450
|
/**
|
|
725
|
-
*
|
|
451
|
+
* CustomerName
|
|
726
452
|
*
|
|
727
|
-
*
|
|
728
|
-
* @type {
|
|
453
|
+
* Who signed on the customer side.
|
|
454
|
+
* @type {NAME}
|
|
729
455
|
* @required
|
|
730
|
-
* @visibleWhen WhatAreYouReplacing2 = ["EERO6PRO"]
|
|
731
456
|
*/
|
|
732
|
-
|
|
457
|
+
CustomerName: string;
|
|
733
458
|
/**
|
|
734
|
-
*
|
|
459
|
+
* CustomerSignature
|
|
735
460
|
*
|
|
736
|
-
*
|
|
737
|
-
* @type {
|
|
461
|
+
* The customer's signature against the declaration above.
|
|
462
|
+
* @type {SIGNATURE}
|
|
738
463
|
* @required
|
|
739
|
-
* @visibleWhen WhatAreYouReplacing2 = ["EERO6PRO"]
|
|
740
464
|
*/
|
|
741
|
-
|
|
465
|
+
CustomerSignature: undefined;
|
|
742
466
|
/**
|
|
743
|
-
*
|
|
467
|
+
* EngineerSignature
|
|
744
468
|
*
|
|
745
|
-
*
|
|
746
|
-
* @type {
|
|
469
|
+
* The attending engineer's signature.
|
|
470
|
+
* @type {SIGNATURE}
|
|
747
471
|
* @required
|
|
748
|
-
* @visibleWhen WhatAreYouReplacing2 = ["EEROPRO6E"]
|
|
749
472
|
*/
|
|
750
|
-
|
|
473
|
+
EngineerSignature: undefined;
|
|
751
474
|
/**
|
|
752
|
-
*
|
|
475
|
+
* PropertyFrontPhoto
|
|
753
476
|
*
|
|
754
|
-
*
|
|
477
|
+
* The picture the engineer confirms having taken on arrival.
|
|
755
478
|
* @type {FILE_MULTIPLE}
|
|
756
|
-
* @required
|
|
757
|
-
* @visibleWhen WhatAreYouReplacing2 = ["EEROPRO6E"]
|
|
758
479
|
*/
|
|
759
|
-
|
|
480
|
+
PropertyFrontPhoto?: string | null;
|
|
760
481
|
/**
|
|
761
|
-
*
|
|
482
|
+
* ONTFixedToWallPhoto
|
|
762
483
|
*
|
|
763
|
-
*
|
|
764
|
-
* @type {ALPHA_NUMERICAL}
|
|
765
|
-
* @required
|
|
766
|
-
* @visibleWhen WhatAreYouReplacing2 = ["NVG578LX1"]
|
|
767
|
-
*/
|
|
768
|
-
NVG578LX1Serial: string;
|
|
769
|
-
/**
|
|
770
|
-
* Please add pictures of the new unit.
|
|
771
|
-
*
|
|
772
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
484
|
+
* Evidence of how the ONT is fixed and powered.
|
|
773
485
|
* @type {FILE_MULTIPLE}
|
|
774
|
-
* @required
|
|
775
|
-
* @visibleWhen WhatAreYouReplacing2 = ["NVG578LX1"]
|
|
776
|
-
*/
|
|
777
|
-
NVG578LX1Photo: string;
|
|
778
|
-
/**
|
|
779
|
-
* Please capture the serial number of the new NVG578LX Gateway.
|
|
780
|
-
*
|
|
781
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
782
|
-
* @type {ALPHA_NUMERICAL}
|
|
783
|
-
* @required
|
|
784
|
-
* @visibleWhen WhatAreYouReplacing2 = ["NVG578LX"]
|
|
785
486
|
*/
|
|
786
|
-
|
|
487
|
+
ONTFixedToWallPhoto?: string | null;
|
|
787
488
|
/**
|
|
788
|
-
*
|
|
489
|
+
* ONTChecksPhoto
|
|
789
490
|
*
|
|
790
|
-
*
|
|
491
|
+
* The readings behind the ONT check answer.
|
|
791
492
|
* @type {FILE_MULTIPLE}
|
|
792
|
-
* @required
|
|
793
|
-
* @visibleWhen WhatAreYouReplacing2 = ["NVG578LX"]
|
|
794
|
-
*/
|
|
795
|
-
NVG578LXPhoto: string;
|
|
796
|
-
/**
|
|
797
|
-
* Please capture the serial number of the new X5042 Extender.
|
|
798
|
-
*
|
|
799
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
800
|
-
* @type {ALPHA_NUMERICAL}
|
|
801
|
-
* @required
|
|
802
|
-
* @visibleWhen WhatAreYouReplacing2 = ["X5042"]
|
|
803
493
|
*/
|
|
804
|
-
|
|
494
|
+
ONTChecksPhoto?: string | null;
|
|
805
495
|
/**
|
|
806
|
-
*
|
|
496
|
+
* ONTCheckFailReasonPhoto
|
|
807
497
|
*
|
|
808
|
-
*
|
|
498
|
+
* What the engineer saw that produced the failure reason.
|
|
809
499
|
* @type {FILE_MULTIPLE}
|
|
810
|
-
* @
|
|
811
|
-
* @visibleWhen WhatAreYouReplacing2 = ["X5042"]
|
|
812
|
-
*/
|
|
813
|
-
X5042Photo: string;
|
|
814
|
-
/**
|
|
815
|
-
* Any other Additional notes you wish to add?
|
|
816
|
-
*
|
|
817
|
-
* Free-text notes field for YfFieldServiceVisit. Used by Field Operations team for documentation.
|
|
818
|
-
* @type {TEXT_LONG}
|
|
819
|
-
* @required
|
|
820
|
-
* @visibleWhen FaultResolvedEngineer = ["INSTALL_SETUP_REPLACEMENT"]
|
|
500
|
+
* @visibleWhen ONTChecksPassed = ["NO"]
|
|
821
501
|
*/
|
|
822
|
-
|
|
502
|
+
ONTCheckFailReasonPhoto?: string | null;
|
|
823
503
|
/**
|
|
824
|
-
*
|
|
504
|
+
* EngineerDiagnosisCustomerDevicePhoto
|
|
825
505
|
*
|
|
826
|
-
*
|
|
506
|
+
* The device the diagnosis points at.
|
|
827
507
|
* @type {FILE_MULTIPLE}
|
|
828
|
-
* @
|
|
829
|
-
* @visibleWhen FaultResolvedEngineer = ["INSTALL_SETUP_REPLACEMENT"]
|
|
830
|
-
*/
|
|
831
|
-
SecondSpeedTest: string;
|
|
832
|
-
/**
|
|
833
|
-
* Customer Signature
|
|
834
|
-
*
|
|
835
|
-
* Customer Signature (Field Operations - YfFieldServiceVisit)
|
|
836
|
-
* @type {SIGNATURE}
|
|
837
|
-
* @required
|
|
838
|
-
* @visibleWhen FaultResolvedEngineer = ["YES","INSTALL_SETUP_REPLACEMENT"]
|
|
508
|
+
* @visibleWhen EngineerDiagnosis = ["CUSTOMER_DEVICE_ISSUE"]
|
|
839
509
|
*/
|
|
840
|
-
|
|
510
|
+
EngineerDiagnosisCustomerDevicePhoto?: string | null;
|
|
841
511
|
/**
|
|
842
|
-
*
|
|
512
|
+
* RouterLocationPhoto
|
|
843
513
|
*
|
|
844
|
-
*
|
|
845
|
-
* @type {
|
|
846
|
-
* @required
|
|
847
|
-
* @visibleWhen FaultResolvedEngineer = ["YES","INSTALL_SETUP_REPLACEMENT"]
|
|
848
|
-
*/
|
|
849
|
-
EngineerSignature: undefined;
|
|
850
|
-
/**
|
|
851
|
-
* Service visit Date and Time:
|
|
852
|
-
*
|
|
853
|
-
* Service visit Date and Time: (Field Operations - YfFieldServiceVisit)
|
|
854
|
-
* @type {DATE_TIME}
|
|
855
|
-
* @default Dynamic: {date_today}
|
|
856
|
-
* @format DD/MM/YYYY hh:mm:ss
|
|
857
|
-
*/
|
|
858
|
-
ServiceVisitDateTime?: string | null;
|
|
859
|
-
/**
|
|
860
|
-
* Engineer Names
|
|
861
|
-
*
|
|
862
|
-
* Service engineer names (Field Operations - YfFieldServiceVisit)
|
|
863
|
-
* @type {NAME}
|
|
864
|
-
* @default Dynamic: {source_record_properties_EngineerName}
|
|
865
|
-
*/
|
|
866
|
-
EngineerNames?: string | null;
|
|
867
|
-
/**
|
|
868
|
-
* Work Order Number
|
|
869
|
-
*
|
|
870
|
-
* e.g. (WO12345) (Field Operations - YfFieldServiceVisit)
|
|
871
|
-
* @type {ALPHA_NUMERICAL}
|
|
872
|
-
* @default Dynamic: {source_record_recordNumber}
|
|
873
|
-
*/
|
|
874
|
-
WorkOrderNumber?: string | null;
|
|
875
|
-
/**
|
|
876
|
-
* Visit can not go ahead, please contact manager to reschedule. Check the box to confirm.
|
|
877
|
-
*
|
|
878
|
-
* Data field for YfFieldServiceVisit records. Used by Field Operations team.
|
|
879
|
-
* @type {BOOLEAN}
|
|
514
|
+
* Where the router actually is — the answer text alone rarely settles a coverage argument.
|
|
515
|
+
* @type {FILE_MULTIPLE}
|
|
880
516
|
*/
|
|
881
|
-
|
|
517
|
+
RouterLocationPhoto?: string | null;
|
|
882
518
|
/**
|
|
883
|
-
*
|
|
519
|
+
* YouMeshLocation1Photo
|
|
884
520
|
*
|
|
885
|
-
*
|
|
886
|
-
* @type {
|
|
521
|
+
* Evidence the node is not on the floor.
|
|
522
|
+
* @type {FILE_MULTIPLE}
|
|
523
|
+
* @visibleWhen HowManyYouMeshNodes = ["1","2","3"]
|
|
887
524
|
*/
|
|
888
|
-
|
|
525
|
+
YouMeshLocation1Photo?: string | null;
|
|
889
526
|
/**
|
|
890
|
-
*
|
|
527
|
+
* YouMeshLocation2Photo
|
|
891
528
|
*
|
|
892
|
-
*
|
|
893
|
-
* @type {
|
|
529
|
+
* Evidence the node is not on the floor.
|
|
530
|
+
* @type {FILE_MULTIPLE}
|
|
531
|
+
* @visibleWhen HowManyYouMeshNodes = ["2","3"]
|
|
894
532
|
*/
|
|
895
|
-
|
|
533
|
+
YouMeshLocation2Photo?: string | null;
|
|
896
534
|
/**
|
|
897
|
-
*
|
|
535
|
+
* YouMeshLocation3Photo
|
|
898
536
|
*
|
|
899
|
-
*
|
|
900
|
-
* @type {
|
|
901
|
-
* @visibleWhen
|
|
537
|
+
* Evidence the node is not on the floor.
|
|
538
|
+
* @type {FILE_MULTIPLE}
|
|
539
|
+
* @visibleWhen HowManyYouMeshNodes = ["3"]
|
|
902
540
|
*/
|
|
903
|
-
|
|
541
|
+
YouMeshLocation3Photo?: string | null;
|
|
904
542
|
/**
|
|
905
|
-
*
|
|
543
|
+
* PreFaultTestPhoto
|
|
906
544
|
*
|
|
907
|
-
*
|
|
908
|
-
* @type {
|
|
909
|
-
* @visibleWhen EngineerDiagnosis = ["YOUPHONE_ISSUE"]
|
|
545
|
+
* The before-state evidence the acknowledgement refers to.
|
|
546
|
+
* @type {FILE_MULTIPLE}
|
|
910
547
|
*/
|
|
911
|
-
|
|
548
|
+
PreFaultTestPhoto?: string | null;
|
|
912
549
|
/**
|
|
913
|
-
*
|
|
550
|
+
* PostFaultInvestigationConsent
|
|
914
551
|
*
|
|
915
|
-
*
|
|
552
|
+
* Marks the boundary between the before-state and the after-state on the form.
|
|
916
553
|
* @type {BOOLEAN}
|
|
917
554
|
*/
|
|
918
555
|
PostFaultInvestigationConsent?: boolean | null;
|
|
919
556
|
/**
|
|
920
|
-
*
|
|
557
|
+
* NotAbleToAchieveSignalPhoto
|
|
921
558
|
*
|
|
922
|
-
*
|
|
923
|
-
* @type {
|
|
559
|
+
* What the readings looked like where the standard could not be met.
|
|
560
|
+
* @type {FILE_MULTIPLE}
|
|
561
|
+
* @visibleWhen AbleToAchieveMinimumSpeed = ["NO"]
|
|
924
562
|
*/
|
|
925
|
-
|
|
563
|
+
NotAbleToAchieveSignalPhoto?: string | null;
|
|
926
564
|
/**
|
|
927
|
-
*
|
|
565
|
+
* ResolutionNotes
|
|
928
566
|
*
|
|
929
|
-
*
|
|
930
|
-
* @type {
|
|
931
|
-
* @visibleWhen FaultResolvedEngineer = ["YES"]
|
|
567
|
+
* The engineer's account of the visit. Deliberately carries no defaultValue: whether the template headings (Outcome / Fault Found / Checks Done / Action Taken / Status on Leave / Further Action / Customer Advised) are pre-filled or shown as guidance is open with Trevor, and adding a default later is a column PUT while removing one already written onto live records is not clean.
|
|
568
|
+
* @type {TEXT_LONG}
|
|
932
569
|
*/
|
|
933
|
-
|
|
570
|
+
ResolutionNotes?: string | null;
|
|
934
571
|
/**
|
|
935
|
-
*
|
|
572
|
+
* OtherEvidence
|
|
936
573
|
*
|
|
937
|
-
*
|
|
938
|
-
* @type {
|
|
574
|
+
* Anything the fixed questions did not ask for. The only optional upload that is a question in its own right.
|
|
575
|
+
* @type {FILE_MULTIPLE}
|
|
939
576
|
*/
|
|
940
|
-
|
|
577
|
+
OtherEvidence?: string | null;
|
|
941
578
|
/**
|
|
942
|
-
*
|
|
579
|
+
* CustomerAgreement
|
|
943
580
|
*
|
|
944
|
-
*
|
|
581
|
+
* The customer-facing declaration, ticked before the signatures below. Six clauses, including the one that matters at churn: the kit is leased, not owned.
|
|
945
582
|
* @type {BOOLEAN}
|
|
946
|
-
* @visibleWhen FaultResolvedEngineer = ["YES","INSTALL_SETUP_REPLACEMENT"]
|
|
947
583
|
*/
|
|
948
|
-
|
|
584
|
+
CustomerAgreement?: boolean | null;
|
|
949
585
|
}
|
|
950
586
|
/**
|
|
951
|
-
* YF Field
|
|
587
|
+
* YF Field Visit Outcome Form
|
|
952
588
|
*
|
|
953
|
-
* YF Field
|
|
589
|
+
* YF Field Visit Outcome Form
|
|
954
590
|
*
|
|
955
|
-
* @actionType CREATE - Creates a new
|
|
591
|
+
* @actionType CREATE - Creates a new YfFieldVisitOutcomeForm record
|
|
956
592
|
* @module FieldServiceModule
|
|
957
|
-
* @entity
|
|
958
|
-
* @entityType OUTCOME_FORM (
|
|
959
|
-
* @event k1.t-hEOJjsDb.FieldServiceModule.
|
|
960
|
-
* @permission schema.action.
|
|
593
|
+
* @entity YfFieldVisitOutcomeForm
|
|
594
|
+
* @entityType OUTCOME_FORM (Outcome Form)
|
|
595
|
+
* @event k1.t-hEOJjsDb.FieldServiceModule.YfFieldVisitOutcomeForm.Create.YfFieldVisitOutcomeForm
|
|
596
|
+
* @permission schema.action.yffieldvisitoutcomeform.trigger
|
|
961
597
|
* @benchmark This action is tracked for performance benchmarks
|
|
962
598
|
*/
|
|
963
|
-
export declare class
|
|
599
|
+
export declare class YfFieldVisitOutcomeFormDto extends OdinRecordCreateDto<YfFieldVisitOutcomeFormProperties> {
|
|
964
600
|
/** Used by SDK generators to identify action type */
|
|
965
601
|
static readonly ACTION_TYPE = "CREATE";
|
|
966
|
-
static readonly ACTION_KEY = "
|
|
602
|
+
static readonly ACTION_KEY = "YfFieldVisitOutcomeForm";
|
|
967
603
|
static readonly MODULE_NAME = "FieldServiceModule";
|
|
968
604
|
static readonly ENTITIES: string[];
|
|
969
605
|
static readonly ENTITY_TYPE = "OUTCOME_FORM";
|
|
970
|
-
static readonly EVENT_NAME = "k1.t-hEOJjsDb.FieldServiceModule.
|
|
971
|
-
static readonly PERMISSION = "schema.action.
|
|
606
|
+
static readonly EVENT_NAME = "k1.t-hEOJjsDb.FieldServiceModule.YfFieldVisitOutcomeForm.Create.YfFieldVisitOutcomeForm";
|
|
607
|
+
static readonly PERMISSION = "schema.action.yffieldvisitoutcomeform.trigger";
|
|
972
608
|
/** Step metadata - entity this action targets */
|
|
973
|
-
static readonly STEP_ENTITY = "FieldServiceModule:
|
|
974
|
-
static readonly STEP_SCHEMA_ID = "
|
|
975
|
-
static readonly STEP_SCHEMA_ACTION_ID = "
|
|
976
|
-
static readonly STEP_SCHEMA_TYPE_ID = "
|
|
609
|
+
static readonly STEP_ENTITY = "FieldServiceModule:YfFieldVisitOutcomeForm";
|
|
610
|
+
static readonly STEP_SCHEMA_ID = "cca6f70d-9b11-42b6-9439-c3672d871e14";
|
|
611
|
+
static readonly STEP_SCHEMA_ACTION_ID = "7a7c95a1-0fc9-4a83-a4bd-26302411735d";
|
|
612
|
+
static readonly STEP_SCHEMA_TYPE_ID = "334af74f-77ed-4196-9e9b-a4dc31b5c864";
|
|
977
613
|
static readonly STEP_TYPE = "OUTCOME_FORM";
|
|
978
614
|
static readonly AUTO_LINK_PARENT = true;
|
|
979
615
|
readonly actionName: string;
|
|
980
616
|
readonly schemaActionId: string;
|
|
981
617
|
readonly entity: string;
|
|
982
|
-
constructor(properties:
|
|
618
|
+
constructor(properties: YfFieldVisitOutcomeFormProperties, options?: {
|
|
983
619
|
journeyId?: string;
|
|
984
620
|
});
|
|
985
621
|
}
|
|
986
622
|
declare type StepClassMap = {
|
|
987
623
|
CompleteServiceWorkOrderDto: CompleteServiceWorkOrderDto;
|
|
988
|
-
|
|
624
|
+
YfFieldVisitOutcomeFormDto: YfFieldVisitOutcomeFormDto;
|
|
989
625
|
};
|
|
990
626
|
/**
|
|
991
627
|
* Link definition for connecting steps in CompleteServiceWorkOrderFlow
|
|
@@ -1087,7 +723,7 @@ export declare class CompleteServiceWorkOrderFlowDto extends OdinRecordUpdateDto
|
|
|
1087
723
|
journeyId?: string;
|
|
1088
724
|
});
|
|
1089
725
|
/** Step classes that can be used with this action */
|
|
1090
|
-
static readonly stepClasses: readonly ["CompleteServiceWorkOrderDto", "
|
|
726
|
+
static readonly stepClasses: readonly ["CompleteServiceWorkOrderDto", "YfFieldVisitOutcomeFormDto"];
|
|
1091
727
|
steps: StepClassMap[(typeof CompleteServiceWorkOrderFlowDto.stepClasses)[number]][];
|
|
1092
728
|
}
|
|
1093
729
|
export {};
|