feat: previas con sitema de reservas refs #6861 #2176
No reviewers
Labels
No Milestone
No Assignees
4 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: verdnatura/salix#2176
Loading…
Reference in New Issue
No description provided.
Delete Branch "6861-Pasar-modo-trabajo-de-previa-a-reservas"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
WIP: feat: previas con sitema de reservas refs #6861to feat: previas con sitema de reservas refs #6861@ -0,0 +1,29 @@
const UserError = require('vn-loopback/util/user-error');
module.exports = Self => {
Self.remoteMethodCtx('assignCollection', {
si el modul es collection el back assign soles es suficient
Hay 2 métodos asign que van a convivir hasta que este implantado el tema de las reservas. Ya existe el método asign
@ -0,0 +58,4 @@
FROM item
WHERE id = vItemFk;
INSERT INTO ticketLog
açò no ho fa el log asoles¿?
@ -0,0 +77,4 @@
CALL itemShelvingSale_addBySale(vSaleFk);
IF NOT EXISTS (SELECT TRUE FROM itemShelvingSale WHERE saleFk = vSaleFk LIMIT 1) THEN
SET vHasThrow = TRUE;
no pots posar ací el throw?
No hi ha un error especific per a caada error, s'aprofita la variable vHasThrow en varios puestos
@ -0,0 +3,4 @@
vUserFk INT,
OUT vCollectionFk INT)
proc:BEGIN
/* Comprueba si existen colecciones libres que se ajustan al perfil del usuario
formato del comentari
@ -0,0 +31,4 @@
collection_assign_lockname
INTO vHasTooMuchCollections,
vLockName
FROM tCollection
alias
@ -0,0 +38,4 @@
IF vHasTooMuchCollections THEN
CALL util.throw('Hay colecciones pendientes');
LEAVE proc;
si hi ha un throw el leave es innecesari
@ -0,0 +26,4 @@
JOIN vn.saleTracking st ON st.saleFk = sa.saleFk
JOIN vn.`state` s ON s.id = st.stateFk
WHERE st.isChecked
AND s.semaphore = 1
numero no, cal vore quin es l'objectiu del 1
@ -119,0 +7,4 @@
BEGIN
/**
* Gestiona la reserva de un itemShelvingFk, actualizando isPicked y quantity
* en itemShelvingSale y sale.isPicked en caso necesario.
es extrany 3 transaccions en el mateix proc, ja que si una falla, no es farà tot el procediment, es lo que vol l'usuari?
@ -0,0 +1,34 @@
DELIMITER $$
CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `vn`.`itemShelvingSale_setSaleGroup`(
itemShelvingSale_setPicked?
@ -1,5 +1,7 @@
DELIMITER $$
CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `vn`.`itemShelvingTransfer`(vItemShelvingFk INT, vShelvingFk VARCHAR(3))
CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `vn`.`itemShelvingTransfer`(
ara els shelvings poden ser de 4 a mes si es poc canvia el nom del proc a uno correcte.
@ -0,0 +1,19 @@
DELIMITER $$
CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `vn`.`sectorCollection_getPartial`()
sectorCollection_getMyPartial
@ -0,0 +12,4 @@
DECLARE vHasSalesReserved BOOLEAN;
sols un bot
@ -0,0 +13,4 @@
DECLARE vHasSalesReserved BOOLEAN;
SELECT DISTINCT COUNT(*)>0 INTO vHasSalesReserved
>
0 redundant@ -0,0 +14,4 @@
SELECT DISTINCT COUNT(*)>0 INTO vHasSalesReserved
FROM vn.sectorCollection sc
sense vn.
@ -13,1 +5,3 @@
VALUES( NEW.id,
BEGIN
INSERT INTO vn.itemShelvingLog(
açò no ho pot fer el procés del log automàtic
@ -5,6 +5,7 @@ CREATE OR REPLACE DEFINER=`root`@`localhost` TRIGGER `vn`.`itemShelving_beforeIn
BEGIN
SET NEW.editorFk = account.myUser_getId();
SET NEW.userFk = account.myUser_getId();
SET NEW.available = NEW.visible;
estas segur que el visible ací s'iguala al disponible?
Al insertar una nova línea encara no te reserves i el disponible i el visible deurien de ser iguals
@ -8,2 +9,4 @@
SET NEW.userFk = account.myUser_getId();
END IF;
IF (NEW.visible <> OLD.visible) THEN
si un dels dos valors fos NULL ací no dona TRUE es correcte?
La columna es NOT NULL default 0
@ -0,0 +16,4 @@
UPDATE vn.itemShelving SET available = visible;
CREATE TABLE vn.itemShelvingSaleReserv (
itemShelvingSaleReserv perque este nom?
Es una cola de les reserves que queden per fer en la taula vn.itemShelvingSale
seria itemShelvingSaleReserves
En plural??
itemShelvingSaleReserve el singular
si vols pots gastar el allocate que he vist tb per ahí, pero que siga tot igual
@ -0,0 +75,4 @@
END IF;
IF vHasThrow THEN
CALL util.throw("No hay disponibilidad para el artículo seleccionado");
castella no.
@ -0,0 +40,4 @@
DROP TEMPORARY TABLE tCollection;
IF vHasTooMuchCollections THEN
CALL util.throw('Hay colecciones pendientes');
castella no
@ -14,1 +15,4 @@
FROM collection
WHERE id = vParamFk;
SET vDated = util.yesterday();
vYesterday
@ -0,0 +20,4 @@
SELECT id INTO vItemShelvingFk
FROM itemShelving
WHERE id = vItemShelvingFk
AND FALSE
açò sempre dona false? es raro
@ -119,0 +29,4 @@
END;
IF (SELECT isPicked FROM itemShelvingSale WHERE id = vItemShelvingSaleFk) THEN
CALL util.throw('Reserva completada');
en castella no
@ -0,0 +12,4 @@
LEFT JOIN vn.sale sl ON sl.id = sgd.saleFk
LEFT JOIN itemShelvingSale iss ON iss.saleFk = sl.id
WHERE sc.userFk = account.myUser_getId()
AND (ISNULL(scsg.sectorCollectionFk)
Por temas de optimización en WHERE, utilizaremos la comparación a null usando IS NULL
ISNULL(parentFk)@ -9,0 +6,4 @@
UPDATE sale s
JOIN operator o ON o.workerFk = account.myUser_getId()
SET isPicked = IF(o.isOnReservationMode, isPicked, TRUE)
isPicked de quina taula?
itemShelving_moveReserv este nom es molt raro..
@ -119,0 +56,4 @@
SELECT id INTO vItemShelvingFk
FROM itemShelving
WHERE id = vItemShelvingFk
AND FALSE
per a que val esta linea¿?
@ -119,0 +86,4 @@
COMMIT;
IF vIsItemShelvingSaleEmpty AND vQuantity <> vReservedQuantity THEN
INSERT INTO itemShelvingSaleReserv (saleFk)
itemShelvingSaleReserve