@flowselections/floriday-verkoop-module 1.0.12 → 1.0.13
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/AutoFulfillmentStatusCard.d.ts +4 -0
- package/dist-lib/components/verkoop/AutoFulfillmentStatusCard.d.ts.map +1 -0
- package/dist-lib/components/verkoop/AutoFulfillmentStatusCard.js +95 -0
- package/dist-lib/components/verkoop/CartAssignmentWizard.d.ts +6 -0
- package/dist-lib/components/verkoop/CartAssignmentWizard.d.ts.map +1 -0
- package/dist-lib/components/verkoop/CartAssignmentWizard.js +194 -0
- package/dist-lib/components/verkoop/CreateOrderPage.d.ts.map +1 -1
- package/dist-lib/components/verkoop/CreateOrderPage.js +14 -4
- package/dist-lib/components/verkoop/OrderAfleverbrievenCard.d.ts +4 -0
- package/dist-lib/components/verkoop/OrderAfleverbrievenCard.d.ts.map +1 -0
- package/dist-lib/components/verkoop/OrderAfleverbrievenCard.js +44 -0
- package/dist-lib/components/verkoop/OrderKarindelingCard.d.ts +5 -0
- package/dist-lib/components/verkoop/OrderKarindelingCard.d.ts.map +1 -0
- package/dist-lib/components/verkoop/OrderKarindelingCard.js +160 -0
- package/dist-lib/components/verkoop/SalesOrderDetailView.d.ts.map +1 -1
- package/dist-lib/components/verkoop/SalesOrderDetailView.js +6 -3
- package/dist-lib/components/verkoop/VerkoopOrdersPage.d.ts.map +1 -1
- package/dist-lib/components/verkoop/VerkoopOrdersPage.js +39 -3
- package/dist-lib/integrations/supabase/auth-middleware.d.ts +473 -3
- package/dist-lib/integrations/supabase/auth-middleware.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/client.d.ts +473 -3
- package/dist-lib/integrations/supabase/client.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/client.server.d.ts +473 -3
- package/dist-lib/integrations/supabase/client.server.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/types.d.ts +481 -3
- package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
- package/dist-lib/lib/cart-lock.functions.d.ts +11225 -0
- package/dist-lib/lib/cart-lock.functions.d.ts.map +1 -0
- package/dist-lib/lib/cart-lock.functions.js +47 -0
- package/dist-lib/lib/cart-planner.d.ts +38 -0
- package/dist-lib/lib/cart-planner.d.ts.map +1 -0
- package/dist-lib/lib/cart-planner.js +217 -0
- package/dist-lib/lib/cart-replan.functions.d.ts +22467 -0
- package/dist-lib/lib/cart-replan.functions.d.ts.map +1 -0
- package/dist-lib/lib/cart-replan.functions.js +203 -0
- package/dist-lib/lib/create-order.functions.d.ts +25821 -77
- package/dist-lib/lib/create-order.functions.d.ts.map +1 -1
- package/dist-lib/lib/create-order.functions.js +158 -3
- package/dist-lib/lib/floriday-auto-fulfillment.functions.d.ts +33640 -0
- package/dist-lib/lib/floriday-auto-fulfillment.functions.d.ts.map +1 -0
- package/dist-lib/lib/floriday-auto-fulfillment.functions.js +65 -0
- package/dist-lib/lib/floriday-auto-fulfillment.server.d.ts +21 -0
- package/dist-lib/lib/floriday-auto-fulfillment.server.d.ts.map +1 -0
- package/dist-lib/lib/floriday-auto-fulfillment.server.js +352 -0
- package/dist-lib/lib/floriday-logistic-labels.functions.d.ts +11220 -0
- package/dist-lib/lib/floriday-logistic-labels.functions.d.ts.map +1 -0
- package/dist-lib/lib/floriday-logistic-labels.functions.js +171 -0
- package/dist-lib/lib/floriday-public.functions.d.ts +3313 -37
- package/dist-lib/lib/floriday-public.functions.d.ts.map +1 -1
- package/dist-lib/lib/floriday-public.functions.js +45 -47
- package/dist-lib/lib/floriday-writes.functions.d.ts +2365 -15
- package/dist-lib/lib/floriday-writes.functions.d.ts.map +1 -1
- package/dist-lib/lib/salesorders-mapping.d.ts +2 -0
- package/dist-lib/lib/salesorders-mapping.d.ts.map +1 -1
- package/dist-lib/lib/salesorders-mapping.js +46 -20
- package/dist-lib/lib/salesorders.functions.d.ts +1420 -10
- package/dist-lib/lib/salesorders.functions.d.ts.map +1 -1
- package/dist-lib/lib/salesorders.functions.js +8 -0
- package/dist-lib/lib/tradeitems.functions.d.ts +473 -3
- package/dist-lib/lib/tradeitems.functions.d.ts.map +1 -1
- package/dist-lib/lib/useSalesOrdersQuery.d.ts +1 -0
- package/dist-lib/lib/useSalesOrdersQuery.d.ts.map +1 -1
- package/dist-lib/lib/useSalesOrdersQuery.js +121 -39
- package/package.json +1 -1
|
@@ -49,6 +49,8 @@ export interface TradeItemLookupEntry {
|
|
|
49
49
|
raw?: any;
|
|
50
50
|
}
|
|
51
51
|
export type TradeItemLookup = Map<string, TradeItemLookupEntry>;
|
|
52
|
+
export declare function isCentralOrderNumber(value: unknown): value is string;
|
|
53
|
+
export declare function centralOrderNumber(value: unknown): string;
|
|
52
54
|
export declare function mapJsonbToSalesOrderDTO(o: any, customerLookup?: CustomerLookup, tradeItemLookup?: TradeItemLookup): SalesOrderDTO;
|
|
53
55
|
export interface SalesOrdersTotals {
|
|
54
56
|
revenue: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"salesorders-mapping.d.ts","sourceRoot":"","sources":["../../src/lib/salesorders-mapping.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IACnE,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC;QACnB,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;KACxB,CAAC;IACF,MAAM,EAAE;QACN,WAAW,EAAE,OAAO,CAAC;QACrB,SAAS,EAAE,OAAO,CAAC;QACnB,UAAU,EAAE,OAAO,CAAC;QACpB,WAAW,EAAE,OAAO,CAAC;KACtB,CAAC;IACF,GAAG,EAAE;QACH,KAAK,EAAE,GAAG,CAAC;QACX,QAAQ,EAAE,GAAG,GAAG,IAAI,CAAC;QACrB,SAAS,EAAE,GAAG,GAAG,IAAI,CAAC;KACvB,CAAC;CACH;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,GAAG,CAAC,EAAE,GAAG,CAAC;CACX;AACD,MAAM,MAAM,cAAc,GAAG,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;AAE9D,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,GAAG,CAAC,EAAE,GAAG,CAAC;CACX;AACD,MAAM,MAAM,eAAe,GAAG,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"salesorders-mapping.d.ts","sourceRoot":"","sources":["../../src/lib/salesorders-mapping.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,40 +7,66 @@ function toNum(v, d = 0) {
|
|
|
7
7
|
}
|
|
8
8
|
return d;
|
|
9
9
|
}
|
|
10
|
+
function pickPrimaryPacking(raw) {
|
|
11
|
+
const configs = raw?.packingConfigurations;
|
|
12
|
+
if (!Array.isArray(configs) || configs.length === 0)
|
|
13
|
+
return null;
|
|
14
|
+
return configs.find((c) => c?.primary === true || String(c?.primary).toLowerCase() === "true") ?? configs[0] ?? null;
|
|
15
|
+
}
|
|
16
|
+
function withLivePacking(order, packing) {
|
|
17
|
+
if (!packing)
|
|
18
|
+
return order;
|
|
19
|
+
return {
|
|
20
|
+
...order,
|
|
21
|
+
packingConfiguration: {
|
|
22
|
+
...(order?.packingConfiguration ?? {}),
|
|
23
|
+
piecesPerPackage: toNum(packing?.piecesPerPackage, toNum(order?.packingConfiguration?.piecesPerPackage, 1)),
|
|
24
|
+
packagesPerLayer: toNum(packing?.packagesPerLayer, toNum(order?.packingConfiguration?.packagesPerLayer, 0)),
|
|
25
|
+
layersPerLoadCarrier: toNum(packing?.layersPerLoadCarrier, toNum(order?.packingConfiguration?.layersPerLoadCarrier, 0)),
|
|
26
|
+
package: packing?.package ?? order?.packingConfiguration?.package,
|
|
27
|
+
loadCarrier: packing?.loadCarrier ?? order?.packingConfiguration?.loadCarrier,
|
|
28
|
+
},
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
const CENTRAL_ORDER_NUMBER_RE = /^(FO|MO|AO|HO)-\d{7}$/;
|
|
32
|
+
export function isCentralOrderNumber(value) {
|
|
33
|
+
return typeof value === "string" && CENTRAL_ORDER_NUMBER_RE.test(value.trim());
|
|
34
|
+
}
|
|
35
|
+
export function centralOrderNumber(value) {
|
|
36
|
+
return isCentralOrderNumber(value) ? value.trim() : "";
|
|
37
|
+
}
|
|
10
38
|
export function mapJsonbToSalesOrderDTO(o, customerLookup, tradeItemLookup) {
|
|
11
39
|
// Floriday suppliers-api-2026v1 levert een vlak sales-order object
|
|
12
40
|
// (geen salesOrderLines-array). Velden staan direct op het object.
|
|
13
|
-
const
|
|
14
|
-
const
|
|
41
|
+
const tradeItemId = String(o?.tradeItemId ?? "");
|
|
42
|
+
const tradeItem = tradeItemId ? tradeItemLookup?.get(tradeItemId) : undefined;
|
|
43
|
+
const livePacking = pickPrimaryPacking(tradeItem?.raw);
|
|
44
|
+
const orderWithLivePacking = withLivePacking(o, livePacking);
|
|
45
|
+
const numberOfPieces = toNum(orderWithLivePacking?.numberOfPieces, 0);
|
|
46
|
+
const piecesPerPackage = Math.max(1, toNum(orderWithLivePacking?.packingConfiguration?.piecesPerPackage, 1));
|
|
15
47
|
const numberOfPackages = piecesPerPackage > 0 ? Math.ceil(numberOfPieces / piecesPerPackage) : 0;
|
|
16
|
-
const packagesPerLayer = Math.max(0, toNum(
|
|
17
|
-
const layersPerLoadCarrier = Math.max(0, toNum(
|
|
48
|
+
const packagesPerLayer = Math.max(0, toNum(orderWithLivePacking?.packingConfiguration?.packagesPerLayer, 0));
|
|
49
|
+
const layersPerLoadCarrier = Math.max(0, toNum(orderWithLivePacking?.packingConfiguration?.layersPerLoadCarrier, 0));
|
|
18
50
|
const packagesPerLoadCarrier = packagesPerLayer * layersPerLoadCarrier;
|
|
19
51
|
const karCount = packagesPerLoadCarrier > 0
|
|
20
52
|
? Math.ceil(numberOfPackages / packagesPerLoadCarrier)
|
|
21
53
|
: numberOfPackages > 0 ? 1 : 0;
|
|
22
|
-
const unitPrice = toNum(
|
|
23
|
-
const orderAmount = toNum(
|
|
54
|
+
const unitPrice = toNum(orderWithLivePacking?.pricePerPiece?.value);
|
|
55
|
+
const orderAmount = toNum(orderWithLivePacking?.calculatedFields?.orderAmount?.value);
|
|
24
56
|
const revenue = orderAmount > 0 ? orderAmount : unitPrice * numberOfPieces;
|
|
25
|
-
const orderedAt =
|
|
26
|
-
const deliveryAt =
|
|
27
|
-
const customerOrgId =
|
|
57
|
+
const orderedAt = orderWithLivePacking?.orderDateTime ?? orderWithLivePacking?.creationDateTime ?? "";
|
|
58
|
+
const deliveryAt = orderWithLivePacking?.delivery?.latestDeliveryDateTime ?? "";
|
|
59
|
+
const customerOrgId = orderWithLivePacking?.customerOrganizationId ?? "";
|
|
28
60
|
const found = customerOrgId ? customerLookup?.get(customerOrgId) : undefined;
|
|
29
|
-
const status = String(
|
|
30
|
-
const isCancelled = status === "CANCELLED" || !!
|
|
61
|
+
const status = String(orderWithLivePacking?.status ?? "").toUpperCase();
|
|
62
|
+
const isCancelled = status === "CANCELLED" || !!orderWithLivePacking?.automaticallyCancelledOn;
|
|
31
63
|
const isShipped = status === "SHIPPED" || status === "DELIVERED";
|
|
32
64
|
const isInvoiced = o?.isPaid === true;
|
|
33
65
|
const isConfirmed = status === "COMMITTED" || status === "CONFIRMED";
|
|
34
|
-
const orderNumber = (
|
|
35
|
-
? o.customerOrderId
|
|
36
|
-
: null) ??
|
|
37
|
-
(o?.salesChannelOrderId ? String(o.salesChannelOrderId) : null) ??
|
|
38
|
-
String(o?.salesOrderId ?? "").slice(0, 16);
|
|
39
|
-
const tradeItemId = String(o?.tradeItemId ?? "");
|
|
40
|
-
const tradeItem = tradeItemId ? tradeItemLookup?.get(tradeItemId) : undefined;
|
|
66
|
+
const orderNumber = centralOrderNumber(orderWithLivePacking?.orderNumber ?? orderWithLivePacking?.order_number);
|
|
41
67
|
return {
|
|
42
68
|
id: String(o?.salesOrderId ?? ""),
|
|
43
|
-
orderNumber
|
|
69
|
+
orderNumber,
|
|
44
70
|
productName: tradeItem?.name ?? "Onbekend artikel",
|
|
45
71
|
sku: tradeItem?.sku ?? tradeItemId,
|
|
46
72
|
imageUrl: tradeItem?.imageUrl ?? null,
|
|
@@ -59,7 +85,7 @@ export function mapJsonbToSalesOrderDTO(o, customerLookup, tradeItemLookup) {
|
|
|
59
85
|
},
|
|
60
86
|
status: { isCancelled, isShipped, isInvoiced, isConfirmed },
|
|
61
87
|
raw: {
|
|
62
|
-
order:
|
|
88
|
+
order: orderWithLivePacking ?? null,
|
|
63
89
|
customer: found?.raw ?? null,
|
|
64
90
|
tradeItem: tradeItem?.raw ?? null,
|
|
65
91
|
},
|