Skip to content

Instantly share code, notes, and snippets.

@tarlepp
Last active April 23, 2020 20:10
Show Gist options
  • Save tarlepp/a27d9718f949dbeabf97434ad7f2a2b0 to your computer and use it in GitHub Desktop.
Save tarlepp/a27d9718f949dbeabf97434ad7f2a2b0 to your computer and use it in GitHub Desktop.
<?php
namespace App\Controller;
use App\UseCases\UserManagement;
use App\UseCases\UserManagementInterface;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\Routing\Annotation\Route;
class UserManagementController extends AbstractController
{
/**
* @Route("/usermanagement", name="app_user_management")
*/
public function __construct(UserManagementInterface $userManagement)
{
$this->userManagement = $userManagement;
}
public function index()
{
$usuariosCreados = $this->userManagement->getUsuariosCreados($this->getUser()->getUsername());
return $this->render('user_management/index.html.twig', [
'controller_name' => 'UserManagementController', $usuariosCreados
]);
}
}
<?php
namespace App\UseCases;
use App\Repository\UsuarioRepository;
class UserManagement implements UserManagementInterface
{
public function __construct(UsuarioRepository $userRepository){
$this->userRepository = $userRepository;
}
public function getUsuariosCreados($usuario){
$usuarios = $this ->userRepository->getUsuariosGestion($usuario);
}
}
<?php
namespace App\UseCases;
interface UserManagementInterface
{
public function getUsuariosCreados($usuario);
}
# This file is the entry point to configure your own services.
# Files in the packages/ subdirectory configure your dependencies.
# Put parameters here that don't need to change on each machine where the app is deployed
# https://symfony.com/doc/current/best_practices/configuration.html#application-related-configuration
parameters:
services:
# default configuration for services in *this* file
_defaults:
autowire: true # Automatically injects dependencies in your services.
autoconfigure: true # Automatically registers your services as commands, event subscribers, etc.
# makes classes in src/ available to be used as services
# this creates a service per class whose id is the fully-qualified class name
App\:
resource: '../src/*'
exclude: '../src/{DependencyInjection,Entity,Migrations,Tests,Kernel.php}'
# controllers are imported separately to make sure services can be injected
# as action arguments even if you don't extend any base controller class
App\Controller\:
resource: '../src/Controller'
tags: ['controller.service_arguments']
# add more service definitions when explicit configuration is needed
# please note that last definitions always *replace* previous ones
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment