@flowselections/logistiek-engine 1.0.147 → 1.0.151
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/AutomatischVersturenCard.d.ts +2 -0
- package/dist-lib/components/AutomatischVersturenCard.d.ts.map +1 -0
- package/dist-lib/components/AutomatischVersturenCard.js +22 -0
- package/dist-lib/components/BeheerPage.d.ts.map +1 -1
- package/dist-lib/components/BeheerPage.js +3 -1
- package/dist-lib/components/OudeOrderregelsCard.d.ts +2 -0
- package/dist-lib/components/OudeOrderregelsCard.d.ts.map +1 -0
- package/dist-lib/components/OudeOrderregelsCard.js +28 -0
- package/dist-lib/integrations/supabase/previewAuthStorage.d.ts.map +1 -1
- package/dist-lib/integrations/supabase/previewAuthStorage.js +22 -4
- package/dist-lib/integrations/supabase/types.d.ts +264 -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/autoSend.d.ts +21 -0
- package/dist-lib/lib/autoSend.d.ts.map +1 -0
- package/dist-lib/lib/autoSend.functions.d.ts +10 -0
- package/dist-lib/lib/autoSend.functions.d.ts.map +1 -0
- package/dist-lib/lib/autoSend.functions.js +18 -0
- package/dist-lib/lib/autoSend.js +69 -0
- package/dist-lib/lib/autoSend.server.d.ts +13 -0
- package/dist-lib/lib/autoSend.server.d.ts.map +1 -0
- package/dist-lib/lib/autoSend.server.js +75 -0
- package/dist-lib/lib/centralSecrets.server.d.ts +13 -0
- package/dist-lib/lib/centralSecrets.server.d.ts.map +1 -0
- package/dist-lib/lib/centralSecrets.server.js +82 -0
- package/dist-lib/lib/handlers/logistics-tick.server.js +10 -0
- package/dist-lib/lib/modulePrompts.d.ts.map +1 -1
- package/dist-lib/lib/modulePrompts.js +116 -0
- package/dist-lib/lib/moduleVersion.d.ts +1 -1
- package/dist-lib/lib/moduleVersion.js +1 -1
- package/dist-lib/lib/ruleEngineSchema.d.ts.map +1 -1
- package/dist-lib/lib/ruleEngineSchema.js +7 -0
- package/package.json +4 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AutomatischVersturenCard.d.ts","sourceRoot":"","sources":["../../src/components/AutomatischVersturenCard.tsx"],"names":[],"mappings":"AAMA,wBAAgB,wBAAwB,gCA0CvC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
// src/components/AutomatischVersturenCard.tsx — toont alleen óf de sleutel op te halen is en het Shell-adres aanwezig is.
|
|
3
|
+
import { useEffect, useState } from "react";
|
|
4
|
+
import { useServerFn } from "@tanstack/react-start";
|
|
5
|
+
import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@flowselections/core";
|
|
6
|
+
import { getAutoSendConfig } from "../lib/autoSend.functions.js";
|
|
7
|
+
export function AutomatischVersturenCard() {
|
|
8
|
+
const lees = useServerFn(getAutoSendConfig);
|
|
9
|
+
const [stand, setStand] = useState(null);
|
|
10
|
+
const [fout, setFout] = useState(null);
|
|
11
|
+
useEffect(() => {
|
|
12
|
+
let actief = true;
|
|
13
|
+
lees()
|
|
14
|
+
.then((r) => actief && setStand(r && typeof r === "object" ? r : null))
|
|
15
|
+
.catch((e) => actief && setFout(String(e?.message ?? e)));
|
|
16
|
+
return () => {
|
|
17
|
+
actief = false;
|
|
18
|
+
};
|
|
19
|
+
}, [lees]);
|
|
20
|
+
const jaNee = (v) => (v ? "ja" : "nee");
|
|
21
|
+
return (_jsxs(Card, { children: [_jsxs(CardHeader, { children: [_jsx(CardTitle, { children: "Automatisch versturen" }), _jsx(CardDescription, { children: "Alleen voor Floriday-orders, als \"Automatisch versturen\" in de werkwijze aan staat. Is de sleutel niet op te halen of ontbreekt het Shell-adres, dan wordt er niets verstuurd." })] }), _jsx(CardContent, { className: "space-y-1 text-sm", children: fout ? (_jsxs("p", { className: "text-destructive", children: ["Stand onbekend: ", fout] })) : !stand ? (_jsx("p", { className: "text-muted-foreground", children: "Bezig met controleren\u2026" })) : (_jsxs(_Fragment, { children: [_jsxs("p", { children: ["Sleutel op te halen: ", jaNee(stand.sleutelOpTeHalen), !stand.sleutelOpTeHalen && stand.sleutelReden ? ` (${stand.sleutelReden})` : ""] }), _jsxs("p", { children: ["Shell-adres aanwezig: ", jaNee(stand.adresAanwezig)] })] })) })] }));
|
|
22
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BeheerPage.d.ts","sourceRoot":"","sources":["../../src/components/BeheerPage.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"BeheerPage.d.ts","sourceRoot":"","sources":["../../src/components/BeheerPage.tsx"],"names":[],"mappings":"AAqJA,wBAAgB,UAAU,gCAUzB"}
|
|
@@ -11,6 +11,8 @@ import { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent,
|
|
|
11
11
|
import { RotateCcw } from "lucide-react";
|
|
12
12
|
import { supabase } from "../integrations/supabase/moduleClient.js";
|
|
13
13
|
import { RolPoort } from "./RolPoort";
|
|
14
|
+
import { OudeOrderregelsCard } from "./OudeOrderregelsCard";
|
|
15
|
+
import { AutomatischVersturenCard } from "./AutomatischVersturenCard";
|
|
14
16
|
import { ENGINE_TOEGANG } from "../hooks/useEngineRollen";
|
|
15
17
|
function HerindelenBeheer() {
|
|
16
18
|
const [datum, setDatum] = useState("");
|
|
@@ -69,5 +71,5 @@ function HerindelenBeheer() {
|
|
|
69
71
|
: `${voor?.geprintOfGepickt ?? 0} order(s) die al geprint of gepickt zijn, blijven ongemoeid.` })] }), _jsxs(AlertDialogFooter, { children: [_jsx(AlertDialogCancel, { children: "Annuleren" }), _jsxs(AlertDialogAction, { onClick: () => void voerUit(), disabled: (voor?.aantal ?? 0) === 0, children: ["Ja, ", voor?.aantal ?? 0, " order(s) opnieuw indelen"] })] })] }) })] }));
|
|
70
72
|
}
|
|
71
73
|
export function BeheerPage() {
|
|
72
|
-
return (_jsx(RolPoort, { rollen: ENGINE_TOEGANG.beheer, children:
|
|
74
|
+
return (_jsx(RolPoort, { rollen: ENGINE_TOEGANG.beheer, children: _jsxs("div", { className: "space-y-6 p-6", children: [_jsx(HerindelenBeheer, {}), _jsx(OudeOrderregelsCard, {}), _jsx(AutomatischVersturenCard, {})] }) }));
|
|
73
75
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OudeOrderregelsCard.d.ts","sourceRoot":"","sources":["../../src/components/OudeOrderregelsCard.tsx"],"names":[],"mappings":"AAeA,wBAAgB,mBAAmB,gCAiDlC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
// src/components/OudeOrderregelsCard.tsx — orders met een oude pakbon-orderregel
|
|
3
|
+
// (bron: logistics_pakbon_oude_orderregels, alleen lezen).
|
|
4
|
+
import { useEffect, useState } from "react";
|
|
5
|
+
import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@flowselections/core";
|
|
6
|
+
import { supabase } from "../integrations/supabase/moduleClient.js";
|
|
7
|
+
export function OudeOrderregelsCard() {
|
|
8
|
+
const [rijen, setRijen] = useState([]);
|
|
9
|
+
const [fout, setFout] = useState(null);
|
|
10
|
+
useEffect(() => {
|
|
11
|
+
let actief = true;
|
|
12
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
13
|
+
supabase.rpc("logistics_pakbon_oude_orderregels").then(({ data, error }) => {
|
|
14
|
+
if (!actief)
|
|
15
|
+
return;
|
|
16
|
+
if (error)
|
|
17
|
+
setFout(error.message);
|
|
18
|
+
else
|
|
19
|
+
setRijen(Array.isArray(data) ? data : []);
|
|
20
|
+
});
|
|
21
|
+
return () => {
|
|
22
|
+
actief = false;
|
|
23
|
+
};
|
|
24
|
+
}, []);
|
|
25
|
+
return (_jsxs(Card, { children: [_jsxs(CardHeader, { children: [_jsx(CardTitle, { children: "Oude pakbon-orderregels" }), _jsx(CardDescription, { children: "Orders die geen pakbon per kar krijgen omdat er al een oude orderregel bestaat. Er wordt niets aangepast zonder akkoord." })] }), _jsx(CardContent, { children: fout ? (_jsxs("p", { className: "text-sm text-destructive", children: ["Kon het overzicht niet laden: ", fout] })) : rijen.length === 0 ? (_jsx("p", { className: "text-sm text-muted-foreground", children: "Geen orders met een oude orderregel." })) : (_jsx("ul", { className: "space-y-2 text-sm", children: rijen.map((r) => (_jsxs("li", { children: [_jsx("span", { className: "font-medium", children: r.orderNumber }), ": ", r.melding, r.oudeRegel ? ` (${r.oudeRegel})` : "", Array.isArray(r.bufferOrders) && r.bufferOrders.length > 1
|
|
26
|
+
? ` — buffer: ${r.bufferOrders.join(", ")}`
|
|
27
|
+
: ""] }, `${r.orderId}-${r.oudeRegel ?? ""}`))) })) })] }));
|
|
28
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"previewAuthStorage.d.ts","sourceRoot":"","sources":["../../../src/integrations/supabase/previewAuthStorage.ts"],"names":[],"mappings":"AAIA,wBAAgB,sBAAsB;
|
|
1
|
+
{"version":3,"file":"previewAuthStorage.d.ts","sourceRoot":"","sources":["../../../src/integrations/supabase/previewAuthStorage.ts"],"names":[],"mappings":"AAIA,wBAAgB,sBAAsB;mBA6Db,MAAM;mBAwBZ,MAAM,SAAS,MAAM;sBASlB,MAAM;cAM3B"}
|
|
@@ -61,21 +61,38 @@ export function brokeredPreviewStorage() {
|
|
|
61
61
|
// The editor may not be listening yet at the first getItem, so retry once.
|
|
62
62
|
let firstGet = true;
|
|
63
63
|
const RETRY_DELAY = 250;
|
|
64
|
+
// Blocked third-party storage throws here; seeding must not break broker reads.
|
|
65
|
+
const readLocal = (key) => { try {
|
|
66
|
+
return localStorage.getItem(key);
|
|
67
|
+
}
|
|
68
|
+
catch {
|
|
69
|
+
return undefined;
|
|
70
|
+
} };
|
|
64
71
|
return {
|
|
65
72
|
getItem: async (key) => {
|
|
66
|
-
|
|
73
|
+
// Sent with GET and REMOVE so an editor that never cached this session can check or revoke it.
|
|
74
|
+
const local = readLocal(key);
|
|
75
|
+
let res = await request('lovable-preview-auth:get', key, local ?? undefined);
|
|
67
76
|
if (!res && firstGet) {
|
|
68
77
|
await new Promise((r) => setTimeout(r, RETRY_DELAY));
|
|
69
|
-
res = await request('lovable-preview-auth:get', key);
|
|
78
|
+
res = await request('lovable-preview-auth:get', key, local ?? undefined);
|
|
70
79
|
}
|
|
71
80
|
firstGet = false;
|
|
72
81
|
// '' is the logout tombstone: clear the local copy too so it can't resurrect if
|
|
73
82
|
// the broker later goes silent. A null reply means never-synced -> keep local.
|
|
74
83
|
if (res && res.ok && typeof res.value === 'string') {
|
|
75
84
|
if (res.value === '') {
|
|
76
|
-
|
|
85
|
+
if (local !== undefined && readLocal(key) === local)
|
|
86
|
+
localStorage.removeItem(key);
|
|
77
87
|
return null;
|
|
78
88
|
}
|
|
89
|
+
// Seed this origin so a new tab, whose editor holds no session, stays signed in.
|
|
90
|
+
if (local === null && readLocal(key) === null) {
|
|
91
|
+
try {
|
|
92
|
+
localStorage.setItem(key, res.value);
|
|
93
|
+
}
|
|
94
|
+
catch { /* storage full: still return the editor's session */ }
|
|
95
|
+
}
|
|
79
96
|
return res.value;
|
|
80
97
|
}
|
|
81
98
|
return localStorage.getItem(key);
|
|
@@ -92,8 +109,9 @@ export function brokeredPreviewStorage() {
|
|
|
92
109
|
});
|
|
93
110
|
},
|
|
94
111
|
removeItem: (key) => {
|
|
112
|
+
const local = readLocal(key);
|
|
95
113
|
localStorage.removeItem(key);
|
|
96
|
-
return request('lovable-preview-auth:remove', key).then(() => undefined);
|
|
114
|
+
return request('lovable-preview-auth:remove', key, local ?? undefined).then(() => undefined);
|
|
97
115
|
},
|
|
98
116
|
};
|
|
99
117
|
}
|
|
@@ -2611,6 +2611,7 @@ export type Database = {
|
|
|
2611
2611
|
twinfield_base_snapshot: Json | null;
|
|
2612
2612
|
twinfield_base_version: number | null;
|
|
2613
2613
|
twinfield_code: string | null;
|
|
2614
|
+
twinfield_create_on_insert: boolean;
|
|
2614
2615
|
twinfield_last_hash: string | null;
|
|
2615
2616
|
twinfield_missing_since: string | null;
|
|
2616
2617
|
twinfield_present: boolean;
|
|
@@ -2702,6 +2703,7 @@ export type Database = {
|
|
|
2702
2703
|
twinfield_base_snapshot?: Json | null;
|
|
2703
2704
|
twinfield_base_version?: number | null;
|
|
2704
2705
|
twinfield_code?: string | null;
|
|
2706
|
+
twinfield_create_on_insert?: boolean;
|
|
2705
2707
|
twinfield_last_hash?: string | null;
|
|
2706
2708
|
twinfield_missing_since?: string | null;
|
|
2707
2709
|
twinfield_present?: boolean;
|
|
@@ -2793,6 +2795,7 @@ export type Database = {
|
|
|
2793
2795
|
twinfield_base_snapshot?: Json | null;
|
|
2794
2796
|
twinfield_base_version?: number | null;
|
|
2795
2797
|
twinfield_code?: string | null;
|
|
2798
|
+
twinfield_create_on_insert?: boolean;
|
|
2796
2799
|
twinfield_last_hash?: string | null;
|
|
2797
2800
|
twinfield_missing_since?: string | null;
|
|
2798
2801
|
twinfield_present?: boolean;
|
|
@@ -11612,6 +11615,57 @@ export type Database = {
|
|
|
11612
11615
|
};
|
|
11613
11616
|
Relationships: [];
|
|
11614
11617
|
};
|
|
11618
|
+
logistics_auto_send: {
|
|
11619
|
+
Row: {
|
|
11620
|
+
attempts: number;
|
|
11621
|
+
cart_ids: string[];
|
|
11622
|
+
created_at: string;
|
|
11623
|
+
id: string;
|
|
11624
|
+
idempotency_key: string;
|
|
11625
|
+
last_http_status: number | null;
|
|
11626
|
+
locked_until: string | null;
|
|
11627
|
+
max_attempts: number;
|
|
11628
|
+
next_attempt_at: string;
|
|
11629
|
+
order_id: string;
|
|
11630
|
+
reason: string | null;
|
|
11631
|
+
sent_at: string | null;
|
|
11632
|
+
status: string;
|
|
11633
|
+
updated_at: string;
|
|
11634
|
+
};
|
|
11635
|
+
Insert: {
|
|
11636
|
+
attempts?: number;
|
|
11637
|
+
cart_ids?: string[];
|
|
11638
|
+
created_at?: string;
|
|
11639
|
+
id?: string;
|
|
11640
|
+
idempotency_key: string;
|
|
11641
|
+
last_http_status?: number | null;
|
|
11642
|
+
locked_until?: string | null;
|
|
11643
|
+
max_attempts?: number;
|
|
11644
|
+
next_attempt_at?: string;
|
|
11645
|
+
order_id: string;
|
|
11646
|
+
reason?: string | null;
|
|
11647
|
+
sent_at?: string | null;
|
|
11648
|
+
status?: string;
|
|
11649
|
+
updated_at?: string;
|
|
11650
|
+
};
|
|
11651
|
+
Update: {
|
|
11652
|
+
attempts?: number;
|
|
11653
|
+
cart_ids?: string[];
|
|
11654
|
+
created_at?: string;
|
|
11655
|
+
id?: string;
|
|
11656
|
+
idempotency_key?: string;
|
|
11657
|
+
last_http_status?: number | null;
|
|
11658
|
+
locked_until?: string | null;
|
|
11659
|
+
max_attempts?: number;
|
|
11660
|
+
next_attempt_at?: string;
|
|
11661
|
+
order_id?: string;
|
|
11662
|
+
reason?: string | null;
|
|
11663
|
+
sent_at?: string | null;
|
|
11664
|
+
status?: string;
|
|
11665
|
+
updated_at?: string;
|
|
11666
|
+
};
|
|
11667
|
+
Relationships: [];
|
|
11668
|
+
};
|
|
11615
11669
|
logistics_autolink_audit: {
|
|
11616
11670
|
Row: {
|
|
11617
11671
|
created_at: string;
|
|
@@ -18511,6 +18565,7 @@ export type Database = {
|
|
|
18511
18565
|
created_at: string;
|
|
18512
18566
|
default_end: string;
|
|
18513
18567
|
default_start: string;
|
|
18568
|
+
eigen_vervoer: boolean;
|
|
18514
18569
|
end_address: string | null;
|
|
18515
18570
|
home_address: string | null;
|
|
18516
18571
|
id: string;
|
|
@@ -18522,6 +18577,7 @@ export type Database = {
|
|
|
18522
18577
|
created_at?: string;
|
|
18523
18578
|
default_end?: string;
|
|
18524
18579
|
default_start?: string;
|
|
18580
|
+
eigen_vervoer?: boolean;
|
|
18525
18581
|
end_address?: string | null;
|
|
18526
18582
|
home_address?: string | null;
|
|
18527
18583
|
id?: string;
|
|
@@ -18533,6 +18589,7 @@ export type Database = {
|
|
|
18533
18589
|
created_at?: string;
|
|
18534
18590
|
default_end?: string;
|
|
18535
18591
|
default_start?: string;
|
|
18592
|
+
eigen_vervoer?: boolean;
|
|
18536
18593
|
end_address?: string | null;
|
|
18537
18594
|
home_address?: string | null;
|
|
18538
18595
|
id?: string;
|
|
@@ -26935,9 +26992,59 @@ export type Database = {
|
|
|
26935
26992
|
};
|
|
26936
26993
|
Relationships: [];
|
|
26937
26994
|
};
|
|
26995
|
+
werkbon_standby_tijdvakken: {
|
|
26996
|
+
Row: {
|
|
26997
|
+
created_at: string;
|
|
26998
|
+
datum: string;
|
|
26999
|
+
eind_tijd: string;
|
|
27000
|
+
id: string;
|
|
27001
|
+
monteur_id: string;
|
|
27002
|
+
start_tijd: string;
|
|
27003
|
+
updated_at: string;
|
|
27004
|
+
werkbon_id: string;
|
|
27005
|
+
};
|
|
27006
|
+
Insert: {
|
|
27007
|
+
created_at?: string;
|
|
27008
|
+
datum: string;
|
|
27009
|
+
eind_tijd: string;
|
|
27010
|
+
id?: string;
|
|
27011
|
+
monteur_id: string;
|
|
27012
|
+
start_tijd: string;
|
|
27013
|
+
updated_at?: string;
|
|
27014
|
+
werkbon_id: string;
|
|
27015
|
+
};
|
|
27016
|
+
Update: {
|
|
27017
|
+
created_at?: string;
|
|
27018
|
+
datum?: string;
|
|
27019
|
+
eind_tijd?: string;
|
|
27020
|
+
id?: string;
|
|
27021
|
+
monteur_id?: string;
|
|
27022
|
+
start_tijd?: string;
|
|
27023
|
+
updated_at?: string;
|
|
27024
|
+
werkbon_id?: string;
|
|
27025
|
+
};
|
|
27026
|
+
Relationships: [
|
|
27027
|
+
{
|
|
27028
|
+
foreignKeyName: "werkbon_standby_tijdvakken_werkbon_id_fkey";
|
|
27029
|
+
columns: ["werkbon_id"];
|
|
27030
|
+
isOneToOne: false;
|
|
27031
|
+
referencedRelation: "werkbonnen";
|
|
27032
|
+
referencedColumns: ["id"];
|
|
27033
|
+
},
|
|
27034
|
+
{
|
|
27035
|
+
foreignKeyName: "werkbon_standby_tijdvakken_werkbon_id_fkey";
|
|
27036
|
+
columns: ["werkbon_id"];
|
|
27037
|
+
isOneToOne: false;
|
|
27038
|
+
referencedRelation: "wo_overview";
|
|
27039
|
+
referencedColumns: ["id"];
|
|
27040
|
+
}
|
|
27041
|
+
];
|
|
27042
|
+
};
|
|
26938
27043
|
werkbon_time_logs: {
|
|
26939
27044
|
Row: {
|
|
26940
27045
|
activity: string;
|
|
27046
|
+
auto_stop_reason: string | null;
|
|
27047
|
+
auto_stopped: boolean;
|
|
26941
27048
|
created_at: string;
|
|
26942
27049
|
ended_at: string | null;
|
|
26943
27050
|
id: string;
|
|
@@ -26948,6 +27055,8 @@ export type Database = {
|
|
|
26948
27055
|
};
|
|
26949
27056
|
Insert: {
|
|
26950
27057
|
activity: string;
|
|
27058
|
+
auto_stop_reason?: string | null;
|
|
27059
|
+
auto_stopped?: boolean;
|
|
26951
27060
|
created_at?: string;
|
|
26952
27061
|
ended_at?: string | null;
|
|
26953
27062
|
id?: string;
|
|
@@ -26958,6 +27067,8 @@ export type Database = {
|
|
|
26958
27067
|
};
|
|
26959
27068
|
Update: {
|
|
26960
27069
|
activity?: string;
|
|
27070
|
+
auto_stop_reason?: string | null;
|
|
27071
|
+
auto_stopped?: boolean;
|
|
26961
27072
|
created_at?: string;
|
|
26962
27073
|
ended_at?: string | null;
|
|
26963
27074
|
id?: string;
|
|
@@ -29161,6 +29272,10 @@ export type Database = {
|
|
|
29161
29272
|
Args: never;
|
|
29162
29273
|
Returns: Json;
|
|
29163
29274
|
};
|
|
29275
|
+
dashboard_alert_counts_v2: {
|
|
29276
|
+
Args: never;
|
|
29277
|
+
Returns: Json;
|
|
29278
|
+
};
|
|
29164
29279
|
dashboard_alert_rows: {
|
|
29165
29280
|
Args: {
|
|
29166
29281
|
check_id: string;
|
|
@@ -29168,6 +29283,17 @@ export type Database = {
|
|
|
29168
29283
|
};
|
|
29169
29284
|
Returns: Json;
|
|
29170
29285
|
};
|
|
29286
|
+
dashboard_alert_rows_v2: {
|
|
29287
|
+
Args: {
|
|
29288
|
+
check_id: string;
|
|
29289
|
+
row_limit?: number;
|
|
29290
|
+
};
|
|
29291
|
+
Returns: Json;
|
|
29292
|
+
};
|
|
29293
|
+
dashboard_ensure_start_page: {
|
|
29294
|
+
Args: never;
|
|
29295
|
+
Returns: string;
|
|
29296
|
+
};
|
|
29171
29297
|
dashboard_funnel_betaald: {
|
|
29172
29298
|
Args: {
|
|
29173
29299
|
_bedragen: number[];
|
|
@@ -29189,6 +29315,12 @@ export type Database = {
|
|
|
29189
29315
|
table_name: string;
|
|
29190
29316
|
}[];
|
|
29191
29317
|
};
|
|
29318
|
+
dashboard_order_state: {
|
|
29319
|
+
Args: {
|
|
29320
|
+
_order_id: string;
|
|
29321
|
+
};
|
|
29322
|
+
Returns: string;
|
|
29323
|
+
};
|
|
29192
29324
|
dashboard_pit_tellingen: {
|
|
29193
29325
|
Args: {
|
|
29194
29326
|
_mail_connecties?: string[];
|
|
@@ -30268,6 +30400,13 @@ export type Database = {
|
|
|
30268
30400
|
};
|
|
30269
30401
|
Returns: Json;
|
|
30270
30402
|
};
|
|
30403
|
+
invoice_status_transition_ok: {
|
|
30404
|
+
Args: {
|
|
30405
|
+
_from: string;
|
|
30406
|
+
_to: string;
|
|
30407
|
+
};
|
|
30408
|
+
Returns: boolean;
|
|
30409
|
+
};
|
|
30271
30410
|
invoice_update_full: {
|
|
30272
30411
|
Args: {
|
|
30273
30412
|
_invoice_id: string;
|
|
@@ -30570,6 +30709,56 @@ export type Database = {
|
|
|
30570
30709
|
reason_code: string;
|
|
30571
30710
|
}[];
|
|
30572
30711
|
};
|
|
30712
|
+
logistics_auto_send_claim: {
|
|
30713
|
+
Args: {
|
|
30714
|
+
p_limit?: number;
|
|
30715
|
+
};
|
|
30716
|
+
Returns: {
|
|
30717
|
+
attempts: number;
|
|
30718
|
+
cart_ids: string[];
|
|
30719
|
+
created_at: string;
|
|
30720
|
+
id: string;
|
|
30721
|
+
idempotency_key: string;
|
|
30722
|
+
last_http_status: number | null;
|
|
30723
|
+
locked_until: string | null;
|
|
30724
|
+
max_attempts: number;
|
|
30725
|
+
next_attempt_at: string;
|
|
30726
|
+
order_id: string;
|
|
30727
|
+
reason: string | null;
|
|
30728
|
+
sent_at: string | null;
|
|
30729
|
+
status: string;
|
|
30730
|
+
updated_at: string;
|
|
30731
|
+
}[];
|
|
30732
|
+
SetofOptions: {
|
|
30733
|
+
from: "*";
|
|
30734
|
+
to: "logistics_auto_send";
|
|
30735
|
+
isOneToOne: false;
|
|
30736
|
+
isSetofReturn: true;
|
|
30737
|
+
};
|
|
30738
|
+
};
|
|
30739
|
+
logistics_auto_send_enqueue_for_order: {
|
|
30740
|
+
Args: {
|
|
30741
|
+
p_order_id: string;
|
|
30742
|
+
};
|
|
30743
|
+
Returns: boolean;
|
|
30744
|
+
};
|
|
30745
|
+
logistics_auto_send_finish: {
|
|
30746
|
+
Args: {
|
|
30747
|
+
p_config_missing?: boolean;
|
|
30748
|
+
p_definitief?: boolean;
|
|
30749
|
+
p_http?: number;
|
|
30750
|
+
p_id: string;
|
|
30751
|
+
p_ok: boolean;
|
|
30752
|
+
p_reason: string;
|
|
30753
|
+
};
|
|
30754
|
+
Returns: Json;
|
|
30755
|
+
};
|
|
30756
|
+
logistics_auto_send_status: {
|
|
30757
|
+
Args: {
|
|
30758
|
+
p_order_id: string;
|
|
30759
|
+
};
|
|
30760
|
+
Returns: Json;
|
|
30761
|
+
};
|
|
30573
30762
|
logistics_backorder_allowed: {
|
|
30574
30763
|
Args: {
|
|
30575
30764
|
p_strategy_id?: string;
|
|
@@ -31911,6 +32100,10 @@ export type Database = {
|
|
|
31911
32100
|
};
|
|
31912
32101
|
Returns: Json;
|
|
31913
32102
|
};
|
|
32103
|
+
logistics_orphan_carts_summary: {
|
|
32104
|
+
Args: never;
|
|
32105
|
+
Returns: Json;
|
|
32106
|
+
};
|
|
31914
32107
|
logistics_packing_autofix: {
|
|
31915
32108
|
Args: {
|
|
31916
32109
|
p_limit?: number;
|
|
@@ -31968,6 +32161,16 @@ export type Database = {
|
|
|
31968
32161
|
};
|
|
31969
32162
|
Returns: boolean;
|
|
31970
32163
|
};
|
|
32164
|
+
logistics_pakbon_old_order_row: {
|
|
32165
|
+
Args: {
|
|
32166
|
+
p_ids: string[];
|
|
32167
|
+
};
|
|
32168
|
+
Returns: boolean;
|
|
32169
|
+
};
|
|
32170
|
+
logistics_pakbon_oude_orderregels: {
|
|
32171
|
+
Args: never;
|
|
32172
|
+
Returns: Json;
|
|
32173
|
+
};
|
|
31971
32174
|
logistics_parse_pickup: {
|
|
31972
32175
|
Args: {
|
|
31973
32176
|
p_value: string;
|
|
@@ -32533,6 +32736,12 @@ export type Database = {
|
|
|
32533
32736
|
};
|
|
32534
32737
|
Returns: string;
|
|
32535
32738
|
};
|
|
32739
|
+
logistics_reserved_order_excluded: {
|
|
32740
|
+
Args: {
|
|
32741
|
+
p_order_id: string;
|
|
32742
|
+
};
|
|
32743
|
+
Returns: boolean;
|
|
32744
|
+
};
|
|
32536
32745
|
logistics_reserved_stock_nightly: {
|
|
32537
32746
|
Args: never;
|
|
32538
32747
|
Returns: undefined;
|
|
@@ -34215,6 +34424,10 @@ export type Database = {
|
|
|
34215
34424
|
isSetofReturn: true;
|
|
34216
34425
|
};
|
|
34217
34426
|
};
|
|
34427
|
+
planning_mijn_eigen_vervoer: {
|
|
34428
|
+
Args: never;
|
|
34429
|
+
Returns: boolean;
|
|
34430
|
+
};
|
|
34218
34431
|
planning_set_assistants: {
|
|
34219
34432
|
Args: {
|
|
34220
34433
|
_monteur_ids: string[];
|
|
@@ -34247,6 +34460,18 @@ export type Database = {
|
|
|
34247
34460
|
};
|
|
34248
34461
|
Returns: string;
|
|
34249
34462
|
};
|
|
34463
|
+
print_is_etiketsoort: {
|
|
34464
|
+
Args: {
|
|
34465
|
+
_t: string;
|
|
34466
|
+
};
|
|
34467
|
+
Returns: boolean;
|
|
34468
|
+
};
|
|
34469
|
+
print_is_labelprinter: {
|
|
34470
|
+
Args: {
|
|
34471
|
+
_printer_id: string;
|
|
34472
|
+
};
|
|
34473
|
+
Returns: boolean;
|
|
34474
|
+
};
|
|
34250
34475
|
print_job_status_uitgebreid: {
|
|
34251
34476
|
Args: {
|
|
34252
34477
|
_job_id: string;
|
|
@@ -35799,6 +36024,12 @@ export type Database = {
|
|
|
35799
36024
|
};
|
|
35800
36025
|
Returns: undefined;
|
|
35801
36026
|
};
|
|
36027
|
+
uren_overuren_intrekken: {
|
|
36028
|
+
Args: {
|
|
36029
|
+
_datum: string;
|
|
36030
|
+
};
|
|
36031
|
+
Returns: undefined;
|
|
36032
|
+
};
|
|
35802
36033
|
uren_pagina_toegang_instellen: {
|
|
35803
36034
|
Args: {
|
|
35804
36035
|
_toegang: boolean;
|
|
@@ -36202,6 +36433,13 @@ export type Database = {
|
|
|
36202
36433
|
Args: never;
|
|
36203
36434
|
Returns: Json;
|
|
36204
36435
|
};
|
|
36436
|
+
wo_boek_standby_tijdvakken: {
|
|
36437
|
+
Args: {
|
|
36438
|
+
_tijdvakken: Json;
|
|
36439
|
+
_werkbon_id: string;
|
|
36440
|
+
};
|
|
36441
|
+
Returns: Json;
|
|
36442
|
+
};
|
|
36205
36443
|
wo_boek_standby_uren: {
|
|
36206
36444
|
Args: {
|
|
36207
36445
|
_datum: string;
|
|
@@ -36317,11 +36555,35 @@ export type Database = {
|
|
|
36317
36555
|
};
|
|
36318
36556
|
Returns: Json;
|
|
36319
36557
|
};
|
|
36558
|
+
wo_standby_dag_herberekenen: {
|
|
36559
|
+
Args: {
|
|
36560
|
+
_datum: string;
|
|
36561
|
+
_monteur: string;
|
|
36562
|
+
};
|
|
36563
|
+
Returns: Json;
|
|
36564
|
+
};
|
|
36565
|
+
wo_standby_ov_dag: {
|
|
36566
|
+
Args: {
|
|
36567
|
+
_dienst: Json;
|
|
36568
|
+
_dow: number;
|
|
36569
|
+
_feest: boolean;
|
|
36570
|
+
_vakken: Json;
|
|
36571
|
+
};
|
|
36572
|
+
Returns: Json;
|
|
36573
|
+
};
|
|
36574
|
+
wo_standby_tijdzone: {
|
|
36575
|
+
Args: never;
|
|
36576
|
+
Returns: string;
|
|
36577
|
+
};
|
|
36578
|
+
wo_timer_stop_0400: {
|
|
36579
|
+
Args: never;
|
|
36580
|
+
Returns: number;
|
|
36581
|
+
};
|
|
36320
36582
|
};
|
|
36321
36583
|
Enums: {
|
|
36322
36584
|
ai_import_status: "nieuw" | "verwerken" | "bevestigen" | "klaar" | "mislukt";
|
|
36323
36585
|
app_role: "admin" | "planner" | "monteur" | "administratie" | "ai_admin" | "manager" | "warehouse" | "sales" | "developer" | "receptie" | "superadmin";
|
|
36324
|
-
doc_layout_type: "pakbon" | "factuur" | "offerte" | "orderbevestiging" | "etiket" | "verzendlabel" | "productlabel" | "barcode_label" | "magazijnlijst" | "controlelijst" | "transportdocument" | "vrij" | "sticker" | "productiebon" | "veilingbon" | "afleverbrief" | "veilingbrief";
|
|
36586
|
+
doc_layout_type: "pakbon" | "factuur" | "offerte" | "orderbevestiging" | "etiket" | "verzendlabel" | "productlabel" | "barcode_label" | "magazijnlijst" | "controlelijst" | "transportdocument" | "vrij" | "sticker" | "productiebon" | "veilingbon" | "afleverbrief" | "veilingbrief" | "traysticker";
|
|
36325
36587
|
doc_orientation: "portrait" | "landscape";
|
|
36326
36588
|
exact_env: "staging" | "live";
|
|
36327
36589
|
exact_push_status: "pending" | "sent" | "error";
|
|
@@ -36392,7 +36654,7 @@ export declare const Constants: {
|
|
|
36392
36654
|
readonly Enums: {
|
|
36393
36655
|
readonly ai_import_status: readonly ["nieuw", "verwerken", "bevestigen", "klaar", "mislukt"];
|
|
36394
36656
|
readonly app_role: readonly ["admin", "planner", "monteur", "administratie", "ai_admin", "manager", "warehouse", "sales", "developer", "receptie", "superadmin"];
|
|
36395
|
-
readonly doc_layout_type: readonly ["pakbon", "factuur", "offerte", "orderbevestiging", "etiket", "verzendlabel", "productlabel", "barcode_label", "magazijnlijst", "controlelijst", "transportdocument", "vrij", "sticker", "productiebon", "veilingbon", "afleverbrief", "veilingbrief"];
|
|
36657
|
+
readonly doc_layout_type: readonly ["pakbon", "factuur", "offerte", "orderbevestiging", "etiket", "verzendlabel", "productlabel", "barcode_label", "magazijnlijst", "controlelijst", "transportdocument", "vrij", "sticker", "productiebon", "veilingbon", "afleverbrief", "veilingbrief", "traysticker"];
|
|
36396
36658
|
readonly doc_orientation: readonly ["portrait", "landscape"];
|
|
36397
36659
|
readonly exact_env: readonly ["staging", "live"];
|
|
36398
36660
|
readonly exact_push_status: readonly ["pending", "sent", "error"];
|