#6703 refactor saleRefund #1954

Merged
jorgep merged 16 commits from 6703-refactorSaleRefund into dev 2024-02-05 07:51:18 +00:00
17 changed files with 73 additions and 175 deletions
Showing only changes of commit a2e076e94f - Show all commits

View File

@ -1,5 +1,5 @@
DELIMITER $$ DELIMITER $$
CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `bi`.`analisis_ventas_update`() CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `bi`.`analisis_ventas_update`()
BEGIN BEGIN
DECLARE vLastMonth DATE; DECLARE vLastMonth DATE;
@ -32,7 +32,7 @@ BEGIN
tm.year AS Año, tm.year AS Año,
tm.month AS Mes, tm.month AS Mes,
tm.week AS Semana, tm.week AS Semana,
v.vista AS Vista, dm.description AS Vista,
bt.importe AS Importe bt.importe AS Importe
FROM bs.ventas bt FROM bs.ventas bt
LEFT JOIN vn2008.Tipos tp ON tp.tipo_id = bt.tipo_id LEFT JOIN vn2008.Tipos tp ON tp.tipo_id = bt.tipo_id
@ -44,10 +44,10 @@ BEGIN
JOIN vn2008.Movimientos m ON m.Id_Movimiento = bt.Id_Movimiento JOIN vn2008.Movimientos m ON m.Id_Movimiento = bt.Id_Movimiento
LEFT JOIN vn2008.Tickets t ON t.Id_Ticket = m.Id_Ticket LEFT JOIN vn2008.Tickets t ON t.Id_Ticket = m.Id_Ticket
JOIN vn2008.Agencias a ON a.Id_Agencia = t.Id_Agencia JOIN vn2008.Agencias a ON a.Id_Agencia = t.Id_Agencia
LEFT JOIN vn2008.Vistas v ON v.vista_id = a.Vista LEFT JOIN vn.deliveryMethod dm ON dm.id = a.Vista
LEFT JOIN vn2008.Consignatarios cs ON cs.Id_Consigna = t.Id_Consigna LEFT JOIN vn2008.Consignatarios cs ON cs.Id_Consigna = t.Id_Consigna
LEFT JOIN vn2008.province p ON p.province_id = cs.province_id LEFT JOIN vn2008.province p ON p.province_id = cs.province_id
LEFT JOIN vn2008.warehouse w ON w.id = t.warehouse_id LEFT JOIN vn2008.warehouse w ON w.id = t.warehouse_id
WHERE bt.fecha >= vLastMonth AND r.mercancia; WHERE bt.fecha >= vLastMonth AND r.mercancia;
END$$ END$$
DELIMITER ; DELIMITER ;

View File

@ -17,7 +17,20 @@ BEGIN
SELECT t.Id_Ticket, Alias, cast(amount as decimal(10,2)) Importe, Domicilio, POBLACION SELECT t.Id_Ticket, Alias, cast(amount as decimal(10,2)) Importe, Domicilio, POBLACION
FROM Tickets t FROM Tickets t
JOIN Consignatarios cs ON t.Id_Consigna = cs.Id_Consigna JOIN Consignatarios cs ON t.Id_Consigna = cs.Id_Consigna
JOIN v_ticket_amount v ON v.Id_Ticket = t.Id_Ticket JOIN (
SELECT `Movimientos`.`Id_Ticket` AS `Id_Ticket`,
sum(
`Movimientos`.`Cantidad` * `Movimientos`.`Preu` * (100 - `Movimientos`.`Descuento`) / 100
) AS `amount`
FROM (
`vn2008`.`Movimientos`
JOIN `vn2008`.`Tickets` ON(
`Movimientos`.`Id_Ticket` = `Tickets`.`Id_Ticket`
)
)
WHERE `Tickets`.`Fecha` >= `util`.`VN_CURDATE`() + INTERVAL -6 MONTH
GROUP BY `Movimientos`.`Id_Ticket`
) v ON v.Id_Ticket = t.Id_Ticket
WHERE t.Fecha BETWEEN v_Date AND util.dayEnd(v_Date) WHERE t.Fecha BETWEEN v_Date AND util.dayEnd(v_Date)
AND t.Id_Cliente = v_Client_Id; AND t.Id_Cliente = v_Client_Id;

View File

@ -1,17 +0,0 @@
CREATE OR REPLACE DEFINER=`root`@`localhost`
SQL SECURITY DEFINER
VIEW `vn2008`.`VerEspionaje`
AS SELECT `Trabajadores`.`CodigoTrabajador` AS `CodigoTrabajador`,
`vn2008`.`Espionajes`.`Fecha` AS `Fecha`,
`vn2008`.`Espionajes`.`HoraEntrada` AS `HoraEntrada`,
`vn2008`.`Espionajes`.`HoraSalida` AS `HoraSalida`,
`vn2008`.`Espionajes`.`Id_Equipo` AS `Id_Equipo`,
`Trabajadores`.`Id_Trabajador` AS `Id_Trabajador`
FROM (
`vn2008`.`Espionajes`
JOIN `vn2008`.`Trabajadores` ON(
`vn2008`.`Espionajes`.`Id_Trabajador` = `Trabajadores`.`Id_Trabajador`
)
)
ORDER BY `Trabajadores`.`CodigoTrabajador`,
`vn2008`.`Espionajes`.`Fecha`

View File

@ -1,7 +0,0 @@
CREATE OR REPLACE DEFINER=`root`@`localhost`
SQL SECURITY DEFINER
VIEW `vn2008`.`Vistas`
AS SELECT `dm`.`id` AS `vista_id`,
`dm`.`code` AS `code`,
`dm`.`description` AS `vista`
FROM `vn`.`deliveryMethod` `dm`

View File

@ -1,20 +0,0 @@
CREATE OR REPLACE DEFINER=`root`@`localhost`
SQL SECURITY DEFINER
VIEW `vn2008`.`v_price_fixed_group`
AS SELECT `pf`.`warehouse_id` AS `warehouse_id`,
`pf`.`item_id` AS `item_id`,
`pf`.`rate_0` AS `rate_0`,
`pf`.`rate_1` AS `rate_1`,
`pf`.`rate_2` AS `rate_2`,
`pf`.`rate_3` AS `rate_3`,
`pf`.`date_start` AS `date_start`,
`pf`.`date_end` AS `date_end`,
`pf`.`bonus` AS `bonus`,
`pf`.`grouping` AS `grouping`,
`pf`.`Packing` AS `Packing`,
`pf`.`caja` AS `caja`
FROM `vn2008`.`v_price_fixed` `pf`
GROUP BY `pf`.`warehouse_id`,
`pf`.`item_id`,
`pf`.`date_start`,
`pf`.`date_end`

View File

@ -1,15 +0,0 @@
CREATE OR REPLACE DEFINER=`root`@`localhost`
SQL SECURITY DEFINER
VIEW `vn2008`.`v_ticket_amount`
AS SELECT `Movimientos`.`Id_Ticket` AS `Id_Ticket`,
sum(
`Movimientos`.`Cantidad` * `Movimientos`.`Preu` * (100 - `Movimientos`.`Descuento`) / 100
) AS `amount`
FROM (
`vn2008`.`Movimientos`
JOIN `vn2008`.`Tickets` ON(
`Movimientos`.`Id_Ticket` = `Tickets`.`Id_Ticket`
)
)
WHERE `Tickets`.`Fecha` >= `util`.`VN_CURDATE`() + INTERVAL -6 MONTH
GROUP BY `Movimientos`.`Id_Ticket`

View File

@ -1,10 +0,0 @@
CREATE OR REPLACE DEFINER=`root`@`localhost`
SQL SECURITY DEFINER
VIEW `vn2008`.`v_warehouse`
AS SELECT `warehouse`.`id` AS `id`,
`warehouse`.`name` AS `almacen`
FROM `vn2008`.`warehouse`
UNION ALL
SELECT 1000 + `warehouse_alias`.`warehouse_alias_id` AS `warehouse_alias_id`,
concat(`warehouse_alias`.`alias`, '(G)') AS `concat(alias, '(G)')`
FROM `vn2008`.`warehouse_alias`

View File

@ -1,12 +0,0 @@
CREATE OR REPLACE DEFINER=`root`@`localhost`
SQL SECURITY DEFINER
VIEW `vn2008`.`v_xsubclien`
AS SELECT DISTINCT `Facturas`.`Id_Cliente` AS `Id_Cliente`,
`Facturas`.`empresa_id` AS `empresa_id`
FROM `vn2008`.`Facturas`
WHERE `Facturas`.`Fecha` > `util`.`VN_CURDATE`() + INTERVAL -2 MONTH
UNION
SELECT `Recibos`.`Id_Cliente` AS `Id_Cliente`,
`Recibos`.`empresa_id` AS `empresa_id`
FROM `vn2008`.`Recibos`
WHERE `Recibos`.`Fechacobro` > `util`.`VN_CURDATE`() + INTERVAL -2 MONTH

View File

@ -17,7 +17,7 @@ AS SELECT `Clientes`.`Cuenta` AS `COD`,
`province`.`name` AS `PROVINCIA`, `province`.`name` AS `PROVINCIA`,
`Clientes`.`codPostal` AS `CODPOSTAL`, `Clientes`.`codPostal` AS `CODPOSTAL`,
`p`.`Codigo` AS `country_code`, `p`.`Codigo` AS `country_code`,
`v_xsubclien`.`empresa_id` AS `empresa_id`, sub.`empresa_id` AS `empresa_id`,
substr( substr(
`Clientes`.`e-mail`, `Clientes`.`e-mail`,
1, 1,
@ -39,8 +39,18 @@ FROM (
( (
( (
`vn2008`.`Clientes` `vn2008`.`Clientes`
JOIN `vn2008`.`v_xsubclien` ON( JOIN (
`Clientes`.`id_cliente` = `v_xsubclien`.`Id_Cliente` SELECT DISTINCT `Facturas`.`Id_Cliente` AS `Id_Cliente`,
`Facturas`.`empresa_id` AS `empresa_id`
FROM `vn2008`.`Facturas`
WHERE `Facturas`.`Fecha` > `util`.`VN_CURDATE`() + INTERVAL -2 MONTH
UNION
SELECT `Recibos`.`Id_Cliente` AS `Id_Cliente`,
`Recibos`.`empresa_id` AS `empresa_id`
FROM `vn2008`.`Recibos`
WHERE `Recibos`.`Fechacobro` > `util`.`VN_CURDATE`() + INTERVAL -2 MONTH
) sub ON(
`Clientes`.`id_cliente` = sub.`Id_Cliente`
) )
) )
LEFT JOIN `vn2008`.`Paises` `p` ON(`p`.`Id` = `Clientes`.`Id_Pais`) LEFT JOIN `vn2008`.`Paises` `p` ON(`p`.`Id` = `Clientes`.`Id_Pais`)
@ -50,7 +60,7 @@ FROM (
) )
) )
GROUP BY `Clientes`.`id_cliente`, GROUP BY `Clientes`.`id_cliente`,
`v_xsubclien`.`empresa_id` sub.`empresa_id`
UNION ALL UNION ALL
SELECT `Proveedores`.`cuenta` AS `Cuenta`, SELECT `Proveedores`.`cuenta` AS `Cuenta`,
`Proveedores`.`Proveedor` AS `Proveedor`, `Proveedores`.`Proveedor` AS `Proveedor`,
@ -68,7 +78,7 @@ SELECT `Proveedores`.`cuenta` AS `Cuenta`,
`prov`.`name` AS `Provincia`, `prov`.`name` AS `Provincia`,
`Proveedores`.`codpos` AS `CP`, `Proveedores`.`codpos` AS `CP`,
`p`.`Codigo` AS `country_code`, `p`.`Codigo` AS `country_code`,
`v_xsubprov`.`empresa_id` AS `empresa_id`, sub.`empresa_id` AS `empresa_id`,
substr( substr(
`c`.`email`, `c`.`email`,
1, 1,
@ -80,8 +90,22 @@ FROM (
( (
( (
`vn2008`.`Proveedores` `vn2008`.`Proveedores`
JOIN `vn2008`.`v_xsubprov` ON( JOIN (
`Proveedores`.`Id_Proveedor` = `v_xsubprov`.`proveedor_id` SELECT `recibida`.`proveedor_id` AS `proveedor_id`,
`recibida`.`empresa_id` AS `empresa_id`
FROM `vn2008`.`recibida`
WHERE `recibida`.`fecha` > `util`.`VN_CURDATE`() + INTERVAL -3 MONTH
GROUP BY `recibida`.`proveedor_id`,
`recibida`.`empresa_id`
UNION ALL
SELECT `pago`.`id_proveedor` AS `id_proveedor`,
`pago`.`empresa_id` AS `empresa_id`
FROM `vn2008`.`pago`
WHERE `pago`.`fecha` > `util`.`VN_CURDATE`() + INTERVAL -3 MONTH
GROUP BY `pago`.`id_proveedor`,
`pago`.`empresa_id`
) sub ON(
`Proveedores`.`Id_Proveedor` = sub.`proveedor_id`
) )
) )
LEFT JOIN `vn2008`.`Paises` `p` ON(`p`.`Id` = `Proveedores`.`pais_id`) LEFT JOIN `vn2008`.`Paises` `p` ON(`p`.`Id` = `Proveedores`.`pais_id`)
@ -93,8 +117,8 @@ FROM (
LEFT JOIN `vn`.`supplierContact` `c` ON(`c`.`supplierFk` = `Proveedores`.`Id_Proveedor`) LEFT JOIN `vn`.`supplierContact` `c` ON(`c`.`supplierFk` = `Proveedores`.`Id_Proveedor`)
) )
WHERE `Proveedores`.`oficial` <> 0 WHERE `Proveedores`.`oficial` <> 0
GROUP BY `v_xsubprov`.`proveedor_id`, GROUP BY sub.`proveedor_id`,
`v_xsubprov`.`empresa_id` sub.`empresa_id`
UNION ALL UNION ALL
SELECT `Gastos`.`Id_Gasto` COLLATE utf8mb3_unicode_ci AS `Id_Gasto`, SELECT `Gastos`.`Id_Gasto` COLLATE utf8mb3_unicode_ci AS `Id_Gasto`,
`Gastos`.`Gasto` COLLATE utf8mb3_unicode_ci AS `Gasto`, `Gastos`.`Gasto` COLLATE utf8mb3_unicode_ci AS `Gasto`,
@ -136,7 +160,7 @@ SELECT lpad(right(`Proveedores`.`cuenta`, 5), 10, '47510000') AS `Cuenta`,
`prov`.`name` AS `Provincia`, `prov`.`name` AS `Provincia`,
`Proveedores`.`codpos` AS `CP`, `Proveedores`.`codpos` AS `CP`,
`p`.`Codigo` AS `country_code`, `p`.`Codigo` AS `country_code`,
`v_xsubprov`.`empresa_id` AS `empresa_id`, sub.`empresa_id` AS `empresa_id`,
substr( substr(
`c`.`email`, `c`.`email`,
1, 1,
@ -148,8 +172,22 @@ FROM (
( (
( (
`vn2008`.`Proveedores` `vn2008`.`Proveedores`
JOIN `vn2008`.`v_xsubprov` ON( JOIN (
`Proveedores`.`Id_Proveedor` = `v_xsubprov`.`proveedor_id` SELECT `recibida`.`proveedor_id` AS `proveedor_id`,
`recibida`.`empresa_id` AS `empresa_id`
FROM `vn2008`.`recibida`
WHERE `recibida`.`fecha` > `util`.`VN_CURDATE`() + INTERVAL -3 MONTH
GROUP BY `recibida`.`proveedor_id`,
`recibida`.`empresa_id`
UNION ALL
SELECT `pago`.`id_proveedor` AS `id_proveedor`,
`pago`.`empresa_id` AS `empresa_id`
FROM `vn2008`.`pago`
WHERE `pago`.`fecha` > `util`.`VN_CURDATE`() + INTERVAL -3 MONTH
GROUP BY `pago`.`id_proveedor`,
`pago`.`empresa_id`
) sub ON(
`Proveedores`.`Id_Proveedor` = sub.`proveedor_id`
) )
) )
LEFT JOIN `vn2008`.`Paises` `p` ON(`p`.`Id` = `Proveedores`.`pais_id`) LEFT JOIN `vn2008`.`Paises` `p` ON(`p`.`Id` = `Proveedores`.`pais_id`)
@ -165,5 +203,5 @@ WHERE (
OR `Proveedores`.`cuenta` LIKE '_____2____' OR `Proveedores`.`cuenta` LIKE '_____2____'
) )
AND `Proveedores`.`oficial` = 1 AND `Proveedores`.`oficial` = 1
GROUP BY `v_xsubprov`.`proveedor_id`, GROUP BY sub.`proveedor_id`,
`v_xsubprov`.`empresa_id` sub.`empresa_id`

View File

@ -1,16 +0,0 @@
CREATE OR REPLACE DEFINER=`root`@`localhost`
SQL SECURITY DEFINER
VIEW `vn2008`.`v_xsubprov`
AS SELECT `recibida`.`proveedor_id` AS `proveedor_id`,
`recibida`.`empresa_id` AS `empresa_id`
FROM `vn2008`.`recibida`
WHERE `recibida`.`fecha` > `util`.`VN_CURDATE`() + INTERVAL -3 MONTH
GROUP BY `recibida`.`proveedor_id`,
`recibida`.`empresa_id`
UNION ALL
SELECT `pago`.`id_proveedor` AS `id_proveedor`,
`pago`.`empresa_id` AS `empresa_id`
FROM `vn2008`.`pago`
WHERE `pago`.`fecha` > `util`.`VN_CURDATE`() + INTERVAL -3 MONTH
GROUP BY `pago`.`id_proveedor`,
`pago`.`empresa_id`

View File

@ -1,8 +0,0 @@
CREATE OR REPLACE DEFINER=`root`@`localhost`
SQL SECURITY DEFINER
VIEW `vn2008`.`vnCreditClassification`
AS SELECT `vn`.`creditClassification`.`id` AS `id`,
`vn`.`creditClassification`.`client` AS `client`,
`vn`.`creditClassification`.`dateStart` AS `dateStart`,
`vn`.`creditClassification`.`dateEnd` AS `dateEnd`
FROM `vn`.`creditClassification`

View File

@ -1,9 +0,0 @@
CREATE OR REPLACE DEFINER=`root`@`localhost`
SQL SECURITY DEFINER
VIEW `vn2008`.`vnCreditInsurance`
AS SELECT `vn`.`creditInsurance`.`id` AS `id`,
`vn`.`creditInsurance`.`creditClassification` AS `creditClassification`,
`vn`.`creditInsurance`.`credit` AS `credit`,
`vn`.`creditInsurance`.`creationDate` AS `creationDate`,
`vn`.`creditInsurance`.`grade` AS `grade`
FROM `vn`.`creditInsurance`

View File

@ -1,8 +0,0 @@
CREATE OR REPLACE DEFINER=`root`@`localhost`
SQL SECURITY DEFINER
VIEW `vn2008`.`vnSolunionCAP`
AS SELECT `vn`.`solunionCAP`.`creditInsurance` AS `creditInsurance`,
`vn`.`solunionCAP`.`dateStart` AS `dateStart`,
`vn`.`solunionCAP`.`dateEnd` AS `dateEnd`,
`vn`.`solunionCAP`.`dateLeaving` AS `dateLeaving`
FROM `vn`.`solunionCAP`

View File

@ -1,6 +0,0 @@
CREATE OR REPLACE DEFINER=`root`@`localhost`
SQL SECURITY DEFINER
VIEW `vn2008`.`warehouse_alias`
AS SELECT `wa`.`id` AS `warehouse_alias_id`,
`wa`.`name` AS `alias`
FROM `vn`.`warehouseAlias` `wa`

View File

@ -1,7 +0,0 @@
CREATE OR REPLACE DEFINER=`root`@`localhost`
SQL SECURITY DEFINER
VIEW `vn2008`.`workcenter_holiday`
AS SELECT `wh`.`workCenterFk` AS `workcenter_id`,
`wh`.`days` AS `day`,
`wh`.`year` AS `year`
FROM `vn`.`workCenterHoliday` `wh`

View File

@ -1,19 +0,0 @@
CREATE OR REPLACE DEFINER=`root`@`localhost`
SQL SECURITY DEFINER
VIEW `vn2008`.`zoneNickname`
AS SELECT `ap`.`warehouse_id` AS `warehouse_id`,
`ap`.`agency_id` AS `agency_id`,
`ap`.`zona` AS `zona`,
concat(
'ZONA ',
`ap`.`zona`,
' ',
IF(`ap`.`zona` = 20, 'Madrid', `p`.`name`)
) AS `alias`
FROM (
`vn2008`.`Agencias_province` `ap`
JOIN `vn2008`.`province` `p` ON(`p`.`province_id` = `ap`.`province_id`)
)
GROUP BY `ap`.`zona`,
`ap`.`warehouse_id`,
`ap`.`agency_id`

View File

@ -0,0 +1 @@
REVOKE SELECT ON TABLE vn2008.Vistas FROM employee;