@flowselections/floriday-verkoop-module 1.0.41 → 1.0.42

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.
Files changed (57) hide show
  1. package/dist-lib/components/verkoop/VerkoopOrdersPage.d.ts.map +1 -1
  2. package/dist-lib/components/verkoop/VerkoopOrdersPage.js +50 -15
  3. package/dist-lib/integrations/supabase/auth-middleware.d.ts +847 -150
  4. package/dist-lib/integrations/supabase/auth-middleware.d.ts.map +1 -1
  5. package/dist-lib/integrations/supabase/client.d.ts +847 -150
  6. package/dist-lib/integrations/supabase/client.d.ts.map +1 -1
  7. package/dist-lib/integrations/supabase/client.server.d.ts +847 -150
  8. package/dist-lib/integrations/supabase/client.server.d.ts.map +1 -1
  9. package/dist-lib/integrations/supabase/types.d.ts +855 -153
  10. package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
  11. package/dist-lib/lib/cart-lock.functions.d.ts +847 -150
  12. package/dist-lib/lib/cart-lock.functions.d.ts.map +1 -1
  13. package/dist-lib/lib/cart-planning-settings.functions.d.ts +8943 -1276
  14. package/dist-lib/lib/cart-planning-settings.functions.d.ts.map +1 -1
  15. package/dist-lib/lib/cart-replan.functions.d.ts +2439 -348
  16. package/dist-lib/lib/cart-replan.functions.d.ts.map +1 -1
  17. package/dist-lib/lib/create-order.functions.d.ts +33856 -1741
  18. package/dist-lib/lib/create-order.functions.d.ts.map +1 -1
  19. package/dist-lib/lib/create-order.functions.js +30 -0
  20. package/dist-lib/lib/floriday-auto-fulfillment.functions.d.ts +2439 -348
  21. package/dist-lib/lib/floriday-auto-fulfillment.functions.d.ts.map +1 -1
  22. package/dist-lib/lib/floriday-logistic-labels.functions.d.ts +847 -150
  23. package/dist-lib/lib/floriday-logistic-labels.functions.d.ts.map +1 -1
  24. package/dist-lib/lib/floriday-mirror.functions.d.ts +847 -150
  25. package/dist-lib/lib/floriday-mirror.functions.d.ts.map +1 -1
  26. package/dist-lib/lib/floriday-public.functions.d.ts +5691 -812
  27. package/dist-lib/lib/floriday-public.functions.d.ts.map +1 -1
  28. package/dist-lib/lib/floriday-writes.functions.d.ts +4065 -580
  29. package/dist-lib/lib/floriday-writes.functions.d.ts.map +1 -1
  30. package/dist-lib/lib/invoice-timing.functions.d.ts +3252 -464
  31. package/dist-lib/lib/invoice-timing.functions.d.ts.map +1 -1
  32. package/dist-lib/lib/load-carriers.functions.d.ts +847 -150
  33. package/dist-lib/lib/load-carriers.functions.d.ts.map +1 -1
  34. package/dist-lib/lib/logistics-engine.functions.d.ts +4065 -580
  35. package/dist-lib/lib/logistics-engine.functions.d.ts.map +1 -1
  36. package/dist-lib/lib/logistics-stock.functions.d.ts +1626 -232
  37. package/dist-lib/lib/logistics-stock.functions.d.ts.map +1 -1
  38. package/dist-lib/lib/order-addresses.functions.d.ts +847 -150
  39. package/dist-lib/lib/order-addresses.functions.d.ts.map +1 -1
  40. package/dist-lib/lib/order-buffers.functions.d.ts +2439 -348
  41. package/dist-lib/lib/order-buffers.functions.d.ts.map +1 -1
  42. package/dist-lib/lib/order-carrier.functions.d.ts +1626 -232
  43. package/dist-lib/lib/order-carrier.functions.d.ts.map +1 -1
  44. package/dist-lib/lib/order-pickup.functions.d.ts +1626 -232
  45. package/dist-lib/lib/order-pickup.functions.d.ts.map +1 -1
  46. package/dist-lib/lib/order-shipments.functions.d.ts +3252 -464
  47. package/dist-lib/lib/order-shipments.functions.d.ts.map +1 -1
  48. package/dist-lib/lib/salesorders-list.functions.d.ts +847 -150
  49. package/dist-lib/lib/salesorders-list.functions.d.ts.map +1 -1
  50. package/dist-lib/lib/salesorders-mapping.d.ts +6 -0
  51. package/dist-lib/lib/salesorders-mapping.d.ts.map +1 -1
  52. package/dist-lib/lib/salesorders-mapping.js +17 -0
  53. package/dist-lib/lib/salesorders.functions.d.ts +4065 -580
  54. package/dist-lib/lib/salesorders.functions.d.ts.map +1 -1
  55. package/dist-lib/lib/tradeitems.functions.d.ts +847 -150
  56. package/dist-lib/lib/tradeitems.functions.d.ts.map +1 -1
  57. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"VerkoopOrdersPage.d.ts","sourceRoot":"","sources":["../../../src/components/verkoop/VerkoopOrdersPage.tsx"],"names":[],"mappings":"AA4DA,wBAAgB,iBAAiB,gCAoahC"}
1
+ {"version":3,"file":"VerkoopOrdersPage.d.ts","sourceRoot":"","sources":["../../../src/components/verkoop/VerkoopOrdersPage.tsx"],"names":[],"mappings":"AA6DA,wBAAgB,iBAAiB,gCAychC"}
@@ -7,9 +7,9 @@ import { useNavigate } from "@tanstack/react-router";
7
7
  import { useQueryClient } from "@tanstack/react-query";
8
8
  import { supabase } from "../../integrations/supabase/client";
9
9
  import { runSalesOrdersSync } from "../../lib/salesorders.functions";
10
- import { deleteLocalOrder } from "../../lib/create-order.functions";
10
+ import { deleteLocalOrder, deleteMailboxProposal } from "../../lib/create-order.functions";
11
11
  import { runTradeItemsSync } from "../../lib/tradeitems.functions";
12
- import { ordersToCsv, } from "../../lib/salesorders-mapping";
12
+ import { ordersToCsv, parseOrderRowId, } from "../../lib/salesorders-mapping";
13
13
  import { listSalesOrders } from "../../lib/salesorders-list.functions";
14
14
  import { derivePeriodWindow, useSalesOrdersQuery } from "../../lib/useSalesOrdersQuery";
15
15
  import { AnalyticsCards } from "./AnalyticsCards";
@@ -50,28 +50,63 @@ export function VerkoopOrdersPage() {
50
50
  const triggerSync = useServerFn(runSalesOrdersSync);
51
51
  const triggerTradeItemsSync = useServerFn(runTradeItemsSync);
52
52
  const triggerDeleteOrder = useServerFn(deleteLocalOrder);
53
+ const triggerDeleteProposal = useServerFn(deleteMailboxProposal);
53
54
  const [orderPendingDelete, setOrderPendingDelete] = useState(null);
54
55
  const [deleting, setDeleting] = useState(false);
55
56
  const [editOrderId, setEditOrderId] = useState(null);
57
+ // Rijen die daadwerkelijk verwijderd worden: bij een samengevouwen buffer alle
58
+ // onderliggende orders, anders alleen de rij zelf.
59
+ const deleteTargets = (row) => {
60
+ const ids = (row.bufferSize ?? 1) > 1 && row.bufferOrderIds?.length
61
+ ? row.bufferOrderIds
62
+ : [row.id];
63
+ return Array.from(new Set(ids));
64
+ };
65
+ const readableError = (e) => {
66
+ const msg = typeof e?.message === "string" ? e.message.trim() : "";
67
+ if (!msg || msg.startsWith("[") || msg.startsWith("{"))
68
+ return "Verwijderen mislukt";
69
+ return msg;
70
+ };
56
71
  const handleDeleteOrder = async () => {
57
72
  if (!orderPendingDelete)
58
73
  return;
59
- const rawId = orderPendingDelete.id.startsWith("local:")
60
- ? orderPendingDelete.id.slice("local:".length)
61
- : orderPendingDelete.id;
62
- try {
63
- setDeleting(true);
64
- const res = await triggerDeleteOrder({ data: { orderId: rawId } });
65
- toast.success(`Bestelling verwijderd — ${res.reversalEntries} voorraadmutatie(s) teruggedraaid`);
66
- setOrderPendingDelete(null);
67
- await refetch();
74
+ const targets = deleteTargets(orderPendingDelete);
75
+ setDeleting(true);
76
+ let deleted = 0;
77
+ let reversals = 0;
78
+ const failed = [];
79
+ for (const target of targets) {
80
+ const parsed = parseOrderRowId(target);
81
+ try {
82
+ if (!parsed || parsed.kind === "floriday") {
83
+ throw new Error("Deze regel kan niet verwijderd worden.");
84
+ }
85
+ if (parsed.kind === "proposal") {
86
+ await triggerDeleteProposal({ data: { proposalId: parsed.uuid } });
87
+ }
88
+ else {
89
+ const res = await triggerDeleteOrder({ data: { orderId: parsed.uuid } });
90
+ reversals += res.reversalEntries;
91
+ }
92
+ deleted += 1;
93
+ }
94
+ catch (e) {
95
+ failed.push(readableError(e));
96
+ }
68
97
  }
69
- catch (e) {
70
- toast.error(e?.message ?? "Verwijderen mislukt");
98
+ setDeleting(false);
99
+ if (deleted > 0) {
100
+ toast.success(targets.length > 1
101
+ ? `${deleted} van ${targets.length} bestelling(en) verwijderd — ${reversals} voorraadmutatie(s) teruggedraaid`
102
+ : `Bestelling verwijderd — ${reversals} voorraadmutatie(s) teruggedraaid`);
71
103
  }
72
- finally {
73
- setDeleting(false);
104
+ if (failed.length > 0) {
105
+ toast.error(Array.from(new Set(failed)).join(" · "));
74
106
  }
107
+ if (deleted > 0)
108
+ setOrderPendingDelete(null);
109
+ await refetch();
75
110
  };
76
111
  // Serverside gefilterd, gesorteerd en gepagineerd: de browser krijgt alleen
77
112
  // de zichtbare pagina plus totalen/tellingen.