@flowselections/floriday-afhandeling-module 1.0.25 → 1.0.27
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/afhandeling/CapacityWarning.d.ts +10 -0
- package/dist-lib/components/afhandeling/CapacityWarning.d.ts.map +1 -0
- package/dist-lib/components/afhandeling/CapacityWarning.js +12 -0
- package/dist-lib/components/afhandeling/ControlePage.d.ts.map +1 -1
- package/dist-lib/components/afhandeling/ControlePage.js +7 -2
- package/dist-lib/components/afhandeling/DagDetailDialog.d.ts.map +1 -1
- package/dist-lib/components/afhandeling/DagDetailDialog.js +158 -62
- package/dist-lib/components/afhandeling/LeveringenPage.d.ts.map +1 -1
- package/dist-lib/components/afhandeling/LeveringenPage.js +2 -10
- package/dist-lib/components/afhandeling/PickAgendaView.d.ts.map +1 -1
- package/dist-lib/components/afhandeling/PickAgendaView.js +4 -11
- package/dist-lib/components/afhandeling/VervoerdersPage.d.ts.map +1 -1
- package/dist-lib/components/afhandeling/VervoerdersPage.js +2 -5
- package/dist-lib/components/afhandeling/VerzetOrderDialog.d.ts +14 -0
- package/dist-lib/components/afhandeling/VerzetOrderDialog.d.ts.map +1 -0
- package/dist-lib/components/afhandeling/VerzetOrderDialog.js +203 -0
- package/dist-lib/components/afhandeling/WeekAgendaView.d.ts.map +1 -1
- package/dist-lib/components/afhandeling/WeekAgendaView.js +7 -3
- package/dist-lib/components/pickstation/PickstationPage.d.ts.map +1 -1
- package/dist-lib/components/pickstation/PickstationPage.js +1 -0
- package/dist-lib/components/settings/VervoerdersSettingsCard.d.ts.map +1 -1
- package/dist-lib/components/settings/VervoerdersSettingsCard.js +2 -5
- package/dist-lib/hooks/useCapacityCheck.d.ts +10 -0
- package/dist-lib/hooks/useCapacityCheck.d.ts.map +1 -0
- package/dist-lib/hooks/useCapacityCheck.js +22 -0
- package/dist-lib/hooks/useEngineTasks.d.ts +14 -0
- package/dist-lib/hooks/useEngineTasks.d.ts.map +1 -0
- package/dist-lib/hooks/useEngineTasks.js +49 -0
- package/dist-lib/hooks/useOrderPlanning.d.ts +8 -2
- package/dist-lib/hooks/useOrderPlanning.d.ts.map +1 -1
- package/dist-lib/hooks/useOrderPlanning.js +95 -93
- package/dist-lib/index.d.ts +0 -3
- package/dist-lib/index.d.ts.map +1 -1
- package/dist-lib/index.js +1 -5
- package/dist-lib/integrations/supabase/auth-middleware.d.ts +9010 -5433
- package/dist-lib/integrations/supabase/auth-middleware.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/client.d.ts +9010 -5433
- package/dist-lib/integrations/supabase/client.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/client.server.d.ts +9010 -5433
- package/dist-lib/integrations/supabase/client.server.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/types.d.ts +9184 -5544
- package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
- package/dist-lib/lib/afhandelingSettings.functions.d.ts +7186 -32
- package/dist-lib/lib/afhandelingSettings.functions.d.ts.map +1 -1
- package/dist-lib/lib/carriers.functions.d.ts +17965 -80
- package/dist-lib/lib/carriers.functions.d.ts.map +1 -1
- package/dist-lib/lib/cartAssignments.functions.d.ts +17965 -80
- package/dist-lib/lib/cartAssignments.functions.d.ts.map +1 -1
- package/dist-lib/lib/cartControl.functions.d.ts +35962 -170
- package/dist-lib/lib/cartControl.functions.d.ts.map +1 -1
- package/dist-lib/lib/cartControl.functions.js +103 -13
- package/dist-lib/lib/floriday.functions.d.ts +9010 -5433
- package/dist-lib/lib/floriday.functions.d.ts.map +1 -1
- package/dist-lib/lib/logisticsEngine/capacity.d.ts +19 -0
- package/dist-lib/lib/logisticsEngine/capacity.d.ts.map +1 -0
- package/dist-lib/lib/logisticsEngine/capacity.js +91 -0
- package/dist-lib/lib/logisticsEngine/engine.d.ts +99 -0
- package/dist-lib/lib/logisticsEngine/engine.d.ts.map +1 -0
- package/dist-lib/lib/logisticsEngine/engine.js +102 -0
- package/dist-lib/lib/logisticsEngine/reschedule.d.ts +65 -0
- package/dist-lib/lib/logisticsEngine/reschedule.d.ts.map +1 -0
- package/dist-lib/lib/logisticsEngine/reschedule.js +86 -0
- package/dist-lib/lib/logisticsEngine/staffPlanning.d.ts +37 -0
- package/dist-lib/lib/logisticsEngine/staffPlanning.d.ts.map +1 -0
- package/dist-lib/lib/logisticsEngine/staffPlanning.js +100 -0
- package/dist-lib/lib/serverFnError.d.ts +10 -0
- package/dist-lib/lib/serverFnError.d.ts.map +1 -0
- package/dist-lib/lib/serverFnError.js +29 -0
- package/dist-lib/lib/serverRoutes/index.d.ts +0 -1
- package/dist-lib/lib/serverRoutes/index.d.ts.map +1 -1
- package/dist-lib/lib/serverRoutes/index.js +0 -1
- package/dist-lib/lib/timezone.d.ts +27 -0
- package/dist-lib/lib/timezone.d.ts.map +1 -0
- package/dist-lib/lib/timezone.js +68 -0
- package/package.json +6 -21
- package/dist-lib/components/engine/CapaciteitsmaatregelenPage.d.ts +0 -2
- package/dist-lib/components/engine/CapaciteitsmaatregelenPage.d.ts.map +0 -1
- package/dist-lib/components/engine/CapaciteitsmaatregelenPage.js +0 -40
- package/dist-lib/components/engine/CapaciteitsmonitorPage.d.ts +0 -2
- package/dist-lib/components/engine/CapaciteitsmonitorPage.d.ts.map +0 -1
- package/dist-lib/components/engine/CapaciteitsmonitorPage.js +0 -49
- package/dist-lib/components/engine/FormulesPage.d.ts +0 -2
- package/dist-lib/components/engine/FormulesPage.d.ts.map +0 -1
- package/dist-lib/components/engine/FormulesPage.js +0 -252
- package/dist-lib/components/engine/PlaceholderPage.d.ts +0 -6
- package/dist-lib/components/engine/PlaceholderPage.d.ts.map +0 -1
- package/dist-lib/components/engine/PlaceholderPage.js +0 -6
- package/dist-lib/components/engine/StrategieenPage.d.ts +0 -2
- package/dist-lib/components/engine/StrategieenPage.d.ts.map +0 -1
- package/dist-lib/components/engine/StrategieenPage.js +0 -80
- package/dist-lib/lib/logisticsEngine/capacity.functions.d.ts +0 -64978
- package/dist-lib/lib/logisticsEngine/capacity.functions.d.ts.map +0 -1
- package/dist-lib/lib/logisticsEngine/capacity.functions.js +0 -90
- package/dist-lib/lib/logisticsEngine/config.d.ts +0 -140
- package/dist-lib/lib/logisticsEngine/config.d.ts.map +0 -1
- package/dist-lib/lib/logisticsEngine/config.js +0 -488
- package/dist-lib/lib/logisticsEngine/enginePickTime.d.ts +0 -29
- package/dist-lib/lib/logisticsEngine/enginePickTime.d.ts.map +0 -1
- package/dist-lib/lib/logisticsEngine/enginePickTime.js +0 -136
- package/dist-lib/lib/logisticsEngine/evaluate.functions.d.ts +0 -16278
- package/dist-lib/lib/logisticsEngine/evaluate.functions.d.ts.map +0 -1
- package/dist-lib/lib/logisticsEngine/evaluate.functions.js +0 -104
- package/dist-lib/lib/logisticsEngine/expression.d.ts +0 -21
- package/dist-lib/lib/logisticsEngine/expression.d.ts.map +0 -1
- package/dist-lib/lib/logisticsEngine/expression.js +0 -263
- package/dist-lib/lib/logisticsEngine/formulas.functions.d.ts +0 -32512
- package/dist-lib/lib/logisticsEngine/formulas.functions.d.ts.map +0 -1
- package/dist-lib/lib/logisticsEngine/formulas.functions.js +0 -58
- package/dist-lib/lib/logisticsEngine/safetyLayer.d.ts +0 -83
- package/dist-lib/lib/logisticsEngine/safetyLayer.d.ts.map +0 -1
- package/dist-lib/lib/logisticsEngine/safetyLayer.js +0 -182
- package/dist-lib/lib/logisticsEngine/strategies.functions.d.ts +0 -129961
- package/dist-lib/lib/logisticsEngine/strategies.functions.d.ts.map +0 -1
- package/dist-lib/lib/logisticsEngine/strategies.functions.js +0 -176
- package/dist-lib/lib/logisticsEngine/variables.d.ts +0 -29
- package/dist-lib/lib/logisticsEngine/variables.d.ts.map +0 -1
- package/dist-lib/lib/logisticsEngine/variables.js +0 -144
- package/dist-lib/lib/logisticsEngine/wizard.functions.d.ts +0 -64976
- package/dist-lib/lib/logisticsEngine/wizard.functions.d.ts.map +0 -1
- package/dist-lib/lib/logisticsEngine/wizard.functions.js +0 -175
- package/dist-lib/lib/serverRoutes/logisticsTick.handler.d.ts +0 -3
- package/dist-lib/lib/serverRoutes/logisticsTick.handler.d.ts.map +0 -1
- package/dist-lib/lib/serverRoutes/logisticsTick.handler.js +0 -42
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
import { createServerFn } from "@tanstack/react-start";
|
|
2
|
-
import { requireSupabaseAuth } from "../../integrations/supabase/auth-middleware";
|
|
3
|
-
import { DEFAULT_CAPACITY_SETTINGS, evaluateCapacity, } from "./safetyLayer";
|
|
4
|
-
function mergeSettings(raw) {
|
|
5
|
-
const r = (raw ?? {});
|
|
6
|
-
return {
|
|
7
|
-
...DEFAULT_CAPACITY_SETTINGS,
|
|
8
|
-
...r,
|
|
9
|
-
measures: Array.isArray(r.measures) && r.measures.length > 0 ? r.measures : DEFAULT_CAPACITY_SETTINGS.measures,
|
|
10
|
-
};
|
|
11
|
-
}
|
|
12
|
-
export const getCapacitySettings = createServerFn({ method: "GET" })
|
|
13
|
-
.middleware([requireSupabaseAuth])
|
|
14
|
-
.handler(async ({ context }) => {
|
|
15
|
-
const supabase = context.supabase;
|
|
16
|
-
const { data, error } = await supabase
|
|
17
|
-
.from("logistics_capacity_settings")
|
|
18
|
-
.select("settings")
|
|
19
|
-
.eq("user_id", context.userId)
|
|
20
|
-
.maybeSingle();
|
|
21
|
-
if (error)
|
|
22
|
-
throw new Error(error.message);
|
|
23
|
-
return { settings: mergeSettings(data?.settings) };
|
|
24
|
-
});
|
|
25
|
-
export const saveCapacitySettings = createServerFn({ method: "POST" })
|
|
26
|
-
.middleware([requireSupabaseAuth])
|
|
27
|
-
.inputValidator((d) => ({ settings: d.settings }))
|
|
28
|
-
.handler(async ({ data, context }) => {
|
|
29
|
-
const supabase = context.supabase;
|
|
30
|
-
const clean = mergeSettings(data.settings);
|
|
31
|
-
const { error } = await supabase
|
|
32
|
-
.from("logistics_capacity_settings")
|
|
33
|
-
.upsert({
|
|
34
|
-
user_id: context.userId,
|
|
35
|
-
settings: clean,
|
|
36
|
-
updated_at: new Date().toISOString(),
|
|
37
|
-
}, { onConflict: "user_id" });
|
|
38
|
-
if (error)
|
|
39
|
-
throw new Error(error.message);
|
|
40
|
-
return { ok: true, settings: clean };
|
|
41
|
-
});
|
|
42
|
-
export const evaluateCapacityFn = createServerFn({ method: "POST" })
|
|
43
|
-
.middleware([requireSupabaseAuth])
|
|
44
|
-
.inputValidator((d) => ({
|
|
45
|
-
input: d.input,
|
|
46
|
-
log: d.log !== false,
|
|
47
|
-
note: d.note ?? null,
|
|
48
|
-
}))
|
|
49
|
-
.handler(async ({ data, context }) => {
|
|
50
|
-
const supabase = context.supabase;
|
|
51
|
-
const { data: row } = await supabase
|
|
52
|
-
.from("logistics_capacity_settings")
|
|
53
|
-
.select("settings")
|
|
54
|
-
.eq("user_id", context.userId)
|
|
55
|
-
.maybeSingle();
|
|
56
|
-
const settings = mergeSettings(row?.settings);
|
|
57
|
-
const evaluation = evaluateCapacity(data.input, settings);
|
|
58
|
-
if (data.log) {
|
|
59
|
-
await supabase.from("logistics_capacity_events").insert({
|
|
60
|
-
user_id: context.userId,
|
|
61
|
-
status: evaluation.status,
|
|
62
|
-
required_carts: evaluation.requiredCarts,
|
|
63
|
-
available_carts: evaluation.availableCarts,
|
|
64
|
-
reserve_minutes: evaluation.reserveMinutes,
|
|
65
|
-
shortage_carts: evaluation.shortageCarts,
|
|
66
|
-
measures: evaluation.measures,
|
|
67
|
-
outcome: evaluation.status === "green"
|
|
68
|
-
? "healthy"
|
|
69
|
-
: evaluation.stillShortAfterMeasures > 0
|
|
70
|
-
? "needs-intervention"
|
|
71
|
-
: "measures-suggested",
|
|
72
|
-
note: data.note,
|
|
73
|
-
});
|
|
74
|
-
}
|
|
75
|
-
return { evaluation };
|
|
76
|
-
});
|
|
77
|
-
export const listCapacityEvents = createServerFn({ method: "GET" })
|
|
78
|
-
.middleware([requireSupabaseAuth])
|
|
79
|
-
.handler(async ({ context }) => {
|
|
80
|
-
const supabase = context.supabase;
|
|
81
|
-
const { data, error } = await supabase
|
|
82
|
-
.from("logistics_capacity_events")
|
|
83
|
-
.select("*")
|
|
84
|
-
.eq("user_id", context.userId)
|
|
85
|
-
.order("created_at", { ascending: false })
|
|
86
|
-
.limit(50);
|
|
87
|
-
if (error)
|
|
88
|
-
throw new Error(error.message);
|
|
89
|
-
return { events: (data ?? []) };
|
|
90
|
-
});
|
|
@@ -1,140 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Wizard-configuratie voor de Logistieke Configurator.
|
|
3
|
-
* De gebruiker beantwoordt vragen in gewone taal; deze module vertaalt
|
|
4
|
-
* de antwoorden naar de onderliggende formules per slot.
|
|
5
|
-
*/
|
|
6
|
-
export type OrderMode = "per-order" | "per-customer" | "per-location" | "per-cart" | "custom";
|
|
7
|
-
export type CombineMode = "none" | "auction" | "bvo" | "all";
|
|
8
|
-
export type CustomersPerLayer = "multi" | "single";
|
|
9
|
-
export type CartFullMode = "auto" | "pct" | "layers" | "weight" | "custom";
|
|
10
|
-
export type PackingSlipTiming = "cart-full" | "batch-close" | "pickstation";
|
|
11
|
-
export type DeliveryNoteTiming = "floriday" | "pickstation" | "manual";
|
|
12
|
-
export type PickReadyMode = "auto" | "custom";
|
|
13
|
-
export type PickReadyControl = "none" | "quality" | "cart" | "both" | "manual";
|
|
14
|
-
export type PickPlanningReleaseMode = "latest" | "hours-before-departure" | "between-signup-window" | "fixed-time" | "days-before-delivery" | "manual" | "custom";
|
|
15
|
-
export interface WorkBreak {
|
|
16
|
-
/** Starttijd pauze "HH:MM". */
|
|
17
|
-
start: string;
|
|
18
|
-
/** Eindtijd pauze "HH:MM". */
|
|
19
|
-
end: string;
|
|
20
|
-
/** Optioneel label, bv. "Lunch". */
|
|
21
|
-
label?: string;
|
|
22
|
-
}
|
|
23
|
-
export interface WorkingSchedule {
|
|
24
|
-
/** ISO-dagnummers waarop het pickteam werkt (1=ma … 7=zo). */
|
|
25
|
-
weekdays: number[];
|
|
26
|
-
/** Starttijd werkdag "HH:MM". */
|
|
27
|
-
startTime: string;
|
|
28
|
-
/** Eindtijd werkdag "HH:MM". */
|
|
29
|
-
endTime: string;
|
|
30
|
-
/** Pauzes die van de beschikbare werktijd worden afgetrokken. */
|
|
31
|
-
breaks: WorkBreak[];
|
|
32
|
-
}
|
|
33
|
-
export interface WizardConfig {
|
|
34
|
-
orderMode: OrderMode;
|
|
35
|
-
workingSchedule: WorkingSchedule;
|
|
36
|
-
combine: {
|
|
37
|
-
mode: CombineMode;
|
|
38
|
-
maxLayersOwnCart: number;
|
|
39
|
-
maxCustomersPerCart: number;
|
|
40
|
-
sameCarrier: boolean;
|
|
41
|
-
sameRoute: boolean;
|
|
42
|
-
sameLocation: boolean;
|
|
43
|
-
sameCrateType: boolean;
|
|
44
|
-
sameDeliveryDate: boolean;
|
|
45
|
-
customersPerLayer: CustomersPerLayer;
|
|
46
|
-
};
|
|
47
|
-
cartFull: {
|
|
48
|
-
mode: CartFullMode;
|
|
49
|
-
fillPct: number;
|
|
50
|
-
maxLayers: number;
|
|
51
|
-
maxWeight: number;
|
|
52
|
-
customExpression: string;
|
|
53
|
-
};
|
|
54
|
-
cartClose: {
|
|
55
|
-
whenFull: boolean;
|
|
56
|
-
whenCapacityReached: boolean;
|
|
57
|
-
when30minLeft: boolean;
|
|
58
|
-
whenTransportRegistered: boolean;
|
|
59
|
-
onlyManual: boolean;
|
|
60
|
-
};
|
|
61
|
-
documents: {
|
|
62
|
-
packingSlip: PackingSlipTiming;
|
|
63
|
-
deliveryNote: DeliveryNoteTiming;
|
|
64
|
-
};
|
|
65
|
-
pickPlanningRelease: {
|
|
66
|
-
mode: PickPlanningReleaseMode;
|
|
67
|
-
hoursBeforeDeparture: number;
|
|
68
|
-
fixedTime: string;
|
|
69
|
-
daysBeforeDelivery: number;
|
|
70
|
-
safetyBufferMinutes: number;
|
|
71
|
-
customExpression: string;
|
|
72
|
-
/** Vensterbreedte: hoeveel werkuren vóór het aanmeldmoment mogen karren naar het Pickstation. */
|
|
73
|
-
hoursBeforeSignupWindow: number;
|
|
74
|
-
/** Extra werkuren dat karren eerder naar het Pickstation mogen als het te druk wordt. */
|
|
75
|
-
earlyPickHours: number;
|
|
76
|
-
/** Mogen niet-volle karren ook vóór het aanmeldmoment vrijgegeven worden? */
|
|
77
|
-
incompleteCartsBeforeSignup: boolean;
|
|
78
|
-
/** Buffer als vaste minuten of als percentage van benodigde picktijd. */
|
|
79
|
-
safetyBufferMode: "minutes" | "percent";
|
|
80
|
-
safetyBufferPercent: number;
|
|
81
|
-
};
|
|
82
|
-
pickstationVisibility: {
|
|
83
|
-
mode: PickReadyMode;
|
|
84
|
-
logistics: {
|
|
85
|
-
batchClosed: boolean;
|
|
86
|
-
cartBuilt: boolean;
|
|
87
|
-
cartFull: boolean;
|
|
88
|
-
plannerApproved: boolean;
|
|
89
|
-
capacityReleased: boolean;
|
|
90
|
-
};
|
|
91
|
-
documents: {
|
|
92
|
-
packingSlip: boolean;
|
|
93
|
-
deliveryNote: boolean;
|
|
94
|
-
transportLabel: boolean;
|
|
95
|
-
};
|
|
96
|
-
control: PickReadyControl;
|
|
97
|
-
};
|
|
98
|
-
startMoment: {
|
|
99
|
-
autoWhenCapacity: boolean;
|
|
100
|
-
safetyBufferMinutes: number;
|
|
101
|
-
capacityMode: "carts-per-hour" | "minutes-per-cart";
|
|
102
|
-
pickCapacityPerHour: number;
|
|
103
|
-
minutesPerCart: number;
|
|
104
|
-
};
|
|
105
|
-
continuous: {
|
|
106
|
-
enabled: boolean;
|
|
107
|
-
normalPickHours: number;
|
|
108
|
-
allowEarlier: boolean;
|
|
109
|
-
maxEarlierHours: number;
|
|
110
|
-
incompleteCartsMode: "immediate" | "after-registration";
|
|
111
|
-
ordersAfterRegistration: "current-batch" | "new-batch" | "next-round";
|
|
112
|
-
keepStationFilled: boolean;
|
|
113
|
-
evenWorkload: boolean;
|
|
114
|
-
};
|
|
115
|
-
}
|
|
116
|
-
export declare const CONTINUOUS_PRESET: WizardConfig["continuous"];
|
|
117
|
-
export declare const DEFAULT_CONFIG: WizardConfig;
|
|
118
|
-
/** Slot-key gebruikt om de wizard-JSON zelf op te slaan. */
|
|
119
|
-
export declare const CONFIG_SLOT = "_wizard_config";
|
|
120
|
-
export interface CompiledFormula {
|
|
121
|
-
slot: string;
|
|
122
|
-
expression: string;
|
|
123
|
-
}
|
|
124
|
-
/** Vertaal wizard-config naar formule-expressies per slot. */
|
|
125
|
-
export declare function compileConfig(c: WizardConfig): CompiledFormula[];
|
|
126
|
-
/** Genereer een leesbare samenvatting in gewone Nederlandse taal. */
|
|
127
|
-
export declare function summarizeConfig(c: WizardConfig): string[];
|
|
128
|
-
/** Praktijkvoorbeeld — puur illustratief, gebaseerd op de instellingen. */
|
|
129
|
-
export interface LivePreview {
|
|
130
|
-
orders: number;
|
|
131
|
-
carts: number;
|
|
132
|
-
full: number;
|
|
133
|
-
combined: number;
|
|
134
|
-
rest: number;
|
|
135
|
-
pickStart: string;
|
|
136
|
-
packingSlipTime: string;
|
|
137
|
-
pickstationStart: string;
|
|
138
|
-
}
|
|
139
|
-
export declare function computePreview(c: WizardConfig): LivePreview;
|
|
140
|
-
//# sourceMappingURL=config.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/lib/logisticsEngine/config.ts"],"names":[],"mappings":"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"}
|