feat(sms): в карточке объяснён статус «ручное управление» без ошибок отправки — SMS не отправлялись, согласование шло без SMS

This commit is contained in:
Hermes 2026-09-16 16:30:02 +02:00
parent 4192e44998
commit b965216181
1 changed files with 12 additions and 0 deletions

View File

@ -239,6 +239,8 @@ export const SmsStatusCard = ({ order, userRole }) => {
<div className="text-[var(--color-text-muted)]">{fmtTime(firstSmsAt)} · отправлено, ждём ответ оператора…</div>
) : notifStatus === "link_ready" ? (
<div className="text-[var(--color-text-muted)]">в очереди на отправку</div>
) : notifStatus === "manual_required" && smsLog.length === 0 ? (
<div className="text-[var(--color-text-muted)]">SMS не отправлялись — согласование шло без SMS</div>
) : (
<div className="text-[var(--color-text-muted)]">не отправлено</div>
)}
@ -279,6 +281,16 @@ export const SmsStatusCard = ({ order, userRole }) => {
</div>
)}
{/* Ручное управление без ошибок в логе: объясняем, что это значит */}
{notifStatus === "manual_required" && !lastError && !fundsProblem && (
<div className="rounded-lg bg-[rgba(245,158,11,0.10)] px-2 py-1.5 text-[var(--color-text)]">
⚠ Клиент не согласовал доставку — SMS-уведомления по расписанию закончились. Никакой ошибки
отправки не было: сообщение клиенту не уходило, потому что оно и не требовалось.
{smsLog.length === 0 && " Записей об отправке SMS нет."} Дальше — вручную: позвоните клиенту
или отправьте SMS вручную.
</div>
)}
{/* Нехватка средств — самая частая причина, объясняем прямо в карточке */}
{fundsProblem && (
<div className="rounded-lg border border-[var(--color-danger)] bg-[rgba(239,68,68,0.08)] px-2 py-1.5 text-[var(--color-danger)]">