@flowselections/floriday-verkoop-module 1.0.77 → 1.0.82
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-lib/components/verkoop/CreateOrderPage.d.ts.map +1 -1
- package/dist-lib/components/verkoop/CreateOrderPage.js +33 -8
- package/dist-lib/components/verkoop/EditLocalOrderDialog.d.ts.map +1 -1
- package/dist-lib/components/verkoop/EditLocalOrderDialog.js +1 -1
- package/dist-lib/components/verkoop/FloridayStageLine.d.ts +15 -0
- package/dist-lib/components/verkoop/FloridayStageLine.d.ts.map +1 -0
- package/dist-lib/components/verkoop/FloridayStageLine.js +25 -0
- package/dist-lib/components/verkoop/PlanCoverageBadge.d.ts +1 -1
- package/dist-lib/components/verkoop/PlanCoverageBadge.d.ts.map +1 -1
- package/dist-lib/components/verkoop/PlanCoverageBadge.js +5 -2
- package/dist-lib/components/verkoop/SalesOrderDetailPage.d.ts.map +1 -1
- package/dist-lib/components/verkoop/SalesOrderDetailPage.js +1 -1
- package/dist-lib/components/verkoop/SalesOrderDetailView.d.ts.map +1 -1
- package/dist-lib/components/verkoop/SalesOrderDetailView.js +38 -6
- package/dist-lib/components/verkoop/SalesOrdersTable.d.ts.map +1 -1
- package/dist-lib/components/verkoop/SalesOrdersTable.js +4 -8
- package/dist-lib/components/verkoop/VerkoopOrdersPage.d.ts.map +1 -1
- package/dist-lib/components/verkoop/VerkoopOrdersPage.js +7 -1
- package/dist-lib/integrations/supabase/types.d.ts +1486 -2
- package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/types.js +1 -0
- package/dist-lib/lib/belading.server.d.ts +0 -11
- package/dist-lib/lib/belading.server.d.ts.map +1 -1
- package/dist-lib/lib/belading.server.js +4 -41
- package/dist-lib/lib/cart-replan.functions.d.ts.map +1 -1
- package/dist-lib/lib/cart-replan.functions.js +3 -22
- package/dist-lib/lib/central-secrets.server.d.ts +5 -0
- package/dist-lib/lib/central-secrets.server.d.ts.map +1 -0
- package/dist-lib/lib/central-secrets.server.js +65 -0
- package/dist-lib/lib/create-order.functions.d.ts +15 -0
- package/dist-lib/lib/create-order.functions.d.ts.map +1 -1
- package/dist-lib/lib/create-order.functions.js +28 -13
- package/dist-lib/lib/customer-name.d.ts +8 -0
- package/dist-lib/lib/customer-name.d.ts.map +1 -0
- package/dist-lib/lib/customer-name.js +9 -0
- package/dist-lib/lib/engine-block-alerts.d.ts +22 -0
- package/dist-lib/lib/engine-block-alerts.d.ts.map +1 -0
- package/dist-lib/lib/engine-block-alerts.js +43 -0
- package/dist-lib/lib/engine-block-alerts.server.d.ts +7 -0
- package/dist-lib/lib/engine-block-alerts.server.d.ts.map +1 -0
- package/dist-lib/lib/engine-block-alerts.server.js +75 -0
- package/dist-lib/lib/floriday-change-diff.check.d.ts +2 -0
- package/dist-lib/lib/floriday-change-diff.check.d.ts.map +1 -0
- package/dist-lib/lib/floriday-change-diff.check.js +27 -0
- package/dist-lib/lib/floriday-change-diff.d.ts +7 -0
- package/dist-lib/lib/floriday-change-diff.d.ts.map +1 -0
- package/dist-lib/lib/floriday-change-diff.js +51 -0
- package/dist-lib/lib/floriday-mirror.functions.d.ts.map +1 -1
- package/dist-lib/lib/floriday-mirror.functions.js +38 -39
- package/dist-lib/lib/floriday-status.d.ts +48 -0
- package/dist-lib/lib/floriday-status.d.ts.map +1 -0
- package/dist-lib/lib/floriday-status.js +99 -0
- package/dist-lib/lib/floriday-status.server.d.ts +7 -0
- package/dist-lib/lib/floriday-status.server.d.ts.map +1 -0
- package/dist-lib/lib/floriday-status.server.js +74 -0
- package/dist-lib/lib/load-carriers.server.d.ts +1 -1
- package/dist-lib/lib/load-carriers.server.d.ts.map +1 -1
- package/dist-lib/lib/load-carriers.server.js +3 -6
- package/dist-lib/lib/logistics-engine.server.d.ts.map +1 -1
- package/dist-lib/lib/logistics-engine.server.js +2 -22
- package/dist-lib/lib/order-block-mail.server.d.ts.map +1 -1
- package/dist-lib/lib/order-block-mail.server.js +31 -15
- package/dist-lib/lib/order-cancel.server.d.ts +9 -0
- package/dist-lib/lib/order-cancel.server.d.ts.map +1 -1
- package/dist-lib/lib/order-cancel.server.js +90 -0
- package/dist-lib/lib/plan-coverage.check.d.ts +2 -0
- package/dist-lib/lib/plan-coverage.check.d.ts.map +1 -0
- package/dist-lib/lib/plan-coverage.check.js +17 -0
- package/dist-lib/lib/plan-coverage.d.ts +12 -0
- package/dist-lib/lib/plan-coverage.d.ts.map +1 -1
- package/dist-lib/lib/plan-coverage.js +27 -1
- package/dist-lib/lib/plan-coverage.server.d.ts.map +1 -1
- package/dist-lib/lib/plan-coverage.server.js +20 -13
- package/dist-lib/lib/review-dismissals.server.d.ts +3 -0
- package/dist-lib/lib/review-dismissals.server.d.ts.map +1 -0
- package/dist-lib/lib/review-dismissals.server.js +26 -0
- package/dist-lib/lib/salesorders-list.functions.d.ts +1 -1
- package/dist-lib/lib/salesorders-list.functions.js +1 -1
- package/dist-lib/lib/salesorders-list.server.d.ts +1 -1
- package/dist-lib/lib/salesorders-list.server.d.ts.map +1 -1
- package/dist-lib/lib/salesorders-list.server.js +104 -3
- package/dist-lib/lib/salesorders-mapping.d.ts +17 -0
- package/dist-lib/lib/salesorders-mapping.d.ts.map +1 -1
- package/dist-lib/lib/salesorders-mapping.js +1 -0
- package/dist-lib/lib/salesorders.functions.d.ts +1 -5
- package/dist-lib/lib/salesorders.functions.d.ts.map +1 -1
- package/dist-lib/lib/salesorders.functions.js +32 -2
- package/dist-lib/lib/useSalesOrdersQuery.d.ts +1 -1
- package/dist-lib/lib/useSalesOrdersQuery.d.ts.map +1 -1
- package/package.json +5 -5
|
@@ -51,7 +51,11 @@ async function runSalesOrdersMirror(mirrorLimit) {
|
|
|
51
51
|
return { ok: mirrorOk, mirrorOk, mirrored };
|
|
52
52
|
}
|
|
53
53
|
export async function runSalesOrdersSyncFromCron() {
|
|
54
|
-
|
|
54
|
+
const result = await runSalesOrdersMirror(500);
|
|
55
|
+
// Blokkade-alarm alleen op basis van de Engine (koppelprompt 22).
|
|
56
|
+
const { checkDefinitiveBlocks } = await import("./engine-block-alerts.server");
|
|
57
|
+
const alerts = await checkDefinitiveBlocks();
|
|
58
|
+
return { ...result, blockAlerts: { mailed: alerts.mailed, closed: alerts.closed } };
|
|
55
59
|
}
|
|
56
60
|
// Knop "Verversen": direct spiegelen uit de gedeelde cache, kleine limiet.
|
|
57
61
|
export const runSalesOrdersSync = createServerFn({ method: "POST" })
|
|
@@ -308,7 +312,7 @@ export const getSalesOrderDetail = createServerFn({ method: "POST" })
|
|
|
308
312
|
try {
|
|
309
313
|
const ownRes = await supabase
|
|
310
314
|
.from("orders")
|
|
311
|
-
.select("id, buffer_id, status, is_reservation, custom_fields, order_items(product_id, product_name, source_line_key, quarantined_at)")
|
|
315
|
+
.select("id, buffer_id, status, is_reservation, custom_fields, order_items(product_id, product_name, source_line_key, quarantined_at, quantity, unit_price)")
|
|
312
316
|
.eq("floriday_sales_order_id", data.id)
|
|
313
317
|
.maybeSingle();
|
|
314
318
|
const ownRow = ownRes.data ?? null;
|
|
@@ -336,6 +340,12 @@ export const getSalesOrderDetail = createServerFn({ method: "POST" })
|
|
|
336
340
|
at: reviewCf.floriday_change_detected_at ?? null,
|
|
337
341
|
}
|
|
338
342
|
: null;
|
|
343
|
+
if (dto.needsManualReview && ownRow?.id) {
|
|
344
|
+
const { loadReviewDismissals, isReviewDismissed } = await import("./review-dismissals.server");
|
|
345
|
+
const dismissed = await loadReviewDismissals(supabase, [String(ownRow.id)]);
|
|
346
|
+
if (isReviewDismissed(dismissed, String(ownRow.id), dto.needsManualReview.reason))
|
|
347
|
+
dto.needsManualReview = null;
|
|
348
|
+
}
|
|
339
349
|
// Karren en indelingsstatus uit de Engine (logistics_order_plan_coverage).
|
|
340
350
|
// Fail closed: bij een fout "Indeling onbekend" en geen aantal.
|
|
341
351
|
if (ownRow?.id) {
|
|
@@ -361,6 +371,26 @@ export const getSalesOrderDetail = createServerFn({ method: "POST" })
|
|
|
361
371
|
}
|
|
362
372
|
}
|
|
363
373
|
bufferId = ownRow?.buffer_id ?? null;
|
|
374
|
+
// Totaalregel: actieve orderregels (stuks × prijs per stuk).
|
|
375
|
+
const activeItems = (ownRow?.order_items ?? []).filter((it) => !it?.quarantined_at);
|
|
376
|
+
if (activeItems.length) {
|
|
377
|
+
dto.priceLines = activeItems.map((it) => ({
|
|
378
|
+
pieces: Number(it?.quantity) || 0,
|
|
379
|
+
unitPrice: Number(it?.unit_price) || 0,
|
|
380
|
+
}));
|
|
381
|
+
}
|
|
382
|
+
// Floriday-stand (alleen weergave), voor alle bestellingen op deze order.
|
|
383
|
+
{
|
|
384
|
+
const foIds = Array.from(new Set([String(data.id), ...activeItems.map((it) => String(it?.source_line_key ?? ""))].filter((v) => /^[0-9a-f-]{36}$/i.test(v)))).slice(0, 100);
|
|
385
|
+
const { loadFloridayStatuses } = await import("./floriday-status.server");
|
|
386
|
+
const { combineStages } = await import("./floriday-status");
|
|
387
|
+
const res = await loadFloridayStatuses(foIds);
|
|
388
|
+
const found = foIds.map((id) => res.entries.get(id)).filter((e) => !!e);
|
|
389
|
+
dto.floridayStatus =
|
|
390
|
+
found.length > 0
|
|
391
|
+
? { stage: combineStages(found.map((e) => e.floridayStage)), error: null, entries: found }
|
|
392
|
+
: { stage: "onbekend", error: res.error ?? "geen antwoord", entries: [] };
|
|
393
|
+
}
|
|
364
394
|
if (bufferId) {
|
|
365
395
|
dto.bufferId = bufferId;
|
|
366
396
|
const sibRes = await supabase
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type SalesOrderDTO, type SalesOrderFilters, type SalesOrdersTotals } from "./salesorders-mapping";
|
|
2
2
|
import type { OrderStage } from "./order-status";
|
|
3
|
-
export type StatusTab = "all" | OrderStage | "backlog";
|
|
3
|
+
export type StatusTab = "all" | OrderStage | "backlog" | "not_reported";
|
|
4
4
|
export interface SalesOrdersPage {
|
|
5
5
|
orders: SalesOrderDTO[];
|
|
6
6
|
totalCount: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSalesOrdersQuery.d.ts","sourceRoot":"","sources":["../../src/lib/useSalesOrdersQuery.ts"],"names":[],"mappings":"AASA,OAAO,EAGL,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACvB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,UAAU,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"useSalesOrdersQuery.d.ts","sourceRoot":"","sources":["../../src/lib/useSalesOrdersQuery.ts"],"names":[],"mappings":"AASA,OAAO,EAGL,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACvB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,UAAU,GAAG,SAAS,GAAG,cAAc,CAAC;AAExE,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACxC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,WAAW,EAAE,SAAS,GAAG,MAAM,CAAC;IAChC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,uBAAuB;IACtC,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,SAAS,GAAG,UAAU,CAAC;CACnC,CAwCA;AAED,wBAAgB,mBAAmB,CACjC,OAAO,CAAC,EAAE,iBAAiB,EAC3B,OAAO,CAAC,EAAE,uBAAuB,0EAgElC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@flowselections/floriday-verkoop-module",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.82",
|
|
4
4
|
"private": false,
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"type": "module",
|
|
@@ -52,13 +52,13 @@
|
|
|
52
52
|
"@cloudflare/vite-plugin": "^1.25.5",
|
|
53
53
|
"@eslint/js": "^9.32.0",
|
|
54
54
|
"@flowselections/core": "1.0.29",
|
|
55
|
-
"@lovable.dev/vite-tanstack-config": "2.
|
|
55
|
+
"@lovable.dev/vite-tanstack-config": "2.26.5",
|
|
56
56
|
"@rsbuild/core": "^1.0.0",
|
|
57
57
|
"@tailwindcss/vite": "^4.2.1",
|
|
58
58
|
"@tanstack/react-query": "^5.83.0",
|
|
59
|
-
"@tanstack/react-router": "
|
|
60
|
-
"@tanstack/react-start": "
|
|
61
|
-
"@tanstack/router-plugin": "
|
|
59
|
+
"@tanstack/react-router": "1.169.1",
|
|
60
|
+
"@tanstack/react-start": "1.167.63",
|
|
61
|
+
"@tanstack/router-plugin": "1.167.33",
|
|
62
62
|
"@types/node": "^22.16.5",
|
|
63
63
|
"@types/react": "^19.2.0",
|
|
64
64
|
"@types/react-dom": "^19.2.0",
|