<?php namespace core\services\menu; use core\entities\menu\Menu; use core\forms\menu\MenuForm; use core\repositories\menu\MenuRepository; class MenuManageService { private $repository; public function __construct(MenuRepository $repository) { $this->repository = $repository; } public function create(MenuForm $form): Menu { $menu = Menu::create( $form ); $this->repository->save($menu); return $menu; } public function edit($id, MenuForm $form): void { $menu = $this->repository->get($id); $menu->edit( $form ); $this->repository->save($menu); } public function remove($id): void { $menu = $this->repository->get($id); $this->repository->remove($menu); } }