25 lines
540 B
MySQL
25 lines
540 B
MySQL
|
DELIMITER $$
|
||
|
CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `vn`.`entry_isEditable`(
|
||
|
vSelf INT
|
||
|
)
|
||
|
BEGIN
|
||
|
/**
|
||
|
* Comprueba si una entrada se puede actualizar
|
||
|
* si no se puede retorna un throw.
|
||
|
*
|
||
|
* @param vSelf Id de entrada
|
||
|
*/
|
||
|
DECLARE vIsEditable BOOL;
|
||
|
|
||
|
SELECT e.isBooked INTO vIsEditable
|
||
|
FROM `entry` e
|
||
|
JOIN entryType et ON et.code = e.typeFk
|
||
|
WHERE NOT et.isInformal
|
||
|
AND id = vSelf;
|
||
|
|
||
|
IF vIsEditable AND NOT IFNULL(@isModeInventory, FALSE) THEN
|
||
|
CALL util.throw('Entry is not editable');
|
||
|
END IF;
|
||
|
END$$
|
||
|
DELIMITER ;
|