Инвентарь с функцией поддержки нескольких единиц
Я занимался разработкой системы инвентаризации (PHP Codeigniter & MySQL), я установил почти все, кроме одной функции, которую один из моих клиентов хочет внедрить в систему, - функцию поддержки нескольких единиц системы.
В настоящее время моя система поддерживает только одну единицу товара на транзакцию:
item_desc: Item1
default_unit: pc
reorder: 1
in_stock: 25
remain: 25
В многокомпонентной функции это станет:
item_desc: Item1
default_unit: pc
big_unit: pack
pack_size: 50
reorder: 1
in_stock: 25 pack
remain: 24 pack 5 pc
Может кто-нибудь дать мне подсказку, возможно, о простом способе реализовать это? Я просто хочу знать, с чего начать. Я был бы очень признателен, если бы кто-то мог поделиться идеей относительно этого:)
1 ответ
Мы только что запустили v2 нашего сайта, и я сам прошел через 8 месяцев всевозможных вопросов, подобных этому. Лучший способ сделать это - разделить ваши таблицы на товары, инвентарь и списки.
Товары содержат только информацию о продукте, вещи, которые никогда не изменятся. Товарно-материальные запасы содержат информацию только о текущем товарно-материальных запасах, т. Е. Количестве в наличии, наличии на складе, местонахождении на складе и т. Д. В листингах описывается, как обращаться с поддержкой нескольких товаров. Эта таблица будет содержать информацию о списках и извлекать из двух других таблиц данные о продукте и количестве. Таким образом, у вас будет базовая структура таблицы что-то вроде этого
Товары
- Код товара
- наименование товара
- productModel
- Описание товара
инвентарь
- InventoryID
- Код товара
- quantityOnHand
- место нахождения
Объявления
- listingId
- InventoryID
- quantityInListing
- numberOfListings
- цена
Наша компания продает много известных вещей, поэтому списки регулярно меняются, но вы всегда можете настроить автоматическое заполнение списков на основе инвентаря, если вы продаете новые вещи, которые вы просто пополняете. Делая это таким образом, вы не получите тонны дублирования данных, как если бы вы только что создали продукты для кратных. Это также позволяет вам продавать любой товар в любом количестве и устанавливать цены для этих количеств вручную.