Merge branch 'master' into test
gitea/salix/pipeline/head This commit looks good Details

This commit is contained in:
Guillermo Bonet 2025-02-12 14:37:10 +01:00
commit 5543da2c80
2 changed files with 21 additions and 14 deletions

View File

@ -3,21 +3,25 @@ CREATE OR REPLACE DEFINER=`vn`@`localhost` PROCEDURE `vn`.`ticket_setState`(
vSelf INT, vSelf INT,
vStateCode VARCHAR(255) COLLATE utf8_general_ci vStateCode VARCHAR(255) COLLATE utf8_general_ci
) )
BEGIN proc:BEGIN
/** /**
* Modifica el estado de un ticket si se cumplen las condiciones necesarias. * Modifica el estado de un ticket si se cumplen las condiciones necesarias.
* *
* @param vSelf el id del ticket * @param vSelf el id del ticket
* @param vStateCode estado a modificar del ticket * @param vStateCode estado a modificar del ticket
*/ */
DECLARE vticketAlertLevel INT; DECLARE vTicketAlertLevel INT;
DECLARE vTicketStateCode VARCHAR(255); DECLARE vTicketStateCode VARCHAR(255) COLLATE utf8_general_ci;
DECLARE vCanChangeState BOOL; DECLARE vCanChangeState BOOL;
DECLARE vPackedAlertLevel INT; DECLARE vPackedAlertLevel INT;
DECLARE vZoneFk INT; DECLARE vZoneFk INT;
DECLARE vOldWorkerFk INT;
DECLARE vNewWorkerFk INT;
SELECT s.alertLevel, s.`code`, t.zoneFk SET vNewWorkerFk = account.myUser_getId();
INTO vticketAlertLevel, vTicketStateCode, vZoneFk
SELECT s.alertLevel, s.`code`, t.zoneFk, tt.userFk
INTO vTicketAlertLevel, vTicketStateCode, vZoneFk, vOldWorkerFk
FROM state s FROM state s
JOIN ticketTracking tt ON tt.stateFk = s.id JOIN ticketTracking tt ON tt.stateFk = s.id
JOIN ticket t ON t.id = tt.ticketFk JOIN ticket t ON t.id = tt.ticketFk
@ -33,24 +37,27 @@ BEGIN
SET vCanChangeState = (( SET vCanChangeState = ((
vStateCode <> 'ON_CHECKING' AND vStateCode <> 'CHECKED') OR vStateCode <> 'ON_CHECKING' AND vStateCode <> 'CHECKED') OR
vticketAlertLevel < vPackedAlertLevel vTicketAlertLevel < vPackedAlertLevel
) AND NOT ( ) AND NOT (
vTicketStateCode IN ('CHECKED', 'CHECKING') vTicketStateCode IN ('CHECKED', 'CHECKING')
AND vStateCode IN ('PREPARED', 'ON_PREPARATION') AND vStateCode IN ('PREPARED', 'ON_PREPARATION')
); );
IF vCanChangeState THEN IF vCanChangeState THEN
INSERT INTO ticketTracking (stateFk, ticketFk, userFk)
SELECT id, vSelf, account.myUser_getId()
FROM state
WHERE `code` = vStateCode COLLATE utf8_unicode_ci;
IF vStateCode = 'PACKED' THEN IF vStateCode = 'PACKED' THEN
CALL ticket_doCmr(vSelf); CALL ticket_doCmr(vSelf);
END IF; END IF;
IF vStateCode = vTicketStateCode AND vOldWorkerFk = vNewWorkerFk THEN
LEAVE proc;
END IF;
INSERT INTO ticketTracking (stateFk, ticketFk, userFk)
SELECT id, vSelf, vNewWorkerFk
FROM state
WHERE `code` = vStateCode COLLATE utf8_unicode_ci;
ELSE ELSE
CALL util.throw('INCORRECT_TICKET_STATE'); CALL util.throw('INCORRECT_TICKET_STATE');
END IF; END IF;
END$$ END$$
DELIMITER ; DELIMITER ;

View File

@ -70,7 +70,7 @@
<td width="5%">{{sale.itemFk}}</td> <td width="5%">{{sale.itemFk}}</td>
<td class="number">{{sale.quantity}}</td> <td class="number">{{sale.quantity}}</td>
<td width="50%">{{sale.concept}}</td> <td width="50%">{{sale.concept}}</td>
<td width="5%" class="font light-gray" v-if="sale.subName">{{sale.subName}}</td> <td width="5%" class="font light-gray">{{sale.subName}}</td>
<td class="number" v-if="showPrices">{{sale.price | currency('EUR', $i18n.locale)}}</td> <td class="number" v-if="showPrices">{{sale.price | currency('EUR', $i18n.locale)}}</td>
<td class="centered" width="5%" v-if="showPrices">{{(sale.discount / 100) | percentage}}</td> <td class="centered" width="5%" v-if="showPrices">{{(sale.discount / 100) | percentage}}</td>
<td class="centered" v-if="showPrices">{{sale.vatType}}</td> <td class="centered" v-if="showPrices">{{sale.vatType}}</td>