<?php
namespace App\Controller;
use App\Entity\Guestcontactaddress;
use App\Entity\Menufood;
use App\Entity\Zonemap;
use App\Entity\Zonemapdrawing;
use Doctrine\Persistence\ManagerRegistry;
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;
class DefaultController extends AbstractController
{
/**
* @Route("/", name="app_default")
*/
public function index(ManagerRegistry $doctrine): Response
{
$categories = $doctrine->getRepository(Menufood::class)->findBy(array('state'=>'1', 'menustate' => '1'));
return $this->render('default/index.html.twig', [
'titlePage' => 'Fabiosroadstop - Home',
'categories' => $categories
]);
}
/**
* @Route("/check-zone-price-by-address", name="app_check_poly_zone_by_address")
*/
public function polycheckprice(ManagerRegistry $doctrine, Request $request): Response
{
$session = $_COOKIE["session"];
$getCordinatesData = $doctrine->getRepository(Guestcontactaddress::class)->findOneBy(array('session' => $session));
$street = $request->get('Gstreet');
$city = $request->get('Gcity');
$postalcode = $request->get('Gpostal');
$referencePoint = $request->get('GreferencePoint');
$lantitude = $getCordinatesData->getLantitude();
$longitude = $getCordinatesData->getLongitude();
$getZones = $doctrine->getRepository(Zonemap::class)->findAll();
$getCordinates = $doctrine->getRepository(Zonemapdrawing::class)->findAll();
return $this->render('ordering/check-zone-price.html.twig', [
'titlePage' => 'Localização',
'zones' => $getZones,
'cordinates' => $getCordinates,
'ltd' => $lantitude,
'lng' => $longitude
]);
}
/**
* @Route("/get-zone-price-by-address", name="app_get_poly_zone_by_address")
*/
public function getpolycheckprice(ManagerRegistry $doctrine, Request $request): Response
{
$arrayZones = $request->get('test');
$zonesData = array();
$session = $_COOKIE["session"];
$en = $doctrine->getManager();
$getCordinatesData = $doctrine->getRepository(Guestcontactaddress::class)->findOneBy(array('session' => $session));
if($arrayZones == null){
$getCordinatesData->setDeliveryzoneid(0);
$en->persist($getCordinatesData);
$en->flush();
}else{
foreach ($arrayZones as $values){
$zonesData[] = $doctrine->getRepository(Zonemap::class)->findBy(array('title'=> $values));
}
$lowestPrice = min($zonesData);
$getCordinatesData->setDeliveryzoneid($lowestPrice['0']->getid());
$en->persist($getCordinatesData);
$en->flush();
}
$en->persist($getCordinatesData);
$en->flush();
// $street = $request->get('Gstreet');
// $city = $request->get('Gcity');
// $postalcode = $request->get('Gpostal');
// $referencePoint = $request->get('GreferencePoint');
// $lantitude = $request->get('Gltd');
// $longitude = $request->get('Glng');
//
//
//
//
// $getZones = $doctrine->getRepository(Zonemap::class)->findAll();
// $getCordinates = $doctrine->getRepository(Zonemapdrawing::class)->findAll();
return new Response();
}
}