Уважаемые разработчики, задачка в голове одна поселилась
создаётся сайт для ребят, которые занимаются ремонтом и обслуживанием компьютерной техники,
на сайте создаются в виде нод всё записи ремонта, обслуживания, вызовов и т.д.
А также им необходим раздел СКЛАД в котором они могли бы заносить приобретаем железки и расходники
Склад же этот нужно привязать ко всем этим ремонтом, обслуживанием, вызовам и т.д.
Т.е. допустим получен вызов, заправить картридж принтера, получается при создании записи
вызова должно быть поле в котором бы они указали какой тонер использовали, и в каком
количестве (причём, акромя тонера, там может быть ещё фотобарабан меняли, или ещё что нибудь)
После сохранения ноды, то самое кол-во должно удалиться общего склада.
По началу я думал как
создать словарь таксономии - СКЛАД
в котором в иерархии разложить всё по категориям, какие могут быть расходники и железки
логика была в том, что пополнение склада это отдельная нода - отдельного типа материала
в которой указывалось бы ссылкой на термин словаря, что пополнить и на сколько
(а дальше дело Rules, которые бы посмотрели, и сложили)
уход со склада был бы аналогично только через те самые ноды ремонт, обслуживание и т.д.
всё бы ничего, если бы я уход делал в одном экземпляре, я бы сделал поле ссылка на термин
и числовое поле - аля кол-во ухода
однако надо дать возможность выбора нескольких позиций ухода со склада
к тому же, как то ограничить возможность выбора количество ухода - на основании текущего
существующего количества. Т.е. нельзя выбрать уход в 5 сетевых плат, когда их там только 2
Надеюсь, вы поняли - что я пытался до нести, как бы вы поступили в моей задачке?
Комментарии
ТО что ты написал подход не верный.
Попадался видеообзор какого-то модули для учета (accounting). Поищи такое.
А вообще хочу машину времени на Друпал.
Можно попробовать извратиться и сделать это на нодах, сск, таксономии, вьюсах и рулсах. Но имхо это изврат...
Знаю, что разработчики комерца сделали такой модуль, мб его прикрутить?
Чего изврат? Вполне. Смотря какие цели.
IMHO, сделать такую систему вполне легко при использовании ubercart
заказчики и труженики - обычные пользователи друпал с различными правами
управление запасами через стандартный модуль stock
вызовы/ремонты - обычные заказы через корзину
и т.д.
честно говоря не охото таких монстров как commerce и ubercart подключать, и получается обманывать их
посмотрел accounting, как то страшновато стало, боюсь не то
как я сейчас делаю, у меня есть словарь таксономии СКЛАД, в котором подобное
Ноутбуки
-Дисплеи
-Шлейфы
-Аккумуляторы
-Корпуса
-Матрицы
-Петли
-...
у этого словаря есть поле ОБЩЕЕ КОЛИЧЕСТВО, т.о. мой словарь служит как бы счётчиком всех товаров на складе, а также как бы "категоризатором"
Пополнение же склада, и его убывание диктуется типом материала ДВИЖЕНИЕ НА СКЛАДЕ, в котором есть поле ТИП ОБОРУДОВАНИЯ, КОЛИЧЕСТВО и ТИП ДВИЖЕНИЯ
т.е. при пополнении склада создаётся нода с ТИПОМ ДВИЖЕНИЯ - ПРИОБРЕТЕНО, далее выбирается ТИП ОБОРУДОВАНИЯ и КОЛИЧЕСТВО в штуках
в результате добавления, срабатывает РУЛЗА которая понимает с каким термином работают, и делает СЛОЖЕНИЕ либо ВЫЧИТАНИЕ общего количества
в результате вроде как имею движение на складе
----------------------
вторая задача диктовать движение в результате ремонта, когда может быть несколько деталей использовано, в этом случае планирую также в тип материала РЕМОНТ добавить ТИП ОБОРУДОВАНИЯ и сделать его кол-во неограниченным (их значений), чтобы можно было множество деталей выбирать, далее при создании этой ноды, теоретически РУЛЗА должна цикла по этим
значениям пробежаться и минусовать их кол-во в словаре СКЛАД
косяк в том, что иногда может быть использовано несколько штук одной детали,и получается для этого нужно бы поле КОЛ-ВО дополнительное, также в идеале бы, показывать только те термина таксономии чьё кол-во >0
но т.к. я использую для выбора SIMPLE HIERCfsdfdf LIST, там нет такого понятия, если бы использовал ENTITY REFERENCE то подсунул бы ему свою вьюху где кол-во больше нуля, но он не сможет так красиво сделать выбор как SIMPLE HIE.... LIST
Это изврат, дальше хуже будет. Ставьте коммерц или убер.