Задать вопрос
@koshagoool
Backend Developer

Как лучше спроектировать БД для системы сделок с этапами сделки как в фриланс-биржах?

Учусь делать проекты (от идеи до релиза, т.е я хочу полный цикл пройти: составление ТЗ, проектирование БД, разработка MVP), столкнулся со сложностью в проектировании БД.
Процесс такой:
При поиске исполнителя, заказчик выберет, кликнет на “связаться”, где сможет отправить сопроводительное письмо. Выведется форма, где он заполнит следующие поля:
- Тема
- Название организации/имя
- Сопроводительное письмо
Дальше после отправки появится уведомление об успешной отправке, и в списке блоггеров кнопка “связаться” станет недоступной для тех, кому уже была отправлена заявка.
У блоггера появится уведомление, где выведется вся информация: от какой организации, на какую тему и какое сообщение с заявкой. Там он может принять или отказаться от сделки.
Если примет, то заказчик сможет отправлять личные сообщения, где они уже смогут обсудить все моменты и если договорятся, то заказчик в диалоге нажмет на кнопку “начать сделку”, где выставит условия сделки:
- Сумма
- Срок
Выставив условия сделки, заказчик нажмет на “отправить”.
В свою очередь блоггер может принять или отказаться.

Мои варианты реализации:
5dfdc1d42c816899103863.png

В чем я вижу проблему своего решения:
Каждый раз при отправке приглашения обсудить заказ, будет появляться запись в Deal, но проблема:
пока что не все поля Deal заполнены. Ещё не ясно, какой будет price, какой дедлайн (start_date, end_date), эти данные заполнены будут только когда Этап у Сделки поменяется.
Пока ясно значение только для stage_id.
К тому же, этапов будет фиксированное количество:
1. Предварительный этап (это когда сделка ещё не началась, а просто переписка идет)
2. Начало сделки (выставляется цена сделки, start_date и end_date, т.е сроки ставятся)
3. Процесс сделки (когда сроки и цена выставлены, и идет непосредственная работа);
4. Сдача/проверка/правки (когда работа сдается и нужно проверить).
5. Закрытие сделки (деньги переводятся, работа принимается и так далее).

Я путаюсь в своей же структуре и не могу понять, как лучше быть.
  • Вопрос задан
  • 147 просмотров
Подписаться 2 Простой 3 комментария
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы