Pyramid

Тестовое задание для Laravel разработчика

  • Необходимо создать лишь API, без фронтенда.
  • Создать админ панель, в которой пользователь может зарегистрироваться как менеджер (manager).
  • После создания у него должна быть возможность создать сотрудника (employee). При создании нужно указать электронный адрес и пароль.
  • Каждый созданный сотрудник может войти в админ панель и создать там запись, у которой есть:
    • название
    • изображение
    • категория
  • Категории должны быть в отдельной таблице, т.е. связь будет один ко многим. Список категорий должен быть забит в сиде (Seeder).
  • После создания сотрудник может увидеть список всех записей которые он создал, но не может видеть записи, которые создали другие сотрудники.
  • На странице должно быть 10 записей. Использовать для пагинации метод paginate для eloquent.
  • Менеджер может увидеть список всех записей, которые создали ТОЛЬКО ЕГО сотрудники.
  • Сотрудник увидит список всех записей в категории, которые создал он, а менеджер увидит список всех записей в данной категории, которые создали его сотрудники.
  • Так же менеджер может увидеть автора записи и, нажав на него, увидит список всех записей данного сотрудника.
  • Менеджер может удалить любую запись, которую создал ЕГО сотрудник.
  • Сотрудник может обновить и удалить любую свою запись.
  • Таблицы для базы данных должны создаваться с помощью миграции.
  • Права доступа к методам создания пользователей и записей должны контролироваться через policy
  • Названия ролей – manager, employer. Таблицу записей необходимо назвать Posts

Срок: 2 дня

Необходимо загрузить на github и прислать ссылку