medusa-pos-plugin 0.0.18 → 0.0.23

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.
@@ -11,7 +11,8 @@ const PosCancelOrderSchema = zod_1.z.object({
11
11
  /**
12
12
  * POST /admin/pos/orders/:id/cancel
13
13
  *
14
- * Void a completed POS sale: full return of all returnable lines with cash refund.
14
+ * Void a completed POS sale: full return of all returnable lines for stock,
15
+ * then zero/cancel the original payment (no refund row).
15
16
  * Sets metadata.pos_voided (does not use Medusa order.cancel).
16
17
  */
17
18
  async function POST(req, res) {
@@ -72,7 +73,7 @@ async function POST(req, res) {
72
73
  items,
73
74
  refund_method: "cash",
74
75
  location_id: body.location_id,
75
- note: body.note ?? "POS cancel / void sale (cash refund)",
76
+ note: body.note ?? "POS cancel / void sale",
76
77
  mark_voided: true,
77
78
  mark_returned: false,
78
79
  });
@@ -86,4 +87,4 @@ async function POST(req, res) {
86
87
  }
87
88
  res.status(result.status).json(result.body);
88
89
  }
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3Bvcy9vcmRlcnMvW2lkXS9jYW5jZWwvcm91dGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFzQkEsb0JBdUZDO0FBNUdELHFEQUFxRTtBQUNyRSw2QkFBdUI7QUFDdkIscUVBS21DO0FBR25DLE1BQU0sb0JBQW9CLEdBQUcsT0FBQyxDQUFDLE1BQU0sQ0FBQztJQUNwQyxXQUFXLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDOUIsSUFBSSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7Q0FDNUIsQ0FBQyxDQUFBO0FBRUY7Ozs7O0dBS0c7QUFDSSxLQUFLLFVBQVUsSUFBSSxDQUFDLEdBQWtCLEVBQUUsR0FBbUI7SUFDaEUsTUFBTSxPQUFPLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFZLENBQUE7SUFDdkMsTUFBTSxXQUFXLEdBQUcsb0JBQW9CLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUE7SUFDbEUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN6QixHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQztZQUNuQixPQUFPLEVBQUUsc0JBQXNCO1lBQy9CLE1BQU0sRUFBRSxXQUFXLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRTtZQUNuQyxJQUFJLEVBQUUsY0FBYztTQUNyQixDQUFDLENBQUE7UUFDRixPQUFNO0lBQ1IsQ0FBQztJQUVELE1BQU0sSUFBSSxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUE7SUFDN0IsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsaUNBQXlCLENBQUMsS0FBSyxDQU05RCxD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
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3Bvcy9vcmRlcnMvW2lkXS9jYW5jZWwvcm91dGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUF1QkEsb0JBdUZDO0FBN0dELHFEQUFxRTtBQUNyRSw2QkFBdUI7QUFDdkIscUVBS21DO0FBR25DLE1BQU0sb0JBQW9CLEdBQUcsT0FBQyxDQUFDLE1BQU0sQ0FBQztJQUNwQyxXQUFXLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDOUIsSUFBSSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7Q0FDNUIsQ0FBQyxDQUFBO0FBRUY7Ozs7OztHQU1HO0FBQ0ksS0FBSyxVQUFVLElBQUksQ0FBQyxHQUFrQixFQUFFLEdBQW1CO0lBQ2hFLE1BQU0sT0FBTyxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBWSxDQUFBO0lBQ3ZDLE1BQU0sV0FBVyxHQUFHLG9CQUFvQixDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFBO0lBQ2xFLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDekIsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7WUFDbkIsT0FBTyxFQUFFLHNCQUFzQjtZQUMvQixNQUFNLEVBQUUsV0FBVyxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUU7WUFDbkMsSUFBSSxFQUFFLGNBQWM7U0FDckIsQ0FBQyxDQUFBO1FBQ0YsT0FBTTtJQUNSLENBQUM7SUFFRCxNQUFNLElBQUksR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFBO0lBQzdCLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLGlDQUF5QixDQUFDLEtBQUssQ0FNOUQs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
@@ -31,6 +31,12 @@ const LIST_FIELDS = [
31
31
  "items.metadata",
32
32
  "items.adjustments.code",
33
33
  "items.adjustments.amount",
34
+ "items.detail.quantity",
35
+ "items.detail.return_requested_quantity",
36
+ "items.detail.return_received_quantity",
37
+ "items.detail.returned_quantity",
38
+ "items.detail.return_dismissed_quantity",
39
+ "items.detail.written_off_quantity",
34
40
  ];
35
41
  function orderByIds(orders, ids) {
36
42
  const byId = new Map();
@@ -62,6 +68,10 @@ async function GET(req, res) {
62
68
  entity: "order",
63
69
  fields: LIST_FIELDS,
64
70
  filters: { id: page.ids },
71
+ pagination: {
72
+ skip: 0,
73
+ take: page.ids.length,
74
+ },
65
75
  });
66
76
  orders = orderByIds(Array.isArray(data) ? data : [], page.ids);
67
77
  }
@@ -94,11 +104,14 @@ async function GET(req, res) {
94
104
  orders = Array.isArray(data) ? data : [];
95
105
  count = metadata?.count ?? orders.length;
96
106
  }
107
+ const hidePriorDay = filters.statuses.length === 1 &&
108
+ ["completed", "canceled", "cancelled", "draft"].includes(filters.statuses[0]);
97
109
  const body = {
98
110
  orders,
99
111
  count,
100
112
  limit,
101
113
  offset,
114
+ prior_day_returns: hasOccurredRange && !hidePriorDay ? await (0, pos_order_list_1.listPriorDayReturns)(knex, filters) : [],
102
115
  };
103
116
  if (includeSalesTotal) {
104
117
  if (hasOccurredRange) {
@@ -119,4 +132,4 @@ async function GET(req, res) {
119
132
  });
120
133
  }
121
134
  }
122
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3Bvcy9vcmRlcnMvcm91dGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUF5RUEsa0JBMEVDO0FBM0lELHFEQUFxRTtBQUNyRSxxRUFReUM7QUFlekMsTUFBTSxXQUFXLEdBQUc7SUFDbEIsSUFBSTtJQUNKLFlBQVk7SUFDWixZQUFZO0lBQ1osWUFBWTtJQUNaLFFBQVE7SUFDUixnQkFBZ0I7SUFDaEIsb0JBQW9CO0lBQ3BCLE9BQU87SUFDUCxlQUFlO0lBQ2YsT0FBTztJQUNQLFVBQVU7SUFDVixZQUFZO0lBQ1osZ0JBQWdCO0lBQ2hCLFVBQVU7SUFDVixhQUFhO0lBQ2IsZ0JBQWdCO0lBQ2hCLGdCQUFnQjtJQUNoQixxQkFBcUI7SUFDckIsb0JBQW9CO0lBQ3BCLFVBQVU7SUFDVixnQkFBZ0I7SUFDaEIsa0JBQWtCO0lBQ2xCLGFBQWE7SUFDYixnQkFBZ0I7SUFDaEIsZ0JBQWdCO0lBQ2hCLHdCQUF3QjtJQUN4QiwwQkFBMEI7Q0FDM0IsQ0FBQTtBQUVELFNBQVMsVUFBVSxDQUFDLE1BQWlCLEVBQUUsR0FBYTtJQUNsRCxNQUFNLElBQUksR0FBRyxJQUFJLEdBQUcsRUFBbUIsQ0FBQTtJQUN2QyxLQUFLLE1BQU0sS0FBSyxJQUFJLE1BQU0sRUFBRSxDQUFDO1FBQzNCLElBQUksS0FBSyxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxJQUFJLElBQUksS0FBSyxFQUFFLENBQUM7WUFDeEQsTUFBTSxFQUFFLEdBQUksS0FBMEIsQ0FBQyxFQUFFLENBQUE7WUFDekMsSUFBSSxPQUFPLEVBQUUsS0FBSyxRQUFRO2dCQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFBO1FBQ2pELENBQUM7SUFDSCxDQUFDO0lBQ0QsT0FBTyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFF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
135
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3Bvcy9vcmRlcnMvcm91dGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFnRkEsa0JBb0ZDO0FBNUpELHFEQUFxRTtBQUNyRSxxRUFTeUM7QUFlekMsTUFBTSxXQUFXLEdBQUc7SUFDbEIsSUFBSTtJQUNKLFlBQVk7SUFDWixZQUFZO0lBQ1osWUFBWTtJQUNaLFFBQVE7SUFDUixnQkFBZ0I7SUFDaEIsb0JBQW9CO0lBQ3BCLE9BQU87SUFDUCxlQUFlO0lBQ2YsT0FBTztJQUNQLFVBQVU7SUFDVixZQUFZO0lBQ1osZ0JBQWdCO0lBQ2hCLFVBQVU7SUFDVixhQUFhO0lBQ2IsZ0JBQWdCO0lBQ2hCLGdCQUFnQjtJQUNoQixxQkFBcUI7SUFDckIsb0JBQW9CO0lBQ3BCLFVBQVU7SUFDVixnQkFBZ0I7SUFDaEIsa0JBQWtCO0lBQ2xCLGFBQWE7SUFDYixnQkFBZ0I7SUFDaEIsZ0JBQWdCO0lBQ2hCLHdCQUF3QjtJQUN4QiwwQkFBMEI7SUFDMUIsdUJBQXVCO0lBQ3ZCLHdDQUF3QztJQUN4Qyx1Q0FBdUM7SUFDdkMsZ0NBQWdDO0lBQ2hDLHdDQUF3QztJQUN4QyxtQ0FBbUM7Q0FDcEMsQ0FBQTtBQUVELFNBQVMsVUFBVSxDQUFDLE1BQWlCLEVBQUUsR0FBYTtJQUNsRCxNQUFNLElBQUksR0FBRyxJQUFJLEdBQUcsRUFBbUIsQ0FBQTtJQUN2QyxLQUFLLE1BQU0sS0FBSyxJQUFJLE1BQU0sRUFBRSxDQUFDO1FBQzNCLElBQUksS0FBSyxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxJQUFJLElBQUksS0FBSyxFQUFFLENBQUM7WUFDeEQsTUFBTSxFQUFFLEdBQUksS0FBMEIsQ0FBQyxFQUFFLENBQUE7WUFDekMsSUFBSSxPQUFPLEVBQUUsS0FBSyxRQUFRO2dCQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLEtB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
@@ -10,6 +10,7 @@ const core_flows_1 = require("@medusajs/core-flows");
10
10
  const utils_1 = require("@medusajs/framework/utils");
11
11
  const pos_returns_1 = require("../../../../utils/pos-returns");
12
12
  Object.defineProperty(exports, "getReturnableQuantity", { enumerable: true, get: function () { return pos_returns_1.getReturnableQuantity; } });
13
+ const pos_void_payment_1 = require("../../../../utils/pos-void-payment");
13
14
  const WALLET_MODULE = "wallet_ledger";
14
15
  const REFUND_PAYMENT_MAPPING_MODULE = "refund_payment_mapping";
15
16
  function isRecord(value) {
@@ -221,22 +222,6 @@ async function abortReturn(container, returnId) {
221
222
  .catch(() => undefined);
222
223
  });
223
224
  }
224
- function extractPaymentId(order) {
225
- const collections = Array.isArray(order.payment_collections)
226
- ? order.payment_collections
227
- : [];
228
- for (const collection of collections) {
229
- if (!isRecord(collection))
230
- continue;
231
- const payments = Array.isArray(collection.payments) ? collection.payments : [];
232
- for (const payment of payments) {
233
- if (!isRecord(payment) || typeof payment.id !== "string")
234
- continue;
235
- return payment.id;
236
- }
237
- }
238
- return null;
239
- }
240
225
  exports.POS_RETURN_ORDER_FIELDS = [
241
226
  "id",
242
227
  "status",
@@ -574,41 +559,89 @@ async function runPosOrderReturn(input) {
574
559
  };
575
560
  }
576
561
  }
577
- const paymentId = extractPaymentId(order);
578
- if (paymentId) {
562
+ const paymentIds = (0, pos_void_payment_1.extractPosPaymentIds)(order);
563
+ const paymentId = paymentIds[0] ?? null;
564
+ if (!paymentId) {
565
+ return {
566
+ ok: false,
567
+ status: 500,
568
+ body: {
569
+ message: mark_voided
570
+ ? "Sale was returned but the order has no payment to void"
571
+ : "Return created but the order has no payment to refund",
572
+ type: mark_voided ? "PAYMENT_VOID_FAILED" : "REFUND_RECORD_FAILED",
573
+ return_id: returnId,
574
+ },
575
+ };
576
+ }
577
+ if (mark_voided) {
578
+ try {
579
+ const paymentModule = req.scope.resolve(utils_1.Modules.PAYMENT);
580
+ await (0, pos_void_payment_1.voidPosCollectedPayments)(paymentModule, paymentIds);
581
+ const knex = req.scope.resolve(utils_1.ContainerRegistrationKeys.PG_CONNECTION);
582
+ await (0, pos_void_payment_1.zeroPosPaymentAmounts)(knex, paymentIds);
583
+ }
584
+ catch (error) {
585
+ const message = (0, pos_returns_1.getThrownErrorMessage)(error, "Failed to void payment");
586
+ return {
587
+ ok: false,
588
+ status: 500,
589
+ body: {
590
+ message: "Sale was returned but the payment was not voided",
591
+ error: message,
592
+ type: "PAYMENT_VOID_FAILED",
593
+ return_id: returnId,
594
+ },
595
+ };
596
+ }
597
+ }
598
+ else {
579
599
  const noteText = refund_method === "wallet"
580
600
  ? `POS wallet refund for return ${returnId}`
581
601
  : refund_method === "gift_card"
582
602
  ? `POS gift card ${giftCardPayload && typeof giftCardPayload.code === "string" ? giftCardPayload.code : ""} issued for return ${returnId}`
583
603
  : `POS cash refund for return ${returnId}`;
584
- await (0, core_flows_1.refundPaymentWorkflow)(req.scope)
585
- .run({
586
- input: {
604
+ try {
605
+ await (0, core_flows_1.refundPaymentWorkflow)(req.scope).run({
606
+ input: {
607
+ payment_id: paymentId,
608
+ amount: refundAmount,
609
+ created_by: actorId,
610
+ note: noteText,
611
+ },
612
+ });
613
+ }
614
+ catch (error) {
615
+ const message = (0, pos_returns_1.getThrownErrorMessage)(error, "Failed to record refund");
616
+ return {
617
+ ok: false,
618
+ status: 500,
619
+ body: {
620
+ message: "Return created but refund was not recorded",
621
+ error: message,
622
+ type: "REFUND_RECORD_FAILED",
623
+ return_id: returnId,
624
+ },
625
+ };
626
+ }
627
+ try {
628
+ const mappingService = req.scope.resolve(REFUND_PAYMENT_MAPPING_MODULE);
629
+ const details = refund_method === "wallet"
630
+ ? `POS wallet refund${refundCustomer?.email ? ` to ${refundCustomer.email}` : ""}`
631
+ : refund_method === "gift_card"
632
+ ? `POS gift card issued${giftCardPayload && typeof giftCardPayload.code === "string" ? ` ${giftCardPayload.code}` : ""}`
633
+ : "POS cash refund";
634
+ await mappingService.createMapping({
635
+ return_id: returnId,
587
636
  payment_id: paymentId,
588
- amount: refundAmount,
589
- created_by: actorId,
590
- note: noteText,
591
- },
592
- })
593
- .catch(() => undefined);
594
- }
595
- try {
596
- const mappingService = req.scope.resolve(REFUND_PAYMENT_MAPPING_MODULE);
597
- const details = refund_method === "wallet"
598
- ? `POS wallet refund${refundCustomer?.email ? ` to ${refundCustomer.email}` : ""}`
599
- : refund_method === "gift_card"
600
- ? `POS gift card issued${giftCardPayload && typeof giftCardPayload.code === "string" ? ` ${giftCardPayload.code}` : ""}`
601
- : "POS cash refund";
602
- await mappingService.createMapping({
603
- return_id: returnId,
604
- payment_id: paymentId,
605
- refund_mode: "offline",
606
- details,
607
- });
608
- await mappingService.markRefunded(returnId);
609
- }
610
- catch {
611
- // audit-only
637
+ refund_mode: "offline",
638
+ details,
639
+ });
640
+ await mappingService.markRefunded(returnId);
641
+ }
642
+ catch {
643
+ // audit-only
644
+ }
612
645
  }
613
646
  try {
614
647
  const orderModule = req.scope.resolve(utils_1.Modules.ORDER);
@@ -619,9 +652,16 @@ async function runPosOrderReturn(input) {
619
652
  prevMeta.pos_void_return_id = returnId;
620
653
  }
621
654
  if (mark_returned) {
622
- prevMeta.pos_returned = true;
623
- prevMeta.pos_returned_at = new Date().toISOString();
624
- prevMeta.pos_return_id = returnId;
655
+ const returnedQtyThisTime = items.reduce((sum, item) => sum + Math.max(0, Math.floor((0, pos_returns_1.toAmount)(item.quantity))), 0);
656
+ const remainingReturnable = orderItems.reduce((sum, item) => {
657
+ const selected = items.find((selection) => selection.id === item.id)?.quantity ?? 0;
658
+ return sum + Math.max(0, (0, pos_returns_1.getReturnableQuantity)(item) - selected);
659
+ }, 0);
660
+ Object.assign(prevMeta, (0, pos_returns_1.nextPosReturnMetadata)(prevMeta, {
661
+ returnId: returnId,
662
+ returnedQtyThisTime,
663
+ remainingReturnable,
664
+ }));
625
665
  }
626
666
  if (refund_method === "gift_card" && giftCardPayload) {
627
667
  prevMeta.pos_refund_method = "gift_card";
@@ -676,4 +716,4 @@ async function loadPosReturnOrder(query, orderId) {
676
716
  .catch(() => ({ data: [] }));
677
717
  return data[0] ?? null;
678
718
  }
679
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuLXBvcy1vcmRlci1yZXR1cm4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3Bvcy9vcmRlcnMvcnVuLXBvcy1vcmRlci1yZXR1cm4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBaUlBLGdDQVNDO0FBT0Qsc0NBUUM7QUFxREQsMENBb0JDO0FBMk1ELDhDQXdjQztBQUVELGdEQVlDO0FBbDRCRCxxREFVNkI7QUFDN0IscURBQThFO0FBRTlFLCtEQWlCc0M7QUFzMkI3QixzR0FwM0JQLG1DQUFxQixPQW8zQk87QUFwMkI5QixNQUFNLGFBQWEsR0FBRyxlQUFlLENBQUE7QUFDckMsTUFBTSw2QkFBNkIsR0FBRyx3QkFBd0IsQ0FBQTtBQXNFOUQsU0FBUyxRQUFRLENBQUMsS0FBYztJQUM5QixPQUFPLE9BQU8sQ0FBQyxLQUFLLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxDQUFDLENBQUE7QUFDcEQsQ0FBQztBQVNELFNBQVMsWUFBWSxDQUNuQixNQUE4RDtJQUU5RCxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFBO0lBQzVCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQUUsT0FBTyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDeEUsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQ3ZCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQUUsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDL0QsT0FBTyxTQUFTLENBQUE7QUFDbEIsQ0FBQztBQUVELFNBQVMsTUFBTSxDQUFDLEtBQWM7SUFDNUIsT0FBTyxLQUFLLEtBQUssSUFBSSxJ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
719
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuLXBvcy1vcmRlci1yZXR1cm4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3Bvcy9vcmRlcnMvcnVuLXBvcy1vcmRlci1yZXR1cm4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBdUlBLGdDQVNDO0FBT0Qsc0NBUUM7QUFxREQsMENBb0JDO0FBNExELDhDQXFnQkM7QUFFRCxnREFZQztBQXQ3QkQscURBVTZCO0FBQzdCLHFEQUE4RTtBQUU5RSwrREFrQnNDO0FBeTVCN0Isc0dBeDZCUCxtQ0FBcUIsT0F3NkJPO0FBeDVCOUIseUVBSTJDO0FBRTNDLE1BQU0sYUFBYSxHQUFHLGVBQWUsQ0FBQTtBQUNyQyxNQUFNLDZCQUE2QixHQUFHLHdCQUF3QixDQUFBO0FBc0U5RCxTQUFTLFFBQVEsQ0FBQyxLQUFjO0lBQzlCLE9BQU8sT0FBTyxDQUFDLEtBQUssSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLENBQUMsQ0FBQTtBQUNwRCxDQUFDO0FBU0QsU0FBUyxZQUFZLENBQ25CLE1BQThEO0lBRTlELE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUE7SUFDNUIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFBRSxPQUFPLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUN4RSxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDdkIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFBRSxPQUFPLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUMvRCxPQUFPLFNBQVMsQ0FBQTtBQUNsQixDQUFDO0FBRUQsU0FBUyxNQUFNLENBQUMsS0FBYztJQUM1QixPQUFPLEtB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
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GET = GET;
4
+ const utils_1 = require("@medusajs/framework/utils");
5
+ const pos_daily_report_1 = require("../../../../../utils/pos-daily-report");
6
+ const pos_order_list_1 = require("../../../../../utils/pos-order-list");
7
+ async function GET(req, res) {
8
+ const query = (req.query || {});
9
+ const from = (0, pos_order_list_1.parseIsoDate)(query.from);
10
+ const to = (0, pos_order_list_1.parseIsoDate)(query.to);
11
+ if (!from || !to) {
12
+ res.status(400).json({
13
+ message: "from and to are required",
14
+ type: "INVALID_DATA",
15
+ });
16
+ return;
17
+ }
18
+ try {
19
+ const knex = req.scope.resolve(utils_1.ContainerRegistrationKeys.PG_CONNECTION);
20
+ const report = await (0, pos_daily_report_1.loadPosDailyReport)(knex, from, to);
21
+ const csv = (0, pos_daily_report_1.buildDailyReportCsv)(report, new Date().toISOString());
22
+ const filename = `pos-daily-report-${report.days[0]?.date || "period"}.csv`;
23
+ res.setHeader("Content-Type", "text/csv; charset=utf-8");
24
+ res.setHeader("Content-Disposition", `attachment; filename="${filename}"`);
25
+ res.status(200).send(csv);
26
+ }
27
+ catch (err) {
28
+ console.error("GET /admin/pos/reports/daily error:", err);
29
+ res.status(500).json({
30
+ message: err instanceof Error ? err.message : "Failed to build daily report",
31
+ type: "POS_DAILY_REPORT_FAILED",
32
+ });
33
+ }
34
+ }
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3Bvcy9yZXBvcnRzL2RhaWx5L3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBU0Esa0JBMkJDO0FBL0JELHFEQUFxRTtBQUNyRSw0RUFBK0Y7QUFDL0Ysd0VBQWlGO0FBRTFFLEtBQUssVUFBVSxHQUFHLENBQUMsR0FBa0IsRUFBRSxHQUFtQjtJQUMvRCxNQUFNLEtBQUssR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFtQyxDQUFBO0lBQ2pFLE1BQU0sSUFBSSxHQUFHLElBQUEsNkJBQVksRUFBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDckMsTUFBTSxFQUFFLEdBQUcsSUFBQSw2QkFBWSxFQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQTtJQUNqQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUM7UUFDakIsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7WUFDbkIsT0FBTyxFQUFFLDBCQUEwQjtZQUNuQyxJQUFJLEVBQUUsY0FBYztTQUNyQixDQUFDLENBQUE7UUFDRixPQUFNO0lBQ1IsQ0FBQztJQUVELElBQUksQ0FBQztRQUNILE1BQU0sSUFBSSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFXLGlDQUF5QixDQUFDLGFBQWEsQ0FBQyxDQUFBO1FBQ2pGLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBQSxxQ0FBa0IsRUFBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFBO1FBQ3ZELE1BQU0sR0FBRyxHQUFHLElBQUEsc0NBQW1CLEVBQUMsTUFBTSxFQUFFLElBQUksSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQTtRQUNqRSxNQUFNLFFBQVEsR0FBRyxvQkFBb0IsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLElBQUksUUFBUSxNQUFNLENBQUE7UUFDM0UsR0FBRyxDQUFDLFNBQVMsQ0FBQyxjQUFjLEVBQUUseUJBQXlCLENBQUMsQ0FBQTtRQUN4RCxHQUFHLENBQUMsU0FBUyxDQUFDLHFCQUFxQixFQUFFLHlCQUF5QixRQUFRLEdBQUcsQ0FBQyxDQUFBO1FBQzFFLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQzNCLENBQUM7SUFBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ2IsT0FBTyxDQUFDLEtBQUssQ0FBQyxxQ0FBcUMsRUFBRSxHQUFHLENBQUMsQ0FBQTtRQUN6RCxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQztZQUNuQixPQUFPLEVBQUUsR0FBRyxZQUFZLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsOEJBQThCO1lBQzVFLElBQUksRUFBRSx5QkFBeUI7U0FDaEMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztBQUNILENBQUMifQ==
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.roundMoney = roundMoney;
4
+ exports.classifyRefundNote = classifyRefundNote;
5
+ exports.netCollected = netCollected;
6
+ exports.resolveCollectedAmount = resolveCollectedAmount;
7
+ exports.allocateRefundAcrossLines = allocateRefundAcrossLines;
8
+ exports.emptyRefundsByKind = emptyRefundsByKind;
9
+ exports.sumRefundsByKind = sumRefundsByKind;
10
+ exports.netByDay = netByDay;
11
+ const KINDS = ["cash", "wallet", "gift_card"];
12
+ function roundMoney(value) {
13
+ return Math.round(value * 100) / 100;
14
+ }
15
+ /** POS refund note written by the return route. Website cancels have an empty note. */
16
+ function classifyRefundNote(note) {
17
+ const text = typeof note === "string" ? note.trim().toLowerCase() : "";
18
+ if (text.startsWith("pos wallet refund"))
19
+ return "wallet";
20
+ if (text.startsWith("pos gift card"))
21
+ return "gift_card";
22
+ return "cash";
23
+ }
24
+ function netCollected(collected, refunded) {
25
+ return roundMoney(collected - refunded);
26
+ }
27
+ /**
28
+ * Captured payment when one exists.
29
+ * POS sales with no payment row keep the order payable so older tickets are not dropped.
30
+ * A website cancel that was never captured is not money in.
31
+ */
32
+ function resolveCollectedAmount(input) {
33
+ if (input.canceled && input.isPos)
34
+ return 0;
35
+ if (input.captured != null && input.captured > 0)
36
+ return roundMoney(input.captured);
37
+ if (!input.isPos && input.canceled)
38
+ return 0;
39
+ return roundMoney(Math.max(0, input.fallback));
40
+ }
41
+ /** Split a refund across lines. The last line absorbs rounding so the parts sum to the refund. */
42
+ function allocateRefundAcrossLines(amount, lines) {
43
+ if (lines.length === 0 || amount === 0)
44
+ return [];
45
+ const total = lines.reduce((sum, line) => sum + Math.max(0, line.weight), 0);
46
+ if (total <= 0) {
47
+ return lines.map((line, index) => ({
48
+ key: line.key,
49
+ amount: index === 0 ? roundMoney(amount) : 0,
50
+ }));
51
+ }
52
+ let assigned = 0;
53
+ return lines.map((line, index) => {
54
+ if (index === lines.length - 1) {
55
+ return { key: line.key, amount: roundMoney(amount - assigned) };
56
+ }
57
+ const share = roundMoney((amount * Math.max(0, line.weight)) / total);
58
+ assigned = roundMoney(assigned + share);
59
+ return { key: line.key, amount: share };
60
+ });
61
+ }
62
+ function emptyRefundsByKind() {
63
+ return { cash: 0, wallet: 0, gift_card: 0 };
64
+ }
65
+ function sumRefundsByKind(refunds) {
66
+ const totals = emptyRefundsByKind();
67
+ for (const refund of refunds) {
68
+ if (!KINDS.includes(refund.kind))
69
+ continue;
70
+ totals[refund.kind] = roundMoney(totals[refund.kind] + refund.amount);
71
+ }
72
+ return totals;
73
+ }
74
+ /** Collected on the sale day, refunds on the refund day. */
75
+ function netByDay(input) {
76
+ const days = new Map();
77
+ const bucket = (day) => {
78
+ const current = days.get(day) ?? { collected: 0, refunded: 0 };
79
+ days.set(day, current);
80
+ return current;
81
+ };
82
+ for (const row of input.collected) {
83
+ bucket(row.day).collected = roundMoney(bucket(row.day).collected + row.amount);
84
+ }
85
+ for (const row of input.refunds) {
86
+ bucket(row.day).refunded = roundMoney(bucket(row.day).refunded + row.amount);
87
+ }
88
+ return [...days.entries()]
89
+ .sort(([a], [b]) => a.localeCompare(b))
90
+ .map(([day, row]) => ({
91
+ day,
92
+ collected: row.collected,
93
+ refunded: row.refunded,
94
+ net: netCollected(row.collected, row.refunded),
95
+ }));
96
+ }
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bWVudC1yZWZ1bmQtbW9uZXkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdXRpbHMvcGF5bWVudC1yZWZ1bmQtbW9uZXkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFpQkEsZ0NBRUM7QUFHRCxnREFLQztBQUVELG9DQUVDO0FBT0Qsd0RBS0M7QUFHRCw4REFxQkM7QUFFRCxnREFFQztBQUVELDRDQVNDO0FBVUQsNEJBd0JDO0FBckdELE1BQU0sS0FBSyxHQUFpQixDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsV0FBVyxDQUFDLENBQUE7QUFFM0QsU0FBZ0IsVUFBVSxDQUFDLEtBQWE7SUFDdEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUMsR0FBRyxHQUFHLENBQUE7QUFDdEMsQ0FBQztBQUVELHVGQUF1RjtBQUN2RixTQUFnQixrQkFBa0IsQ0FBQyxJQUFhO0lBQzlDLE1BQU0sSUFBSSxHQUFHLE9BQU8sSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUE7SUFDdEUsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLG1CQUFtQixDQUFDO1FBQUUsT0FBTyxRQUFRLENBQUE7SUFDekQsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQztRQUFFLE9BQU8sV0FBVyxDQUFBO0lBQ3hELE9BQU8sTUFBTSxDQUFBO0FBQ2YsQ0FBQztBQUVELFNBQWdCLFlBQVksQ0FBQyxTQUFpQixFQUFFLFFBQWdCO0lBQzlELE9BQU8sVUFBVSxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUMsQ0FBQTtBQUN6QyxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILFNBQWdCLHNCQUFzQixDQUFDLEtBQTJCO0lBQ2hFLElBQUksS0FBSyxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUMsS0FBSztR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