36 lines
903 B
MySQL
36 lines
903 B
MySQL
|
DELIMITER $$
|
||
|
CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `hedera`.`item_calcCatalog`(
|
||
|
vSelf INT,
|
||
|
vLanded DATE,
|
||
|
vAddressFk INT,
|
||
|
vAgencyModeFk INT)
|
||
|
BEGIN
|
||
|
/**
|
||
|
* Calculates available and price for a single item.
|
||
|
*
|
||
|
* @param vItemFk The item id
|
||
|
* @return List of available lots
|
||
|
*/
|
||
|
DROP TEMPORARY TABLE IF EXISTS tmp.item;
|
||
|
CREATE TEMPORARY TABLE tmp.item
|
||
|
ENGINE = MEMORY
|
||
|
SELECT vSelf itemFk;
|
||
|
|
||
|
CALL vn.catalog_calculate(vLanded, vAddressFk, vAgencyModeFk);
|
||
|
|
||
|
SELECT l.warehouseFk, w.name warehouse,
|
||
|
p.`grouping`, p.price, p.rate, l.available
|
||
|
FROM tmp.ticketLot l
|
||
|
JOIN tmp.ticketComponentPrice p ON p.warehouseFk = l.warehouseFk
|
||
|
JOIN vn.warehouse w ON w.id = p.warehouseFk
|
||
|
ORDER BY warehouseFk, `grouping`;
|
||
|
|
||
|
DROP TEMPORARY TABLE
|
||
|
tmp.ticketCalculateItem,
|
||
|
tmp.ticketComponentPrice,
|
||
|
tmp.ticketComponent,
|
||
|
tmp.ticketLot,
|
||
|
tmp.zoneGetShipped;
|
||
|
END$$
|
||
|
DELIMITER ;
|