@boxa-devops/depo-shared 1.0.5 → 1.2.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.
package/dist/api.d.ts CHANGED
@@ -962,6 +962,57 @@ export interface paths {
962
962
  patch?: never;
963
963
  trace?: never;
964
964
  };
965
+ "/api/v1/admin/refs/loco-series/{code}/positions": {
966
+ parameters: {
967
+ query?: never;
968
+ header?: never;
969
+ path?: never;
970
+ cookie?: never;
971
+ };
972
+ /**
973
+ * List Series Positions
974
+ * @description Every type bound to this series, with the list it carries there.
975
+ *
976
+ * Types with no binding are deliberately absent rather than listed with their
977
+ * global list: the visualization has to be able to tell «this series says so»
978
+ * from «the type says so», and a merged view cannot.
979
+ */
980
+ get: operations["list_series_positions_api_v1_admin_refs_loco_series__code__positions_get"];
981
+ put?: never;
982
+ post?: never;
983
+ delete?: never;
984
+ options?: never;
985
+ head?: never;
986
+ patch?: never;
987
+ trace?: never;
988
+ };
989
+ "/api/v1/admin/refs/loco-series/{code}/positions/{nomenclature_id}": {
990
+ parameters: {
991
+ query?: never;
992
+ header?: never;
993
+ path?: never;
994
+ cookie?: never;
995
+ };
996
+ get?: never;
997
+ /**
998
+ * Bind Series Positions
999
+ * @description Create or replace the binding. Idempotent by (series, type).
1000
+ */
1001
+ put: operations["bind_series_positions_api_v1_admin_refs_loco_series__code__positions__nomenclature_id__put"];
1002
+ post?: never;
1003
+ /**
1004
+ * Unbind Series Positions
1005
+ * @description Drop the binding: the type falls back to its global positions list.
1006
+ *
1007
+ * Absent binding is not an error — the operator's intent («this series has no
1008
+ * list of its own») already holds.
1009
+ */
1010
+ delete: operations["unbind_series_positions_api_v1_admin_refs_loco_series__code__positions__nomenclature_id__delete"];
1011
+ options?: never;
1012
+ head?: never;
1013
+ patch?: never;
1014
+ trace?: never;
1015
+ };
965
1016
  "/api/v1/admin/refs/{entity}": {
966
1017
  parameters: {
967
1018
  query?: never;
@@ -2875,6 +2926,54 @@ export interface paths {
2875
2926
  patch?: never;
2876
2927
  trace?: never;
2877
2928
  };
2929
+ "/api/v1/refs/loco-sections": {
2930
+ parameters: {
2931
+ query?: never;
2932
+ header?: never;
2933
+ path?: never;
2934
+ cookie?: never;
2935
+ };
2936
+ /**
2937
+ * Loco Sections
2938
+ * @description The places a part sits on the machine — what the position picker draws.
2939
+ *
2940
+ * A hint catalogue (TZ §14): nothing validates `mount_position` against it,
2941
+ * a place typed by hand stays legal, and a client that has never heard of a
2942
+ * section simply does not light it.
2943
+ */
2944
+ get: operations["loco_sections_api_v1_refs_loco_sections_get"];
2945
+ put?: never;
2946
+ post?: never;
2947
+ delete?: never;
2948
+ options?: never;
2949
+ head?: never;
2950
+ patch?: never;
2951
+ trace?: never;
2952
+ };
2953
+ "/api/v1/refs/loco-series-positions": {
2954
+ parameters: {
2955
+ query?: never;
2956
+ header?: never;
2957
+ path?: never;
2958
+ cookie?: never;
2959
+ };
2960
+ /**
2961
+ * Loco Series Positions
2962
+ * @description Per-series mount positions, for the terminal's chips.
2963
+ *
2964
+ * A small dictionary by design: only the types whose positions differ from
2965
+ * the global `nomenclature.positions` have a row. The client applies it as an
2966
+ * override — series row first, global list otherwise.
2967
+ */
2968
+ get: operations["loco_series_positions_api_v1_refs_loco_series_positions_get"];
2969
+ put?: never;
2970
+ post?: never;
2971
+ delete?: never;
2972
+ options?: never;
2973
+ head?: never;
2974
+ patch?: never;
2975
+ trace?: never;
2976
+ };
2878
2977
  "/api/v1/refs/nomenclature": {
2879
2978
  parameters: {
2880
2979
  query?: never;
@@ -3226,6 +3325,46 @@ export interface paths {
3226
3325
  patch?: never;
3227
3326
  trace?: never;
3228
3327
  };
3328
+ "/api/v1/reports/kpi-trend": {
3329
+ parameters: {
3330
+ query?: never;
3331
+ header?: never;
3332
+ path?: never;
3333
+ cookie?: never;
3334
+ };
3335
+ /**
3336
+ * Kpi Trend
3337
+ * @description Daily series behind the dashboard tiles (what the tables can answer honestly).
3338
+ */
3339
+ get: operations["kpi_trend_api_v1_reports_kpi_trend_get"];
3340
+ put?: never;
3341
+ post?: never;
3342
+ delete?: never;
3343
+ options?: never;
3344
+ head?: never;
3345
+ patch?: never;
3346
+ trace?: never;
3347
+ };
3348
+ "/api/v1/reports/nav-counters": {
3349
+ parameters: {
3350
+ query?: never;
3351
+ header?: never;
3352
+ path?: never;
3353
+ cookie?: never;
3354
+ };
3355
+ /**
3356
+ * Nav Counters
3357
+ * @description Badge counts for the admin menu — three COUNTs, scoped to what the caller sees.
3358
+ */
3359
+ get: operations["nav_counters_api_v1_reports_nav_counters_get"];
3360
+ put?: never;
3361
+ post?: never;
3362
+ delete?: never;
3363
+ options?: never;
3364
+ head?: never;
3365
+ patch?: never;
3366
+ trace?: never;
3367
+ };
3229
3368
  "/api/v1/reports/open-orders": {
3230
3369
  parameters: {
3231
3370
  query?: never;
@@ -4199,6 +4338,95 @@ export interface paths {
4199
4338
  patch?: never;
4200
4339
  trace?: never;
4201
4340
  };
4341
+ "/api/v1/work-orders/measuring": {
4342
+ parameters: {
4343
+ query?: never;
4344
+ header?: never;
4345
+ path?: never;
4346
+ cookie?: never;
4347
+ };
4348
+ get?: never;
4349
+ put?: never;
4350
+ /**
4351
+ * Open Measuring Order
4352
+ * @description The measuring order of one visit — opened on the first ask, returned on
4353
+ * every later one (invariant 3: a replayed offline tap opens nothing new).
4354
+ */
4355
+ post: operations["open_measuring_order_api_v1_work_orders_measuring_post"];
4356
+ delete?: never;
4357
+ options?: never;
4358
+ head?: never;
4359
+ patch?: never;
4360
+ trace?: never;
4361
+ };
4362
+ "/api/v1/work-orders/measuring/{wo_id}/items": {
4363
+ parameters: {
4364
+ query?: never;
4365
+ header?: never;
4366
+ path?: never;
4367
+ cookie?: never;
4368
+ };
4369
+ /**
4370
+ * Measuring Items
4371
+ * @description What stands on this machine and can be measured, with its numbers, the
4372
+ * hints those numbers fire and the verdict already signed on it.
4373
+ */
4374
+ get: operations["measuring_items_api_v1_work_orders_measuring__wo_id__items_get"];
4375
+ put?: never;
4376
+ post?: never;
4377
+ delete?: never;
4378
+ options?: never;
4379
+ head?: never;
4380
+ patch?: never;
4381
+ trace?: never;
4382
+ };
4383
+ "/api/v1/work-orders/measuring/{wo_id}/verdict": {
4384
+ parameters: {
4385
+ query?: never;
4386
+ header?: never;
4387
+ path?: never;
4388
+ cookie?: never;
4389
+ };
4390
+ get?: never;
4391
+ put?: never;
4392
+ /**
4393
+ * Measuring Verdict
4394
+ * @description «Ремонтируем» / «Не трогаем» on one measured part, under the master's PIN.
4395
+ */
4396
+ post: operations["measuring_verdict_api_v1_work_orders_measuring__wo_id__verdict_post"];
4397
+ delete?: never;
4398
+ options?: never;
4399
+ head?: never;
4400
+ patch?: never;
4401
+ trace?: never;
4402
+ };
4403
+ "/api/v1/work-orders/measuring/{wo_id}/verdicts": {
4404
+ parameters: {
4405
+ query?: never;
4406
+ header?: never;
4407
+ path?: never;
4408
+ cookie?: never;
4409
+ };
4410
+ get?: never;
4411
+ put?: never;
4412
+ /**
4413
+ * Inspection Sign
4414
+ * @description The inspection pass: several parts decided at once, signed once.
4415
+ *
4416
+ * The single-part `/verdict` above stays what the master's own screen uses.
4417
+ * This one is the shop-floor walk — the man reads a handful of units, says
4418
+ * «good» or «this one», names himself by tab_no and PIN, and signs the lot.
4419
+ * One signature whose payload_hash covers every line (invariant 6), one
4420
+ * INSPECT event per part under a derived uuid, so a replayed tap of the whole
4421
+ * pass writes nothing twice (invariant 3).
4422
+ */
4423
+ post: operations["inspection_sign_api_v1_work_orders_measuring__wo_id__verdicts_post"];
4424
+ delete?: never;
4425
+ options?: never;
4426
+ head?: never;
4427
+ patch?: never;
4428
+ trace?: never;
4429
+ };
4202
4430
  "/api/v1/work-orders/{wo_id}/accept": {
4203
4431
  parameters: {
4204
4432
  query?: never;
@@ -4369,6 +4597,26 @@ export interface paths {
4369
4597
  patch?: never;
4370
4598
  trace?: never;
4371
4599
  };
4600
+ "/api/v1/work-orders/{wo_id}/tasks/{task_id}/cosign-op": {
4601
+ parameters: {
4602
+ query?: never;
4603
+ header?: never;
4604
+ path?: never;
4605
+ cookie?: never;
4606
+ };
4607
+ get?: never;
4608
+ put?: never;
4609
+ /**
4610
+ * Cosign Task Op
4611
+ * @description Start/pause/resume/finish one operation, verified by the fitter's card + PIN.
4612
+ */
4613
+ post: operations["cosign_task_op_api_v1_work_orders__wo_id__tasks__task_id__cosign_op_post"];
4614
+ delete?: never;
4615
+ options?: never;
4616
+ head?: never;
4617
+ patch?: never;
4618
+ trace?: never;
4619
+ };
4372
4620
  "/api/v1/work-orders/{wo_id}/work-accept-sign": {
4373
4621
  parameters: {
4374
4622
  query?: never;
@@ -6371,7 +6619,7 @@ export interface components {
6371
6619
  * @description discriminator enum property added by openapi-typescript
6372
6620
  * @enum {string}
6373
6621
  */
6374
- event_type: "RECEIVE_NEW" | "ISSUE_OUT" | "SEND_TO_REPAIR" | "QC_ACCEPT" | "QC_REJECT" | "STORE_IN" | "ASSEMBLE" | "DISASSEMBLE" | "SEND_TO_PLANT" | "RETURN_FROM_PLANT" | "PLANT_REJECT" | "COUNT" | "SCRAP" | "LOST";
6622
+ event_type: "RECEIVE_NEW" | "ISSUE_OUT" | "SEND_TO_REPAIR" | "QC_ACCEPT" | "QC_REJECT" | "ASSEMBLE" | "DISASSEMBLE" | "SEND_TO_PLANT" | "RETURN_FROM_PLANT" | "PLANT_REJECT" | "COUNT" | "SCRAP" | "LOST";
6375
6623
  };
6376
6624
  /** HTTPValidationError */
6377
6625
  HTTPValidationError: {
@@ -6769,7 +7017,16 @@ export interface components {
6769
7017
  /** Reason */
6770
7018
  reason?: string | null;
6771
7019
  };
6772
- /** InspectCommand */
7020
+ /**
7021
+ * InspectCommand
7022
+ * @description Defectation — and, since B21, the measuring pass under the machine.
7023
+ *
7024
+ * From INSTALLED it is a pure record: the numbers are taken, the rules speak,
7025
+ * and nothing moves until the master signs a verdict
7026
+ * (/work-orders/measuring/{id}/verdict). `work_order_id` + `task_id` point at
7027
+ * the measuring order of the visit, so the readings belong to an operation
7028
+ * like any other work.
7029
+ */
6773
7030
  InspectCommand: {
6774
7031
  /**
6775
7032
  * Item Id
@@ -6826,6 +7083,60 @@ export interface components {
6826
7083
  event_type: "INSPECT";
6827
7084
  /** Requested Status */
6828
7085
  requested_status?: "AWAITING_DISPOSITION" | null;
7086
+ /** Measurements */
7087
+ measurements?: components["schemas"]["MeasurementValueIn"][];
7088
+ };
7089
+ /**
7090
+ * InspectionSignIn
7091
+ * @description The whole inspection pass, signed once by the man who walked it.
7092
+ *
7093
+ * One signature over the list, not one per line: the pass is a single act of
7094
+ * a single person — he looked at these parts, in this order, and says this
7095
+ * about them. The payload_hash covers every line, so no line can be edited
7096
+ * out of a signed pass (invariant 6).
7097
+ *
7098
+ * He names himself the way a co-signature does (badge_uid under RFID, tab_no
7099
+ * under the TABEL pilot, PIN in both): the terminal is logged in as whoever
7100
+ * opened the shift, and the inspector is not always that man.
7101
+ */
7102
+ InspectionSignIn: {
7103
+ /**
7104
+ * Event At
7105
+ * Format: date-time
7106
+ */
7107
+ event_at: string;
7108
+ /**
7109
+ * Client Event Uuid
7110
+ * Format: uuid
7111
+ */
7112
+ client_event_uuid: string;
7113
+ /** Terminal Id */
7114
+ terminal_id?: string | null;
7115
+ /** Badge Uid */
7116
+ badge_uid?: string | null;
7117
+ /** Tab No */
7118
+ tab_no?: string | null;
7119
+ /** Pin */
7120
+ pin: string;
7121
+ /** Lines */
7122
+ lines: components["schemas"]["VerdictLine"][];
7123
+ /** Comment */
7124
+ comment?: string | null;
7125
+ };
7126
+ /** InspectionSignOut */
7127
+ InspectionSignOut: {
7128
+ /**
7129
+ * Signed By Person Id
7130
+ * Format: uuid
7131
+ */
7132
+ signed_by_person_id: string;
7133
+ /**
7134
+ * Existing
7135
+ * @default false
7136
+ */
7137
+ existing: boolean;
7138
+ /** Results */
7139
+ results?: components["schemas"]["VerdictOut"][];
6829
7140
  };
6830
7141
  /** InstallCommand */
6831
7142
  InstallCommand: {
@@ -7144,6 +7455,10 @@ export interface components {
7144
7455
  repair_count: number | null;
7145
7456
  /** Marked No Duplicate */
7146
7457
  marked_no_duplicate: boolean;
7458
+ /** Resource Pct */
7459
+ resource_pct?: number | null;
7460
+ /** Resource Param */
7461
+ resource_param?: string | null;
7147
7462
  /** Attrs */
7148
7463
  attrs?: {
7149
7464
  [key: string]: string | null;
@@ -7206,6 +7521,22 @@ export interface components {
7206
7521
  /** Manufactured On */
7207
7522
  manufactured_on?: string | null;
7208
7523
  };
7524
+ /**
7525
+ * KpiTrend
7526
+ * @description Daily series under the dashboard tiles. Every list is `days` long.
7527
+ */
7528
+ KpiTrend: {
7529
+ /** Days */
7530
+ days: string[];
7531
+ /** Open Orders */
7532
+ open_orders: number[];
7533
+ /** Orders Opened */
7534
+ orders_opened: number[];
7535
+ /** Orders Closed */
7536
+ orders_closed: number[];
7537
+ /** Defects Found */
7538
+ defects_found: number[];
7539
+ };
7209
7540
  /** LocationContents */
7210
7541
  LocationContents: {
7211
7542
  location: components["schemas"]["RoomOut"];
@@ -7465,6 +7796,21 @@ export interface components {
7465
7796
  /** Attention Order Ids */
7466
7797
  attention_order_ids: string[];
7467
7798
  };
7799
+ /**
7800
+ * LocoSectionRef
7801
+ * @description One place on the machine, as the position picker draws it.
7802
+ *
7803
+ * Ordered by `sort`; the band a section belongs to is drawn where its
7804
+ * smallest sort puts it, so one number orders both the strip and the row.
7805
+ */
7806
+ LocoSectionRef: {
7807
+ /** Code */
7808
+ code: string;
7809
+ /** Band */
7810
+ band: string;
7811
+ /** Sort */
7812
+ sort: number;
7813
+ };
7468
7814
  /**
7469
7815
  * LocoSeriesOut
7470
7816
  * @description Series dictionary + its picture key (terminal caches both offline).
@@ -7478,24 +7824,79 @@ export interface components {
7478
7824
  photo_key: string | null;
7479
7825
  };
7480
7826
  /**
7481
- * LocoUnitCard
7482
- * @description Machine card header = the registry row plus the card-only honesty bits.
7827
+ * LocoSeriesPositionIn
7828
+ * @description Bind a part type to a series with that machine's own position list.
7829
+ *
7830
+ * Normalised by the same validator as nomenclature.positions, so a list means
7831
+ * the same thing wherever it was typed. An empty list is rejected: «no
7832
+ * per-series list» is expressed by DELETEing the binding, which falls the
7833
+ * type back to its global list, not by saving emptiness that would read as
7834
+ * «this series has no positions».
7835
+ */
7836
+ LocoSeriesPositionIn: {
7837
+ /** Positions */
7838
+ positions: string[];
7839
+ };
7840
+ /**
7841
+ * LocoSeriesPositionOut
7842
+ * @description One binding as the admin visualization draws it.
7483
7843
  */
7484
- LocoUnitCard: {
7485
- /** Series */
7486
- series: string;
7487
- /** Number */
7488
- number: string;
7489
- /** Label */
7490
- label: string;
7491
- /** Series Name */
7492
- series_name: string | null;
7493
- /** Series Photo Key */
7494
- series_photo_key: string | null;
7495
- /** Home Depot Id */
7496
- home_depot_id: string | null;
7497
- /** Home Depot Name */
7498
- home_depot_name: string | null;
7844
+ LocoSeriesPositionOut: {
7845
+ /** Loco Series */
7846
+ loco_series: string;
7847
+ /**
7848
+ * Nomenclature Id
7849
+ * Format: uuid
7850
+ */
7851
+ nomenclature_id: string;
7852
+ /** Code */
7853
+ code: string;
7854
+ /** Name */
7855
+ name: string;
7856
+ /** Positions */
7857
+ positions: string[];
7858
+ };
7859
+ /**
7860
+ * LocoSeriesPositionRef
7861
+ * @description One binding: what positions a part type has on ONE series.
7862
+ *
7863
+ * Overrides NomenclatureRef.positions for that series only. A type with no
7864
+ * row here keeps the global list, so this dictionary is usually short and a
7865
+ * depot that never needs per-series lists syncs an empty one.
7866
+ */
7867
+ LocoSeriesPositionRef: {
7868
+ /** Loco Series */
7869
+ loco_series: string;
7870
+ /**
7871
+ * Nomenclature Id
7872
+ * Format: uuid
7873
+ */
7874
+ nomenclature_id: string;
7875
+ /**
7876
+ * Positions
7877
+ * @default []
7878
+ */
7879
+ positions: string[];
7880
+ };
7881
+ /**
7882
+ * LocoUnitCard
7883
+ * @description Machine card header = the registry row plus the card-only honesty bits.
7884
+ */
7885
+ LocoUnitCard: {
7886
+ /** Series */
7887
+ series: string;
7888
+ /** Number */
7889
+ number: string;
7890
+ /** Label */
7891
+ label: string;
7892
+ /** Series Name */
7893
+ series_name: string | null;
7894
+ /** Series Photo Key */
7895
+ series_photo_key: string | null;
7896
+ /** Home Depot Id */
7897
+ home_depot_id: string | null;
7898
+ /** Home Depot Name */
7899
+ home_depot_name: string | null;
7499
7900
  /** Mixed Depot */
7500
7901
  mixed_depot: boolean;
7501
7902
  /** Is Active */
@@ -7738,6 +8139,67 @@ export interface components {
7738
8139
  /** Nomenclature Name */
7739
8140
  nomenclature_name: string | null;
7740
8141
  };
8142
+ /**
8143
+ * MeasuredItemOut
8144
+ * @description One part standing on the machine: what it reads, what the rules say
8145
+ * about it, and what the master already decided.
8146
+ */
8147
+ MeasuredItemOut: {
8148
+ /**
8149
+ * Item Id
8150
+ * Format: uuid
8151
+ */
8152
+ item_id: string;
8153
+ /** Inventory No */
8154
+ inventory_no: string;
8155
+ /** Marked No */
8156
+ marked_no: string | null;
8157
+ /**
8158
+ * Nomenclature Id
8159
+ * Format: uuid
8160
+ */
8161
+ nomenclature_id: string;
8162
+ /** Nomenclature Name */
8163
+ nomenclature_name: string | null;
8164
+ /** Mount Position */
8165
+ mount_position: string | null;
8166
+ /** Measured At */
8167
+ measured_at: string | null;
8168
+ /** Values */
8169
+ values?: components["schemas"]["MeasuredValueOut"][];
8170
+ /** Recommendations */
8171
+ recommendations?: {
8172
+ [key: string]: unknown;
8173
+ }[];
8174
+ /** Verdict */
8175
+ verdict?: string | null;
8176
+ /** Verdict Work Order Number */
8177
+ verdict_work_order_number?: string | null;
8178
+ };
8179
+ /**
8180
+ * MeasuredValueOut
8181
+ * @description The last reading of one parameter, as the master's screen shows it.
8182
+ */
8183
+ MeasuredValueOut: {
8184
+ /** Param Code */
8185
+ param_code: string;
8186
+ /** Param Name */
8187
+ param_name: string | null;
8188
+ /** Actual Value */
8189
+ actual_value: string | null;
8190
+ /** Norm Min */
8191
+ norm_min: string | null;
8192
+ /** Norm Max */
8193
+ norm_max: string | null;
8194
+ /** Uom */
8195
+ uom: string | null;
8196
+ /** Is Pass */
8197
+ is_pass: boolean | null;
8198
+ /** Measured At */
8199
+ measured_at: string | null;
8200
+ /** Stage */
8201
+ stage: string | null;
8202
+ };
7741
8203
  /**
7742
8204
  * MeasurementAddIn
7743
8205
  * @description «O'lchov qo'shish» on the card: one visit of the depot, several numbers.
@@ -7799,6 +8261,36 @@ export interface components {
7799
8261
  /** Actual Value */
7800
8262
  actual_value?: number | string | null;
7801
8263
  };
8264
+ /**
8265
+ * MeasuringOrderIn
8266
+ * @description Open (or re-fetch) the measuring order of one locomotive visit.
8267
+ *
8268
+ * The visit may be named directly, or by the machine the terminal stands at.
8269
+ * The second shape exists because nothing in the depot opens a visit today
8270
+ * (TZ 9.2): the man taps «tekshirish» on the locomotive screen, names what it
8271
+ * came in for, and the visit is born there — otherwise the button is dead
8272
+ * until somebody remembers to enter the visit at a desk.
8273
+ */
8274
+ MeasuringOrderIn: {
8275
+ /**
8276
+ * Event At
8277
+ * Format: date-time
8278
+ */
8279
+ event_at: string;
8280
+ /**
8281
+ * Client Event Uuid
8282
+ * Format: uuid
8283
+ */
8284
+ client_event_uuid: string;
8285
+ /** Terminal Id */
8286
+ terminal_id?: string | null;
8287
+ /** Locomotive Visit Id */
8288
+ locomotive_visit_id?: string | null;
8289
+ /** Locomotive Id */
8290
+ locomotive_id?: string | null;
8291
+ /** Repair Type Code */
8292
+ repair_type_code?: string | null;
8293
+ };
7802
8294
  /** MemberCloseIn */
7803
8295
  MemberCloseIn: {
7804
8296
  /**
@@ -7892,6 +8384,18 @@ export interface components {
7892
8384
  */
7893
8385
  event_type: "MOVE";
7894
8386
  };
8387
+ /**
8388
+ * NavCounters
8389
+ * @description What waits behind each menu line. None = the caller may not open it.
8390
+ */
8391
+ NavCounters: {
8392
+ /** Orders Overdue */
8393
+ orders_overdue: number | null;
8394
+ /** Disposition */
8395
+ disposition: number | null;
8396
+ /** Inventory Open */
8397
+ inventory_open: number | null;
8398
+ };
7895
8399
  /** NodeOut */
7896
8400
  NodeOut: {
7897
8401
  /** Key */
@@ -10040,6 +10544,10 @@ export interface components {
10040
10544
  * RuleCondition
10041
10545
  * @description One comparison. `param` is a nomenclature_fields.code; for a pair field
10042
10546
  * `side` says which wheel is asked (any = either, both = both).
10547
+ *
10548
+ * `value` is a number OR one answer of a select field: the regulation picks its
10549
+ * number by a CLASS («elektrovoz», «to'liq ko'rik»), so a threshold that is not
10550
+ * a number is a class name and the only comparison it accepts is `=`.
10043
10551
  */
10044
10552
  "RuleCondition-Input": {
10045
10553
  /** Param */
@@ -10064,6 +10572,10 @@ export interface components {
10064
10572
  * RuleCondition
10065
10573
  * @description One comparison. `param` is a nomenclature_fields.code; for a pair field
10066
10574
  * `side` says which wheel is asked (any = either, both = both).
10575
+ *
10576
+ * `value` is a number OR one answer of a select field: the regulation picks its
10577
+ * number by a CLASS («elektrovoz», «to'liq ko'rik»), so a threshold that is not
10578
+ * a number is a class name and the only comparison it accepts is `=`.
10067
10579
  */
10068
10580
  "RuleCondition-Output": {
10069
10581
  /** Param */
@@ -10945,6 +11457,75 @@ export interface components {
10945
11457
  */
10946
11458
  is_offline: boolean;
10947
11459
  };
11460
+ /**
11461
+ * StoreInCommand
11462
+ * @description Storekeeper puts a part on a shelf and says WHICH shelf it belongs on.
11463
+ *
11464
+ * A part removed under a planned check has no defect; filing it as
11465
+ * IN_STOCK_DEFECT made every stock report call serviceable parts defective.
11466
+ * The default keeps the old behaviour, so a silent client cannot promote one.
11467
+ */
11468
+ StoreInCommand: {
11469
+ /**
11470
+ * Item Id
11471
+ * Format: uuid
11472
+ */
11473
+ item_id: string;
11474
+ /**
11475
+ * Event At
11476
+ * Format: date-time
11477
+ */
11478
+ event_at: string;
11479
+ /**
11480
+ * Client Event Uuid
11481
+ * Format: uuid
11482
+ */
11483
+ client_event_uuid: string;
11484
+ /** To Location Id */
11485
+ to_location_id?: string | null;
11486
+ /** To Locomotive Id */
11487
+ to_locomotive_id?: string | null;
11488
+ /** To Holder Person Id */
11489
+ to_holder_person_id?: string | null;
11490
+ /** To Parent Item Id */
11491
+ to_parent_item_id?: string | null;
11492
+ /** Counterparty Person Id */
11493
+ counterparty_person_id?: string | null;
11494
+ /** Terminal Id */
11495
+ terminal_id?: string | null;
11496
+ /** Shift Instance Id */
11497
+ shift_instance_id?: string | null;
11498
+ /** Locomotive Visit Id */
11499
+ locomotive_visit_id?: string | null;
11500
+ /** Work Order Id */
11501
+ work_order_id?: string | null;
11502
+ /** Task Id */
11503
+ task_id?: string | null;
11504
+ /** Defect Code */
11505
+ defect_code?: string | null;
11506
+ /** Comment */
11507
+ comment?: string | null;
11508
+ /** Payload */
11509
+ payload?: {
11510
+ [key: string]: unknown;
11511
+ };
11512
+ /**
11513
+ * Is Offline
11514
+ * @default false
11515
+ */
11516
+ is_offline: boolean;
11517
+ /**
11518
+ * @description discriminator enum property added by openapi-typescript
11519
+ * @enum {string}
11520
+ */
11521
+ event_type: "STORE_IN";
11522
+ /**
11523
+ * Requested Status
11524
+ * @default IN_STOCK_DEFECT
11525
+ * @enum {string}
11526
+ */
11527
+ requested_status: "IN_STOCK_OK" | "IN_STOCK_DEFECT";
11528
+ };
10948
11529
  /** StornoCommand */
10949
11530
  StornoCommand: {
10950
11531
  /**
@@ -11115,6 +11696,45 @@ export interface components {
11115
11696
  /** Terminal Id */
11116
11697
  terminal_id?: string | null;
11117
11698
  };
11699
+ /**
11700
+ * TaskCosignIn
11701
+ * @description B10: the fitter moves his operation with his own card on the master's
11702
+ * screen — the counterpart of WorkSignIn for REPAIR_START/PAUSE/RESUME/FINISH.
11703
+ *
11704
+ * Identification follows the installation switch exactly as WorkSignIn does
11705
+ * (badge_uid under RFID, tab_no under the TABEL pilot, PIN in both). No
11706
+ * signature is written: repair steps are routine events (TZ 8), the second
11707
+ * card is here only so the work is journalled under the man who does it.
11708
+ */
11709
+ TaskCosignIn: {
11710
+ /**
11711
+ * Event At
11712
+ * Format: date-time
11713
+ */
11714
+ event_at: string;
11715
+ /**
11716
+ * Client Event Uuid
11717
+ * Format: uuid
11718
+ */
11719
+ client_event_uuid: string;
11720
+ /** Terminal Id */
11721
+ terminal_id?: string | null;
11722
+ /** Badge Uid */
11723
+ badge_uid?: string | null;
11724
+ /** Tab No */
11725
+ tab_no?: string | null;
11726
+ /** Pin */
11727
+ pin: string;
11728
+ /**
11729
+ * Action
11730
+ * @enum {string}
11731
+ */
11732
+ action: "start" | "pause" | "resume" | "finish";
11733
+ /** Result Note */
11734
+ result_note?: string | null;
11735
+ /** Comment */
11736
+ comment?: string | null;
11737
+ };
11118
11738
  /** TaskIn */
11119
11739
  TaskIn: {
11120
11740
  /** Title */
@@ -11356,39 +11976,117 @@ export interface components {
11356
11976
  ctx?: Record<string, never>;
11357
11977
  };
11358
11978
  /**
11359
- * VisitOut
11360
- * @description Current (unreleased) shop visit, when one exists in the data.
11979
+ * VerdictIn
11980
+ * @description The master's decision on ONE measured part: repair it, or leave it.
11981
+ *
11982
+ * REPAIR opens the removal order right there — with the reason he signed for,
11983
+ * a defect or a scheduled check, exactly one of the two like every other
11984
+ * order. NO_ACTION moves nothing: it is a signed note on the part saying the
11985
+ * numbers were seen and found good enough.
11361
11986
  */
11362
- VisitOut: {
11987
+ VerdictIn: {
11363
11988
  /**
11364
- * Id
11989
+ * Event At
11990
+ * Format: date-time
11991
+ */
11992
+ event_at: string;
11993
+ /**
11994
+ * Client Event Uuid
11365
11995
  * Format: uuid
11366
11996
  */
11367
- id: string;
11368
- /** Status */
11369
- status: string;
11370
- /** Repair Type Code */
11371
- repair_type_code: string | null;
11997
+ client_event_uuid: string;
11998
+ /** Terminal Id */
11999
+ terminal_id?: string | null;
11372
12000
  /**
11373
- * Arrived At
11374
- * Format: date-time
12001
+ * Item Id
12002
+ * Format: uuid
11375
12003
  */
11376
- arrived_at: string;
11377
- /** Track Location Name */
11378
- track_location_name: string | null;
11379
- };
11380
- /** WorkAreaCapability */
11381
- WorkAreaCapability: {
11382
- /** Code */
11383
- code: string;
11384
- /** Name */
11385
- name: string;
12004
+ item_id: string;
12005
+ /**
12006
+ * Decision
12007
+ * @enum {string}
12008
+ */
12009
+ decision: "REPAIR" | "NO_ACTION";
12010
+ /** Defect Code */
12011
+ defect_code?: string | null;
12012
+ /** Repair Type Code */
12013
+ repair_type_code?: string | null;
12014
+ /** Comment */
12015
+ comment?: string | null;
11386
12016
  };
11387
12017
  /**
11388
- * WorkAreaOut
11389
- * @description A place where work is actually done, for the terminal's operation picker.
12018
+ * VerdictLine
12019
+ * @description One part's line in an inspection pass — the same decision as VerdictIn,
12020
+ * minus the envelope, plus the operation the order should carry.
11390
12021
  *
11391
- * One rule decides membership: the location has at least one work capability.
12022
+ * `capability_code` is how «send it for investigation» is said: there is no
12023
+ * third reason_kind and there must not be one (a pseudo-defect «inspection»
12024
+ * would head the Pareto forever), so the order opens on its real reason and
12025
+ * carries e.g. дефектоскопия as its operation.
12026
+ */
12027
+ VerdictLine: {
12028
+ /**
12029
+ * Item Id
12030
+ * Format: uuid
12031
+ */
12032
+ item_id: string;
12033
+ /**
12034
+ * Decision
12035
+ * @enum {string}
12036
+ */
12037
+ decision: "REPAIR" | "NO_ACTION";
12038
+ /** Defect Code */
12039
+ defect_code?: string | null;
12040
+ /** Repair Type Code */
12041
+ repair_type_code?: string | null;
12042
+ /** Capability Code */
12043
+ capability_code?: string | null;
12044
+ /** Comment */
12045
+ comment?: string | null;
12046
+ };
12047
+ /** VerdictOut */
12048
+ VerdictOut: {
12049
+ /** Decision */
12050
+ decision: string;
12051
+ /** Work Order Id */
12052
+ work_order_id?: string | null;
12053
+ /** Work Order Number */
12054
+ work_order_number?: string | null;
12055
+ };
12056
+ /**
12057
+ * VisitOut
12058
+ * @description Current (unreleased) shop visit, when one exists in the data.
12059
+ */
12060
+ VisitOut: {
12061
+ /**
12062
+ * Id
12063
+ * Format: uuid
12064
+ */
12065
+ id: string;
12066
+ /** Status */
12067
+ status: string;
12068
+ /** Repair Type Code */
12069
+ repair_type_code: string | null;
12070
+ /**
12071
+ * Arrived At
12072
+ * Format: date-time
12073
+ */
12074
+ arrived_at: string;
12075
+ /** Track Location Name */
12076
+ track_location_name: string | null;
12077
+ };
12078
+ /** WorkAreaCapability */
12079
+ WorkAreaCapability: {
12080
+ /** Code */
12081
+ code: string;
12082
+ /** Name */
12083
+ name: string;
12084
+ };
12085
+ /**
12086
+ * WorkAreaOut
12087
+ * @description A place where work is actually done, for the terminal's operation picker.
12088
+ *
12089
+ * One rule decides membership: the location has at least one work capability.
11392
12090
  * The location type does not take part — location_types.can_repair is a hint
11393
12091
  * for the admin UI, not a visibility gate. Carries the shop it belongs to so
11394
12092
  * the kiosk can label «uchastka · sex» and float its own shop to the top.
@@ -11459,6 +12157,8 @@ export interface components {
11459
12157
  returned_to_person_id: string | null;
11460
12158
  /** Closed At */
11461
12159
  closed_at: string | null;
12160
+ /** Item Status */
12161
+ item_status?: string | null;
11462
12162
  /** Tasks */
11463
12163
  tasks?: components["schemas"]["TaskOut"][];
11464
12164
  };
@@ -11578,6 +12278,8 @@ export interface components {
11578
12278
  returned_to_person_id: string | null;
11579
12279
  /** Closed At */
11580
12280
  closed_at: string | null;
12281
+ /** Item Status */
12282
+ item_status?: string | null;
11581
12283
  };
11582
12284
  /** WorkOrderStatusCount */
11583
12285
  WorkOrderStatusCount: {
@@ -13607,6 +14309,115 @@ export interface operations {
13607
14309
  };
13608
14310
  };
13609
14311
  };
14312
+ list_series_positions_api_v1_admin_refs_loco_series__code__positions_get: {
14313
+ parameters: {
14314
+ query?: never;
14315
+ header?: {
14316
+ "x-debug-person-id"?: string | null;
14317
+ };
14318
+ path: {
14319
+ code: string;
14320
+ };
14321
+ cookie?: {
14322
+ depo_admin_session?: string | null;
14323
+ };
14324
+ };
14325
+ requestBody?: never;
14326
+ responses: {
14327
+ /** @description Successful Response */
14328
+ 200: {
14329
+ headers: {
14330
+ [name: string]: unknown;
14331
+ };
14332
+ content: {
14333
+ "application/json": components["schemas"]["LocoSeriesPositionOut"][];
14334
+ };
14335
+ };
14336
+ /** @description Validation Error */
14337
+ 422: {
14338
+ headers: {
14339
+ [name: string]: unknown;
14340
+ };
14341
+ content: {
14342
+ "application/json": components["schemas"]["HTTPValidationError"];
14343
+ };
14344
+ };
14345
+ };
14346
+ };
14347
+ bind_series_positions_api_v1_admin_refs_loco_series__code__positions__nomenclature_id__put: {
14348
+ parameters: {
14349
+ query?: never;
14350
+ header?: {
14351
+ "x-debug-person-id"?: string | null;
14352
+ };
14353
+ path: {
14354
+ code: string;
14355
+ nomenclature_id: string;
14356
+ };
14357
+ cookie?: {
14358
+ depo_admin_session?: string | null;
14359
+ };
14360
+ };
14361
+ requestBody: {
14362
+ content: {
14363
+ "application/json": components["schemas"]["LocoSeriesPositionIn"];
14364
+ };
14365
+ };
14366
+ responses: {
14367
+ /** @description Successful Response */
14368
+ 200: {
14369
+ headers: {
14370
+ [name: string]: unknown;
14371
+ };
14372
+ content: {
14373
+ "application/json": components["schemas"]["LocoSeriesPositionOut"];
14374
+ };
14375
+ };
14376
+ /** @description Validation Error */
14377
+ 422: {
14378
+ headers: {
14379
+ [name: string]: unknown;
14380
+ };
14381
+ content: {
14382
+ "application/json": components["schemas"]["HTTPValidationError"];
14383
+ };
14384
+ };
14385
+ };
14386
+ };
14387
+ unbind_series_positions_api_v1_admin_refs_loco_series__code__positions__nomenclature_id__delete: {
14388
+ parameters: {
14389
+ query?: never;
14390
+ header?: {
14391
+ "x-debug-person-id"?: string | null;
14392
+ };
14393
+ path: {
14394
+ code: string;
14395
+ nomenclature_id: string;
14396
+ };
14397
+ cookie?: {
14398
+ depo_admin_session?: string | null;
14399
+ };
14400
+ };
14401
+ requestBody?: never;
14402
+ responses: {
14403
+ /** @description Successful Response */
14404
+ 204: {
14405
+ headers: {
14406
+ [name: string]: unknown;
14407
+ };
14408
+ content?: never;
14409
+ };
14410
+ /** @description Validation Error */
14411
+ 422: {
14412
+ headers: {
14413
+ [name: string]: unknown;
14414
+ };
14415
+ content: {
14416
+ "application/json": components["schemas"]["HTTPValidationError"];
14417
+ };
14418
+ };
14419
+ };
14420
+ };
13610
14421
  list_entity_api_v1_admin_refs__entity__get: {
13611
14422
  parameters: {
13612
14423
  query?: never;
@@ -15222,7 +16033,7 @@ export interface operations {
15222
16033
  };
15223
16034
  requestBody: {
15224
16035
  content: {
15225
- "application/json": components["schemas"]["InstallCommand"] | components["schemas"]["MoveCommand"] | components["schemas"]["HandoverCommand"] | components["schemas"]["RemoveCommand"] | components["schemas"]["ReceiveOpeningCommand"] | components["schemas"]["FoundCommand"] | components["schemas"]["InspectCommand"] | components["schemas"]["DispositionCommand"] | components["schemas"]["StornoCommand"] | components["schemas"]["RepairStartCommand"] | components["schemas"]["RepairPauseCommand"] | components["schemas"]["RepairResumeCommand"] | components["schemas"]["RepairFinishCommand"] | components["schemas"]["GenericCommand"];
16036
+ "application/json": components["schemas"]["InstallCommand"] | components["schemas"]["MoveCommand"] | components["schemas"]["HandoverCommand"] | components["schemas"]["RemoveCommand"] | components["schemas"]["ReceiveOpeningCommand"] | components["schemas"]["FoundCommand"] | components["schemas"]["InspectCommand"] | components["schemas"]["StoreInCommand"] | components["schemas"]["DispositionCommand"] | components["schemas"]["StornoCommand"] | components["schemas"]["RepairStartCommand"] | components["schemas"]["RepairPauseCommand"] | components["schemas"]["RepairResumeCommand"] | components["schemas"]["RepairFinishCommand"] | components["schemas"]["GenericCommand"];
15226
16037
  };
15227
16038
  };
15228
16039
  responses: {
@@ -17418,6 +18229,74 @@ export interface operations {
17418
18229
  };
17419
18230
  };
17420
18231
  };
18232
+ loco_sections_api_v1_refs_loco_sections_get: {
18233
+ parameters: {
18234
+ query?: never;
18235
+ header?: {
18236
+ authorization?: string | null;
18237
+ "x-debug-person-id"?: string | null;
18238
+ };
18239
+ path?: never;
18240
+ cookie?: {
18241
+ depo_admin_session?: string | null;
18242
+ };
18243
+ };
18244
+ requestBody?: never;
18245
+ responses: {
18246
+ /** @description Successful Response */
18247
+ 200: {
18248
+ headers: {
18249
+ [name: string]: unknown;
18250
+ };
18251
+ content: {
18252
+ "application/json": components["schemas"]["LocoSectionRef"][];
18253
+ };
18254
+ };
18255
+ /** @description Validation Error */
18256
+ 422: {
18257
+ headers: {
18258
+ [name: string]: unknown;
18259
+ };
18260
+ content: {
18261
+ "application/json": components["schemas"]["HTTPValidationError"];
18262
+ };
18263
+ };
18264
+ };
18265
+ };
18266
+ loco_series_positions_api_v1_refs_loco_series_positions_get: {
18267
+ parameters: {
18268
+ query?: never;
18269
+ header?: {
18270
+ authorization?: string | null;
18271
+ "x-debug-person-id"?: string | null;
18272
+ };
18273
+ path?: never;
18274
+ cookie?: {
18275
+ depo_admin_session?: string | null;
18276
+ };
18277
+ };
18278
+ requestBody?: never;
18279
+ responses: {
18280
+ /** @description Successful Response */
18281
+ 200: {
18282
+ headers: {
18283
+ [name: string]: unknown;
18284
+ };
18285
+ content: {
18286
+ "application/json": components["schemas"]["LocoSeriesPositionRef"][];
18287
+ };
18288
+ };
18289
+ /** @description Validation Error */
18290
+ 422: {
18291
+ headers: {
18292
+ [name: string]: unknown;
18293
+ };
18294
+ content: {
18295
+ "application/json": components["schemas"]["HTTPValidationError"];
18296
+ };
18297
+ };
18298
+ };
18299
+ };
17421
18300
  nomenclature_api_v1_refs_nomenclature_get: {
17422
18301
  parameters: {
17423
18302
  query?: {
@@ -17990,6 +18869,74 @@ export interface operations {
17990
18869
  };
17991
18870
  };
17992
18871
  };
18872
+ kpi_trend_api_v1_reports_kpi_trend_get: {
18873
+ parameters: {
18874
+ query?: {
18875
+ days?: number;
18876
+ };
18877
+ header?: {
18878
+ "x-debug-person-id"?: string | null;
18879
+ };
18880
+ path?: never;
18881
+ cookie?: {
18882
+ depo_admin_session?: string | null;
18883
+ };
18884
+ };
18885
+ requestBody?: never;
18886
+ responses: {
18887
+ /** @description Successful Response */
18888
+ 200: {
18889
+ headers: {
18890
+ [name: string]: unknown;
18891
+ };
18892
+ content: {
18893
+ "application/json": components["schemas"]["KpiTrend"];
18894
+ };
18895
+ };
18896
+ /** @description Validation Error */
18897
+ 422: {
18898
+ headers: {
18899
+ [name: string]: unknown;
18900
+ };
18901
+ content: {
18902
+ "application/json": components["schemas"]["HTTPValidationError"];
18903
+ };
18904
+ };
18905
+ };
18906
+ };
18907
+ nav_counters_api_v1_reports_nav_counters_get: {
18908
+ parameters: {
18909
+ query?: never;
18910
+ header?: {
18911
+ "x-debug-person-id"?: string | null;
18912
+ };
18913
+ path?: never;
18914
+ cookie?: {
18915
+ depo_admin_session?: string | null;
18916
+ };
18917
+ };
18918
+ requestBody?: never;
18919
+ responses: {
18920
+ /** @description Successful Response */
18921
+ 200: {
18922
+ headers: {
18923
+ [name: string]: unknown;
18924
+ };
18925
+ content: {
18926
+ "application/json": components["schemas"]["NavCounters"];
18927
+ };
18928
+ };
18929
+ /** @description Validation Error */
18930
+ 422: {
18931
+ headers: {
18932
+ [name: string]: unknown;
18933
+ };
18934
+ content: {
18935
+ "application/json": components["schemas"]["HTTPValidationError"];
18936
+ };
18937
+ };
18938
+ };
18939
+ };
17993
18940
  open_orders_api_v1_reports_open_orders_get: {
17994
18941
  parameters: {
17995
18942
  query?: {
@@ -19854,6 +20801,152 @@ export interface operations {
19854
20801
  };
19855
20802
  };
19856
20803
  };
20804
+ open_measuring_order_api_v1_work_orders_measuring_post: {
20805
+ parameters: {
20806
+ query?: never;
20807
+ header?: {
20808
+ authorization?: string | null;
20809
+ "x-debug-person-id"?: string | null;
20810
+ };
20811
+ path?: never;
20812
+ cookie?: never;
20813
+ };
20814
+ requestBody: {
20815
+ content: {
20816
+ "application/json": components["schemas"]["MeasuringOrderIn"];
20817
+ };
20818
+ };
20819
+ responses: {
20820
+ /** @description Successful Response */
20821
+ 200: {
20822
+ headers: {
20823
+ [name: string]: unknown;
20824
+ };
20825
+ content: {
20826
+ "application/json": components["schemas"]["WorkOrderDetail"];
20827
+ };
20828
+ };
20829
+ /** @description Validation Error */
20830
+ 422: {
20831
+ headers: {
20832
+ [name: string]: unknown;
20833
+ };
20834
+ content: {
20835
+ "application/json": components["schemas"]["HTTPValidationError"];
20836
+ };
20837
+ };
20838
+ };
20839
+ };
20840
+ measuring_items_api_v1_work_orders_measuring__wo_id__items_get: {
20841
+ parameters: {
20842
+ query?: never;
20843
+ header?: {
20844
+ authorization?: string | null;
20845
+ "x-debug-person-id"?: string | null;
20846
+ };
20847
+ path: {
20848
+ wo_id: string;
20849
+ };
20850
+ cookie?: never;
20851
+ };
20852
+ requestBody?: never;
20853
+ responses: {
20854
+ /** @description Successful Response */
20855
+ 200: {
20856
+ headers: {
20857
+ [name: string]: unknown;
20858
+ };
20859
+ content: {
20860
+ "application/json": components["schemas"]["MeasuredItemOut"][];
20861
+ };
20862
+ };
20863
+ /** @description Validation Error */
20864
+ 422: {
20865
+ headers: {
20866
+ [name: string]: unknown;
20867
+ };
20868
+ content: {
20869
+ "application/json": components["schemas"]["HTTPValidationError"];
20870
+ };
20871
+ };
20872
+ };
20873
+ };
20874
+ measuring_verdict_api_v1_work_orders_measuring__wo_id__verdict_post: {
20875
+ parameters: {
20876
+ query?: never;
20877
+ header?: {
20878
+ authorization?: string | null;
20879
+ "x-debug-person-id"?: string | null;
20880
+ };
20881
+ path: {
20882
+ wo_id: string;
20883
+ };
20884
+ cookie?: never;
20885
+ };
20886
+ requestBody: {
20887
+ content: {
20888
+ "application/json": components["schemas"]["VerdictIn"];
20889
+ };
20890
+ };
20891
+ responses: {
20892
+ /** @description Successful Response */
20893
+ 200: {
20894
+ headers: {
20895
+ [name: string]: unknown;
20896
+ };
20897
+ content: {
20898
+ "application/json": components["schemas"]["VerdictOut"];
20899
+ };
20900
+ };
20901
+ /** @description Validation Error */
20902
+ 422: {
20903
+ headers: {
20904
+ [name: string]: unknown;
20905
+ };
20906
+ content: {
20907
+ "application/json": components["schemas"]["HTTPValidationError"];
20908
+ };
20909
+ };
20910
+ };
20911
+ };
20912
+ inspection_sign_api_v1_work_orders_measuring__wo_id__verdicts_post: {
20913
+ parameters: {
20914
+ query?: never;
20915
+ header?: {
20916
+ authorization?: string | null;
20917
+ "x-debug-person-id"?: string | null;
20918
+ };
20919
+ path: {
20920
+ wo_id: string;
20921
+ };
20922
+ cookie?: never;
20923
+ };
20924
+ requestBody: {
20925
+ content: {
20926
+ "application/json": components["schemas"]["InspectionSignIn"];
20927
+ };
20928
+ };
20929
+ responses: {
20930
+ /** @description Successful Response */
20931
+ 200: {
20932
+ headers: {
20933
+ [name: string]: unknown;
20934
+ };
20935
+ content: {
20936
+ "application/json": components["schemas"]["InspectionSignOut"];
20937
+ };
20938
+ };
20939
+ /** @description Validation Error */
20940
+ 422: {
20941
+ headers: {
20942
+ [name: string]: unknown;
20943
+ };
20944
+ content: {
20945
+ "application/json": components["schemas"]["HTTPValidationError"];
20946
+ };
20947
+ };
20948
+ };
20949
+ };
19857
20950
  accept_order_api_v1_work_orders__wo_id__accept_post: {
19858
20951
  parameters: {
19859
20952
  query?: never;
@@ -20163,6 +21256,45 @@ export interface operations {
20163
21256
  };
20164
21257
  };
20165
21258
  };
21259
+ cosign_task_op_api_v1_work_orders__wo_id__tasks__task_id__cosign_op_post: {
21260
+ parameters: {
21261
+ query?: never;
21262
+ header?: {
21263
+ authorization?: string | null;
21264
+ "x-debug-person-id"?: string | null;
21265
+ };
21266
+ path: {
21267
+ wo_id: string;
21268
+ task_id: string;
21269
+ };
21270
+ cookie?: never;
21271
+ };
21272
+ requestBody: {
21273
+ content: {
21274
+ "application/json": components["schemas"]["TaskCosignIn"];
21275
+ };
21276
+ };
21277
+ responses: {
21278
+ /** @description Successful Response */
21279
+ 200: {
21280
+ headers: {
21281
+ [name: string]: unknown;
21282
+ };
21283
+ content: {
21284
+ "application/json": components["schemas"]["TaskOut"];
21285
+ };
21286
+ };
21287
+ /** @description Validation Error */
21288
+ 422: {
21289
+ headers: {
21290
+ [name: string]: unknown;
21291
+ };
21292
+ content: {
21293
+ "application/json": components["schemas"]["HTTPValidationError"];
21294
+ };
21295
+ };
21296
+ };
21297
+ };
20166
21298
  work_accept_sign_api_v1_work_orders__wo_id__work_accept_sign_post: {
20167
21299
  parameters: {
20168
21300
  query?: never;