@flowselections/logistiek-engine 1.0.126 → 1.0.129

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.
@@ -0,0 +1,3 @@
1
+ /** Floriday-koppeling weigert omdat een vast kenmerk (eigendom Afhandeling) ontbreekt. */
2
+ export declare function isKenmerkOntbreekt(error: string | null | undefined): boolean;
3
+ //# sourceMappingURL=kenmerk.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kenmerk.d.ts","sourceRoot":"","sources":["../../src/lib/kenmerk.ts"],"names":[],"mappings":"AAAA,0FAA0F;AAC1F,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAM5E"}
@@ -0,0 +1,6 @@
1
+ /** Floriday-koppeling weigert omdat een vast kenmerk (eigendom Afhandeling) ontbreekt. */
2
+ export function isKenmerkOntbreekt(error) {
3
+ const t = String(error ?? "").toLowerCase();
4
+ return (/(fulfillmentorderid|loadcarrierreference|loadcarrieritemid)[^.]*ontbreekt/.test(t) ||
5
+ /missing[^.]*(fulfillmentorderid|loadcarrierreference|loadcarrieritemid)/.test(t));
6
+ }
@@ -1,2 +1,2 @@
1
- export declare const MODULE_VERSION = "1.0.126";
1
+ export declare const MODULE_VERSION = "1.0.129";
2
2
  //# sourceMappingURL=moduleVersion.d.ts.map
@@ -1,2 +1,2 @@
1
1
  // Automatisch gegenereerd door prebuild:lib; niet handmatig aanpassen.
2
- export const MODULE_VERSION = "1.0.126";
2
+ export const MODULE_VERSION = "1.0.129";
@@ -1 +1 @@
1
- {"version":3,"file":"shippingNoteQueue.server.d.ts","sourceRoot":"","sources":["../../src/lib/shippingNoteQueue.server.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAO5D,MAAM,WAAW,eAAe;IAC9B,uDAAuD;IACvD,OAAO,EAAE,MAAM,CAAC;IAChB,uDAAuD;IACvD,OAAO,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,OAAO,EAAE,MAAM,CAAC;IAChB,iFAAiF;IACjF,QAAQ,EAAE,MAAM,CAAC;IACjB,iDAAiD;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAoCD,wBAAsB,oBAAoB,CACxC,EAAE,EAAE,cAAc,EAClB,OAAO,GAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAO,GAC/B,OAAO,CAAC,eAAe,CAAC,CA2b1B;AAMD,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,aAAa,GAAG,IAAI,CAAC;AAElE,qGAAqG;AACrG,wBAAsB,uBAAuB,CAAC,EAAE,EAAE,cAAc,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAQ9F;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,mBAAmB,CAG5E;AAED,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,mBAAmB,GAAG,MAAM,CAI3E"}
1
+ {"version":3,"file":"shippingNoteQueue.server.d.ts","sourceRoot":"","sources":["../../src/lib/shippingNoteQueue.server.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAO5D,MAAM,WAAW,eAAe;IAC9B,uDAAuD;IACvD,OAAO,EAAE,MAAM,CAAC;IAChB,uDAAuD;IACvD,OAAO,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,OAAO,EAAE,MAAM,CAAC;IAChB,iFAAiF;IACjF,QAAQ,EAAE,MAAM,CAAC;IACjB,iDAAiD;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAoCD,wBAAsB,oBAAoB,CACxC,EAAE,EAAE,cAAc,EAClB,OAAO,GAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAO,GAC/B,OAAO,CAAC,eAAe,CAAC,CA4c1B;AAMD,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,aAAa,GAAG,IAAI,CAAC;AAElE,qGAAqG;AACrG,wBAAsB,uBAAuB,CAAC,EAAE,EAAE,cAAc,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAQ9F;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,mBAAmB,CAG5E;AAED,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,mBAAmB,GAAG,MAAM,CAI3E"}
@@ -11,6 +11,7 @@
11
11
  // Er wordt niets bevestigd of afgehandeld, en er komen geen omgevings- of
12
12
  // klantwaarden in deze code.
13
13
  // ============================================================================
14
+ import { isKenmerkOntbreekt } from "./kenmerk.js";
14
15
  import { trace, newTraceId, classifyError } from "./trace.server.js";
15
16
  import { FLOW_NODE } from "./flowNodes.js";
16
17
  import { printViaLayout } from "./layoutPrint.server.js";
@@ -268,6 +269,24 @@ export async function runShippingNoteQueue(sb, options = {}) {
268
269
  await houdVast(aangemaakt.error ?? "De poort staat het aanmaken van de verzendbrief niet toe.");
269
270
  continue;
270
271
  }
272
+ else if (!aangemaakt.ok && isKenmerkOntbreekt(aangemaakt.error)) {
273
+ // Vaste kenmerken zijn van Afhandeling; de Engine maakt ze nooit zelf.
274
+ await sb.rpc("logistics_slip_note_hold_kenmerk", {
275
+ _id: row.id,
276
+ _reason: `Wacht op vast kenmerk van Afhandeling: ${aangemaakt.error}`,
277
+ });
278
+ run.waiting++;
279
+ await trace(sb, {
280
+ ...basis,
281
+ step: "Wacht op vast kenmerk van Afhandeling",
282
+ status: "wachtend",
283
+ decision: "wacht_op_kenmerk",
284
+ reason: aangemaakt.error ?? "Vast kenmerk ontbreekt.",
285
+ rule: "Afhandeling is eigenaar van fulfillmentOrderId/loadCarrierReference/loadCarrierItemId",
286
+ nextStep: "Gaat pas verder als Afhandeling het kenmerk vastlegt of belading_verstuurder op 'afhandeling' staat",
287
+ });
288
+ continue;
289
+ }
271
290
  else if (!aangemaakt.ok) {
272
291
  await wacht(`Wachten op Floriday-verzendbrief: ${aangemaakt.error ?? "Floriday heeft het document nog niet aangemaakt."}`, aangemaakt.skipped ? "nog_niet_beschikbaar" : classifyFloridayReason(aangemaakt.error ?? ""));
273
292
  continue;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flowselections/logistiek-engine",
3
- "version": "1.0.126",
3
+ "version": "1.0.129",
4
4
  "flowselections": {
5
5
  "moduleId": "logistiek-engine",
6
6
  "pages": [