57 lines
1.5 KiB
SQL
57 lines
1.5 KiB
SQL
UPDATE vn.componentType
|
|
SET isBase = 1
|
|
WHERE code = 'MANA';
|
|
|
|
CREATE OR REPLACE TEMPORARY TABLE tmp.discountSale
|
|
(PRIMARY KEY (saleFk))
|
|
SELECT bs.saleFk,
|
|
bs.amount,
|
|
s.discount,
|
|
SUM(IF(ct.isBase, s.quantity * sc.value, 0)) importe,
|
|
SUM(IF(ct.isBase, 0, s.quantity * sc.value)) recargo
|
|
FROM bs.sale bs
|
|
JOIN vn.sale s ON s.id = bs.saleFk
|
|
JOIN vn.saleComponent sc ON sc.saleFk = s.id
|
|
JOIN vn.component c ON c.id = sc.componentFk
|
|
JOIN vn.componentType ct ON ct.id = c.typeFk
|
|
WHERE s.discount
|
|
GROUP BY bs.saleFk;
|
|
UPDATE bs.sale bs
|
|
JOIN tmp.discountSale ts ON ts.saleFk = bs.saleFk
|
|
SET bs.amount = ts.importe
|
|
bs.surcharge = ts.recargo;
|
|
|
|
DROP TEMPORARY TABLE tmp.discountSale;
|
|
|
|
DELETE FROM comparative
|
|
WHERE timePeriod BETWEEN '202101' AND '202409';
|
|
|
|
INSERT INTO comparative(
|
|
timePeriod,
|
|
itemFk,
|
|
warehouseFk,
|
|
quantity,
|
|
price,
|
|
countryFk
|
|
)
|
|
SELECT tm.period,
|
|
s.itemFk,
|
|
t.warehouseFk,
|
|
sum(s.quantity),
|
|
sum(v.importe),
|
|
p.countryFk
|
|
FROM bs.ventas v
|
|
JOIN time tm ON tm.dated = v.fecha
|
|
JOIN sale s ON s.id = v.Id_Movimiento
|
|
JOIN itemType tp ON tp.id = v.tipo_id
|
|
JOIN itemCategory ic ON ic.id = tp.categoryFk
|
|
JOIN ticket t ON t.id = s.ticketFk
|
|
JOIN client c ON c.id = t.clientFk
|
|
JOIN warehouse w ON w.id = t.warehouseFk
|
|
JOIN address ad ON ad.id = t.addressFk
|
|
LEFT JOIN province p ON p.id = ad.provinceFk
|
|
WHERE tm.period BETWEEN '202101' AND '202409'
|
|
AND c.typeFk <> 'loses'
|
|
AND NOT w.code = 'inv'
|
|
GROUP BY p.countryFk, s.itemFk, tm.period, t.warehouseFk;
|