Files
fabric_trade_server/dist/common/utils/order-status.js
T
mohmdsdgandCursor 345a4a4708 Add SMS OTP, harden auth, and fix order/checkout server bugs.
Ship 4-digit OTP with rate-limit attempts, Tehran-safe expiry/rass math, larger JSON body limit for check images, and safer order pricing/status guards. Include rebuilt dist for prebuilt deploy.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-08 14:55:26 +03:30

89 lines
3.4 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.ORDER_STATUS_LABELS = exports.ADMIN_STATUS_MAP = void 0;
exports.resolveAdminStatusFilter = resolveAdminStatusFilter;
exports.toAdminStatus = toAdminStatus;
const client_1 = require("@prisma/client");
exports.ADMIN_STATUS_MAP = {
pending_review: [
client_1.OrderStatus.cart,
client_1.OrderStatus.awaiting_settlement,
client_1.OrderStatus.cash_in_progress,
client_1.OrderStatus.check_in_progress,
client_1.OrderStatus.submitted,
client_1.OrderStatus.awaiting_review,
client_1.OrderStatus.pricing,
client_1.OrderStatus.cash_invoice_issued,
client_1.OrderStatus.awaiting_cash_payment,
client_1.OrderStatus.cash_payment_submitted,
client_1.OrderStatus.awaiting_cash_confirmation,
],
pending_check: [client_1.OrderStatus.awaiting_check_review],
needs_correction: [
client_1.OrderStatus.needs_correction,
client_1.OrderStatus.awaiting_settlement_fix,
],
check_correction: [client_1.OrderStatus.check_needs_fix, client_1.OrderStatus.check_rejected],
final_approval: [
client_1.OrderStatus.final_approved,
client_1.OrderStatus.checks_approved,
client_1.OrderStatus.cash_confirmed,
client_1.OrderStatus.preparing,
client_1.OrderStatus.ready_to_ship,
],
shipped: [client_1.OrderStatus.shipped],
delivered: [client_1.OrderStatus.delivered],
};
const TERMINAL_STATUSES = [
client_1.OrderStatus.cancelled,
client_1.OrderStatus.rejected,
client_1.OrderStatus.expired,
];
function resolveAdminStatusFilter(status) {
if (!status)
return undefined;
if (exports.ADMIN_STATUS_MAP[status])
return exports.ADMIN_STATUS_MAP[status];
if (Object.values(client_1.OrderStatus).includes(status)) {
return [status];
}
return undefined;
}
function toAdminStatus(status) {
for (const [admin, list] of Object.entries(exports.ADMIN_STATUS_MAP)) {
if (list.includes(status))
return admin;
}
if (TERMINAL_STATUSES.includes(status))
return status;
return 'pending_review';
}
exports.ORDER_STATUS_LABELS = {
cart: 'سبد خرید',
awaiting_settlement: 'در انتظار تسویه',
cash_in_progress: 'در حال ثبت نقدی',
check_in_progress: 'در حال ثبت چک',
submitted: 'ثبت‌شده',
awaiting_review: 'در انتظار بررسی',
pricing: 'قیمت‌گذاری',
needs_correction: 'نیاز به اصلاح',
awaiting_settlement_fix: 'اصلاح تسویه',
cash_invoice_issued: 'صدور فاکتور نقدی',
awaiting_cash_payment: 'در انتظار پرداخت نقدی',
cash_payment_submitted: 'رسید نقدی ارسال‌شده',
awaiting_cash_confirmation: 'تأیید پرداخت نقدی',
cash_confirmed: 'پرداخت نقدی تأیید شد',
awaiting_check_review: 'بررسی چک',
check_needs_fix: 'اصلاح چک',
check_rejected: 'رد چک',
checks_approved: 'تأیید چک‌ها',
final_approved: 'تأیید نهایی',
preparing: 'آماده‌سازی',
ready_to_ship: 'آماده ارسال',
shipped: 'ارسال‌شده',
delivered: 'تحویل‌شده',
cancelled: 'لغو شده',
rejected: 'رد شده',
expired: 'منقضی',
};
//# sourceMappingURL=order-status.js.map