react-logo/backend/src/DataFixtures/ProjectFixtures.php

104 lines
2.5 KiB
PHP

<?php
namespace App\DataFixtures;
use App\Entity\Project;
use App\Entity\Request;
use App\Entity\User;
use Doctrine\Bundle\FixturesBundle\Fixture;
use Doctrine\Common\DataFixtures\DependentFixtureInterface;
use Doctrine\Common\Persistence\ObjectManager;
class ProjectFixtures extends Fixture implements DependentFixtureInterface
{
public function load(ObjectManager $manager)
{
//NEW PROJECT
$user = $manager
->getRepository(User::class)
->findOneByUsername('dev1')
;
$project = new Project();
$request = $manager
->getRepository(Request::class)
->findOneByTitle('Demande num 1')
;
$project->addRequest($request);
$request = $manager
->getRepository(Request::class)
->findOneByTitle('Demande num 2')
;
$project->addRequest($request);
$request = $manager
->getRepository(Request::class)
->findOneByTitle('Demande num 3')
;
$project->addRequest($request);
$project->setName("Projet 1");
$project->addUser($user);
$manager->persist($project);
//NEW PROJECT
$user = $manager
->getRepository(User::class)
->findOneByUsername('client1')
;
$project = new Project();
$request = $manager
->getRepository(Request::class)
->findOneByTitle('Demande num 4')
;
$project->addRequest($request);
$request = $manager
->getRepository(Request::class)
->findOneByTitle('Demande num 5')
;
$project->addRequest($request);
$project->setName("Projet 2");
$project->addUser($user);
$manager->persist($project);
//NEW PROJECT
$user = $manager
->getRepository(User::class)
->findOneByUsername('client1')
;
$project = new Project();
$project->setName("Projet 3");
$project->addUser($user);
$manager->persist($project);
//NEW PROJECT
$user = $manager
->getRepository(User::class)
->findOneByUsername('client2')
;
$project = new Project();
$project->setName("Projet 4");
$project->addUser($user);
$manager->persist($project);
$manager->flush();
}
public function getDependencies()
{
return [
UserFixtures::class,
RequestFixtures::class
];
}
}