46 lines
858 B
SQL
46 lines
858 B
SQL
DELIMITER $$
|
|
CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `hedera`.`myOrder_configureForGuest`(OUT vSelf INT)
|
|
BEGIN
|
|
DECLARE vMethod VARCHAR(255);
|
|
DECLARE vAgency INT;
|
|
DECLARE vAddress INT;
|
|
DECLARE vDate DATE;
|
|
|
|
SELECT cf.guestMethod, cf.guestAgencyFk, cl.defaultAddressFk
|
|
INTO vMethod, vAgency, vAddress
|
|
FROM orderConfig cf
|
|
JOIN myClient cl
|
|
LIMIT 1;
|
|
|
|
SET vDate = TIMESTAMPADD(DAY, 1, util.VN_CURDATE());
|
|
|
|
IF WEEKDAY(vDate) BETWEEN 5 AND 6 THEN
|
|
SET vDate = TIMESTAMPADD(DAY, 7 - WEEKDAY(vDate), vDate);
|
|
END IF;
|
|
|
|
SELECT id INTO vSelf
|
|
FROM myOrder
|
|
WHERE NOT isConfirmed
|
|
ORDER BY id DESC
|
|
LIMIT 1;
|
|
|
|
IF vSelf IS NULL THEN
|
|
CALL myOrder_create(
|
|
vSelf,
|
|
vDate,
|
|
vMethod,
|
|
vAgency,
|
|
vAddress
|
|
);
|
|
ELSE
|
|
CALL myOrder_configure(
|
|
vSelf,
|
|
vDate,
|
|
vMethod,
|
|
vAgency,
|
|
vAddress
|
|
);
|
|
END IF;
|
|
END$$
|
|
DELIMITER ;
|