Я верно понимаю тогда структуру контроллера.
Мы делаем Product контроллер и в нем примерно 3 функции, create(), update(), delete()
Верно?
Не бойся расширять контроллер до всех нужных методов, например deleteOldBooks(), а не только delete, create и все такое (CRUD)
Но пусть он работает именно с Product, ведь для categories утебя будет свой контроллер со своими методами