Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Хранение инфы о скидках. Как сделать правильно? / 6 сообщений из 6, страница 1 из 1
06.03.2005, 13:45
    #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
06.03.2005, 13:59
    #32949157
Kartas
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранение инфы о скидках. Как сделать правильно?
в данный момент озадачили аналогичной задачей. есть головной склад. есть пункты продажи товара. есть продавцы. каждому продавцу нарезается свой процент с продаж по каждому товару разный. как босс фирмы захочет. красивого решения пока не нашёл. может кто что подскажет?
...
Рейтинг: 0 / 0
08.03.2005, 15:05
    #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
09.03.2005, 09:52
    #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
09.03.2005, 10:20
    #32950601
Kartas
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранение инфы о скидках. Как сделать правильно?
Да, идея с группами самая толковая. так и сделаю, спасибо.
...
Рейтинг: 0 / 0
10.03.2005, 21:36
    #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]