@flowselections/floriday-voorraad 1.0.131 → 1.0.135

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 (36) hide show
  1. package/dist-lib/components/voorraad/ArtikelWizard.d.ts.map +1 -1
  2. package/dist-lib/components/voorraad/ArtikelWizard.js +36 -6
  3. package/dist-lib/hooks/useLocalTradeItems.d.ts.map +1 -1
  4. package/dist-lib/hooks/useLocalTradeItems.js +4 -0
  5. package/dist-lib/hooks/useVoorraadData.d.ts.map +1 -1
  6. package/dist-lib/hooks/useVoorraadData.js +2 -1
  7. package/dist-lib/integrations/supabase/types.d.ts +72 -0
  8. package/dist-lib/integrations/supabase/types.d.ts.map +1 -1
  9. package/dist-lib/lib/__tests__/mirror-products.test.d.ts +2 -0
  10. package/dist-lib/lib/__tests__/mirror-products.test.d.ts.map +1 -0
  11. package/dist-lib/lib/__tests__/mirror-products.test.js +13 -0
  12. package/dist-lib/lib/__tests__/release-134.test.d.ts +2 -0
  13. package/dist-lib/lib/__tests__/release-134.test.d.ts.map +1 -0
  14. package/dist-lib/lib/__tests__/release-134.test.js +50 -0
  15. package/dist-lib/lib/floriday-warehouse.functions.d.ts.map +1 -1
  16. package/dist-lib/lib/floriday-warehouse.functions.js +4 -2
  17. package/dist-lib/lib/floriday-writes.functions.d.ts.map +1 -1
  18. package/dist-lib/lib/floriday-writes.functions.js +11 -10
  19. package/dist-lib/lib/idempotency-key.d.ts +11 -0
  20. package/dist-lib/lib/idempotency-key.d.ts.map +1 -0
  21. package/dist-lib/lib/idempotency-key.js +41 -0
  22. package/dist-lib/lib/mirror-products.d.ts +12 -0
  23. package/dist-lib/lib/mirror-products.d.ts.map +1 -0
  24. package/dist-lib/lib/mirror-products.js +10 -0
  25. package/dist-lib/lib/publish-errors.d.ts +1 -1
  26. package/dist-lib/lib/publish-errors.d.ts.map +1 -1
  27. package/dist-lib/lib/publish-errors.js +10 -0
  28. package/dist-lib/lib/publish-pipeline.js +1 -1
  29. package/dist-lib/lib/publish-status.d.ts +3 -1
  30. package/dist-lib/lib/publish-status.d.ts.map +1 -1
  31. package/dist-lib/lib/publish-status.js +4 -1
  32. package/dist-lib/lib/publish-verify.d.ts +25 -0
  33. package/dist-lib/lib/publish-verify.d.ts.map +1 -0
  34. package/dist-lib/lib/publish-verify.js +44 -0
  35. package/package.json +1 -1
  36. package/sql/floriday-voorraad-schema.sql +249 -70
@@ -1 +1 @@
1
- {"version":3,"file":"ArtikelWizard.d.ts","sourceRoot":"","sources":["../../../src/components/voorraad/ArtikelWizard.tsx"],"names":[],"mappings":"AA2DA,OAAO,EAUL,KAAK,UAAU,EAMhB,MAAM,4BAA4B,CAAC;AA2DpC,OAAO,EAAwB,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAMpF,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,aAAa,CAAC;CACzB;AAED,4EAA4E;AAC5E,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,aAAa,GAAG,UAAU,CA0BrF;AAiED,wBAAgB,aAAa,CAAC,EAC5B,OAAO,EAAE,cAAc,EACvB,WAAW,EACX,SAAS,EACT,WAAW,EACX,OAAO,GACR,GAAE;IACD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+DAA+D;IAC/D,OAAO,CAAC,EAAE,aAAa,CAAC;CACpB,+BAo2EL"}
1
+ {"version":3,"file":"ArtikelWizard.d.ts","sourceRoot":"","sources":["../../../src/components/voorraad/ArtikelWizard.tsx"],"names":[],"mappings":"AA2DA,OAAO,EAUL,KAAK,UAAU,EAMhB,MAAM,4BAA4B,CAAC;AA4DpC,OAAO,EAAwB,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAMpF,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,aAAa,CAAC;CACzB;AAED,4EAA4E;AAC5E,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,aAAa,GAAG,UAAU,CA0BrF;AAiED,wBAAgB,aAAa,CAAC,EAC5B,OAAO,EAAE,cAAc,EACvB,WAAW,EACX,SAAS,EACT,WAAW,EACX,OAAO,GACR,GAAE;IACD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+DAA+D;IAC/D,OAAO,CAAC,EAAE,aAAa,CAAC;CACpB,+BAi4EL"}
@@ -22,6 +22,7 @@ import { saveFloridayVbnRequired } from "../../lib/floriday-vbn-required.functio
22
22
  import { useQuery, useQueryClient } from "@tanstack/react-query";
23
23
  import { fetchFloridayWriteMode } from "../../lib/floriday-write-mode.js";
24
24
  import { editTargetText } from "../../lib/publish-status.js";
25
+ import { compareAfterUpdate, verifyDifferenceMessage } from "../../lib/publish-verify.js";
25
26
  import { articleCodeProblem } from "../../lib/article-code.js";
26
27
  import { useCodeList, useTradeItemFormSchema } from "../../hooks/useFloriday.js";
27
28
  import { useFloridayPriceGroups } from "../../hooks/useFloridayPriceGroups.js";
@@ -1584,6 +1585,7 @@ export function ArtikelWizard({ draftId: initialDraftId, tradeItemId, productId,
1584
1585
  }, stepOpts);
1585
1586
  }
1586
1587
  // 6) Controle achteraf --------------------------------------------------
1588
+ let verifyMismatch = null;
1587
1589
  if (resolvedTradeItemId) {
1588
1590
  const verify = await runPublishStep(jobId, "verify", async () => {
1589
1591
  const res = (await gatewayReadFn({
@@ -1628,13 +1630,32 @@ export function ArtikelWizard({ draftId: initialDraftId, tradeItemId, productId,
1628
1630
  if (!confirmedPacking) {
1629
1631
  warnings.push("Floriday heeft nog geen belading voor dit artikel");
1630
1632
  }
1631
- const remoteName = item?.tradeItemName ?? item?.name;
1632
- if (remoteName && data.name && remoteName !== data.name) {
1633
- warnings.push("De artikelnaam wijkt af");
1633
+ // Naam, VBN of hoofdverpakking die afwijkt van wat het ERP stuurde
1634
+ // = de wijziging is niet aangekomen: stap (en job) mislukt.
1635
+ let expectedPacking = null;
1636
+ try {
1637
+ const pb = buildPrimaryPackingBase(data);
1638
+ expectedPacking = {
1639
+ piecesPerPackage: pb.piecesPerPackage,
1640
+ packagesPerLayer: pb.packagesPerLayer,
1641
+ layersPerLoadCarrier: pb.layersPerLoadCarrier,
1642
+ vbnPackageCode: pb.customPackageId ? null : pb.vbnPackageCode,
1643
+ loadCarrier: pb.loadCarrier,
1644
+ };
1645
+ }
1646
+ catch {
1647
+ expectedPacking = null;
1648
+ }
1649
+ const diffs = compareAfterUpdate({ name: data.name, vbnCode: data.vbnCode, packing: confirmedPacking ? expectedPacking : null }, item);
1650
+ if (diffs.length > 0) {
1651
+ throw new Error(`VERIFY_MISMATCH:${verifyDifferenceMessage(diffs)}`);
1634
1652
  }
1635
1653
  return { warnings };
1636
1654
  }, stepOpts);
1637
- if (!verify.ok) {
1655
+ if (!verify.ok && verify.error?.code === "VERIFY_MISMATCH") {
1656
+ verifyMismatch = verify.error.message;
1657
+ }
1658
+ else if (!verify.ok) {
1638
1659
  toast.warning("Gepubliceerd; de controle achteraf lukte niet", {
1639
1660
  description: `${verify.error?.message ?? "Onbekende reden"} — het artikel staat wel in Floriday.`,
1640
1661
  });
@@ -1642,10 +1663,19 @@ export function ArtikelWizard({ draftId: initialDraftId, tradeItemId, productId,
1642
1663
  }
1643
1664
  const status = jobId ? await finishPublishJob(jobId, {
1644
1665
  tradeItemId: resolvedTradeItemId,
1645
- }) : "succeeded";
1666
+ }) : verifyMismatch ? "failed" : "succeeded";
1646
1667
  if (jobId)
1647
1668
  await reloadPublishJob(jobId);
1648
- if (status === "succeeded") {
1669
+ if (status === "failed" && verifyMismatch) {
1670
+ if (draftId) {
1671
+ await markLocalSyncStatus(draftId, {
1672
+ dirty: true,
1673
+ last_error: verifyMismatch,
1674
+ }).catch(() => { });
1675
+ }
1676
+ toast.error("Wijziging niet aangekomen in Floriday", { description: verifyMismatch });
1677
+ }
1678
+ else if (status === "succeeded") {
1649
1679
  if (draftId) {
1650
1680
  await markLocalSyncStatus(draftId, {
1651
1681
  dirty: false,
@@ -1 +1 @@
1
- {"version":3,"file":"useLocalTradeItems.d.ts","sourceRoot":"","sources":["../../src/hooks/useLocalTradeItems.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAwB,KAAK,kBAAkB,EAAE,KAAK,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAIvG;;;;;GAKG;AAEH,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,IAAI,EAAE,UAAU,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,oBAAoB,CAAC,EAAE,kBAAkB,CAAC;IAC1C,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,uBAAuB,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC1C,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AA0ED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI;;;;EA0B9D;AAED,wBAAsB,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CA4BrF;AAED,MAAM,WAAW,SAAS;IACxB,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;IACjC,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,MAAM,CAAC,EAAE,QAAQ,GAAG,cAAc,CAAC;CACpC;AAED,0FAA0F;AAC1F,MAAM,WAAW,eAAe;IAC9B,wEAAwE;IACxE,KAAK,EAAE,OAAO,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,OAAO,GAAG,eAAe,GAAG,IAAI,CAWjF;AAqBD,wBAAsB,oBAAoB,CAAC,MAAM,EAAE;IACjD,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,iFAAiF;IACjF,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,IAAI,CAAC,EAAE,eAAe,CAAC;CACxB,GAAG,OAAO,CAAC,MAAM,CAAC,CAuGlB;AAED,wEAAwE;AACxE,wBAAsB,mBAAmB,CACvC,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,eAAe,GACtB,OAAO,CAAC,IAAI,CAAC,CAqBf;AAGD;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBhF;AAED;;;;GAIG;AACH,wBAAsB,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGpE"}
1
+ {"version":3,"file":"useLocalTradeItems.d.ts","sourceRoot":"","sources":["../../src/hooks/useLocalTradeItems.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAwB,KAAK,kBAAkB,EAAE,KAAK,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAIvG;;;;;GAKG;AAEH,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,IAAI,EAAE,UAAU,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,oBAAoB,CAAC,EAAE,kBAAkB,CAAC;IAC1C,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,uBAAuB,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC1C,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AA0ED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI;;;;EA0B9D;AAED,wBAAsB,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CA4BrF;AAED,MAAM,WAAW,SAAS;IACxB,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;IACjC,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,MAAM,CAAC,EAAE,QAAQ,GAAG,cAAc,CAAC;CACpC;AAED,0FAA0F;AAC1F,MAAM,WAAW,eAAe;IAC9B,wEAAwE;IACxE,KAAK,EAAE,OAAO,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,OAAO,GAAG,eAAe,GAAG,IAAI,CAWjF;AAqBD,wBAAsB,oBAAoB,CAAC,MAAM,EAAE;IACjD,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,iFAAiF;IACjF,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,IAAI,CAAC,EAAE,eAAe,CAAC;CACxB,GAAG,OAAO,CAAC,MAAM,CAAC,CA0GlB;AAED,wEAAwE;AACxE,wBAAsB,mBAAmB,CACvC,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,eAAe,GACtB,OAAO,CAAC,IAAI,CAAC,CAqBf;AAGD;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBhF;AAED;;;;GAIG;AACH,wBAAsB,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGpE"}
@@ -188,6 +188,9 @@ export async function upsertLocalTradeItem(params) {
188
188
  }
189
189
  if (payload.name)
190
190
  productPatch.product = payload.name;
191
+ // Eén prijsbron: de basisprijs uit het artikelscherm is products.sale_price.
192
+ if (Number(payload.salePricePerPiece) > 0)
193
+ productPatch.sale_price = Number(payload.salePricePerPiece);
191
194
  if (payload.articleCode)
192
195
  productPatch.article_number = payload.articleCode;
193
196
  if (payload.gtin)
@@ -228,6 +231,7 @@ export async function upsertLocalTradeItem(params) {
228
231
  batch: "-",
229
232
  location: "onbekend",
230
233
  quantity: 0,
234
+ ...(Number(payload.salePricePerPiece) > 0 ? { sale_price: Number(payload.salePricePerPiece) } : {}),
231
235
  unit: "stuks",
232
236
  article_number: payload.articleCode || null,
233
237
  barcode: payload.gtin || null,
@@ -1 +1 @@
1
- {"version":3,"file":"useVoorraadData.d.ts","sourceRoot":"","sources":["../../src/hooks/useVoorraadData.ts"],"names":[],"mappings":"AAGA,OAAO,EAAsB,KAAK,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAsB5E;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;;;;;EA2U1D"}
1
+ {"version":3,"file":"useVoorraadData.d.ts","sourceRoot":"","sources":["../../src/hooks/useVoorraadData.ts"],"names":[],"mappings":"AAIA,OAAO,EAAsB,KAAK,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAsB5E;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;;;;;EA2U1D"}
@@ -1,4 +1,5 @@
1
1
  import { useCallback, useEffect, useMemo, useRef, useState } from "react";
2
+ import { hideMirrorItems } from "../lib/mirror-products.js";
2
3
  import { createBundler, pageRequestGuard } from "../lib/request-guard.js";
3
4
  import { supabase } from "../integrations/supabase/client.js";
4
5
  import { normaliseTradeItem } from "../lib/floriday-client.js";
@@ -295,7 +296,7 @@ export function useVoorraadData(connectionId) {
295
296
  };
296
297
  // Stabiele identiteit: alleen een nieuwe lijst als de onderliggende data verandert.
297
298
  const merged = useMemo(() => [
298
- ...localItems.map((i) => applyProductGroupReservation(classify(attachFloriday(applyStock(i, lookupStock(stockMap, {
299
+ ...hideMirrorItems(localItems).map((i) => applyProductGroupReservation(classify(attachFloriday(applyStock(i, lookupStock(stockMap, {
299
300
  tradeItemKey: i.tradeItemKey ?? null,
300
301
  floridayId: i.floridayId ?? null,
301
302
  productId: i.productId ?? null,
@@ -26195,6 +26195,9 @@ export type Database = {
26195
26195
  };
26196
26196
  trade_item_stock: {
26197
26197
  Row: {
26198
+ archived_at: string | null;
26199
+ archived_into: string | null;
26200
+ archived_reason: string | null;
26198
26201
  change_source: string;
26199
26202
  connection_id: string;
26200
26203
  created_at: string;
@@ -26209,6 +26212,9 @@ export type Database = {
26209
26212
  user_id: string;
26210
26213
  };
26211
26214
  Insert: {
26215
+ archived_at?: string | null;
26216
+ archived_into?: string | null;
26217
+ archived_reason?: string | null;
26212
26218
  change_source?: string;
26213
26219
  connection_id: string;
26214
26220
  created_at?: string;
@@ -26223,6 +26229,9 @@ export type Database = {
26223
26229
  user_id?: string;
26224
26230
  };
26225
26231
  Update: {
26232
+ archived_at?: string | null;
26233
+ archived_into?: string | null;
26234
+ archived_reason?: string | null;
26226
26235
  change_source?: string;
26227
26236
  connection_id?: string;
26228
26237
  created_at?: string;
@@ -31855,6 +31864,14 @@ export type Database = {
31855
31864
  };
31856
31865
  Returns: string[];
31857
31866
  };
31867
+ _print_label_maat_uit_code: {
31868
+ Args: {
31869
+ _formaten: Json;
31870
+ _invoer: string;
31871
+ _papierformaat: string;
31872
+ };
31873
+ Returns: Json;
31874
+ };
31858
31875
  _print_meld_stilstand: {
31859
31876
  Args: {
31860
31877
  _reden: string;
@@ -37069,6 +37086,14 @@ export type Database = {
37069
37086
  uitleg: string;
37070
37087
  }[];
37071
37088
  };
37089
+ logistics_install_check_215: {
37090
+ Args: never;
37091
+ Returns: {
37092
+ ok: boolean;
37093
+ punt: string;
37094
+ uitleg: string;
37095
+ }[];
37096
+ };
37072
37097
  logistics_is_beheer: {
37073
37098
  Args: never;
37074
37099
  Returns: boolean;
@@ -44712,10 +44737,35 @@ export type Database = {
44712
44737
  };
44713
44738
  Returns: Json;
44714
44739
  };
44740
+ voorraad_artikel_prijs: {
44741
+ Args: {
44742
+ p_id: string;
44743
+ };
44744
+ Returns: {
44745
+ product_id: string;
44746
+ sale_price: number;
44747
+ unit: string;
44748
+ }[];
44749
+ };
44715
44750
  voorraad_can_write: {
44716
44751
  Args: never;
44717
44752
  Returns: boolean;
44718
44753
  };
44754
+ voorraad_canoniek_artikel: {
44755
+ Args: {
44756
+ p_id: string;
44757
+ };
44758
+ Returns: {
44759
+ product_id: string;
44760
+ trade_item_key: string;
44761
+ }[];
44762
+ };
44763
+ voorraad_canoniek_sleutel: {
44764
+ Args: {
44765
+ p_product_id: string;
44766
+ };
44767
+ Returns: string;
44768
+ };
44719
44769
  voorraad_cleanup_old_rows: {
44720
44770
  Args: never;
44721
44771
  Returns: Json;
@@ -44803,12 +44853,28 @@ export type Database = {
44803
44853
  };
44804
44854
  Returns: Json;
44805
44855
  };
44856
+ voorraad_correctie_1131: {
44857
+ Args: {
44858
+ p_uitvoeren?: boolean;
44859
+ };
44860
+ Returns: Json;
44861
+ };
44862
+ voorraad_correctie_1132: {
44863
+ Args: {
44864
+ p_uitvoeren?: boolean;
44865
+ };
44866
+ Returns: Json;
44867
+ };
44806
44868
  voorraad_correctie_status: {
44807
44869
  Args: {
44808
44870
  p_correctie?: string;
44809
44871
  };
44810
44872
  Returns: Json;
44811
44873
  };
44874
+ voorraad_dubbele_voorraadregels: {
44875
+ Args: never;
44876
+ Returns: Json;
44877
+ };
44812
44878
  voorraad_external_fulfilled_ids: {
44813
44879
  Args: {
44814
44880
  p_cf: Json;
@@ -44897,6 +44963,12 @@ export type Database = {
44897
44963
  };
44898
44964
  Returns: boolean;
44899
44965
  };
44966
+ voorraad_orderregel_sleutel: {
44967
+ Args: {
44968
+ p_ref: string;
44969
+ };
44970
+ Returns: string;
44971
+ };
44900
44972
  voorraad_packing_from_floriday: {
44901
44973
  Args: {
44902
44974
  p_product_id: string;