<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20220630070135 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
$this->addSql('
DROP TRIGGER IF EXISTS payment_insert;
CREATE TRIGGER payment_insert
AFTER INSERT ON reservation_payment
FOR EACH ROW
BEGIN
declare u_payed_price DECIMAL(10,2);
select
func_calculatePrice(
SUM(amount),
currency_rate.try,
currency_rate.usd,
currency_rate.eur,
currency_rate.stg,
reservation.currency,
reservation_payment.currency
)
into u_payed_price from reservation_payment
INNER JOIN currency_rate on currency_rate.id=reservation_payment.currency_rate_id
INNER JOIN reservation on reservation.id=reservation_payment.reservation_id
where reservation_payment.reservation_id=NEW.reservation_id and reservation_payment.deleted_at IS NULL;
IF u_payed_price IS NOT NULL THEN
SET u_payed_price=0;
END IF;
UPDATE reservation
SET reservation.payed_price=u_payed_price, reservation.remaining_price=reservation.total_price-u_payed_price
WHERE reservation.id=NEW.reservation_id;
END;
DROP TRIGGER IF EXISTS payment_update;
CREATE TRIGGER payment_update
AFTER UPDATE ON reservation_payment
FOR EACH ROW
BEGIN
declare u_payed_price DECIMAL(10,2);
select
func_calculatePrice(
SUM(amount),
currency_rate.try,
currency_rate.usd,
currency_rate.eur,
currency_rate.stg,
reservation.currency,
reservation_payment.currency
)
into u_payed_price from reservation_payment
INNER JOIN currency_rate on currency_rate.id=reservation_payment.currency_rate_id
INNER JOIN reservation on reservation.id=reservation_payment.reservation_id
where reservation_payment.reservation_id=NEW.reservation_id and reservation_payment.deleted_at IS NULL;
IF u_payed_price IS NOT NULL THEN
SET u_payed_price=0;
END IF;
UPDATE reservation
SET reservation.payed_price=u_payed_price, reservation.remaining_price=reservation.total_price-u_payed_price
WHERE reservation.id=NEW.reservation_id;
END;
DROP TRIGGER IF EXISTS payment_delete;
CREATE TRIGGER payment_delete
AFTER DELETE ON reservation_payment
FOR EACH ROW
BEGIN
declare u_payed_price DECIMAL(10,2);
select
func_calculatePrice(
SUM(amount),
currency_rate.try,
currency_rate.usd,
currency_rate.eur,
currency_rate.stg,
reservation.currency,
reservation_payment.currency
)
into u_payed_price from reservation_payment
INNER JOIN currency_rate on currency_rate.id=reservation_payment.currency_rate_id
INNER JOIN reservation on reservation.id=reservation_payment.reservation_id
where reservation_payment.reservation_id=OLD.reservation_id and reservation_payment.deleted_at IS NULL;
IF u_payed_price IS NOT NULL THEN
SET u_payed_price=0;
END IF;
UPDATE reservation
SET reservation.payed_price=u_payed_price, reservation.remaining_price=reservation.total_price-u_payed_price
WHERE reservation.id=OLD.reservation_id;
END;
DROP TRIGGER IF EXISTS reservation_update;
CREATE TRIGGER reservation_update
BEFORE UPDATE ON reservation
FOR EACH ROW
BEGIN
declare discount_rate decimal(10,2);
declare discount_type varchar(20);
declare discount_currency varchar(20);
declare u_payed_price DECIMAL(10,2);
declare currtry DECIMAL(10,2);
declare currusd DECIMAL(10,2);
declare curreur DECIMAL(10,2);
declare currstg DECIMAL(10,2);
select
discount.discount_type,
discount.discount_rate,
discount.currency
into
discount_type,
discount_rate,
discount_currency
from discount_coupons
INNER JOIN discount on discount.id=discount_coupons.discount_id
WHERE
discount_coupons.id=NEW.discount_coupon_id;
SELECT
currency_rate.try,
currency_rate.usd,
currency_rate.eur,
currency_rate.stg
INTO
currtry,
currusd,
curreur,
currstg
FROM currency_rate where id=NEW.currency_rate_id;
IF discount_type IS NOT NULL AND discount_rate IS NOT NULL THEN
IF discount_type="NET" THEN
set NEW.total_price=NEW.base_price- func_calculatePrice(
discount_rate,
currtry,
currusd,
curreur,
currstg,
NEW.currency,
discount_currency
);
ELSE
set NEW.total_price=NEW.base_price-((NEW.base_price/100)*discount_rate);
END IF;
ELSE
set NEW.total_price=NEW.base_price;
set NEW.total_cost=NEW.base_cost;
END IF;
set NEW.total_price=NEW.total_price+IFNULL(NEW.eb_insurance_fee,0);
select
func_calculatePrice(
SUM(amount),
currency_rate.try,
currency_rate.usd,
currency_rate.eur,
currency_rate.stg,
reservation.currency,
reservation_payment.currency
)
into u_payed_price from reservation_payment
INNER JOIN currency_rate on currency_rate.id=reservation_payment.currency_rate_id
INNER JOIN reservation on reservation.id=reservation_payment.reservation_id
where reservation_payment.reservation_id=NEW.id and reservation_payment.deleted_at IS NULL;
IF u_payed_price IS NOT NULL THEN
SET NEW.payed_price=u_payed_price;
SET NEW.remaining_price=NEW.total_price-u_payed_price;
ELSE
SET NEW.payed_price=0;
SET NEW.remaining_price=NEW.total_price;
END IF;
END;
########################################
########################################
DROP TRIGGER IF EXISTS reservation_insert;
CREATE TRIGGER reservation_insert
BEFORE INSERT ON reservation
FOR EACH ROW
BEGIN
SET NEW.payed_price=0;
SET NEW.remaining_price=0;
SET NEW.hotel_count=0;
SET NEW.flight_count=0;
SET NEW.transfer_count=0;
SET NEW.tour_count=0;
SET NEW.adt_count=0;
SET NEW.chd_count=0;
SET NEW.total_price=0;
SET NEW.total_cost=0;
END;
############calculateReservation##############
DROP PROCEDURE IF EXISTS calculateReservation;
CREATE PROCEDURE `calculateReservation`(in pReservationId INT)
BEGIN
declare adt_count, chd_count, hotel_count, flight_count, transfer_count, tour_count INT;
declare total_price, total_cost decimal(10,2);
declare check_in, check_out VARCHAR(45);
set check_in="0000-00-00";
set check_out="0000-00-00";
set total_price=0;
set total_cost=0;
set adt_count=0;
set chd_count=0;
set hotel_count=0;
set flight_count=0;
set transfer_count=0;
set tour_count=0;
#########PAX########
select
SUM(CASE reservation_pax.type WHEN "ADT" THEN 1 ELSE 0 END) AS cAdt,
SUM(CASE reservation_pax.type WHEN "CHD" THEN 1 ELSE 0 END) AS cChd
into
adt_count,
chd_count
from reservation_pax
where reservation_pax.reservation_id=pReservationId
;
#########PAX########
select
SUM(TB.cFlight),
SUM(TB.cHotel),
SUM(TB.cTransfer),
SUM(TB.cTour),
SUM(TB.cPrice),
SUM(TB.cCost),
min(TB.cCheckIn),
max(TB.cCheckOut)
into
flight_count,
hotel_count,
transfer_count,
tour_count,
total_price,
total_cost,
check_in,
check_out
from(
#########HOTEL########
select
0 as cFlight,
COUNT(reservation_hotel.id) AS cHotel,
0 as cTransfer,
0 as cTour,
SUM(
func_calculatePrice(
reservation_hotel.price,
currency_rate.try,
currency_rate.usd,
currency_rate.eur,
currency_rate.stg,
reservation.currency,
reservation_hotel.currency
)
) as cPrice,
SUM(
func_calculatePrice(
reservation_hotel.cost,
currency_rate.try,
currency_rate.usd,
currency_rate.eur,
currency_rate.stg,
reservation.currency,
reservation_hotel.currency
)
) as cCost,
reservation_hotel.check_in as cCheckIn,
reservation_hotel.check_out as cCheckOut
from reservation_hotel
INNER JOIN currency_rate on currency_rate.id=reservation_hotel.currency_rate_id
INNER JOIN reservation on reservation.id=reservation_hotel.reservation_id
where reservation_hotel.reservation_id=pReservationId
and reservation_hotel.deleted_at IS NULL
#########HOTEL########
union
#########TRANSFER########
select
0 as cFlight,
0 as cHotel,
COUNT(reservation_transfer.id) AS cTransfer,
0 as cTour,
SUM(
func_calculatePrice(
reservation_transfer.price,
currency_rate.try,
currency_rate.usd,
currency_rate.eur,
currency_rate.stg,
reservation.currency,
reservation_transfer.currency
)
) as cPrice,
SUM(
func_calculatePrice(
reservation_transfer.cost,
currency_rate.try,
currency_rate.usd,
currency_rate.eur,
currency_rate.stg,
reservation.currency,
reservation_transfer.currency
)
) as cCost,
"9999-01-01" as cCheckIn,
"0000-00-00" as cCheckOut
from reservation_transfer
INNER JOIN currency_rate on currency_rate.id=reservation_transfer.currency_rate_id
INNER JOIN reservation on reservation.id=reservation_transfer.reservation_id
where reservation_transfer.reservation_id=pReservationId
and reservation_transfer.deleted_at IS NULL
#########TRANSFER########
union
#########TOUR########
select
0 as cFlight,
0 as cHotel,
0 as cTransfer,
COUNT(reservation_tour.id) AS cTour,
SUM(
func_calculatePrice(
reservation_tour.price,
currency_rate.try,
currency_rate.usd,
currency_rate.eur,
currency_rate.stg,
reservation.currency,
reservation_tour.currency
)
) as cPrice,
SUM(
func_calculatePrice(
reservation_tour.cost,
currency_rate.try,
currency_rate.usd,
currency_rate.eur,
currency_rate.stg,
reservation.currency,
reservation_tour.currency
)
) as cCost,
"9999-01-01" as cCheckIn,
"0000-00-00" as cCheckOut
from reservation_tour
INNER JOIN currency_rate on currency_rate.id=reservation_tour.currency_rate_id
INNER JOIN reservation on reservation.id=reservation_tour.reservation_id
where reservation_tour.reservation_id=pReservationId
and reservation_tour.deleted_at IS NULL
#########TOUR########
union
#########TOUREXTRA########
select
0 as cFlight,
0 as cHotel,
0 as cTransfer,
0 AS cTour,
SUM(
func_calculatePrice(
reservation_tour_extra.price,
currency_rate.try,
currency_rate.usd,
currency_rate.eur,
currency_rate.stg,
reservation.currency,
reservation_tour_extra.currency
)
) as cPrice,
SUM(
func_calculatePrice(
reservation_tour_extra.cost,
currency_rate.try,
currency_rate.usd,
currency_rate.eur,
currency_rate.stg,
reservation.currency,
reservation_tour_extra.currency
)
) as cCost,
"9999-01-01" as cCheckIn,
"0000-00-00" as cCheckOut
from reservation_tour_extra
INNER JOIN currency_rate on currency_rate.id=reservation_tour_extra.currency_rate_id
INNER JOIN reservation on reservation.id=reservation_tour_extra.reservation_id
where reservation_tour_extra.reservation_id=pReservationId
and reservation_tour_extra.deleted_at IS NULL
#########TOUREXTRA########
union
#########FLIGHT########
select
COUNT(reservation_flight.id) as cFlight,
0 as cHotel,
0 as cTransfer,
0 AS cTour,
SUM(
func_calculatePrice(
reservation_flight.price,
currency_rate.try,
currency_rate.usd,
currency_rate.eur,
currency_rate.stg,
reservation.currency,
reservation_flight.currency
)
) as cPrice,
SUM(
func_calculatePrice(
reservation_flight.cost,
currency_rate.try,
currency_rate.usd,
currency_rate.eur,
currency_rate.stg,
reservation.currency,
reservation_flight.currency
)
) as cCost,
"9999-01-01" as cCheckIn,
"0000-00-00" as cCheckOut
from reservation_flight
INNER JOIN currency_rate on currency_rate.id=reservation_flight.currency_rate_id
INNER JOIN reservation on reservation.id=reservation_flight.reservation_id
where reservation_flight.reservation_id=pReservationId
and reservation_flight.is_cancelled=0
and reservation_flight.deleted_at IS NULL
#########FLIGHT########
) AS TB;
IF total_price IS NULL THEN
set total_price=0;
END IF;
IF total_cost IS NULL THEN
set total_cost=0;
END IF;
IF adt_count IS NULL THEN
set adt_count=0;
END IF;
IF chd_count IS NULL THEN
set chd_count=0;
END IF;
IF hotel_count IS NULL THEN
set hotel_count=0;
END IF;
IF flight_count IS NULL THEN
set flight_count=0;
END IF;
IF transfer_count IS NULL THEN
set transfer_count=0;
END IF;
IF tour_count IS NULL THEN
set tour_count=0;
END IF;
IF check_in IS NULL THEN
set check_in="0000-00-000";
END IF;
IF check_out IS NULL THEN
set check_out="0000-00-000";
END IF;
update reservation
SET
reservation.total_price=total_price,
reservation.base_price=total_price,
reservation.total_cost=total_cost,
reservation.base_cost=total_cost,
reservation.adt_count=adt_count,
reservation.chd_count=chd_count,
reservation.hotel_count=hotel_count,
reservation.flight_count=flight_count,
reservation.transfer_count=transfer_count,
reservation.tour_count=tour_count,
reservation.check_in=check_in,
reservation.check_out=check_out
WHERE reservation.id = pReservationId;
END;
############calculateReservation##############
############RESERVATION_PAX##############
DROP TRIGGER IF EXISTS reservationPax_update;
CREATE TRIGGER reservationPax_update
AFTER UPDATE ON reservation_pax
FOR EACH ROW
BEGIN
CALL calculateReservation(NEW.reservation_id);
END;
DROP TRIGGER IF EXISTS reservationPax_insert;
CREATE TRIGGER reservationPax_insert
AFTER INSERT ON reservation_pax
FOR EACH ROW
BEGIN
CALL calculateReservation(NEW.reservation_id);
END;
DROP TRIGGER IF EXISTS reservationPax_delete;
CREATE TRIGGER reservationPax_delete
AFTER DELETE ON reservation_pax
FOR EACH ROW
BEGIN
CALL calculateReservation(OLD.reservation_id);
END;
############RESERVATION_PAX##############
############RESERVATION_HOTEL##############
DROP TRIGGER IF EXISTS reservationHotel_update;
CREATE TRIGGER reservationHotel_update
AFTER UPDATE ON reservation_hotel
FOR EACH ROW
BEGIN
CALL calculateReservation(NEW.reservation_id);
END;
DROP TRIGGER IF EXISTS reservationHotel_insert;
CREATE TRIGGER reservationHotel_insert
AFTER INSERT ON reservation_hotel
FOR EACH ROW
BEGIN
CALL calculateReservation(NEW.reservation_id);
END;
DROP TRIGGER IF EXISTS reservationHotel_delete;
CREATE TRIGGER reservationHotel_delete
AFTER DELETE ON reservation_hotel
FOR EACH ROW
BEGIN
CALL calculateReservation(OLD.reservation_id);
END;
############RESERVATION_HOTEL##############
############RESERVATION_TRANSFER##############
DROP TRIGGER IF EXISTS reservationTransfer_update;
CREATE TRIGGER reservationTransfer_update
AFTER UPDATE ON reservation_transfer
FOR EACH ROW
BEGIN
CALL calculateReservation(NEW.reservation_id);
END;
DROP TRIGGER IF EXISTS reservationTransfer_insert;
CREATE TRIGGER reservationTransfer_insert
AFTER INSERT ON reservation_transfer
FOR EACH ROW
BEGIN
CALL calculateReservation(NEW.reservation_id);
END;
DROP TRIGGER IF EXISTS reservationTransfer_delete;
CREATE TRIGGER reservationTransfer_delete
AFTER DELETE ON reservation_transfer
FOR EACH ROW
BEGIN
CALL calculateReservation(OLD.reservation_id);
END;
############RESERVATION_TRANSFER##############
############RESERVATION_TOUR##############
DROP TRIGGER IF EXISTS reservationTour_update;
CREATE TRIGGER reservationTour_update
AFTER UPDATE ON reservation_tour
FOR EACH ROW
BEGIN
CALL calculateReservation(NEW.reservation_id);
CALL calculateTourPriceQuata(NEW.id);
END;
DROP TRIGGER IF EXISTS reservationTour_insert;
CREATE TRIGGER reservationTour_insert
AFTER INSERT ON reservation_tour
FOR EACH ROW
BEGIN
CALL calculateReservation(NEW.reservation_id);
END;
DROP TRIGGER IF EXISTS reservationTour_delete;
CREATE TRIGGER reservationTour_delete
AFTER DELETE ON reservation_tour
FOR EACH ROW
BEGIN
CALL calculateReservation(OLD.reservation_id);
END;
############RESERVATION_TOUR##############
############RESERVATION_TOUR_EXTRA##############
DROP TRIGGER IF EXISTS reservationTourExtra_update;
CREATE TRIGGER reservationTourExtra_update
AFTER UPDATE ON reservation_tour_extra
FOR EACH ROW
BEGIN
CALL calculateReservation(NEW.reservation_id);
END;
DROP TRIGGER IF EXISTS reservationTourExtra_insert;
CREATE TRIGGER reservationTourExtra_insert
AFTER INSERT ON reservation_tour_extra
FOR EACH ROW
BEGIN
CALL calculateReservation(NEW.reservation_id);
END;
DROP TRIGGER IF EXISTS reservationTourExtra_delete;
CREATE TRIGGER reservationTourExtra_delete
AFTER DELETE ON reservation_tour_extra
FOR EACH ROW
BEGIN
CALL calculateReservation(OLD.reservation_id);
END;
############RESERVATION_TOUR_EXTRA##############
############RESERVATION_FLIGHT##############
DROP TRIGGER IF EXISTS reservationFlight_update;
CREATE TRIGGER reservationFlight_update
AFTER UPDATE ON reservation_flight
FOR EACH ROW
BEGIN
CALL calculateReservation(NEW.reservation_id);
END;
DROP TRIGGER IF EXISTS reservationFlight_insert;
CREATE TRIGGER reservationFlight_insert
AFTER INSERT ON reservation_flight
FOR EACH ROW
BEGIN
CALL calculateReservation(NEW.reservation_id);
END;
DROP TRIGGER IF EXISTS reservationFlight_delete;
CREATE TRIGGER reservationFlight_delete
AFTER DELETE ON reservation_flight
FOR EACH ROW
BEGIN
CALL calculateReservation(OLD.reservation_id);
END;
############RESERVATION_FLIGHT##############
############calculatePrice##############
DROP FUNCTION IF EXISTS func_calculatePrice;
CREATE FUNCTION `func_calculatePrice`(v_price decimal(10,2),
v_rateTRY decimal(10,2),
v_rateUSD decimal(10,2),
v_rateEUR decimal(10,2),
v_rateSTG decimal(10,2),
v_reservationMasterCurrency VARCHAR(5),
v_reservationCurrency VARCHAR(5)
) RETURNS decimal(10,2)
BEGIN
declare price decimal(10,2);
select
Tb1.price into price
FROM(
select
(
CASE v_reservationMasterCurrency
WHEN "TRY" THEN
priceTRY/v_rateTRY
WHEN "USD" THEN
priceTRY/v_rateUSD
WHEN "EUR" THEN
priceTRY/v_rateEUR
WHEN "STG" THEN
priceTRY/v_rateSTG
END
) as price
FROM
(
SELECT
(
CASE v_reservationCurrency
WHEN "TRY" THEN
v_price*v_rateTRY
WHEN "USD" THEN
v_price*v_rateUSD
WHEN "EUR" THEN
v_price*v_rateEUR
WHEN "STG" THEN
v_price*v_rateSTG
END
) as priceTRY
) as Tb
) as Tb1
;
RETURN price;
END;
############calculatePrice##############
############getPotential##################
DROP PROCEDURE IF EXISTS getPotential;
CREATE PROCEDURE `getPotential`(
in pProcessFrom VARCHAR (45),
in pProcessTo VARCHAR (45),
in pCheckInFrom VARCHAR (45),
in pCheckInTo VARCHAR (45),
in pCheckOutFrom VARCHAR (45),
in pCheckOutTo VARCHAR (45)
)
BEGIN
select
*,
DATE(created_at) as date,
count(1) as count
from search_log_hotel
where
created_at >= pProcessFrom and created_at <= pProcessTo
and check_in >= pCheckInFrom and check_in <= pCheckInTo
and check_out >= pCheckOutFrom and check_in <= pCheckOutTo
and user_id<>5 and user_id IS NOT NULL
GROUP BY DATE(created_at), user_id, hotel_id,hotel_destination_id, adt,chd
order by DATE(created_at),count desc
;
END;
############getPotential##################
############calculateTourPriceQuata##############
DROP PROCEDURE IF EXISTS calculateTourPriceQuata;
CREATE DEFINER=`td_mysql_user`@`%` PROCEDURE `calculateTourPriceQuata`(
in tourProgramId INT (11)
)
BEGIN
DECLARE var_TourProgramId INT(11);
DECLARE var_seat INT(11) DEFAULT 0;
select
tour_price_id
INTO
var_TourProgramId
from reservation_tour
where reservation_tour.id=tourProgramId;
IF var_TourProgramId IS NOT NULL THEN
BEGIN
select
count(distinct(reservation_pax.id)) INTO var_seat
from reservation_tour
INNER JOIN reservation on reservation.id=reservation_tour.reservation_id
INNER JOIN reservation_pax on reservation_pax.reservation_id=reservation_tour.reservation_id
where
tour_price_id=var_TourProgramId
and reservation.status NOT IN(\'LEAD\',\'WAITING_PAYMENT\',\'WAITING_TRANSFER\',\'CANCEL\')
;
UPDATE tour_price SET reel_quata = (quata - var_seat) WHERE id = var_TourProgramId;
END;
END IF;
END;
############calculateTourPriceQuata##############
#################tourTrigger_update############
DROP TRIGGER IF EXISTS tourTrigger_update;
CREATE TRIGGER tourTrigger_update
AFTER UPDATE ON tour
FOR EACH ROW
BEGIN
UPDATE seo_page
SET status = NEW.status
WHERE tour_id=NEW.id;
END;
#################tourTrigger_update############
#################hotelTrigger_update############
DROP TRIGGER IF EXISTS hotelTrigger_update;
CREATE TRIGGER hotelTrigger_update
AFTER UPDATE ON hotel
FOR EACH ROW
BEGIN
UPDATE seo_page sp
SET sp.status = NEW.status
WHERE sp.hotel_id=NEW.id;
IF (NEW.`status` != OLD.`status`) THEN
INSERT INTO hotel_log (hotel_id,user_id,`status`) VALUES (NEW.id,NULL,NEW.`status`);
END IF;
END;
#################hotelTrigger_update############
'
);
}
public function down(Schema $schema): void
{
$this->addSql('DROP TRIGGER IF EXISTS tourTrigger_update;');
$this->addSql('DROP TRIGGER IF EXISTS hotelTrigger_update;');
$this->addSql('DROP TRIGGER IF EXISTS payment_update;');
$this->addSql('DROP TRIGGER IF EXISTS payment_insert;');
$this->addSql('DROP TRIGGER IF EXISTS payment_delete;');
$this->addSql('DROP TRIGGER IF EXISTS reservation_update;');
$this->addSql('DROP TRIGGER IF EXISTS reservation_insert;');
$this->addSql('DROP TRIGGER IF EXISTS reservationHotel_insert;');
$this->addSql('DROP TRIGGER IF EXISTS reservationHotel_update;');
$this->addSql('DROP TRIGGER IF EXISTS reservationHotel_delete;');
$this->addSql('DROP TRIGGER IF EXISTS reservationFlight_insert;');
$this->addSql('DROP TRIGGER IF EXISTS reservationFlight_update;');
$this->addSql('DROP TRIGGER IF EXISTS reservationFlight_delete;');
$this->addSql('DROP TRIGGER IF EXISTS reservationTransfer_insert;');
$this->addSql('DROP TRIGGER IF EXISTS reservationTransfer_update;');
$this->addSql('DROP TRIGGER IF EXISTS reservationTransfer_delete;');
$this->addSql('DROP TRIGGER IF EXISTS reservationTour_insert;');
$this->addSql('DROP TRIGGER IF EXISTS reservationTour_update;');
$this->addSql('DROP TRIGGER IF EXISTS reservationTour_delete;');
$this->addSql('DROP PROCEDURE IF EXISTS calculateReservation;');
$this->addSql('DROP FUNCTION IF EXISTS func_calculatePrice;');
}
}