parent
706166fa26
commit
30e8edc728
@ -0,0 +1,33 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
namespace DoctrineMigrations;
|
||||||
|
|
||||||
|
use Doctrine\DBAL\Schema\Schema;
|
||||||
|
use Doctrine\Migrations\AbstractMigration;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Auto-generated Migration: Please modify to your needs!
|
||||||
|
*/
|
||||||
|
final class Version20220407211354 extends AbstractMigration
|
||||||
|
{
|
||||||
|
public function getDescription(): string
|
||||||
|
{
|
||||||
|
return '';
|
||||||
|
}
|
||||||
|
|
||||||
|
public function up(Schema $schema): void
|
||||||
|
{
|
||||||
|
// this up() migration is auto-generated, please modify it to your needs
|
||||||
|
$this->addSql('CREATE TABLE roles (id INT AUTO_INCREMENT NOT NULL, name VARCHAR(255) NOT NULL, created DATETIME NOT NULL, updated DATETIME NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
|
||||||
|
$this->addSql('CREATE TABLE users (id INT AUTO_INCREMENT NOT NULL, lastname VARCHAR(255) NOT NULL, firstname VARCHAR(255) NOT NULL, kwh_price NUMERIC(2, 0) NOT NULL, hourly_cost NUMERIC(2, 0) NOT NULL, created DATETIME NOT NULL, updated DATETIME NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function down(Schema $schema): void
|
||||||
|
{
|
||||||
|
// this down() migration is auto-generated, please modify it to your needs
|
||||||
|
$this->addSql('DROP TABLE roles');
|
||||||
|
$this->addSql('DROP TABLE users');
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,62 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Component\Role\Domain;
|
||||||
|
|
||||||
|
use Doctrine\DBAL\Types\Types;
|
||||||
|
use Doctrine\ORM\Mapping as ORM;
|
||||||
|
|
||||||
|
|
||||||
|
#[ORM\Entity, ORM\Table(name:"roles")]
|
||||||
|
class Role
|
||||||
|
{
|
||||||
|
|
||||||
|
#[ORM\Id, ORM\GeneratedValue(strategy: 'AUTO')]
|
||||||
|
#[ORM\Column(type:Types::INTEGER)]
|
||||||
|
private int $id;
|
||||||
|
|
||||||
|
#[ORM\Column(type:Types::STRING, length:255)]
|
||||||
|
private string $name;
|
||||||
|
|
||||||
|
#[ORM\Column]
|
||||||
|
public \DateTime $created;
|
||||||
|
|
||||||
|
#[ORM\Column]
|
||||||
|
public \DateTime $updated;
|
||||||
|
|
||||||
|
public function __construct()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return int
|
||||||
|
*/
|
||||||
|
public function getId(): int
|
||||||
|
{
|
||||||
|
return $this->id;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param int $id
|
||||||
|
*/
|
||||||
|
public function setId(int $id): void
|
||||||
|
{
|
||||||
|
$this->id = $id;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function getName(): string
|
||||||
|
{
|
||||||
|
return $this->name;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param string $name
|
||||||
|
*/
|
||||||
|
public function setName(string $name): void
|
||||||
|
{
|
||||||
|
$this->name = $name;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,8 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Component\Role\Domain;
|
||||||
|
|
||||||
|
interface RoleDataMapper
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,9 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Component\Role\Domain;
|
||||||
|
|
||||||
|
interface RoleRepository
|
||||||
|
{
|
||||||
|
public function findById(int $id): Role;
|
||||||
|
public function findAll(): array;
|
||||||
|
}
|
@ -0,0 +1,38 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Component\Role\Infrastructure;
|
||||||
|
|
||||||
|
use App\Component\Role\Domain\Role;
|
||||||
|
use App\Component\Role\Domain\RoleDataMapper;
|
||||||
|
use App\Component\Role\Domain\RoleRepository;
|
||||||
|
use Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepository;
|
||||||
|
use Doctrine\Persistence\ManagerRegistry;
|
||||||
|
use Exception;
|
||||||
|
|
||||||
|
class RoleDatabaseAdapter extends ServiceEntityRepository implements RoleDataMapper, RoleRepository
|
||||||
|
{
|
||||||
|
|
||||||
|
public function __construct(ManagerRegistry $registry)
|
||||||
|
{
|
||||||
|
parent::__construct($registry, Role::class);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function findById(int $id): Role
|
||||||
|
{
|
||||||
|
$user = $this->find($id);
|
||||||
|
|
||||||
|
if (!$user)
|
||||||
|
{
|
||||||
|
throw new Exception(
|
||||||
|
'L\'utilisateur n\'existe pas'
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
return $user;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function findAll(): array
|
||||||
|
{
|
||||||
|
// TODO: Implement findAll() method.
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,8 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Component\User\Domain;
|
||||||
|
|
||||||
|
interface UserDataMapper
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
@ -1,6 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace App\Composant\User\Domain;
|
namespace App\Component\User\Domain;
|
||||||
|
|
||||||
interface UserRepository
|
interface UserRepository
|
||||||
{
|
{
|
@ -1,10 +1,10 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace App\Composant\User\Infrastructure;
|
namespace App\Component\User\Infrastructure;
|
||||||
|
|
||||||
use App\Composant\User\Domain\User;
|
use App\Component\User\Domain\User;
|
||||||
use App\Composant\User\Domain\UserDataMapper;
|
use App\Component\User\Domain\UserDataMapper;
|
||||||
use App\Composant\User\Domain\UserRepository;
|
use App\Component\User\Domain\UserRepository;
|
||||||
use Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepository;
|
use Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepository;
|
||||||
use Doctrine\Persistence\ManagerRegistry;
|
use Doctrine\Persistence\ManagerRegistry;
|
||||||
use Exception;
|
use Exception;
|
@ -1,8 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Composant\User\Domain;
|
|
||||||
|
|
||||||
interface UserDataMapper
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
Loading…
Reference in new issue