Cargo CRM — Описание системы
Учёт грузов Италия → Бишкек (авиа, 2 рейса/неделю)
1. Из чего состоит система
В системе 8 разделов (таблиц). Каждый раздел хранит свою информацию:
flowchart LR
A["👤 Клиенты"] --> B["📦 Отправки"]
B --> C["👔 Вещи в отправке"]
B --> D["💰 Платежи"]
B --> E["🛫 Рейсы"]
B --> F["📤 Выдачи"]
E --> G["📊 Расходы"]
H["🔑 Сотрудники"] -.-> B
H -.-> D
H -.-> F
H -.-> G
Каждая стрелка — это связь. Например:
Отправка принадлежит Клиенту, содержит Вещи,
оплачивается Платежами, входит в Рейс и заканчивается
Выдачей.
2. Разделы системы — что где хранится
Люди, которые отправляют грузы
| ФИО | Айбек Усенов |
| Телефон | +996 555 123456 |
| WhatsApp | может отличаться от телефона |
| Страна | Италия |
| Заметки | постоянный клиент, скидка |
| считается Долг | сумма долгов по всем отправкам |
Один визит клиента = одна отправка
| Номер (трекинг) | IT-00125 (внутренний) |
| AWB | накладная авиакомпании (если есть) |
| Клиент | → выбор из базы |
| Рейс | → выбор (пусто = ещё на складе) |
| Кто принял | → менеджер Италии |
| Дата приёма | 15.06.2026 |
| Размеры коробки | Д×Ш×В в см (напр. 50×40×25) |
| считается Объёмный вес | Д×Ш×В / 6000 |
| считается Фактический вес | сумма весов всех вещей |
| считается Тарифицируемый вес | большее из (факт, объём) |
| Цена за кг | 14.00 € |
| считается Стоимость | вес × цена за кг |
| Статус | см. жизненный цикл ниже |
| Где лежит | текст: "Полка А-3" |
| считается Оплачено | сумма всех платежей |
| считается Долг | стоимость − оплачено |
Что именно клиент отправляет. Каждая вещь — отдельно
| Отправка | → к какой отправке относится |
| Название | "Куртка кожаная" |
| Вес, кг | 2.4 |
| Готовность | на складе / готово / в пути / прибыло |
Любой платёж по отправке. Может быть несколько
| Отправка | → к какой отправке |
| Сумма | 50.00 € |
| Дата | 15.06.2026 |
| Способ | наличные / карта / перевод |
| Тип | предоплата / финальный |
| Кто записал | → сотрудник |
Авиарейс Италия → Бишкек. 2 раза в неделю
| Номер AWB | 125-98765432 |
| Авиакомпания | Turkish Cargo / агент |
| Дата вылета | 18.06.2026 |
| Дата прилёта | заполняется в Бишкеке |
| Статус | запланирован / вылетел / прибыл |
| считается Общий вес | сумма весов всех грузов |
| считается Кол-во грузов | сколько отправок в рейсе |
Факт выдачи груза клиенту в Бишкеке
| Отправка | → какую отправку выдаём |
| Кто выдал | → менеджер Бишкека |
| Дата выдачи | 25.06.2026 |
| Кто забрал | ФИО получателя |
| Документ | паспорт / ID получателя |
| Заметки | доп. информация |
Затраты. Привязаны к рейсу или общие (зарплата, аренда)
| Рейс | → к какому рейсу (или пусто = общий) |
| Категория | транспорт, топливо, зарплата, склад, документы, таможня, другое |
| Сумма | 180.00 € |
| Дата | 18.06.2026 |
| Описание | "Топливный сбор Turkish Cargo" |
| Кто записал | → сотрудник |
4 роли: владелец, Италия, Бишкек, финансы
| Имя | Айбек |
| Email | для входа в систему |
| Роль | владелец / Италия / Бишкек / финансы |
3. Как груз проходит от приёма до выдачи
stateDiagram-v2
[*] --> Принято_на_складе: Менеджер Италии создаёт отправку\n+ добавляет вещи
Принято_на_складе --> Готово_к_отправке: Все вещи отмечены готовыми
Готово_к_отправке --> Добавлено_в_рейс: Отправка привязана к рейсу
Добавлено_в_рейсе --> В_пути: Рейс вылетел
В_пути --> Прибыло_в_Бишкек: Рейс прибыл
Прибыло_в_Бишкек --> Частично_оплачено: Была предоплата
Прибыло_в_Бишкек --> Полностью_оплачено: Полная оплата
Частично_оплачено --> Полностью_оплачено: Доплата при выдаче
Полностью_оплачено --> Выдано: Клиент забрал груз
Прибыло_в_Бишкек --> Выдано_в_долг: Выдано без оплаты (только владелец)
Выдано_в_долг --> Выдано: Владелец подтвердил
Выдано --> [*]
Важно: груз нельзя выдать, если он не оплачен. Исключение —
если владелец лично подтвердит выдачу в долг. Тогда долг фиксируется
в системе и виден на дашборде.
4. Пошаговый процесс — что кто делает
1
Создание клиента Менеджер Италии
Если клиента нет в базе — заполняет: ФИО, телефон, WhatsApp, страна
2
Приём груза Менеджер Италии
Создаёт отправку: номер (IT-NNNNN), выбирает клиента, указывает цену за кг (14€), вводит размеры коробки
Статус: принято на складе. Оплата: не оплачено
3
Добавление вещей Менеджер Италии
Добавляет каждую вещь отдельно: "Куртка кожаная" 2.4 кг, "Обувь Nike" 1.8 кг, "Косметика" 0.5 кг
Система сама считает: общий вес = 4.7 кг
4
Расчёт стоимости — автоматически
Размеры коробки 50×40×25 см → объёмный вес = 50000/6000 = 8.33 кг. Тарифицируемый = max(4.7, 8.33) = 8.33 кг
Стоимость = 8.33 × 14 = €116.62
5
Предоплата (если была) Менеджер Италии Финансы
Записывает платёж: 50€, перевод, предоплата
Оплата: частично. Оплачено = 50€, долг = 66.62€
6
Подготовка к отправке Менеджер Италии
Отмечает все вещи как "готово", указывает где лежит на складе ("Полка А-3")
Статус: готово к отправке (только когда все вещи готовы)
7
Создание рейса Владелец Менеджер Италии
Создаёт рейс: номер AWB, авиакомпания, дата вылета. Привязывает готовые отправки к рейсу
Отправка → в рейсе. Вещи → в пути
8
Вылет Менеджер Италии Владелец
Статус рейса: вылетел
9
Прибытие в Бишкек Менеджер Бишкек
Статус рейса: прибыл. Все отправки в рейсе → статус: прибыло. Вещи → прибыло
Грузы появляются в списке "К выдаче"
10
Финальная оплата Менеджер Бишкек Финансы
Записывает платёж: остаток суммы, наличные, финальный
Оплата: полностью. Долг = 0
11
Выдача груза Менеджер Бишкек
Записывает: кто забрал, паспорт/ID, дата. Груз выдан
Статус: выдано. Если без оплаты — только владелец может подтвердить
5. Как считается стоимость груза — пример
Клиент Айбек приносит на склад 3 вещи и просит отправить в Бишкек:
Вещи (менеджер вводит вручную):
• Куртка кожаная — 2.4 кг
• Обувь Nike — 1.8 кг
• Косметика — 0.5 кг
Размеры коробки (менеджер вводит): 50×40×25 см
Цена за кг (менеджер вводит): 14.00 €
Фактический вес = 2.4 + 1.8 + 0.5 = 4.7 кг (считается сам)
Объёмный вес = 50×40×25 / 6000 = 8.33 кг (считается сам)
Тарифицируемый вес = max(4.7, 8.33) = 8.33 кг (считается сам)
Стоимость = 8.33 × 14.00 = €116.62 (считается сам)
Предоплата (перевод): 50.00 €
Оплачено = 50.00 € (считается сам)
Долг = 116.62 − 50.00 = €66.62 (считается сам)
Прибытие в Бишкек. Доплата (наличные): 66.62 €
Оплачено = 50.00 + 66.62 = €116.62 (считается сам)
Долг = 116.62 − 116.62 = €0.00 (считается сам)
Выдача → груз закрыт
Почему берём большее из весов? Авиакомпания тарифицирует по месту,
которое груз занимает. Подушка весит 1 кг, но занимает 60×40×40 см
= 16 кг объёмного веса. Клиент платит за 16 кг, не за 1 кг.
6. Кто что видит и делает
flowchart TB
subgraph ROLES[" "]
OWNER["👑 Владелец\nВидит и делает всё"]
M_IT["🇮🇹 Менеджер Италии\nПринимает грузы"]
M_KG["🇰🇬 Менеджер Бишкек\nВыдаёт грузы"]
FIN["💰 Финансы\nДеньги и отчёты"]
end
subgraph SCREENS["Что доступно"]
DASH["Дашборд\n— обзор всего"]
CLI["Клиенты\n— добавлять, смотреть"]
NEW["Приём груза\n— создать отправку + вещи"]
WH["Склад\n— готовность, где лежит"]
FL["Рейсы\n— создать, менять статус"]
HO["Выдача\n— кто забрал, паспорт"]
PAY["Платежи\n— предоплата, финал"]
EXP["Расходы\n— записать затраты"]
REP["Отчёты\n— прибыль, долги"]
end
OWNER --> DASH & CLI & NEW & WH & FL & HO & PAY & EXP & REP
M_IT --> NEW & WH & CLI & FL
M_KG --> FL & HO & PAY
FIN --> DASH & EXP & PAY & REP
style OWNER fill:#fdeaea,color:#c0392b,stroke:#c0392b
style M_IT fill:#e8f0fe,color:#1a5276,stroke:#4a6fa5
style M_KG fill:#e8f8f0,color:#1e8449,stroke:#27ae60
style FIN fill:#fef9e7,color:#9a7d0a,stroke:#d4a017
7. Дашборд — что видит владелец при входе
| Показатель | Что значит | Откуда берётся |
| Грузов в пути | Сейчас летит или едет | отправки со статусом "в пути" |
| Прибыло в Бишкек | Ждёт выдачи | отправки со статусом "прибыло" |
| Денег получено за месяц | Все платежи за текущий месяц | сумма по таблице платежей |
| Должны клиенты | Сумма всех долгов | сумма по непогашенным отправкам |
| Прибыль за месяц | Доходы минус расходы | платежи минус расходы |
| Расходы за месяц | Все затраты за месяц | сумма по таблице расходов |
| Грузов на складе Италии | Принято, но не отправлено | статус "принято" или "готово" |
| Выдано за месяц | Сколько грузов отдали клиентам | записи в таблице выдач |
8. Как сходится касса
ДОХОДЫ (за месяц) = сумма всех платежей = €4,500
РАСХОДЫ (за месяц) = сумма всех расходов = €2,100
ПРИБЫЛЬ = 4,500 − 2,100 = €2,400
ПРОВЕРКА:
• Должны клиенты = €0 (все оплатили) ✓
• Грузов не выдано = 0 (все забрали) ✓
• Касса сошлась ✓
Прибыль по конкретному рейсу
Рейс 125-98765432, 3 отправки
Доход рейса = сумма стоимостей 3 отправок = €500
Расходы рейса = фрахт + топливо + таможня = €180
Прибыль рейса = 500 − 180 = €320
ОПЕРАЦИОННЫЕ расходы (не к рейсу):
• Зарплата менеджеров = €800/мес
• Аренда склада = €400/мес
ОБЩАЯ прибыль = прибыль всех рейсов − операционные = €2,400
Расходы бывают двух типов:
1. К рейсу — фрахт самолёта, топливный сбор, таможня. Привязаны к конкретному рейсу.
2. Общие — зарплата, аренда склада. Не привязаны к рейсу. Учитываются в общей прибыли за месяц.