This commit is contained in:
2026-05-22 22:36:10 +03:00
parent 52a0b7f3c7
commit f425cef139
4 changed files with 54 additions and 46 deletions

View File

@@ -153,7 +153,7 @@ export interface Payment {
export interface OrderWithPayment {
order: Order
payment: Payment
payment: Payment | null
}
export interface OrdersResponse {

View File

@@ -85,7 +85,7 @@ function OrderAccordion({ item }: { item: OrderWithPayment }) {
<div className={styles.summaryLeft}>
<span className={styles.summaryDate}>{formatDate(order.created_at)}</span>
<StatusBadge status={order.status} labels={ORDER_STATUS_LABELS} />
<StatusBadge status={payment.status} labels={PAYMENT_STATUS_LABELS} />
{payment && <StatusBadge status={payment.status} labels={PAYMENT_STATUS_LABELS} />}
</div>
<div className={styles.summaryRight}>
<span className={styles.amount}>{order.usdt_amount} USDT</span>
@@ -135,44 +135,52 @@ function OrderAccordion({ item }: { item: OrderWithPayment }) {
<div className={styles.col}>
<p className={styles.colTitle}>Платёж</p>
<div className={styles.infoRow}>
<span className={styles.infoLabel}>Статус</span>
<StatusBadge status={payment.status} labels={PAYMENT_STATUS_LABELS} />
</div>
<div className={styles.infoRow}>
<span className={styles.infoLabel}>Оплачено</span>
<span className={styles.infoValue}>{payment.itpay_paid_amount || '—'}</span>
</div>
<div className={styles.infoRow}>
<span className={styles.infoLabel}>Истекает</span>
<span className={styles.infoValue}>{formatDate(payment.expired_date)}</span>
</div>
<div className={styles.infoRow}>
<span className={styles.infoLabel}>Хэш транзакции</span>
<span className={styles.infoValueRow}>
<span className={styles.infoValue} title={payment.web3_transaction_hash || undefined}>
{truncateHash(payment.web3_transaction_hash)}
</span>
{payment.web3_transaction_hash && (
<CopyButton value={payment.web3_transaction_hash} />
)}
</span>
</div>
<div className={styles.infoRow}>
<span className={styles.infoLabel}>Чек</span>
{payment.receipt_cloudekassir_link ? (
<a
href={payment.receipt_cloudekassir_link}
target="_blank"
rel="noopener noreferrer"
className={styles.infoLink}
>
Открыть
</a>
) : (
{payment ? (
<>
<div className={styles.infoRow}>
<span className={styles.infoLabel}>Статус</span>
<StatusBadge status={payment.status} labels={PAYMENT_STATUS_LABELS} />
</div>
<div className={styles.infoRow}>
<span className={styles.infoLabel}>Оплачено</span>
<span className={styles.infoValue}>{payment.itpay_paid_amount || '—'}</span>
</div>
<div className={styles.infoRow}>
<span className={styles.infoLabel}>Истекает</span>
<span className={styles.infoValue}>{formatDate(payment.expired_date)}</span>
</div>
<div className={styles.infoRow}>
<span className={styles.infoLabel}>Хэш транзакции</span>
<span className={styles.infoValueRow}>
<span className={styles.infoValue} title={payment.web3_transaction_hash || undefined}>
{truncateHash(payment.web3_transaction_hash)}
</span>
{payment.web3_transaction_hash && (
<CopyButton value={payment.web3_transaction_hash} />
)}
</span>
</div>
<div className={styles.infoRow}>
<span className={styles.infoLabel}>Чек</span>
{payment.receipt_cloudekassir_link ? (
<a
href={payment.receipt_cloudekassir_link}
target="_blank"
rel="noopener noreferrer"
className={styles.infoLink}
>
Открыть
</a>
) : (
<span className={styles.infoValue}></span>
)}
</div>
</>
) : (
<div className={styles.infoRow}>
<span className={styles.infoValue}></span>
)}
</div>
</div>
)}
</div>
</div>
</div>