fix: refs #7912 Major corrections waste_addSales
gitea/salix/pipeline/head This commit looks good
Details
gitea/salix/pipeline/head This commit looks good
Details
This commit is contained in:
parent
bd5610afb6
commit
2141d7d95d
|
@ -10,18 +10,26 @@ BEGIN
|
||||||
* @param vDateFrom Fecha desde
|
* @param vDateFrom Fecha desde
|
||||||
* @param vDateTo Fecha hasta
|
* @param vDateTo Fecha hasta
|
||||||
*/
|
*/
|
||||||
IF vDateFrom IS NULL THEN
|
DECLARE vDaysInYear INT;
|
||||||
SET vDateFrom = util.VN_CURDATE() - INTERVAL WEEKDAY(util.VN_CURDATE()) DAY;
|
SET vDaysInYear = DATEDIFF(util.lastDayOfYear(CURDATE()), util.firstDayOfYear(CURDATE()));
|
||||||
|
|
||||||
|
SET vDateFrom = COALESCE(vDateFrom, util.VN_CURDATE());
|
||||||
|
SET vDateTo = COALESCE(vDateTo, util.VN_CURDATE());
|
||||||
|
|
||||||
|
IF DATEDIFF(vDateTo, vDateFrom) > vDaysInYear THEN
|
||||||
|
CALL util.throw('The period cannot be longer than one year');
|
||||||
END IF;
|
END IF;
|
||||||
|
|
||||||
IF vDateTo IS NULL THEN
|
-- Obtiene el primer día de la semana de esa fecha
|
||||||
SET vDateTo = vDateFrom + INTERVAL 6 DAY;
|
SET vDateFrom = DATE_SUB(vDateFrom, INTERVAL ((WEEKDAY(vDateFrom) + 1) % 7) DAY);
|
||||||
END IF;
|
|
||||||
|
-- Obtiene el último día de la semana de esa fecha
|
||||||
|
SET vDateTo = DATE_ADD(vDateTo, INTERVAL (6 - ((WEEKDAY(vDateTo) + 1) % 7)) DAY);
|
||||||
|
|
||||||
CALL cache.last_buy_refresh(FALSE);
|
CALL cache.last_buy_refresh(FALSE);
|
||||||
|
|
||||||
REPLACE bs.waste
|
REPLACE bs.waste
|
||||||
SELECT YEAR(t.shipped),
|
SELECT YEARWEEK(t.shipped, 6) DIV 100,
|
||||||
WEEK(t.shipped, 6),
|
WEEK(t.shipped, 6),
|
||||||
it.workerFk,
|
it.workerFk,
|
||||||
it.id,
|
it.id,
|
||||||
|
@ -68,8 +76,8 @@ BEGIN
|
||||||
JOIN cache.last_buy lb ON lb.item_id = i.id
|
JOIN cache.last_buy lb ON lb.item_id = i.id
|
||||||
AND lb.warehouse_id = w.id
|
AND lb.warehouse_id = w.id
|
||||||
JOIN vn.buy b ON b.id = lb.buy_id
|
JOIN vn.buy b ON b.id = lb.buy_id
|
||||||
WHERE t.shipped BETWEEN vDateFrom AND vDateTo
|
WHERE t.shipped BETWEEN vDateFrom AND util.dayEnd(vDateTo)
|
||||||
AND w.isManaged
|
AND w.isManaged
|
||||||
GROUP BY YEAR(t.shipped), WEEK(t.shipped, 6), i.id;
|
GROUP BY YEARWEEK(t.shipped, 6) DIV 100, WEEK(t.shipped, 6), i.id;
|
||||||
END$$
|
END$$
|
||||||
DELIMITER ;
|
DELIMITER ;
|
||||||
|
|
Loading…
Reference in New Issue