Merge branch 'dev' of https://gitea.verdnatura.es/verdnatura/salix into 2801_ticket_sale_restrictions
gitea/salix/pipeline/head This commit looks good
Details
gitea/salix/pipeline/head This commit looks good
Details
This commit is contained in:
commit
3f167de10f
|
@ -1,26 +0,0 @@
|
||||||
CREATE OR REPLACE DEFINER = root@`%` VIEW `vn`.`saleValue` AS
|
|
||||||
SELECT `wh`.`name` AS `warehouse`,
|
|
||||||
`c`.`name` AS `client`,
|
|
||||||
`c`.`typeFk` AS `clientTypeFk`,
|
|
||||||
`u`.`name` AS `buyer`,
|
|
||||||
`it`.`id` AS `itemTypeFk`,
|
|
||||||
`it`.`name` AS `family`,
|
|
||||||
`s`.`itemFk` AS `itemFk`,
|
|
||||||
`s`.`concept` AS `concept`,
|
|
||||||
`s`.`quantity` AS `quantity`,
|
|
||||||
`b`.`buyingValue` + `b`.`freightValue` + `b`.`comissionValue` + `b`.`packageValue` AS `cost`,
|
|
||||||
(`b`.`buyingValue` + `b`.`freightValue` + `b`.`comissionValue` + `b`.`packageValue`) * `s`.`quantity` AS `value`,
|
|
||||||
`tm`.`year` AS `year`,
|
|
||||||
`tm`.`week` AS `week`
|
|
||||||
FROM `vn`.`sale` `s`
|
|
||||||
JOIN `vn`.`item` `i` ON `i`.`id` = `s`.`itemFk`
|
|
||||||
JOIN `vn`.`itemType` `it` ON `it`.`id` = `i`.`typeFk`
|
|
||||||
JOIN `account`.`user` `u` ON `u`.`id` = `it`.`workerFk`
|
|
||||||
JOIN `vn`.`ticket` `t` ON `t`.`id` = `s`.`ticketFk`
|
|
||||||
JOIN `vn`.`client` `c` ON `c`.`id` = `t`.`clientFk`
|
|
||||||
JOIN `vn`.`warehouse` `wh` ON `wh`.`id` = `t`.`warehouseFk`
|
|
||||||
JOIN `vn`.`time` `tm` ON `tm`.`dated` = CAST(`t`.`shipped` AS DATE)
|
|
||||||
JOIN `cache`.`last_buy` `lb` ON `lb`.`item_id` = `i`.`id` AND `lb`.`warehouse_id` = `wh`.`id`
|
|
||||||
JOIN `vn`.`buy` `b` ON `b`.`id` = `lb`.`buy_id`
|
|
||||||
WHERE `wh`.`isManaged` <> 0;
|
|
||||||
|
|
|
@ -1,2 +0,0 @@
|
||||||
ALTER TABLE vn.`supplierAccount` ADD `beneficiary` VARCHAR(50) NULL DEFAULT NULL AFTER `bankFk`;
|
|
||||||
UPDATE vn.supplierAccount SET beneficiary = `description`;
|
|
|
@ -1,28 +0,0 @@
|
||||||
DROP PROCEDURE IF EXISTS `bs`.`weekWaste`;
|
|
||||||
|
|
||||||
DELIMITER $$
|
|
||||||
$$
|
|
||||||
CREATE DEFINER = `root`@`%` PROCEDURE `bs`.`weekWaste__`()
|
|
||||||
BEGIN
|
|
||||||
DECLARE vWeek INT;
|
|
||||||
DECLARE vYear INT;
|
|
||||||
|
|
||||||
SELECT week, year
|
|
||||||
INTO vWeek, vYear
|
|
||||||
FROM vn.time
|
|
||||||
WHERE dated = DATE_ADD(CURDATE(), INTERVAL -1 WEEK);
|
|
||||||
|
|
||||||
SELECT *, 100 * dwindle / total AS percentage
|
|
||||||
FROM (
|
|
||||||
SELECT buyer,
|
|
||||||
SUM(saleTotal) AS total,
|
|
||||||
SUM(saleWaste) AS dwindle
|
|
||||||
FROM bs.waste
|
|
||||||
WHERE year = vYear
|
|
||||||
AND week = vWeek
|
|
||||||
GROUP BY buyer
|
|
||||||
) sub
|
|
||||||
ORDER BY percentage DESC;
|
|
||||||
END;$$
|
|
||||||
DELIMITER ;
|
|
||||||
|
|
|
@ -1,32 +0,0 @@
|
||||||
DROP PROCEDURE IF EXISTS `bs`.`weekWaste_byWorker`;
|
|
||||||
|
|
||||||
DELIMITER $$
|
|
||||||
$$
|
|
||||||
CREATE
|
|
||||||
DEFINER = root@`%` PROCEDURE `bs`.`weekWaste_byWorker__`(IN vWorkerFk INT)
|
|
||||||
BEGIN
|
|
||||||
|
|
||||||
DECLARE vWeek INT;
|
|
||||||
DECLARE vYear INT;
|
|
||||||
|
|
||||||
SELECT week, year
|
|
||||||
INTO vWeek, vYear
|
|
||||||
FROM vn.time
|
|
||||||
WHERE dated = TIMESTAMPADD(WEEK, -1, CURDATE());
|
|
||||||
|
|
||||||
SELECT *, 100 * mermas / total AS porcentaje
|
|
||||||
FROM (
|
|
||||||
SELECT ws.family,
|
|
||||||
SUM(ws.saleTotal) AS total,
|
|
||||||
SUM(ws.saleWaste) AS mermas
|
|
||||||
FROM bs.waste ws
|
|
||||||
JOIN vn.worker w ON w.user = ws.buyer
|
|
||||||
WHERE year = vYear
|
|
||||||
AND week = vWeek
|
|
||||||
AND w.id = vWorkerFk
|
|
||||||
GROUP BY family
|
|
||||||
) sub
|
|
||||||
ORDER BY porcentaje DESC;
|
|
||||||
END;;$$
|
|
||||||
DELIMITER ;
|
|
||||||
|
|
|
@ -1,30 +0,0 @@
|
||||||
DROP PROCEDURE IF EXISTS `bs`.`weekWaste_getDetail`;
|
|
||||||
|
|
||||||
DELIMITER $$
|
|
||||||
$$
|
|
||||||
CREATE
|
|
||||||
DEFINER = root@`%` PROCEDURE `bs`.`weekWaste_getDetail__`()
|
|
||||||
BEGIN
|
|
||||||
DECLARE vLastWeek DATE;
|
|
||||||
DECLARE vWeek INT;
|
|
||||||
DECLARE vYear INT;
|
|
||||||
|
|
||||||
SET vLastWeek = TIMESTAMPADD(WEEK, -1, CURDATE());
|
|
||||||
SET vYear = YEAR(vLastWeek);
|
|
||||||
SET vWeek = WEEK(vLastWeek, 1);
|
|
||||||
|
|
||||||
SELECT *, 100 * dwindle / total AS percentage
|
|
||||||
FROM (
|
|
||||||
SELECT buyer,
|
|
||||||
ws.family,
|
|
||||||
SUM(ws.saleTotal) AS total,
|
|
||||||
SUM(ws.saleWaste) AS dwindle
|
|
||||||
FROM bs.waste ws
|
|
||||||
WHERE year = vYear
|
|
||||||
AND week = vWeek
|
|
||||||
GROUP BY buyer, family
|
|
||||||
) sub
|
|
||||||
ORDER BY percentage DESC;
|
|
||||||
END;$$
|
|
||||||
DELIMITER ;
|
|
||||||
|
|
|
@ -1,21 +0,0 @@
|
||||||
ALTER TABLE `bs`.`waste`
|
|
||||||
ADD itemFk INT NULL AFTER `family`;
|
|
||||||
|
|
||||||
ALTER TABLE `bs`.`waste`
|
|
||||||
ADD itemTypeFk SMALLINT(5) UNSIGNED NULL AFTER `itemFk`;
|
|
||||||
|
|
||||||
ALTER TABLE `bs`.`waste`
|
|
||||||
ADD CONSTRAINT waste_itemType_id
|
|
||||||
FOREIGN KEY (itemTypeFk) REFERENCES vn.itemType (id)
|
|
||||||
ON UPDATE CASCADE;
|
|
||||||
|
|
||||||
ALTER TABLE `bs`.`waste`
|
|
||||||
ADD CONSTRAINT waste_item_id
|
|
||||||
FOREIGN KEY (itemFk) REFERENCES vn.item (id)
|
|
||||||
ON UPDATE CASCADE;
|
|
||||||
|
|
||||||
ALTER TABLE `bs`.`waste` DROP PRIMARY KEY;
|
|
||||||
|
|
||||||
ALTER TABLE `bs`.`waste`
|
|
||||||
ADD PRIMARY KEY (buyer, `year`, week, family, itemFk);
|
|
||||||
|
|
|
@ -1,37 +0,0 @@
|
||||||
UPDATE `bs`.nightTask t SET t.`procedure` = 'waste_addSales' WHERE t.id = 54;
|
|
||||||
|
|
||||||
DROP PROCEDURE IF EXISTS `bs`.`waste_Add`;
|
|
||||||
|
|
||||||
DELIMITER $$
|
|
||||||
$$
|
|
||||||
CREATE
|
|
||||||
DEFINER = root@`%` PROCEDURE `bs`.`waste_addSales`()
|
|
||||||
BEGIN
|
|
||||||
DECLARE vWeek INT;
|
|
||||||
DECLARE vYear INT;
|
|
||||||
|
|
||||||
SELECT week, year
|
|
||||||
INTO vWeek, vYear
|
|
||||||
FROM vn.time
|
|
||||||
WHERE dated = CURDATE();
|
|
||||||
|
|
||||||
REPLACE bs.waste
|
|
||||||
SELECT *, 100 * mermas / total as porcentaje
|
|
||||||
FROM (
|
|
||||||
SELECT buyer,
|
|
||||||
year,
|
|
||||||
week,
|
|
||||||
family,
|
|
||||||
itemFk,
|
|
||||||
itemTypeFk,
|
|
||||||
floor(sum(value)) as total,
|
|
||||||
floor(sum(IF(clientTypeFk = 'loses', value, 0))) as mermas
|
|
||||||
FROM vn.saleValue
|
|
||||||
where year = vYear and week = vWeek
|
|
||||||
|
|
||||||
GROUP BY family, itemFk
|
|
||||||
|
|
||||||
) sub
|
|
||||||
ORDER BY mermas DESC;
|
|
||||||
END;$$
|
|
||||||
DELIMITER ;
|
|
File diff suppressed because one or more lines are too long
|
@ -459,6 +459,19 @@ INSERT INTO `vn`.`company`(`id`, `code`, `supplierAccountFk`, `workerManagerFk`,
|
||||||
(791 , 'FTH', NULL, 30, NULL, 3, '2015-11-30', NULL),
|
(791 , 'FTH', NULL, 30, NULL, 3, '2015-11-30', NULL),
|
||||||
(1381, 'ORN', NULL, 30, NULL, 7, NULL, 'ORN Company - Plant passport');
|
(1381, 'ORN', NULL, 30, NULL, 7, NULL, 'ORN Company - Plant passport');
|
||||||
|
|
||||||
|
INSERT INTO `vn`.`taxArea` (`code`, `claveOperacionFactura`, `CodigoTransaccion`)
|
||||||
|
VALUES
|
||||||
|
('CEE', 1, 10),
|
||||||
|
('EQU', 0, 1),
|
||||||
|
('NATIONAL', 0, 1),
|
||||||
|
('WORLD', 2, 15);
|
||||||
|
|
||||||
|
INSERT INTO `vn`.`invoiceOutSerial` (`code`, `description`, `isTaxed`, `taxAreaFk`, `isCEE`)
|
||||||
|
VALUES
|
||||||
|
('A', 'Global nacional', 1, 'NATIONAL', 0),
|
||||||
|
('T', 'Española rapida', 1, 'NATIONAL', 0),
|
||||||
|
('V', 'Intracomunitaria global', 0, 'CEE', 1);
|
||||||
|
|
||||||
INSERT INTO `vn`.`invoiceOut`(`id`, `serial`, `amount`, `issued`,`clientFk`, `created`, `companyFk`, `dued`, `booked`, `bankFk`, `hasPdf`)
|
INSERT INTO `vn`.`invoiceOut`(`id`, `serial`, `amount`, `issued`,`clientFk`, `created`, `companyFk`, `dued`, `booked`, `bankFk`, `hasPdf`)
|
||||||
VALUES
|
VALUES
|
||||||
(1, 'T', 1014.24, CURDATE(), 101, CURDATE(), 442, CURDATE(), CURDATE(), 1, 1),
|
(1, 'T', 1014.24, CURDATE(), 101, CURDATE(), 442, CURDATE(), CURDATE(), 1, 1),
|
||||||
|
@ -504,19 +517,6 @@ INSERT INTO `vn`.`invoiceOutExpence`(`id`, `invoiceOutFk`, `amount`, `expenceFk`
|
||||||
(6, 4, 8.07, 2000000000, CURDATE()),
|
(6, 4, 8.07, 2000000000, CURDATE()),
|
||||||
(7, 5, 8.07, 2000000000, CURDATE());
|
(7, 5, 8.07, 2000000000, CURDATE());
|
||||||
|
|
||||||
INSERT INTO `vn`.`taxArea` (`code`, `claveOperacionFactura`, `CodigoTransaccion`)
|
|
||||||
VALUES
|
|
||||||
('CEE', 1, 10),
|
|
||||||
('EQU', 0, 1),
|
|
||||||
('NATIONAL', 0, 1),
|
|
||||||
('WORLD', 2, 15);
|
|
||||||
|
|
||||||
INSERT INTO `vn`.`invoiceOutSerial` (`code`, `description`, `isTaxed`, `taxAreaFk`, `isCEE`)
|
|
||||||
VALUES
|
|
||||||
('A', 'Global nacional', 1, 'NATIONAL', 0),
|
|
||||||
('T', 'Española rapida', 1, 'NATIONAL', 0),
|
|
||||||
('V', 'Intracomunitaria global', 0, 'CEE', 1);
|
|
||||||
|
|
||||||
INSERT INTO `vn`.`zone` (`id`, `name`, `hour`, `agencyModeFk`, `travelingDays`, `price`, `bonus`, `m3Max`)
|
INSERT INTO `vn`.`zone` (`id`, `name`, `hour`, `agencyModeFk`, `travelingDays`, `price`, `bonus`, `m3Max`)
|
||||||
VALUES
|
VALUES
|
||||||
(1, 'Zone pickup A', CONCAT(CURRENT_DATE(), ' ', TIME('23:59')), 1, 0, 0, 0, 30.50),
|
(1, 'Zone pickup A', CONCAT(CURRENT_DATE(), ' ', TIME('23:59')), 1, 0, 0, 0, 30.50),
|
||||||
|
@ -774,6 +774,12 @@ INSERT INTO `vn`.`intrastat`(`id`, `description`, `taxClassFk`, `taxCodeFk`)
|
||||||
(05080000, 'Coral y materiales similares', 2, 2),
|
(05080000, 'Coral y materiales similares', 2, 2),
|
||||||
(06021010, 'Plantas vivas: Esqueje/injerto, Vid', 1, 1);
|
(06021010, 'Plantas vivas: Esqueje/injerto, Vid', 1, 1);
|
||||||
|
|
||||||
|
INSERT INTO `vn`.`itemFamily`(`code`, `description`)
|
||||||
|
VALUES
|
||||||
|
('EMB', 'Packagings'),
|
||||||
|
('SER', 'Services'),
|
||||||
|
('VT', 'Sales');
|
||||||
|
|
||||||
INSERT INTO `vn`.`item`(`id`, `typeFk`, `size`, `inkFk`, `stems`, `originFk`, `description`, `producerFk`, `intrastatFk`, `isOnOffer`, `expenceFk`, `isBargain`, `comment`, `relevancy`, `image`, `taxClassFk`, `subName`, `minPrice`, `stars`, `family`)
|
INSERT INTO `vn`.`item`(`id`, `typeFk`, `size`, `inkFk`, `stems`, `originFk`, `description`, `producerFk`, `intrastatFk`, `isOnOffer`, `expenceFk`, `isBargain`, `comment`, `relevancy`, `image`, `taxClassFk`, `subName`, `minPrice`, `stars`, `family`)
|
||||||
VALUES
|
VALUES
|
||||||
(1, 2, 70, 'YEL', 1, 1, NULL, 1, 06021010, 0, 2000000000, 0, NULL, 0, '1', 1, NULL, 0, 1, 'VT'),
|
(1, 2, 70, 'YEL', 1, 1, NULL, 1, 06021010, 0, 2000000000, 0, NULL, 0, '1', 1, NULL, 0, 1, 'VT'),
|
||||||
|
@ -2250,10 +2256,6 @@ INSERT INTO `vn`.`campaign`(`code`, `dated`)
|
||||||
('allSaints', CONCAT(YEAR(DATE_ADD(CURDATE(), INTERVAL -2 YEAR)), '-11-01')),
|
('allSaints', CONCAT(YEAR(DATE_ADD(CURDATE(), INTERVAL -2 YEAR)), '-11-01')),
|
||||||
('allSaints', CONCAT(YEAR(DATE_ADD(CURDATE(), INTERVAL -3 YEAR)), '-11-01'));
|
('allSaints', CONCAT(YEAR(DATE_ADD(CURDATE(), INTERVAL -3 YEAR)), '-11-01'));
|
||||||
|
|
||||||
INSERT INTO `hedera`.`image`(`collectionFk`, `name`)
|
|
||||||
VALUES
|
|
||||||
('user', '4fa3ada0-3ac4-11eb-9ab8-27f6fc3b85fd');
|
|
||||||
|
|
||||||
INSERT INTO `hedera`.`imageCollectionSize`(`id`, `collectionFk`,`width`, `height`)
|
INSERT INTO `hedera`.`imageCollectionSize`(`id`, `collectionFk`,`width`, `height`)
|
||||||
VALUES
|
VALUES
|
||||||
(1, 4, 160, 160);
|
(1, 4, 160, 160);
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -59,6 +59,7 @@ TABLES=(
|
||||||
component
|
component
|
||||||
componentType
|
componentType
|
||||||
continent
|
continent
|
||||||
|
volumeConfig
|
||||||
)
|
)
|
||||||
dump_tables ${TABLES[@]}
|
dump_tables ${TABLES[@]}
|
||||||
|
|
||||||
|
|
|
@ -75,7 +75,7 @@ describe('Ticket Edit basic data path', () => {
|
||||||
const result = await page
|
const result = await page
|
||||||
.waitToGetProperty(selectors.ticketBasicData.stepTwoTotalPriceDif, 'innerText');
|
.waitToGetProperty(selectors.ticketBasicData.stepTwoTotalPriceDif, 'innerText');
|
||||||
|
|
||||||
expect(result).toContain('-€248.00');
|
expect(result).toContain('-€232.75');
|
||||||
});
|
});
|
||||||
|
|
||||||
it(`should select a new reason for the changes made then click on finalize`, async() => {
|
it(`should select a new reason for the changes made then click on finalize`, async() => {
|
||||||
|
|
|
@ -80,7 +80,7 @@ describe('Account create and basic data path', () => {
|
||||||
await page.reloadSection('account.card.roles');
|
await page.reloadSection('account.card.roles');
|
||||||
const rolesCount = await page.countElement(selectors.accountRoles.anyResult);
|
const rolesCount = await page.countElement(selectors.accountRoles.anyResult);
|
||||||
|
|
||||||
expect(rolesCount).toEqual(34);
|
expect(rolesCount).toEqual(35);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
@ -41,7 +41,7 @@ describe('SalesMonitor salesFilter()', () => {
|
||||||
const filter = {};
|
const filter = {};
|
||||||
const result = await app.models.SalesMonitor.salesFilter(ctx, filter);
|
const result = await app.models.SalesMonitor.salesFilter(ctx, filter);
|
||||||
|
|
||||||
expect(result.length).toEqual(7);
|
expect(result.length).toEqual(6);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should return the tickets matching the problems on null', async() => {
|
it('should return the tickets matching the problems on null', async() => {
|
||||||
|
|
|
@ -41,7 +41,7 @@ describe('ticket filter()', () => {
|
||||||
const filter = {};
|
const filter = {};
|
||||||
const result = await app.models.Ticket.filter(ctx, filter);
|
const result = await app.models.Ticket.filter(ctx, filter);
|
||||||
|
|
||||||
expect(result.length).toEqual(7);
|
expect(result.length).toEqual(6);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should return the tickets matching the problems on null', async() => {
|
it('should return the tickets matching the problems on null', async() => {
|
||||||
|
|
Loading…
Reference in New Issue