@flowselections/logistiek-engine 1.0.183 → 1.0.185

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.
@@ -1 +1 @@
1
- {"version":3,"file":"modulePrompts.d.ts","sourceRoot":"","sources":["../../src/lib/modulePrompts.ts"],"names":[],"mappings":"AAWA;;;;GAIG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;CAKvB,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,oBAAoB,CAAC;AAKhE,MAAM,WAAW,oBAAoB;IACnC,6DAA6D;IAC7D,MAAM,EAAE,MAAM,CAAC;IACf,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,6CAA6C;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,iFAAiF;IACjF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,eAAe,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,oBAAoB,EAAE,CAAC;CACnC;AAiuMD,eAAO,MAAM,cAAc,EAAE,YAAY,EAUL,CAAC;AAErC,gEAAgE;AAChE,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,YAAY,EACpB,QAAQ,EAAE,oBAAoB,GAC7B,MAAM,CAmBR;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAE9D;AAED,oEAAoE;AACpE,wBAAgB,qBAAqB,IAAI,MAAM,CAiB9C;AAED,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,eAAe,EAC1B,cAAc,CAAC,EAAE,MAAM,GACtB,MAAM,CAIR"}
1
+ {"version":3,"file":"modulePrompts.d.ts","sourceRoot":"","sources":["../../src/lib/modulePrompts.ts"],"names":[],"mappings":"AAWA;;;;GAIG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;CAKvB,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,oBAAoB,CAAC;AAKhE,MAAM,WAAW,oBAAoB;IACnC,6DAA6D;IAC7D,MAAM,EAAE,MAAM,CAAC;IACf,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,6CAA6C;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,iFAAiF;IACjF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,eAAe,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,oBAAoB,EAAE,CAAC;CACnC;AA65MD,eAAO,MAAM,cAAc,EAAE,YAAY,EAUL,CAAC;AAErC,gEAAgE;AAChE,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,YAAY,EACpB,QAAQ,EAAE,oBAAoB,GAC7B,MAAM,CAmBR;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAE9D;AAED,oEAAoE;AACpE,wBAAgB,qBAAqB,IAAI,MAAM,CAiB9C;AAED,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,eAAe,EAC1B,cAAc,CAAC,EAAE,MAAM,GACtB,MAAM,CAIR"}
@@ -1235,12 +1235,121 @@ CONTROLELIJST
1235
1235
  uit logistics_events.error.
1236
1236
  [ ] Meld terug met je pakketversie.`,
1237
1237
  },
1238
+ {
1239
+ number: 27,
1240
+ title: "Vervoerder tonen en handmatig kiezen",
1241
+ date: "2026-10-22",
1242
+ summary: "Ordervervoerder tonen met bron en reden; handmatig kiezen via logistics_set_order_carrier.",
1243
+ body: `GEDEELD CONTRACT VERVOERDER (eigenaar: Logistiek Engine, versie 1.0.184)
1244
+ - Kolommen op orders (Engine): carrier_id, carrier_source, carrier_reason,
1245
+ carrier_resolved_at, carrier_set_by, carrier_set_at.
1246
+ - carrier_source: handmatig, afleverlocatie, afleverlocatie_gln, klant,
1247
+ werkgebied, favoriet, geen, oud.
1248
+ - Functies (Engine): logistics_resolve_carrier(p_order_id uuid) → jsonb
1249
+ {carrier_id, carrier_name, carrier_kind, bron, reden, waarschuwing};
1250
+ logistics_resolve_carrier_many(p_order_ids uuid[]);
1251
+ logistics_resolve_carrier_for_location(p_location_id uuid, p_customer_id uuid)
1252
+ en _many (zelfde volgorde zonder stap 1);
1253
+ logistics_set_order_carrier(p_order_id uuid, p_carrier_id uuid) — de enige
1254
+ manier om handmatig te kiezen; NULL = terug naar automatisch.
1255
+ - Volgorde: 1 handmatig → 2 afleverlocatie (self_pickup = klant haalt op;
1256
+ carrier_id alleen als carrier_assignment_source = 'manual') → 3
1257
+ carriers.delivery_location_glns bevat de GLN → 4 customers.default_carrier_id
1258
+ → 5 werkgebied plaats > provincie > land met ophaalmoment op de leverdag →
1259
+ 6 afh_favorite_carrier(). Overgeslagen (met reden): extern zonder e-mail,
1260
+ carrier_kind leeg, archived_at gevuld. is_default telt niet meer mee.
1261
+ - Altijd op id, nooit op naam. Herkennen op carrier_kind, nooit op naam.
1262
+ - Niet herberekenen na aanmelding, plan_locked_at, start picken, gepickt of
1263
+ vastgezette kar; dan alleen waarschuwing "Vervoerder zou nu <X> zijn".
1264
+ - Opslaan of wijzigen van een vervoerder verstuurt nooit zelf een mail.
1265
+ - Geen migraties met omgevingswaarden; geen URL's, sleutels of namen in code.
1266
+
1267
+ Bouw in Verkoop (geen eigen vervoerderlogica, geen eigen opslag):
1268
+ 1. Orderdetail en orderlijst: toon orders.carrier_id als naam, plus bron en
1269
+ carrier_reason. carrier_source = 'geen': rode melding met carrier_reason
1270
+ ("Geen vervoerder: stel een favoriete vervoerder in (Afhandeling →
1271
+ Vervoerders)"). Toon waarschuwing uit logistics_resolve_carrier als die er is.
1272
+ 2. Handmatig kiezen: alleen via rpc logistics_set_order_carrier(p_order_id,
1273
+ p_carrier_id); knop "Automatisch" = p_carrier_id null. Schrijf nooit zelf
1274
+ carrier_* of custom_fields.carrier.
1275
+ 3. Nieuwe order (HO/MO/AO en FO-import): niets doen; de Engine vult de
1276
+ vervoerder bij het aanmaken. Bron 'oud' tonen als "Overgenomen (oud)".
1277
+ 4. Lijsten met veel orders: logistics_resolve_carrier_many alleen voor een
1278
+ voorstel; de opgeslagen kolommen zijn leidend.`,
1279
+ },
1238
1280
  ],
1239
1281
  },
1240
1282
  afhandeling: {
1241
1283
  order: 2,
1242
1284
  summary: "Voert belading, controle, printen en transport uit volgens de taak-payload.",
1243
1285
  revisions: [
1286
+ {
1287
+ number: 32,
1288
+ title: "Aanmelden: vervangen regel (vastlegging)",
1289
+ date: "2026-10-22",
1290
+ summary: "Vastlegging; niet doorsturen. Vervangt punt 6 van prompt 31.",
1291
+ body: `Vastlegging, geen bouwopdracht (al zo gebouwd in Afhandeling 1.0.77).
1292
+ Punt 6 van prompt 31 ("nooit bij floriday_fulfilled = true") is vervangen door:
1293
+ - Wél aanmelden bij custom_fields.floriday_fulfilled = true samen met
1294
+ floriday_fulfilled_by_erp = true (door ons afgehandeld).
1295
+ - Nooit aanmelden bij custom_fields.floriday_fulfilled_externally = true
1296
+ (extern afgehandeld), nooit bij geannuleerde orders, nooit bij eigen vervoer
1297
+ of afhalen (carrier_kind).
1298
+ - De Engine leest floriday_fulfilled niet voor de vervoerderregel; de
1299
+ bevriesregel gebruikt alleen carrier_signup_dispatches (sent_at, order_ids).`,
1300
+ },
1301
+ {
1302
+ number: 31,
1303
+ title: "Vervoerder: soort, favoriet, GLN-lijst",
1304
+ date: "2026-10-22",
1305
+ summary: "Gebouwd in Afhandeling 1.0.77. Punt 6 vervangen door prompt 32.",
1306
+ body: `GEDEELD CONTRACT VERVOERDER (eigenaar: Logistiek Engine, versie 1.0.184)
1307
+ - Kolommen op orders (Engine): carrier_id, carrier_source, carrier_reason,
1308
+ carrier_resolved_at, carrier_set_by, carrier_set_at.
1309
+ - carrier_source: handmatig, afleverlocatie, afleverlocatie_gln, klant,
1310
+ werkgebied, favoriet, geen, oud.
1311
+ - Functies (Engine): logistics_resolve_carrier(p_order_id uuid) → jsonb
1312
+ {carrier_id, carrier_name, carrier_kind, bron, reden, waarschuwing};
1313
+ logistics_resolve_carrier_many(p_order_ids uuid[]);
1314
+ logistics_resolve_carrier_for_location(p_location_id uuid, p_customer_id uuid)
1315
+ en _many (zelfde volgorde zonder stap 1);
1316
+ logistics_set_order_carrier(p_order_id uuid, p_carrier_id uuid) — de enige
1317
+ manier om handmatig te kiezen; NULL = terug naar automatisch.
1318
+ - Volgorde: 1 handmatig → 2 afleverlocatie (self_pickup = klant haalt op;
1319
+ carrier_id alleen als carrier_assignment_source = 'manual') → 3
1320
+ carriers.delivery_location_glns bevat de GLN → 4 customers.default_carrier_id
1321
+ → 5 werkgebied plaats > provincie > land met ophaalmoment op de leverdag →
1322
+ 6 afh_favorite_carrier(). Overgeslagen (met reden): extern zonder e-mail,
1323
+ carrier_kind leeg, archived_at gevuld. is_default telt niet meer mee.
1324
+ - Altijd op id, nooit op naam. Herkennen op carrier_kind, nooit op naam.
1325
+ - Niet herberekenen na aanmelding, plan_locked_at, start picken, gepickt of
1326
+ vastgezette kar; dan alleen waarschuwing "Vervoerder zou nu <X> zijn".
1327
+ - Opslaan of wijzigen van een vervoerder verstuurt nooit zelf een mail.
1328
+ - Geen migraties met omgevingswaarden; geen URL's, sleutels of namen in code.
1329
+
1330
+ Bouw in Afhandeling (de Engine leest dit alleen; wijzig geen Engine-functies):
1331
+ 1. carriers.carrier_kind text met waarden extern / eigen_vervoer /
1332
+ klant_haalt_op. Bestaande "eigen vervoer"-rij: NIET automatisch op naam
1333
+ omzetten; toon in Vervoerders een melding "Soort ontbreekt" per vervoerder
1334
+ tot de gebruiker hem kiest. Vervoerders zonder soort worden overgeslagen.
1335
+ 2. is_favorite (precies één, via "Maak favoriet"), archived_at (archiveren i.p.v.
1336
+ verwijderen), delivery_location_glns text[] (beheerbaar per vervoerder).
1337
+ 3. afh_favorite_carrier() blijft een rij met carrier_id; extern zonder e-mail
1338
+ mag geen favoriet zijn (bestaat al, behouden).
1339
+ 4. is_default niet meer gebruiken in schermen of logica.
1340
+ 5. Vervoerders-scherm: bovenaan een melding als er geen favoriet is: "Geen
1341
+ favoriete vervoerder: orders zonder andere vervoerder blijven staan."
1342
+ 6. Aanmeldingen: alleen orders met orders.carrier_id van soort extern; nooit
1343
+ bij eigen vervoer of afhalen; nooit bij custom_fields.floriday_fulfilled = true
1344
+ of floriday_fulfilled_externally = true of geannuleerd; hooguit één aanmelding
1345
+ per zending (carrier_signup_dispatches), zichtbaar bij de order; schakelaar per
1346
+ Shell "Aanmeldingen automatisch versturen" (standaard uit) met een lijst
1347
+ "klaar om te versturen" die je kunt bekijken. Lees de vervoerder uit
1348
+ orders.carrier_id, niet meer uit custom_fields.carrier.
1349
+ 7. control_get_todays_carts en de carrier-lijsten: vervoerdersnaam via
1350
+ orders.carrier_id; "Eigen vervoer"/"Afhalen" op carrier_kind.
1351
+ Toets: elke nieuwe functie met safeupdate (geen UPDATE/DELETE zonder WHERE).`,
1352
+ },
1244
1353
  {
1245
1354
  number: 30,
1246
1355
  title: "Karnummer koppelen aan het kar-id",
@@ -5175,6 +5284,48 @@ CONTROLELIJST
5175
5284
  - Dit veld meegeven als strategy_id bij logistics_emit_event, of beschikbaar
5176
5285
  maken zodat de Verkoop-module het kan meegeven.`,
5177
5286
  },
5287
+ {
5288
+ number: 2,
5289
+ title: "Vervoerder: standaard per klant en per locatie",
5290
+ date: "2026-10-22",
5291
+ summary: "Gebouwd in Klanten 1.0.66.",
5292
+ body: `GEDEELD CONTRACT VERVOERDER (eigenaar: Logistiek Engine, versie 1.0.184)
5293
+ - Kolommen op orders (Engine): carrier_id, carrier_source, carrier_reason,
5294
+ carrier_resolved_at, carrier_set_by, carrier_set_at.
5295
+ - carrier_source: handmatig, afleverlocatie, afleverlocatie_gln, klant,
5296
+ werkgebied, favoriet, geen, oud.
5297
+ - Functies (Engine): logistics_resolve_carrier(p_order_id uuid) → jsonb
5298
+ {carrier_id, carrier_name, carrier_kind, bron, reden, waarschuwing};
5299
+ logistics_resolve_carrier_many(p_order_ids uuid[]);
5300
+ logistics_resolve_carrier_for_location(p_location_id uuid, p_customer_id uuid)
5301
+ en _many (zelfde volgorde zonder stap 1);
5302
+ logistics_set_order_carrier(p_order_id uuid, p_carrier_id uuid) — de enige
5303
+ manier om handmatig te kiezen; NULL = terug naar automatisch.
5304
+ - Volgorde: 1 handmatig → 2 afleverlocatie (self_pickup = klant haalt op;
5305
+ carrier_id alleen als carrier_assignment_source = 'manual') → 3
5306
+ carriers.delivery_location_glns bevat de GLN → 4 customers.default_carrier_id
5307
+ → 5 werkgebied plaats > provincie > land met ophaalmoment op de leverdag →
5308
+ 6 afh_favorite_carrier(). Overgeslagen (met reden): extern zonder e-mail,
5309
+ carrier_kind leeg, archived_at gevuld. is_default telt niet meer mee.
5310
+ - Altijd op id, nooit op naam. Herkennen op carrier_kind, nooit op naam.
5311
+ - Niet herberekenen na aanmelding, plan_locked_at, start picken, gepickt of
5312
+ vastgezette kar; dan alleen waarschuwing "Vervoerder zou nu <X> zijn".
5313
+ - Opslaan of wijzigen van een vervoerder verstuurt nooit zelf een mail.
5314
+ - Geen migraties met omgevingswaarden; geen URL's, sleutels of namen in code.
5315
+
5316
+ Bouw in Klanten:
5317
+ 1. customers.default_carrier_id uuid (verwijzing naar carriers.id, leeg mag).
5318
+ Keuzelijst toont alleen niet-gearchiveerde vervoerders met een soort.
5319
+ 2. Afleverlocatie: keuze "Automatisch" (carrier_id leeg; er wordt GEEN voorstel
5320
+ opgeslagen), een vervoerder (carrier_id + carrier_assignment_source =
5321
+ 'manual'), of "Klant haalt zelf op" (self_pickup = true).
5322
+ 3. Toon naast "Automatisch" het voorstel uit
5323
+ logistics_resolve_carrier_for_location_many(p_location_ids, p_customer_id):
5324
+ naam + reden in gewone taal. Alleen tonen, niet opslaan.
5325
+ 4. Verwijder pickCarrierForLocation; geen eigen tweede variant meer.
5326
+ 5. Geen e-maileis in Klanten; de Engine slaat extern zonder e-mail over en zegt
5327
+ dat in de reden.`,
5328
+ },
5178
5329
  ],
5179
5330
  },
5180
5331
  mailbox: {
@@ -5351,6 +5502,43 @@ Zelf rekenen doe je niet.
5351
5502
  order: 9,
5352
5503
  summary: "Levert de documentlayouts. Kiest zelf geen layout en geen printer: de Engine bepaalt welke layout en welke printplek bij een document horen.",
5353
5504
  revisions: [
5505
+ {
5506
+ number: 15,
5507
+ title: "carrier_label op documenten",
5508
+ date: "2026-10-22",
5509
+ summary: "carrier_label uit de Engine tonen; nooit 'onbekend' bij eigen vervoer of afhalen.",
5510
+ body: `GEDEELD CONTRACT VERVOERDER (eigenaar: Logistiek Engine, versie 1.0.184)
5511
+ - Kolommen op orders (Engine): carrier_id, carrier_source, carrier_reason,
5512
+ carrier_resolved_at, carrier_set_by, carrier_set_at.
5513
+ - carrier_source: handmatig, afleverlocatie, afleverlocatie_gln, klant,
5514
+ werkgebied, favoriet, geen, oud.
5515
+ - Functies (Engine): logistics_resolve_carrier(p_order_id uuid) → jsonb
5516
+ {carrier_id, carrier_name, carrier_kind, bron, reden, waarschuwing};
5517
+ logistics_resolve_carrier_many(p_order_ids uuid[]);
5518
+ logistics_resolve_carrier_for_location(p_location_id uuid, p_customer_id uuid)
5519
+ en _many (zelfde volgorde zonder stap 1);
5520
+ logistics_set_order_carrier(p_order_id uuid, p_carrier_id uuid) — de enige
5521
+ manier om handmatig te kiezen; NULL = terug naar automatisch.
5522
+ - Volgorde: 1 handmatig → 2 afleverlocatie (self_pickup = klant haalt op;
5523
+ carrier_id alleen als carrier_assignment_source = 'manual') → 3
5524
+ carriers.delivery_location_glns bevat de GLN → 4 customers.default_carrier_id
5525
+ → 5 werkgebied plaats > provincie > land met ophaalmoment op de leverdag →
5526
+ 6 afh_favorite_carrier(). Overgeslagen (met reden): extern zonder e-mail,
5527
+ carrier_kind leeg, archived_at gevuld. is_default telt niet meer mee.
5528
+ - Altijd op id, nooit op naam. Herkennen op carrier_kind, nooit op naam.
5529
+ - Niet herberekenen na aanmelding, plan_locked_at, start picken, gepickt of
5530
+ vastgezette kar; dan alleen waarschuwing "Vervoerder zou nu <X> zijn".
5531
+ - Opslaan of wijzigen van een vervoerder verstuurt nooit zelf een mail.
5532
+ - Geen migraties met omgevingswaarden; geen URL's, sleutels of namen in code.
5533
+
5534
+ Bouw in Layouts:
5535
+ 1. Veld carrier_label in pakbon, afleverbrief, verzendlabel en transportdocument:
5536
+ neem het over uit de Engine-payload (logistics_brief_transport →
5537
+ carrier_label). Waarden: vervoerdersnaam, "Eigen vervoer", "Afhalen".
5538
+ 2. Toon nooit "onbekend". Ontbreekt carrier_label, dan blokkeert het document
5539
+ met "Geen vervoerder" (de Engine blokkeert de planning al).
5540
+ 3. Geen eigen opzoeking van vervoerders op naam.`,
5541
+ },
5354
5542
  {
5355
5543
  number: 14,
5356
5544
  title: "Geladen etiket instellen: pad en formaat",
@@ -1,2 +1,2 @@
1
- export declare const MODULE_VERSION = "1.0.183";
1
+ export declare const MODULE_VERSION = "1.0.185";
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.183";
2
+ export const MODULE_VERSION = "1.0.185";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flowselections/logistiek-engine",
3
- "version": "1.0.183",
3
+ "version": "1.0.185",
4
4
  "flowselections": {
5
5
  "moduleId": "logistiek-engine",
6
6
  "pages": [
@@ -143,7 +143,7 @@
143
143
  "devDependencies": {
144
144
  "@cloudflare/vite-plugin": "^1.25.5",
145
145
  "@eslint/js": "^9.32.0",
146
- "@flowselections/core": "1.0.29",
146
+ "@flowselections/core": "1.0.30",
147
147
  "@lovable.dev/vite-tanstack-config": "2.26.5",
148
148
  "@rsbuild/core": "^1.0.0",
149
149
  "@tailwindcss/vite": "^4.2.1",