<?php
namespace App\Controller;
use App\Entity\Address;
use App\Entity\City;
use App\Entity\Course;
use App\Entity\Place;
use App\Entity\PoliceProtocol;
use App\Entity\ReservationGuestPoliceReport;
use App\Repository\AddressRepository;
use App\Repository\CourseRepository;
use App\Repository\ImportBatchRepository;
use App\Util\AddressUtil;
use App\Util\CronUtil;
use App\Util\EmailUtil;
use App\Util\FoxentryUtil;
use App\Util\ImportUtil;
use App\Util\LadderUtil;
use App\Util\PropertyUtil;
use App\Util\ReminderUtil;
use App\Util\ReservationEnvelopeUtil;
use App\Util\ReservationGuestUtil;
use App\Util\UbyportUtil;
use Doctrine\ORM\EntityManagerInterface;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
use Symfony\Component\Routing\Generator\UrlGeneratorInterface;
use Psr\Log\LoggerInterface;
use Tomsgu\PdfMerger\PdfCollection;
use Tomsgu\PdfMerger\PdfFile;
use Tomsgu\PdfMerger\PdfMerger;
class CronController extends AbstractController
{
/**
* @Route("/cron/emails", name="cron_emails")
* @param EmailUtil $emailUtil
* @return Response
*/
public function emails(EmailUtil $emailUtil)
{
//die("****");
$emailUtil->sendEmailQueue(10);
return Response::create('DONE');
}
/**
* @Route("/repair/address", name="repair_address")
* @param EmailUtil $emailUtil
* @return Response
*/
public function repairAddress(AddressRepository $addressRepository, EntityManagerInterface $entityManager, FoxentryUtil $foxentryUtil)
{
$addresses = $addressRepository->findAll();
foreach ($addresses as $address) {
if ($address->getId() <= 59) {
continue;
}
$address = $foxentryUtil->searchByAddress($address);
if (!$address instanceof Address) {
continue;
}
$entityManager->persist($address);
}
$entityManager->flush();
return Response::create('DONE');
}
/**
* @Route("/repair/courses", name="repair_courses")
* @param EmailUtil $emailUtil
* @return Response
*/
public function repairCourses(CourseRepository $courseRepository, EntityManagerInterface $entityManager, FoxentryUtil $foxentryUtil)
{
$courses = $courseRepository->findAll();
/** @var Course $course */
foreach ($courses as $course) {
$city = $course->getCity();
if($city instanceof City) {
$course->setLatitude($city->getLatitude());
$course->setLongitude($city->getLongitude());
}
$place = $course->getPlace();
if($place instanceof Place) {
$course->setLatitude($place->getAddress()->getLatitude());
$course->setLongitude($place->getAddress()->getLongitude());
}
$entityManager->persist($course);
}
$entityManager->flush();
return Response::create('DONE');
}
}