Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Как отразить прайслист в базе данных / 13 сообщений из 13, страница 1 из 1
30.03.2015, 10:50
    #38920791
sargonpiraev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отразить прайслист в базе данных
Здравствуйте, подскажите пожайлуйста как правильно разложить сущности в базе данных.

Есть компании занимающиеся эвакуацией. У каждой из них свои прайс-листы, например: прайс

Расчет стоимости может зависеть от времени заказа, места подачи и назначения, от типа транспортного средства.

При этом у каждой компании свой прайс, который немного будет отличаться от других дабавляя услугу или наоборот. Как можно положить прайсы чтобы потом можно было автоматически просчитать стоимость заказа указав входящие данные? Может кто решал подобную задачу?

Большое спасибо.
...
Рейтинг: 0 / 0
30.03.2015, 12:18
    #38920991
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отразить прайслист в базе данных
Одна таблицы - на компании
Вторая таблица - на их прайс-листы
Третья таблица - типы транспортных средств
Четвёртая таблица - поправочные коэффициенты от типа
Пятая таблица - коэффициенты от времени заказа

Как формализуются место назначения и подачи - у меня идей нет, смотри по месту.

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
30.03.2015, 12:30
    #38921005
sargonpiraev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отразить прайслист в базе данных
Если более подробно:

Есть две компании

Компания 1:
Стоимость перевозки легкового отечественного автомобиля:
В пределах МКАД:
Первый час - 1400
Каждые последующие 20 минут - 400
За МКАДом:
За каждый км - 50
Доп услуги:
За пролитое масло на платформу эвакуатора - 150
За каждое заблокированное колесо - 300

Компания 1:
Стоимость перевозки легкового отечественного автомобиля:
В пределах МКАД:
Подача эвакуатора - 300
Первый час - 1100
Каждые последующие 20 минут - 400
За МКАДом:
Подача эвакуатора:
до 30 км - 300
от 30 км до 100 км - 500
от 100 км - 1000
За каждый км - 50
Доп. услуги:
Эвакуация без владельца авто - 500
Заблокирована АКПП - 600
Необходимо вытащить из кювета - 400

У них есть чтото общее но есть и разное. Мне нужно сделать так чтобы при запросе цены эвакуации по конкретному эвакуатору был просчет с учетом прайса его компании. Не могу придумать как это все универсально положить в базу, чтобы потом при появлении новой компании нужно было просто завести новую запись и все. И вообще возможно ли это или стоит для каждой компании заводить отдельную таблицу которая наследовала от основной?

Как лучше сделать? Может есть какая статья подходящяя или может кто подсказать в каком направлении двигаться?
...
Рейтинг: 0 / 0
30.03.2015, 12:36
    #38921012
sargonpiraev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отразить прайслист в базе данных
Dimitry Sibiryakov
Четвёртая таблица - поправочные коэффициенты от типа
Пятая таблица - коэффициенты от времени заказа

Как формализуются место назначения и подачи - у меня идей нет, смотри по месту.



Как понять поправочные кэффициенты от типа?
...
Рейтинг: 0 / 0
30.03.2015, 12:42
    #38921020
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отразить прайслист в базе данных
sargonpiraevКак лучше сделать?
Одна таблица на список компаний.
Вторая таблица - оказываемые ими услуги с ценами.

Всё.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
30.03.2015, 12:44
    #38921027
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отразить прайслист в базе данных
sargonpiraev,

Пока мне видится две таблицы:
1) Справочник компаний
2) Прайс-лист из полей:
- идентификатор услуги
- ссылка на компанию
- наименование услуги
- цена услуги
- минимальное количество услуги (обычно ноль)
- максимальное количество услуги (единица для услуг есть/нет)

Предполагается, что стоимость услуг только складывается. При появлении мультипликативных услуг (например, ночной тариф - вся сумма удваивается) придется дополнять.

Возможно, при развитии системы понадобится справочник услуг.
...
Рейтинг: 0 / 0
30.03.2015, 12:44
    #38921028
sargonpiraev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отразить прайслист в базе данных
Входящие данные которые сейчас принимаю

1. координаты места подачи и места назначения
2. время перевозки с учетом пробок и расстояние за условным полигоном (МКАД, КАД) и внутри
3. вес авто
4. требуемый тип эвакуатора

но для каждой компании нужно указывать дополнительные данные для просчета стоимости услуги
...
Рейтинг: 0 / 0
30.03.2015, 13:03
    #38921056
sargonpiraev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отразить прайслист в базе данных
miksoftsargonpiraev,

Пока мне видится две таблицы:
1) Справочник компаний
2) Прайс-лист из полей:
- идентификатор услуги
- ссылка на компанию
- наименование услуги
- цена услуги
- минимальное количество услуги (обычно ноль)
- максимальное количество услуги (единица для услуг есть/нет)

Предполагается, что стоимость услуг только складывается. При появлении мультипликативных услуг (например, ночной тариф - вся сумма удваивается) придется дополнять.

Возможно, при развитии системы понадобится справочник услуг.


Т.е прайслист примерно такой?

id company_id service_name service_price min max1 1 эвакуация за 30 км. от МКАД для легковых авто за 1 км. 50 0 км2 1 эвакуация за 30 км. от МКАД для иномарок авто за 1 км. 60 0 км3 1 заблокировано колесо за 1 шт. 300 0 шт
...
Рейтинг: 0 / 0
30.03.2015, 13:05
    #38921062
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отразить прайслист в базе данных
sargonpiraevТ.е прайслист примерно такой?

id company_id service_name service_price min max1 1 эвакуация за 30 км. от МКАД для легковых авто за 1 км. 50 0 км2 1 эвакуация за 30 км. от МКАД для иномарок авто за 1 км. 60 0 км3 1 заблокировано колесо за 1 шт. 300 0 штПочти:id company_id service_name service_price min max1 1 эвакуация за 30 км. от МКАД для легковых авто за 1 км. 50 0 1502 1 эвакуация за 30 км. от МКАД для иномарок авто за 1 км. 60 0 1503 1 заблокировано колесо за 1 шт. 300 0 4Тут предполагается, что дальше 150 км от МКАД эвакуатор не поедет вовсе.
...
Рейтинг: 0 / 0
30.03.2015, 13:10
    #38921071
sargonpiraev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отразить прайслист в базе данных
miksoft,

Спасибо! А можете рассказать что делать есть появляются мультипилкативные услуги?
...
Рейтинг: 0 / 0
30.03.2015, 13:19
    #38921088
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отразить прайслист в базе данных
sargonpiraevmiksoft,

Спасибо! А можете рассказать что делать есть появляются мультипилкативные услуги?Тут нужно смотреть по факту, т.е. нужны живые примеры.
Если они влияют на всю сумму, то просто добавить аналогичную таблицу, в которой вместо цены будет коэффициент, а мин/макс, наверное, будут не нужны.
...
Рейтинг: 0 / 0
30.03.2015, 13:54
    #38921149
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отразить прайслист в базе данных
Dimitry SibiryakovОдна таблицы - на компании
Вторая таблица - на их прайс-листы
Третья таблица - типы транспортных средств
Четвёртая таблица - поправочные коэффициенты от типа
Пятая таблица - коэффициенты от времени заказа

Как формализуются место назначения и подачи - у меня идей нет, смотри по месту.



Вторая таблица - на их прайс-листы -- на прайс-листы надо две таблицы.
...
Рейтинг: 0 / 0
30.03.2015, 15:00
    #38921242
sargonpiraev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отразить прайслист в базе данных
MasterZivDimitry SibiryakovОдна таблицы - на компании
Вторая таблица - на их прайс-листы
Третья таблица - типы транспортных средств
Четвёртая таблица - поправочные коэффициенты от типа
Пятая таблица - коэффициенты от времени заказа

Как формализуются место назначения и подачи - у меня идей нет, смотри по месту.



Вторая таблица - на их прайс-листы -- на прайс-листы надо две таблицы.

почему?
...
Рейтинг: 0 / 0
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Как отразить прайслист в базе данных / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]