46 lines
2.6 KiB
JavaScript
46 lines
2.6 KiB
JavaScript
export function renderOrderCreatedTg({ orderId, totalCents, itemsCount, deliveryType }) {
|
||
const total = (totalCents / 100).toLocaleString('ru-RU')
|
||
const nextAction = deliveryType === 'delivery'
|
||
? 'Оплата будет доступна после уточнения стоимости доставки.'
|
||
: 'Ожидает оплаты.'
|
||
return `📦 <b>Новый заказ</b> #${orderId.slice(0, 8)}\nТоваров: ${itemsCount} | Сумма: ${total} ₽\n${nextAction}`
|
||
}
|
||
|
||
export function renderOrderStatusChangedTg({ orderId, oldStatus, newStatus }) {
|
||
const labels = {
|
||
DRAFT: 'Черновик', PENDING_PAYMENT: 'Ожидает оплаты', PAID: 'Оплачен', IN_PROGRESS: 'В работе',
|
||
READY_FOR_PICKUP: 'Готов к выдаче', SHIPPED: 'Отправлен', DONE: 'Выполнен', CANCELLED: 'Отменён',
|
||
}
|
||
return `🔄 Заказ #${orderId.slice(0, 8)}\n${labels[oldStatus] || oldStatus} → <b>${labels[newStatus] || newStatus}</b>`
|
||
}
|
||
|
||
export function renderOrderMessageTg({ orderId, preview }) {
|
||
const truncated = preview.length > 300 ? preview.slice(0, 297) + '...' : preview
|
||
return `💬 Сообщение к заказу #${orderId.slice(0, 8)}\n\n${truncated}`
|
||
}
|
||
|
||
export function renderPaymentStatusChangedTg({ orderId, paymentStatus }) {
|
||
const labels = { pending: 'Ожидает', confirmed: 'Подтверждён', rejected: 'Отклонён' }
|
||
return `💳 Оплата заказа #${orderId.slice(0, 8)}: <b>${labels[paymentStatus] || paymentStatus}</b>`
|
||
}
|
||
|
||
export function renderAdminOrderCreatedTg({ orderId, userEmail, totalCents, itemsCount, deliveryType }) {
|
||
const total = (totalCents / 100).toLocaleString('ru-RU')
|
||
const note = deliveryType === 'delivery' ? '\n\n⚠️ Скорректируйте стоимость доставки' : ''
|
||
return `🛒 <b>Новый заказ</b> #${orderId.slice(0, 8)}\nОт: ${userEmail}\nТоваров: ${itemsCount} | Сумма: ${total} ₽${note}`
|
||
}
|
||
|
||
export function renderAdminNewReviewTg({ rating, text, productTitle, userName }) {
|
||
const stars = '⭐'.repeat(rating)
|
||
return `📝 <b>Новый отзыв</b> ${stars}\nТовар: ${productTitle}\nАвтор: ${userName}${text ? '\n\n' + text : ''}`
|
||
}
|
||
|
||
export function renderAuthCodeTg({ code }) {
|
||
return `🔐 Код входа: <b>${code}</b>`
|
||
}
|
||
|
||
export function renderDeliveryFeeAdjustedTg({ orderId, totalCents }) {
|
||
const total = (totalCents / 100).toLocaleString('ru-RU')
|
||
return `💰 <b>Стоимость доставки скорректирована</b> для заказа #${orderId.slice(0, 8)}\nНовая сумма: ${total} ₽\n\nОжидает оплаты.`
|
||
}
|