diff --git a/src/Command/Migration/MigrateClientsCommand.php b/src/Command/Migration/MigrateClientsCommand.php index b5117a4..f4c2fc1 100644 --- a/src/Command/Migration/MigrateClientsCommand.php +++ b/src/Command/Migration/MigrateClientsCommand.php @@ -5,6 +5,7 @@ namespace App\Command\Migration; use App\Entity\Client; use App\Entity\HardwareProfile; use App\Entity\OrganizationalUnit; +use App\Model\OrganizationalUnitTypes; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\Query\ResultSetMapping; use Doctrine\Persistence\ManagerRegistry; @@ -65,9 +66,16 @@ class MigrateClientsCommand extends Command $clientEntity->setPosition(['x' => 0, 'y' => 0]); } - $migrationId = $client['ordenadores.grupoid'] === 0 ? $client['ordenadores.idaula'] : $client['ordenadores.grupoid']; + $migrationId = match ($client['ordenadores.grupoid']) { + 0 => OrganizationalUnitTypes::CLASSROOM . '-' . $client['ordenadores.idaula'], + default => OrganizationalUnitTypes::CLIENTS_GROUP . '-' . $client['ordenadores.grupoid'], + }; $organizationalUnit = $organizationalUnitRepository->findOneBy(['migrationId' => $migrationId]); + if (!$organizationalUnit){ + $output->writeln("ORGANIZATIONAL UNIT NOT FOUND: ". $migrationId); + } + if ($organizationalUnit){ $clientEntity->setOrganizationalUnit($organizationalUnit); } diff --git a/src/Command/Migration/MigrateOrganizationalUnitCommand.php b/src/Command/Migration/MigrateOrganizationalUnitCommand.php index 8d2826c..1afd63b 100644 --- a/src/Command/Migration/MigrateOrganizationalUnitCommand.php +++ b/src/Command/Migration/MigrateOrganizationalUnitCommand.php @@ -88,10 +88,10 @@ class MigrateOrganizationalUnitCommand extends Command $output->writeln("CENTROS TOTAL: ". count($centers)); foreach ($centers as $center){ $centerOrganizationalUnit = null; - $centerOrganizationalUnit = $organizationalUnitRepository->findOneBy(['migrationId' => $center['idcentro'], 'type' => OrganizationalUnitTypes::ORGANIZATIONAL_UNIT]); + $centerOrganizationalUnit = $organizationalUnitRepository->findOneBy(['migrationId' => OrganizationalUnitTypes::ORGANIZATIONAL_UNIT.'-'.$center['idcentro'], 'type' => OrganizationalUnitTypes::ORGANIZATIONAL_UNIT]); if(!$centerOrganizationalUnit){ $centerOrganizationalUnit = new OrganizationalUnit(); - $centerOrganizationalUnit->setMigrationId($center['idcentro']); + $centerOrganizationalUnit->setMigrationId(OrganizationalUnitTypes::ORGANIZATIONAL_UNIT.'-'.$center['idcentro']); $centerOrganizationalUnit->setName($center['nombrecentro']); $centerOrganizationalUnit->setComments($center['comentarios']); $centerOrganizationalUnit->setType(OrganizationalUnitTypes::ORGANIZATIONAL_UNIT); @@ -104,15 +104,15 @@ class MigrateOrganizationalUnitCommand extends Command $output->writeln("GRUPOS DE AULAS TOTAL: ". count($groups)); foreach ($groups as $group){ $groupPcOrganizationalUnit = null; - $groupPcOrganizationalUnit = $organizationalUnitRepository->findOneBy(['migrationId' => $group['idgrupo'], 'type' => OrganizationalUnitTypes::CLASSROOMS_GROUP]); + $groupPcOrganizationalUnit = $organizationalUnitRepository->findOneBy(['migrationId' => OrganizationalUnitTypes::CLASSROOMS_GROUP.'-'.$group['idgrupo'], 'type' => OrganizationalUnitTypes::CLASSROOMS_GROUP]); if(!$groupPcOrganizationalUnit){ $groupPcOrganizationalUnit = new OrganizationalUnit(); - $groupPcOrganizationalUnit->setMigrationId($group['idgrupo']); + $groupPcOrganizationalUnit->setMigrationId(OrganizationalUnitTypes::CLASSROOMS_GROUP.'-'.$group['idgrupo']); $groupPcOrganizationalUnit->setName($group['nombregrupo']); $groupPcOrganizationalUnit->setComments($group['grupos.comentarios']); $groupPcOrganizationalUnit->setType(OrganizationalUnitTypes::CLASSROOMS_GROUP); - $center = $organizationalUnitRepository->findOneBy(['migrationId' => $group['grupos.idcentro']]); + $center = $organizationalUnitRepository->findOneBy(['migrationId' => OrganizationalUnitTypes::ORGANIZATIONAL_UNIT.'-'.$group['grupos.idcentro']]); if ($center){ $groupPcOrganizationalUnit->setParent($center); } @@ -126,10 +126,10 @@ class MigrateOrganizationalUnitCommand extends Command $output->writeln("AULAS TOTAL: ". count($rooms)); foreach ($rooms as $room){ $roomOrganizationalUnit = null; - $roomOrganizationalUnit = $organizationalUnitRepository->findOneBy(['migrationId' => $room['idaula'], 'type' => OrganizationalUnitTypes::CLASSROOM]); + $roomOrganizationalUnit = $organizationalUnitRepository->findOneBy(['migrationId' => OrganizationalUnitTypes::CLASSROOM.'-'.$room['idaula'], 'type' => OrganizationalUnitTypes::CLASSROOM]); if(!$roomOrganizationalUnit){ $roomOrganizationalUnit = new OrganizationalUnit(); - $roomOrganizationalUnit->setMigrationId($room['idaula']); + $roomOrganizationalUnit->setMigrationId(OrganizationalUnitTypes::CLASSROOM.'-'.$room['idaula']); $roomOrganizationalUnit->setName($room['nombreaula']); $roomOrganizationalUnit->setComments($room['aulas.comentarios']); $roomOrganizationalUnit->setBoard($room['pizarra']); @@ -137,7 +137,7 @@ class MigrateOrganizationalUnitCommand extends Command $roomOrganizationalUnit->setLocation($room['ubicacion']); $roomOrganizationalUnit->setType(OrganizationalUnitTypes::CLASSROOM); - $migrationId = $room['aulas.grupoid'] === 0 ? $room['aulas.idcentro'] : $room['aulas.grupoid']; + $migrationId = $room['aulas.grupoid'] === 0 ? OrganizationalUnitTypes::ORGANIZATIONAL_UNIT.'-'.$room['aulas.idcentro'] : OrganizationalUnitTypes::CLASSROOMS_GROUP.'-'.$room['aulas.grupoid']; $organizationalUnit = $organizationalUnitRepository->findOneBy(['migrationId' => $migrationId]); if ($organizationalUnit){ @@ -172,15 +172,15 @@ class MigrateOrganizationalUnitCommand extends Command $output->writeln("GRUPOS ORDENADORES ". count($clientGroups)); foreach ($clientGroups as $clientGroup){ $groupPcOrganizationalUnit = null; - $groupPcOrganizationalUnit = $organizationalUnitRepository->findOneBy(['migrationId' => $clientGroup['idgrupo'], 'type' => OrganizationalUnitTypes::CLIENTS_GROUP]); + $groupPcOrganizationalUnit = $organizationalUnitRepository->findOneBy(['migrationId' => OrganizationalUnitTypes::CLIENTS_GROUP.'-'.$clientGroup['idgrupo'], 'type' => OrganizationalUnitTypes::CLIENTS_GROUP]); if(!$groupPcOrganizationalUnit){ $groupPcOrganizationalUnit = new OrganizationalUnit(); - $groupPcOrganizationalUnit->setMigrationId($clientGroup['idgrupo']); + $groupPcOrganizationalUnit->setMigrationId(OrganizationalUnitTypes::CLIENTS_GROUP.'-'.$clientGroup['idgrupo']); $groupPcOrganizationalUnit->setName($clientGroup['nombregrupoordenador']); $groupPcOrganizationalUnit->setComments($clientGroup['gruposordenadores.comentarios']); $groupPcOrganizationalUnit->setType(OrganizationalUnitTypes::CLIENTS_GROUP); - $room = $organizationalUnitRepository->findOneBy(['migrationId' => $clientGroup['gruposordenadores.idaula']]); + $room = $organizationalUnitRepository->findOneBy(['migrationId' => OrganizationalUnitTypes::CLASSROOM.'-'.$clientGroup['gruposordenadores.idaula']]); if ($room){ $groupPcOrganizationalUnit->setParent($room); }