powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Хранение инфы о скидках. Как сделать правильно?
6 сообщений из 6, страница 1 из 1
Хранение инфы о скидках. Как сделать правильно?
    #32949153
a-n-o-n-y-m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нужно организовать хранение данных о скидках на товары.
Планируются следующие стратегии:
1. Скидки по категории товара
2. По конкретному товару
3. По общей сумме заказа
4. По кол-ву товаров в позиции заказа.
5. Сочетания этих скидок

В приложении используется ORM.
Я думаю, применить паттерн Стратегия (по Фаулеру)
Вопрос состоит в том, как лучше хранить эти данные в БД.

Надумал соответствующие решения и прошу уважаемых собеседников их прокомментировать.

(1) Столбец Discount в таб. Categories
(2) --||-- в таб. Products
(3) Заводить таблицу AmountDiscount (decimal OrderAmount, int Discount)
(4) Я прелпологаю сделать таблицу PriceLevels где будет хранится кол-во единиц товара и стоимость для него и не хранить цену в Products. Либо хранить ID товара и % скидки. А саму цену хранить в Товарах.
(5) В Products хранить ID стратегии скидок. А в приложении, при высчитывании суммы заказа создавать экземпляр стратегии исходя из ID.
...
Рейтинг: 0 / 0
Хранение инфы о скидках. Как сделать правильно?
    #32949157
Kartas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
в данный момент озадачили аналогичной задачей. есть головной склад. есть пункты продажи товара. есть продавцы. каждому продавцу нарезается свой процент с продаж по каждому товару разный. как босс фирмы захочет. красивого решения пока не нашёл. может кто что подскажет?
...
Рейтинг: 0 / 0
Хранение инфы о скидках. Как сделать правильно?
    #32950058
aleks2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kartasв данный момент озадачили аналогичной задачей. есть головной склад. есть пункты продажи товара. есть продавцы. каждому продавцу нарезается свой процент с продаж по каждому товару разный. как босс фирмы захочет. красивого решения пока не нашёл. может кто что подскажет?

Босс скоро устанет нарезать по-мелочи... Поэтому

1) Таблица Pecents
ID, ТоварID, ПродавецID, Процент, ДатаНачала, ДатаКонца
2) Для ТоварID, ПродавецID зарезервируй какое-нибудь значение, например 0, как ЛЮБОЙ ID. Т.е. ежели ТоварID=0, то это процент для ВСЕХ товаров, если не указано иное. Ежели ПродавецID=0, то то это процент для ВСЕХ продавцов, если не указано иное.
3) Ну и заполняй, сначала забей:
ТоварID=0, ПродавецID=0, Процент=?, ДатаНачала=0, ДатаКонца='что-нибудь большое'.
Ну и пусть далее босс детализирует.
--------------------
Поскольку усталость у босса наступит очень быстро, рекомендуется предусмотреть группировку продавцов и товаров по категориям, чтобы раздавать процент гопом.
...
Рейтинг: 0 / 0
Хранение инфы о скидках. Как сделать правильно?
    #32950540
Фотография UK0IAI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aleks2 Kartasв данный момент озадачили аналогичной задачей. есть головной склад. есть пункты продажи товара. есть продавцы. каждому продавцу нарезается свой процент с продаж по каждому товару разный. как босс фирмы захочет. красивого решения пока не нашёл. может кто что подскажет?

Босс скоро устанет нарезать по-мелочи... Поэтому

1) Таблица Pecents
ID, ТоварID, ПродавецID, Процент, ДатаНачала, ДатаКонца
2) Для ТоварID, ПродавецID зарезервируй какое-нибудь значение, например 0, как ЛЮБОЙ ID. Т.е. ежели ТоварID=0, то это процент для ВСЕХ товаров, если не указано иное. Ежели ПродавецID=0, то то это процент для ВСЕХ продавцов, если не указано иное.
3) Ну и заполняй, сначала забей:
ТоварID=0, ПродавецID=0, Процент=?, ДатаНачала=0, ДатаКонца='что-нибудь большое'.
Ну и пусть далее босс детализирует.
--------------------
Поскольку усталость у босса наступит очень быстро, рекомендуется предусмотреть группировку продавцов и товаров по категориям, чтобы раздавать процент гопом.

Как решить задачу не решая ее? У меня таже трабла, только я и босс, и Продакт, и Прогер - все в одном флаконе. Чтот такое скидка? Это то что приятно видеть Клиенту. При создании Счета на предоплату - я выбираю или колонку прайса или тупой процент скидки. Но этот Процент огромными и жирными буквами печатается на счете на уровне заголовка (а не в подвале).
В итоге каждому дураку понятно - скидка есть.

Однако все ценовые политики - всегда назначаются только для Групп товаров...

Однако один товар одновременно может входить в разные группы (идеология ссылок - ярлыков как на дестопе) - на некое время или навсегда.

Однако группы товаров могут формироваться в разное время и разными юзверями.

Но политики цен - токо для групп товаров. Если надо создадать новую политику для неких товаров (распродажа) - пожалуйста - создайте новую группу товаров, задайте для нее время жизни...и "накидайте" в нее членов
и дайте проценты - скидок на группу...




.
...
Рейтинг: 0 / 0
Хранение инфы о скидках. Как сделать правильно?
    #32950601
Kartas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, идея с группами самая толковая. так и сделаю, спасибо.
...
Рейтинг: 0 / 0
Хранение инфы о скидках. Как сделать правильно?
    #32954473
Natkaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а у моего клиента такие скидки

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


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