src/Controller/CronController.php line 25

Open in your IDE?
  1. <?php
  2. namespace App\Controller;
  3. use App\Entity\PMSConnectorSettings;
  4. use App\Util\CommandUtil;
  5. use App\Util\EmailUtil;
  6. use App\Util\PMSConnectorUtil;
  7. use App\Util\PropertyUtil;
  8. use App\Util\ReminderUtil;
  9. use App\Util\SMSUtil;
  10. use App\Util\SyncUtil;
  11. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  12. use Symfony\Component\HttpFoundation\RequestStack;
  13. use Symfony\Component\HttpFoundation\Response;
  14. use Symfony\Component\Routing\Annotation\Route;
  15. class CronController extends AbstractController
  16. {
  17.     /**
  18.      * @Route("/cron/sms", name="cron_sms")
  19.      * @param SMSUtil $SMSUtil
  20.      * @return Response
  21.      */
  22.     public function sms(SMSUtil $SMSUtil)
  23.     {
  24. //        die("sms");
  25.         $SMSUtil->sendSMSQueue(10);
  26.         return Response::create('DONE');
  27.     }
  28.     /**
  29.      * @Route("/cron/sms/status", name="cron_sms_status")
  30.      * @param SMSUtil $SMSUtil
  31.      * @return Response
  32.      */
  33.     public function smsStatus(SMSUtil $SMSUtil)
  34.     {
  35.         $SMSUtil->checkSMSStatus();
  36.         return Response::create('DONE');
  37.     }
  38.     /**
  39.      * @Route("/cron/emails", name="cron_emails")
  40.      * @param EmailUtil $emailUtil
  41.      * @return Response
  42.      */
  43.     public function emails(EmailUtil $emailUtil)
  44.     {
  45.         
  46.         $emailUtil->sendEmailQueue(300);
  47.         return Response::create('DONE');
  48.     }
  49.     /**
  50.      * @Route("/cron/commands", name="cron_command_queue")
  51.      * @param CommandUtil $commandUtil
  52.      * @return Response
  53.      */
  54.     public function commandQueue(CommandUtil $commandUtil)
  55.     {
  56.         $commandUtil->processQueue(200);
  57.         return Response::create('DONE');
  58.     }
  59.     /**
  60.      * @Route("/cron/import", name="cron_import")
  61.      * @param EmailUtil $emailUtil
  62.      * @return Response
  63.      */
  64.     public function import(PropertyUtil $propertyUtilPMSConnectorUtil $PMSConnectorUtilRequestStack $requestStack)
  65.     {
  66.         $monitoringId $requestStack->getCurrentRequest()->get('monitoringId');
  67.         $reservationNumber $requestStack->getCurrentRequest()->get('reservationNumber');
  68.         $property $propertyUtil->getPropertyByMonitoringId($monitoringId);
  69.         if (empty($property)) {
  70.             return Response::create('Property not found'Response::HTTP_NOT_FOUND);
  71.         }
  72.         if (!$property->getPmsSettings() instanceof PMSConnectorSettings) {
  73.             return Response::create('DONE');
  74.         }
  75.         if ($property->getPmsSettings()->getPms()->getIdentifier() != 'CZMI') {
  76.             return Response::create('DONE');
  77.         }
  78.         $PMSConnectorUtil->getContractByNumber($property,$reservationNumber);
  79.         return Response::create('DONE');
  80.     }
  81. }