Merge branch 'dev' into 4846-claim.search-panel
gitea/salix/pipeline/head There was a failure building this commit
Details
gitea/salix/pipeline/head There was a failure building this commit
Details
This commit is contained in:
commit
2e14e04ed0
|
@ -1,3 +0,0 @@
|
|||
ALTER TABLE `vn`.`accountingType` ADD daysInFuture INT NULL;
|
||||
ALTER TABLE `vn`.`accountingType` MODIFY COLUMN daysInFuture int(11) DEFAULT 0 NULL;
|
||||
UPDATE `vn`.`accountingType` SET daysInFuture=1 WHERE id=8;
|
|
@ -1,4 +0,0 @@
|
|||
INSERT INTO `salix`.`ACL` (`model`, `property`, `accessType`, `permission`, `principalType`, `principalId`)
|
||||
VALUES
|
||||
('ItemType', '*', 'READ', 'ALLOW', 'ROLE', 'employee'),
|
||||
('ItemType', '*', 'WRITE', 'ALLOW', 'ROLE', 'buyer');
|
|
@ -1,14 +0,0 @@
|
|||
CREATE TABLE IF NOT EXISTS `vn`.`mdbBranch` (
|
||||
`name` VARCHAR(255),
|
||||
PRIMARY KEY(`name`)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `vn`.`mdbVersion` (
|
||||
`app` VARCHAR(255) NOT NULL,
|
||||
`branchFk` VARCHAR(255) NOT NULL,
|
||||
`version` INT,
|
||||
CONSTRAINT `mdbVersion_branchFk` FOREIGN KEY (`branchFk`) REFERENCES `vn`.`mdbBranch` (`name`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||
);
|
||||
|
||||
INSERT IGNORE INTO `salix`.`ACL` (`id`, `model`, `property`, `accessType`, `permission`, `principalType`, `principalId`)
|
||||
VALUES(318, 'MdbVersion', '*', '*', 'ALLOW', 'ROLE', 'developer');
|
|
@ -1,13 +0,0 @@
|
|||
CREATE TABLE `vn`.`chat` (
|
||||
`id` int(11) NOT NULL AUTO_INCREMENT,
|
||||
`senderFk` int(10) unsigned DEFAULT NULL,
|
||||
`recipient` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
|
||||
`dated` date DEFAULT NULL,
|
||||
`checkUserStatus` tinyint(1) DEFAULT NULL,
|
||||
`message` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL,
|
||||
`status` tinyint(1) DEFAULT NULL,
|
||||
`attempts` int(1) DEFAULT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `chat_FK` (`senderFk`),
|
||||
CONSTRAINT `chat_FK` FOREIGN KEY (`senderFk`) REFERENCES `account`.`user` (`id`) ON UPDATE CASCADE
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
|
|
@ -1,8 +0,0 @@
|
|||
ALTER TABLE `vn`.`creditInsurance` ADD creditClassificationFk int(11) NULL;
|
||||
|
||||
UPDATE `vn`.`creditInsurance` AS `destiny`
|
||||
SET `destiny`.`creditClassificationFk`= (SELECT creditClassification FROM `vn`.`creditInsurance` AS `origin` WHERE `origin`.id = `destiny`.id);
|
||||
|
||||
ALTER TABLE `vn`.`creditInsurance`
|
||||
ADD CONSTRAINT `creditInsurance_creditClassificationFk` FOREIGN KEY (`creditClassificationFk`)
|
||||
REFERENCES `vn`.`creditClassification` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
|
@ -1,3 +0,0 @@
|
|||
INSERT INTO `salix`.`defaultViewConfig` (tableCode, columns)
|
||||
VALUES ('clientsDetail', '{"id":true,"phone":true,"city":true,"socialName":true,"salesPersonFk":true,"email":true,"name":false,"fi":false,"credit":false,"creditInsurance":false,"mobile":false,"street":false,"countryFk":false,"provinceFk":false,"postcode":false,"created":false,"businessTypeFk":false,"payMethodFk":false,"sageTaxTypeFk":false,"sageTransactionTypeFk":false,"isActive":false,"isVies":false,"isTaxDataChecked":false,"isEqualizated":false,"isFreezed":false,"hasToInvoice":false,"hasToInvoiceByAddress":false,"isToBeMailed":false,"hasLcr":false,"hasCoreVnl":false,"hasSepaVnl":false}');
|
||||
|
|
@ -1,127 +0,0 @@
|
|||
DROP PROCEDURE IF EXISTS `vn`.`ticket_doRefund`;
|
||||
|
||||
DELIMITER $$
|
||||
$$
|
||||
CREATE DEFINER=`root`@`localhost` PROCEDURE `vn`.`ticket_doRefund`(OUT vNewTicket INT)
|
||||
BEGIN
|
||||
/**
|
||||
* Crea un ticket de abono a partir de tmp.sale y/o tmp.ticketService
|
||||
*
|
||||
* @return vNewTicket
|
||||
*/
|
||||
DECLARE vDone BIT DEFAULT 0;
|
||||
DECLARE vClientFk MEDIUMINT;
|
||||
DECLARE vWarehouse TINYINT;
|
||||
DECLARE vCompany MEDIUMINT;
|
||||
DECLARE vAddress MEDIUMINT;
|
||||
DECLARE vRefundAgencyMode INT;
|
||||
DECLARE vItemFk INT;
|
||||
DECLARE vQuantity DECIMAL (10,2);
|
||||
DECLARE vConcept VARCHAR(50);
|
||||
DECLARE vPrice DECIMAL (10,2);
|
||||
DECLARE vDiscount TINYINT;
|
||||
DECLARE vSaleNew INT;
|
||||
DECLARE vSaleMain INT;
|
||||
DECLARE vZoneFk INT;
|
||||
DECLARE vDescription VARCHAR(50);
|
||||
DECLARE vTaxClassFk INT;
|
||||
DECLARE vTicketServiceTypeFk INT;
|
||||
DECLARE vOriginTicket INT;
|
||||
|
||||
DECLARE cSales CURSOR FOR
|
||||
SELECT s.id, s.itemFk, - s.quantity, s.concept, s.price, s.discount
|
||||
FROM tmp.sale s;
|
||||
|
||||
DECLARE cTicketServices CURSOR FOR
|
||||
SELECT ts.description, - ts.quantity, ts.price, ts.taxClassFk, ts.ticketServiceTypeFk
|
||||
FROM tmp.ticketService ts;
|
||||
|
||||
DECLARE CONTINUE HANDLER FOR NOT FOUND SET vDone = TRUE;
|
||||
|
||||
SELECT sub.ticketFk INTO vOriginTicket
|
||||
FROM (
|
||||
SELECT s.ticketFk
|
||||
FROM tmp.sale s
|
||||
UNION ALL
|
||||
SELECT ts.ticketFk
|
||||
FROM tmp.ticketService ts
|
||||
) sub
|
||||
LIMIT 1;
|
||||
|
||||
SELECT id INTO vRefundAgencyMode
|
||||
FROM agencyMode WHERE `name` = 'ABONO';
|
||||
|
||||
SELECT clientFk, warehouseFk, companyFk, addressFk
|
||||
INTO vClientFk, vWarehouse, vCompany, vAddress
|
||||
FROM ticket
|
||||
WHERE id = vOriginTicket;
|
||||
|
||||
SELECT id INTO vZoneFk
|
||||
FROM zone WHERE agencyModeFk = vRefundAgencyMode
|
||||
LIMIT 1;
|
||||
|
||||
INSERT INTO vn.ticket (
|
||||
clientFk,
|
||||
shipped,
|
||||
addressFk,
|
||||
agencyModeFk,
|
||||
nickname,
|
||||
warehouseFk,
|
||||
companyFk,
|
||||
landed,
|
||||
zoneFk
|
||||
)
|
||||
SELECT
|
||||
vClientFk,
|
||||
CURDATE(),
|
||||
vAddress,
|
||||
vRefundAgencyMode,
|
||||
a.nickname,
|
||||
vWarehouse,
|
||||
vCompany,
|
||||
CURDATE(),
|
||||
vZoneFk
|
||||
FROM address a
|
||||
WHERE a.id = vAddress;
|
||||
|
||||
SET vNewTicket = LAST_INSERT_ID();
|
||||
|
||||
SET vDone := FALSE;
|
||||
OPEN cSales;
|
||||
FETCH cSales INTO vSaleMain, vItemFk, vQuantity, vConcept, vPrice, vDiscount;
|
||||
|
||||
WHILE NOT vDone DO
|
||||
|
||||
INSERT INTO vn.sale(ticketFk, itemFk, quantity, concept, price, discount)
|
||||
VALUES( vNewTicket, vItemFk, vQuantity, vConcept, vPrice, vDiscount );
|
||||
|
||||
SET vSaleNew = LAST_INSERT_ID();
|
||||
|
||||
INSERT INTO vn.saleComponent(saleFk,componentFk,`value`)
|
||||
SELECT vSaleNew,componentFk,`value`
|
||||
FROM vn.saleComponent
|
||||
WHERE saleFk = vSaleMain;
|
||||
|
||||
FETCH cSales INTO vSaleMain, vItemFk, vQuantity, vConcept, vPrice, vDiscount;
|
||||
|
||||
END WHILE;
|
||||
CLOSE cSales;
|
||||
|
||||
SET vDone := FALSE;
|
||||
OPEN cTicketServices;
|
||||
FETCH cTicketServices INTO vDescription, vQuantity, vPrice, vTaxClassFk, vTicketServiceTypeFk;
|
||||
|
||||
WHILE NOT vDone DO
|
||||
|
||||
INSERT INTO vn.ticketService(description, quantity, price, taxClassFk, ticketFk, ticketServiceTypeFk)
|
||||
VALUES(vDescription, vQuantity, vPrice, vTaxClassFk, vNewTicket, vTicketServiceTypeFk);
|
||||
|
||||
FETCH cTicketServices INTO vDescription, vQuantity, vPrice, vTaxClassFk, vTicketServiceTypeFk;
|
||||
|
||||
END WHILE;
|
||||
CLOSE cTicketServices;
|
||||
|
||||
INSERT INTO vn.ticketRefund(refundTicketFk, originalTicketFk)
|
||||
VALUES(vNewTicket, vOriginTicket);
|
||||
END$$
|
||||
DELIMITER ;
|
|
@ -1,11 +0,0 @@
|
|||
DELIMITER $$
|
||||
$$
|
||||
CREATE DEFINER=`root`@`localhost` TRIGGER `vn`.`creditInsurance_beforeInsert`
|
||||
BEFORE INSERT ON `creditInsurance`
|
||||
FOR EACH ROW
|
||||
BEGIN
|
||||
IF NEW.creditClassificationFk THEN
|
||||
SET NEW.creditClassification = NEW.creditClassificationFk;
|
||||
END IF;
|
||||
END$$
|
||||
DELIMITER ;
|
|
@ -1 +0,0 @@
|
|||
RENAME TABLE `edi`.`fileConfig` to `edi`.`tableConfig`;
|
|
@ -1,22 +0,0 @@
|
|||
CREATE TABLE `edi`.`fileConfig`
|
||||
(
|
||||
name varchar(25) NOT NULL,
|
||||
checksum text NULL,
|
||||
keyValue tinyint(1) default true NOT NULL,
|
||||
constraint fileConfig_pk
|
||||
primary key (name)
|
||||
);
|
||||
|
||||
create unique index fileConfig_name_uindex
|
||||
on `edi`.`fileConfig` (name);
|
||||
|
||||
|
||||
INSERT INTO `edi`.`fileConfig` (name, checksum, keyValue)
|
||||
VALUES ('FEC010104', null, 0);
|
||||
|
||||
INSERT INTO `edi`.`fileConfig` (name, checksum, keyValue)
|
||||
VALUES ('VBN020101', null, 1);
|
||||
|
||||
INSERT INTO `edi`.`fileConfig` (name, checksum, keyValue)
|
||||
VALUES ('florecompc2', null, 1);
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
ALTER TABLE `vn`.`chat` MODIFY COLUMN message TEXT CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci DEFAULT NULL NULL;
|
||||
ALTER TABLE `vn`.`chat` MODIFY COLUMN dated DATETIME DEFAULT NULL NULL;
|
||||
ALTER TABLE `vn`.`chat` ADD error TEXT NULL;
|
|
@ -1,3 +0,0 @@
|
|||
ALTER TABLE `vn`.`creditInsurance`
|
||||
ADD CONSTRAINT `creditInsurance_creditClassificationFk` FOREIGN KEY (`creditClassificationFk`)
|
||||
REFERENCES `vn`.`creditClassification` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
|
@ -1,21 +0,0 @@
|
|||
INSERT INTO `salix`.`ACL` (model,property,accessType,permission,principalType,principalId)
|
||||
VALUES
|
||||
('InvoiceOut','refund','WRITE','ALLOW','ROLE','invoicing'),
|
||||
('InvoiceOut','refund','WRITE','ALLOW','ROLE','salesAssistant'),
|
||||
('InvoiceOut','refund','WRITE','ALLOW','ROLE','claimManager'),
|
||||
('Ticket','refund','WRITE','ALLOW','ROLE','invoicing'),
|
||||
('Ticket','refund','WRITE','ALLOW','ROLE','salesAssistant'),
|
||||
('Ticket','refund','WRITE','ALLOW','ROLE','claimManager'),
|
||||
('Sale','refund','WRITE','ALLOW','ROLE','salesAssistant'),
|
||||
('Sale','refund','WRITE','ALLOW','ROLE','claimManager'),
|
||||
('TicketRefund','*','WRITE','ALLOW','ROLE','invoicing'),
|
||||
('ClaimObservation','*','WRITE','ALLOW','ROLE','salesPerson'),
|
||||
('ClaimObservation','*','READ','ALLOW','ROLE','salesPerson'),
|
||||
('Client','setPassword','WRITE','ALLOW','ROLE','salesPerson'),
|
||||
('Client','updateUser','WRITE','ALLOW','ROLE','salesPerson');
|
||||
|
||||
DELETE FROM `salix`.`ACL` WHERE id=313;
|
||||
|
||||
UPDATE `salix`.`ACL`
|
||||
SET principalId='invoicing'
|
||||
WHERE id=297;
|
|
@ -1,3 +0,0 @@
|
|||
INSERT INTO `salix`.`ACL` (model,property,accessType,permission,principalType,principalId)
|
||||
VALUES
|
||||
('ShelvingLog','*','READ','ALLOW','ROLE','employee');
|
|
@ -1,4 +0,0 @@
|
|||
INSERT INTO `salix`.`ACL`(`model`, `property`, `accessType`, `permission`, `principalType`, `principalId`)
|
||||
VALUES
|
||||
('ZoneExclusionGeo', '*', 'READ', 'ALLOW', 'ROLE', 'employee'),
|
||||
('ZoneExclusionGeo', '*', 'WRITE', 'ALLOW', 'ROLE', 'deliveryBoss');
|
|
@ -1,2 +0,0 @@
|
|||
ALTER TABLE `vn2008`.`albaran_gestdoc` DROP FOREIGN KEY fk_albaran_gestdoc_gestdoc1;
|
||||
ALTER TABLE `vn2008`.`albaran_gestdoc` ADD CONSTRAINT albaran_gestdoc_FK FOREIGN KEY (gestdoc_id) REFERENCES `vn`.`dms`(id) ON DELETE CASCADE ON UPDATE CASCADE;
|
|
@ -1,3 +0,0 @@
|
|||
alter table `vn`.`client`
|
||||
add hasIncoterms tinyint(1) default 0 not null comment 'Received incoterms authorization from client';
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
DROP FUNCTION `account`.`userGetId`;
|
||||
DROP FUNCTION `account`.`myUserGetName`;
|
||||
DROP FUNCTION `account`.`myUserGetId`;
|
||||
DROP FUNCTION `account`.`myUserHasRole`;
|
||||
DROP FUNCTION `account`.`myUserHasRoleId`;
|
||||
DROP FUNCTION `account`.`userGetName`;
|
||||
DROP FUNCTION `account`.`userHasRole`;
|
||||
DROP FUNCTION `account`.`userHasRoleId`;
|
||||
DROP PROCEDURE `account`.`myUserLogout`;
|
||||
DROP PROCEDURE `account`.`userLogin`;
|
||||
DROP PROCEDURE `account`.`userLoginWithKey`;
|
||||
DROP PROCEDURE `account`.`userLoginWithName`;
|
||||
DROP PROCEDURE `account`.`userSetPassword`;
|
|
@ -1 +0,0 @@
|
|||
ALTER TABLE `vn`.`item` MODIFY COLUMN description TEXT CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci DEFAULT NULL NULL;
|
|
@ -1,10 +0,0 @@
|
|||
UPDATE `vn`.`route` r
|
||||
JOIN(SELECT r.id, wl.workcenterFk
|
||||
FROM `vn`.`route` r
|
||||
JOIN `vn`.`routeLog` rl ON rl.originFk = r.id
|
||||
JOIN `vn`.`workerLabour` wl ON wl.workerFk = rl.userFk
|
||||
AND r.created BETWEEN wl.started AND IFNULL(wl.ended, r.created)
|
||||
WHERE r.created BETWEEN '2021-12-01' AND CURDATE()
|
||||
AND rl.action = 'insert'
|
||||
)sub ON sub.id = r.id
|
||||
SET r.commissionWorkCenterFk = sub.workcenterFk;
|
|
@ -1,2 +0,0 @@
|
|||
INSERT INTO `vn`.`sample` (code, description, isVisible, hasCompany, hasPreview, datepickerEnabled)
|
||||
VALUES ('incoterms-authorization', 'Autorización de incoterms', 1, 1, 1, 0);
|
|
@ -1,18 +0,0 @@
|
|||
ALTER TABLE `vn`.`itemShelving` DROP FOREIGN KEY itemShelving_fk2;
|
||||
ALTER TABLE `vn`.`shelvingLog` DROP FOREIGN KEY shelvingLog_FK_ibfk_1;
|
||||
ALTER TABLE `vn`.`smartTag` DROP FOREIGN KEY smartTag_shelving_fk;
|
||||
ALTER TABLE `vn`.`workerShelving` DROP FOREIGN KEY workerShelving_shelving_fk;
|
||||
|
||||
ALTER TABLE `vn`.`shelving` DROP PRIMARY KEY;
|
||||
ALTER TABLE `vn`.`shelving` ADD id INT auto_increment PRIMARY KEY NULL;
|
||||
ALTER TABLE `vn`.`shelving` CHANGE id id int(11) auto_increment NOT NULL FIRST;
|
||||
ALTER TABLE `vn`.`shelving` ADD CONSTRAINT shelving_UN UNIQUE KEY (code);
|
||||
|
||||
ALTER TABLE `vn`.`itemShelving` ADD CONSTRAINT itemShelving_fk2 FOREIGN KEY (shelvingFk) REFERENCES `vn`.`shelving`(code) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
ALTER TABLE `vn`.`shelvingLog` ADD CONSTRAINT shelvingLog_FK_ibfk_1 FOREIGN KEY (originFk) REFERENCES `vn`.`shelving`(code) ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
ALTER TABLE `vn`.`smartTag` ADD CONSTRAINT smartTag_FK FOREIGN KEY (shelvingFk) REFERENCES `vn`.`shelving`(code) ON DELETE RESTRICT ON UPDATE CASCADE;
|
||||
ALTER TABLE `vn`.`workerShelving` ADD CONSTRAINT workerShelving_FK_1 FOREIGN KEY (shelvingFk) REFERENCES `vn`.`shelving`(code) ON DELETE RESTRICT ON UPDATE CASCADE;
|
||||
|
||||
ALTER TABLE vn.shelvingLog DROP FOREIGN KEY shelvingLog_FK_ibfk_1;
|
||||
ALTER TABLE vn.shelvingLog MODIFY COLUMN originFk INT NOT NULL;
|
||||
ALTER TABLE vn.shelvingLog ADD CONSTRAINT shelvingLog_FK FOREIGN KEY (originFk) REFERENCES vn.shelving(id) ON DELETE CASCADE ON UPDATE CASCADE;
|
|
@ -1,21 +0,0 @@
|
|||
DROP PROCEDURE IF EXISTS `vn`.`ticketRefund_beforeUpsert`;
|
||||
|
||||
DELIMITER $$
|
||||
$$
|
||||
CREATE DEFINER=`root`@`localhost` PROCEDURE `vn`.`ticketRefund_beforeUpsert`(vRefundTicketFk INT, vOriginalTicketFk INT)
|
||||
BEGIN
|
||||
DECLARE vAlreadyExists BOOLEAN DEFAULT FALSE;
|
||||
|
||||
IF vRefundTicketFk = vOriginalTicketFk THEN
|
||||
CALL util.throw('Original ticket and refund ticket has same id');
|
||||
END IF;
|
||||
|
||||
SELECT COUNT(*) INTO vAlreadyExists
|
||||
FROM ticketRefund
|
||||
WHERE originalTicketFk = vOriginalTicketFk;
|
||||
|
||||
IF vAlreadyExists > 0 THEN
|
||||
CALL util.throw('This ticket is already a refund');
|
||||
END IF;
|
||||
END$$
|
||||
DELIMITER ;
|
|
@ -1,13 +0,0 @@
|
|||
CREATE TABLE `vn`.`claimObservation` (
|
||||
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`claimFk` int(10) unsigned NOT NULL,
|
||||
`workerFk` int(10) unsigned DEFAULT NULL,
|
||||
`text` text COLLATE utf8_unicode_ci NOT NULL,
|
||||
`created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `worker_key` (`workerFk`),
|
||||
KEY `claim_key` (`claimFk`),
|
||||
KEY `claimObservation_created_IDX` (`created`) USING BTREE,
|
||||
CONSTRAINT `claimObservation_ibfk_1` FOREIGN KEY (`claimFk`) REFERENCES `vn`.`claim` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
|
||||
CONSTRAINT `claimObservation_ibfk_2` FOREIGN KEY (`workerFk`) REFERENCES `vn`.`worker` (`id`) ON UPDATE CASCADE
|
||||
) COMMENT='Todas las observaciones referentes a una reclamación'
|
|
@ -1,2 +0,0 @@
|
|||
INSERT INTO `vn`.`claimObservation` (`claimFk`, `text`, `created`)
|
||||
SELECT `id`, `observation`, `created` FROM `vn`.`claim`
|
|
@ -1,2 +0,0 @@
|
|||
INSERT INTO `salix`.`ACL` (model,property,accessType,permission,principalType,principalId)
|
||||
VALUES ('Parking','*','*','ALLOW','ROLE','employee')
|
|
@ -1,2 +0,0 @@
|
|||
INSERT INTO `salix`.`ACL` (model,property,accessType,permission,principalType,principalId)
|
||||
VALUES ('Shelving','*','*','ALLOW','ROLE','employee')
|
|
@ -1,3 +0,0 @@
|
|||
INSERT INTO `salix`.`ACL` (`model`, `property`, `accessType`, `permission`, `principalType`, `principalId`)
|
||||
VALUES
|
||||
('OsTicket', '*', '*', 'ALLOW', 'ROLE', 'employee');
|
|
@ -1,3 +0,0 @@
|
|||
INSERT INTO `salix`.`ACL` (`model`, `property`, `accessType`, `permission`, `principalType`, `principalId`)
|
||||
VALUES
|
||||
('OsTicketConfig', '*', '*', 'ALLOW', 'ROLE', 'it');
|
|
@ -1,16 +0,0 @@
|
|||
CREATE TABLE `vn`.`osTicketConfig` (
|
||||
`id` int(11) NOT NULL,
|
||||
`host` varchar(100) COLLATE utf8mb3_unicode_ci DEFAULT NULL,
|
||||
`user` varchar(100) COLLATE utf8mb3_unicode_ci DEFAULT NULL,
|
||||
`password` varchar(100) COLLATE utf8mb3_unicode_ci DEFAULT NULL,
|
||||
`oldStatus` varchar(100) COLLATE utf8mb3_unicode_ci DEFAULT NULL,
|
||||
`newStatusId` int(11) DEFAULT NULL,
|
||||
`action` varchar(100) COLLATE utf8mb3_unicode_ci DEFAULT NULL,
|
||||
`day` int(11) DEFAULT NULL,
|
||||
`comment` varchar(100) COLLATE utf8mb3_unicode_ci DEFAULT NULL,
|
||||
`hostDb` varchar(100) COLLATE utf8mb3_unicode_ci DEFAULT NULL,
|
||||
`userDb` varchar(100) COLLATE utf8mb3_unicode_ci DEFAULT NULL,
|
||||
`passwordDb` varchar(100) COLLATE utf8mb3_unicode_ci DEFAULT NULL,
|
||||
`portDb` int(11) DEFAULT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_unicode_ci;
|
|
@ -22,7 +22,7 @@ USE `util`;
|
|||
|
||||
LOCK TABLES `config` WRITE;
|
||||
/*!40000 ALTER TABLE `config` DISABLE KEYS */;
|
||||
INSERT INTO `config` VALUES (1,'10480',0,'production',NULL);
|
||||
INSERT INTO `config` VALUES (1,'224602',0,'production',NULL);
|
||||
/*!40000 ALTER TABLE `config` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
|
|
|
@ -81,9 +81,9 @@ N_CHANGES=0
|
|||
|
||||
for DIR_PATH in "$DIR/changes/"*; do
|
||||
DIR_NAME=$(basename $DIR_PATH)
|
||||
DIR_VERSION=${DIR_NAME:0:5}
|
||||
DIR_VERSION=${DIR_NAME:0:6}
|
||||
|
||||
if [[ ! "$DIR_NAME" =~ ^[0-9]{5}(-[a-zA-Z0-9]+)?$ ]]; then
|
||||
if [[ ! "$DIR_NAME" =~ ^[0-9]{6}$ ]]; then
|
||||
echo "[WARN] Ignoring wrong directory name: $DIR_NAME"
|
||||
continue
|
||||
fi
|
||||
|
|
|
@ -57,14 +57,16 @@ module.exports = Self => {
|
|||
r.clientFk,
|
||||
FALSE hasPdf,
|
||||
FALSE isInvoice,
|
||||
CASE WHEN at2.code LIKE 'compensation' THEN True ELSE False END as isCompensation
|
||||
at2.id IS NOT NULL as isCompensation
|
||||
FROM vn.receipt r
|
||||
LEFT JOIN vn.worker w ON w.id = r.workerFk
|
||||
LEFT JOIN account.user u ON u.id = w.userFk
|
||||
JOIN vn.company c ON c.id = r.companyFk
|
||||
JOIN vn.accounting a ON a.id = r.bankFk
|
||||
JOIN vn.accountingType at2 ON at2.id = a.accountingTypeFk
|
||||
WHERE r.clientFk = ? AND r.companyFk = ?
|
||||
LEFT JOIN vn.accounting a ON a.id = r.bankFk
|
||||
LEFT JOIN vn.accountingType at2 ON at2.id = a.accountingTypeFk AND at2.code = 'compensation'
|
||||
WHERE
|
||||
r.clientFk = ?
|
||||
AND r.companyFk = ?
|
||||
UNION ALL
|
||||
SELECT
|
||||
i.id,
|
||||
|
@ -81,13 +83,10 @@ module.exports = Self => {
|
|||
i.clientFk,
|
||||
i.hasPdf,
|
||||
TRUE isInvoice,
|
||||
CASE WHEN at2.code LIKE 'compensation' THEN True ELSE False END as isCompensation
|
||||
NULL
|
||||
FROM vn.invoiceOut i
|
||||
JOIN vn.company c ON c.id = i.companyFk
|
||||
JOIN vn.accounting a ON a.id = i.bankFk
|
||||
JOIN vn.accountingType at2 ON at2.id = a.accountingTypeFk
|
||||
WHERE i.clientFk = ? AND i.companyFk = ?
|
||||
ORDER BY payed DESC, created DESC
|
||||
) t ORDER BY payed DESC, created DESC`,
|
||||
[
|
||||
clientId,
|
||||
|
|
|
@ -138,7 +138,7 @@ module.exports = Self => {
|
|||
recipient: invoiceOut.client().email
|
||||
};
|
||||
try {
|
||||
await models.InvoiceOut.invoiceEmail(ctx);
|
||||
await models.InvoiceOut.invoiceEmail(ctx, invoiceOut.ref);
|
||||
} catch (err) {}
|
||||
|
||||
return invoiceId;
|
||||
|
|
|
@ -26,6 +26,7 @@
|
|||
type="number"
|
||||
label="Minimum M3"
|
||||
ng-model="$ctrl.supplierAgencyTerm.minimumM3"
|
||||
step="0.01"
|
||||
rule>
|
||||
</vn-input-number>
|
||||
</vn-horizontal>
|
||||
|
@ -46,6 +47,7 @@
|
|||
type="number"
|
||||
label="M3 Price"
|
||||
ng-model="$ctrl.supplierAgencyTerm.m3Price"
|
||||
step="0.01"
|
||||
rule>
|
||||
</vn-input-number>
|
||||
</vn-horizontal>
|
||||
|
|
|
@ -137,9 +137,11 @@ module.exports = Self => {
|
|||
const params = [args.id, args.shipped, args.warehouseFk];
|
||||
const [salesMovable] = await Self.rawSql(query, params, myOptions);
|
||||
|
||||
const sales = await models.Sale.find({where: {ticketFk: args.id}}, myOptions);
|
||||
const salesNewTicket = salesMovable.filter(sale => (sale.movable ? sale.movable : 0) >= sale.quantity);
|
||||
|
||||
if (salesNewTicket.length) {
|
||||
const salesNewTicketLength = salesNewTicket.length;
|
||||
if (salesNewTicketLength && sales.length != salesNewTicketLength) {
|
||||
const newTicket = await models.Ticket.transferSales(ctx, args.id, null, salesNewTicket, myOptions);
|
||||
args.id = newTicket.id;
|
||||
}
|
||||
|
|
|
@ -67,6 +67,7 @@ class Controller extends Component {
|
|||
ticketHaveNegatives() {
|
||||
let haveNegatives = false;
|
||||
let haveNotNegatives = false;
|
||||
this.ticket.withoutNegatives = false;
|
||||
const haveDifferences = this.ticket.sale.haveDifferences;
|
||||
|
||||
this.ticket.sale.items.forEach(item => {
|
||||
|
@ -76,8 +77,9 @@ class Controller extends Component {
|
|||
haveNotNegatives = true;
|
||||
});
|
||||
|
||||
this.ticket.withoutNegatives = true;
|
||||
this.haveNegatives = (haveNegatives && haveNotNegatives && haveDifferences);
|
||||
if (this.haveNegatives)
|
||||
this.ticket.withoutNegatives = true;
|
||||
}
|
||||
|
||||
onSubmit() {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
html {
|
||||
font-family: "Roboto";
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
margin-top: -6px;
|
||||
}
|
||||
* {
|
||||
|
@ -9,12 +9,15 @@ html {
|
|||
}
|
||||
#vertical {
|
||||
writing-mode: vertical-rl;
|
||||
height: 240px;
|
||||
height: 230px;
|
||||
font-size: 29px;
|
||||
margin-left: -13px;
|
||||
}
|
||||
.outline {
|
||||
border: 1px solid black;
|
||||
padding: 5px;
|
||||
height: 37px;
|
||||
width: 100px;
|
||||
}
|
||||
#nickname {
|
||||
font-size: 22px;
|
||||
|
@ -22,17 +25,20 @@ html {
|
|||
}
|
||||
#agencyDescripton {
|
||||
font-size: 32px;
|
||||
width: 375px;
|
||||
font-weight: bold;
|
||||
}
|
||||
#bold {
|
||||
font-weight: bold;
|
||||
}
|
||||
#barcode{
|
||||
width: 390px;
|
||||
width: 370px;
|
||||
}
|
||||
#shipped {
|
||||
font-weight: bold;
|
||||
width: 50px;
|
||||
max-width: 100px;
|
||||
}
|
||||
#ticketFk, #vertical {
|
||||
font-size: 34px;
|
||||
#ticketFk {
|
||||
font-size: 32px;
|
||||
}
|
|
@ -4,31 +4,29 @@
|
|||
<table v-for="labelData in labelsData" style="break-before: page">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td rowspan="6"><span id="vertical" class="ellipsize">
|
||||
{{labelData.collectionFk ? `${labelData.collectionFk} ~ ${labelData.wagon}-${labelData.level}` : '-'.repeat(23)}}
|
||||
</span></td>
|
||||
<td rowspan="6"><span id="vertical" class="ellipsize">{{getVertical(labelData)}}</span></td>
|
||||
<td id="ticketFk">
|
||||
{{labelData.clientFk ? `${labelData.ticketFk} « ${labelData.clientFk}` : labelData.ticketFk}}
|
||||
</td>
|
||||
<td colspan="2" id="shipped">{{labelData.shipped ? labelData.shipped : '---'}}</td>
|
||||
<td colspan="2" id="shipped">{{labelData.shipped || '---'}}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td rowspan="3"><div v-html="getBarcode(labelData.ticketFk)" id="barcode"></div></td>
|
||||
<td class="outline">{{labelData.workerCode ? labelData.workerCode : '---'}}</td>
|
||||
<td class="outline">{{labelData.workerCode || '---'}}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="outline">{{labelData.labelCount ? labelData.labelCount : 0}}</td>
|
||||
<td class="outline">{{labelData.labelCount || 0}}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="outline">{{labelData.code == 'plant' ? labelData.size + 'cm' : labelData.volume + 'm³'}}</td>
|
||||
<td class="outline">{{labelData.code == 'V' ? (labelData.size || 0) + 'cm' : (labelData.volume || 0) + 'm³'}}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><div id="agencyDescripton" class="ellipsize">{{labelData.agencyDescription}}</div></td>
|
||||
<td id="bold">{{labelData.lineCount ? labelData.lineCount : 0}}</td>
|
||||
<td><div id="agencyDescripton" class="ellipsize">{{labelData.agencyDescription ? labelData.agencyDescription.toUpperCase() : '---'}}</div></td>
|
||||
<td id="bold">{{labelData.lineCount || 0}}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td id="nickname" class="ellipsize">{{labelData.nickName ? labelData.nickName : '---'}}</td>
|
||||
<td id="bold">{{labelData.shipped ? labelData.shippedHour : labelData.zoneHour}}</td>
|
||||
<td id="nickname" class="ellipsize">{{labelData.nickName ? labelData.nickName.toUpperCase() : '---'}}</td>
|
||||
<td id="bold">{{labelData.shippedHour || labelData.zoneHour}}</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
|
|
@ -25,7 +25,6 @@ module.exports = {
|
|||
ticketIds = [this.id];
|
||||
|
||||
this.labelsData = await this.rawSqlFromDef('labelsData', [ticketIds]);
|
||||
|
||||
if (!this.labelsData.length)
|
||||
throw new UserError('Empty data source');
|
||||
},
|
||||
|
@ -44,6 +43,19 @@ module.exports = {
|
|||
});
|
||||
return xmlSerializer.serializeToString(svgNode);
|
||||
},
|
||||
getVertical(labelData) {
|
||||
let value;
|
||||
if (labelData.collectionFk) {
|
||||
value = `${labelData.collectionFk} ~ `;
|
||||
if (labelData.code == 'V')
|
||||
value = value + `${labelData.wagon}-${labelData.level}`;
|
||||
else
|
||||
value = value + `${labelData.color.substring(0, 4)}`;
|
||||
} else
|
||||
value = '-'.repeat(19);
|
||||
|
||||
return value;
|
||||
},
|
||||
},
|
||||
components: {
|
||||
'report-body': reportBody.build()
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"width": "10.4cm",
|
||||
"height": "4.8cm",
|
||||
"height": "4.9cm",
|
||||
"margin": {
|
||||
"top": "0.3cm",
|
||||
"right": "0.6cm",
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
SELECT tc.collectionFk,
|
||||
SELECT c.itemPackingTypeFk code,
|
||||
tc.collectionFk,
|
||||
SUBSTRING('ABCDEFGH', tc.wagon, 1) wagon,
|
||||
tc.`level`,
|
||||
t.id ticketFk,
|
||||
COALESCE(et.description, zo.name, am.name) agencyDescription,
|
||||
am.name,
|
||||
cc.code color,
|
||||
t.clientFk,
|
||||
CAST(SUM(sv.volume) AS DECIMAL(5, 2)) volume,
|
||||
MAX(i.`size`) `size`,
|
||||
ic.code,
|
||||
w.code workerCode,
|
||||
TIME_FORMAT(t.shipped, '%H:%i') shippedHour,
|
||||
TIME_FORMAT(zo.`hour`, '%H:%i') zoneHour,
|
||||
|
@ -16,8 +16,8 @@ SELECT tc.collectionFk,
|
|||
tt.labelCount,
|
||||
COUNT(*) lineCount
|
||||
FROM vn.ticket t
|
||||
LEFT JOIN vn.ticketCollection tc ON tc.ticketFk = t.id
|
||||
LEFT JOIN vn.collection c ON c.id = tc.collectionFk
|
||||
JOIN vn.ticketCollection tc ON tc.ticketFk = t.id
|
||||
JOIN vn.collection c ON c.id = tc.collectionFk
|
||||
LEFT JOIN vn.collectionColors cc ON cc.shelve = tc.`level`
|
||||
AND cc.wagon = tc.wagon
|
||||
AND cc.trainFk = c.trainFk
|
||||
|
@ -26,7 +26,7 @@ SELECT tc.collectionFk,
|
|||
JOIN vn.item i ON i.id = s.itemFk
|
||||
JOIN vn.itemType it ON it.id = i.typeFk
|
||||
JOIN vn.itemCategory ic ON ic.id = it.categoryFk
|
||||
LEFT JOIN vn.worker w ON w.id = c.workerFk
|
||||
JOIN vn.worker w ON w.id = c.workerFk
|
||||
JOIN vn.agencyMode am ON am.id = t.agencyModeFk
|
||||
LEFT JOIN vn.ticketTrolley tt ON tt.ticket = t.id
|
||||
LEFT JOIN vn.`zone` zo ON t.zoneFk = zo.id
|
||||
|
|
|
@ -82,7 +82,7 @@ module.exports = {
|
|||
return this.rawSqlFromDef(`taxes`, [reference]);
|
||||
},
|
||||
fetchIntrastat(reference) {
|
||||
return this.rawSqlFromDef(`intrastat`, [reference, reference, reference, reference]);
|
||||
return this.rawSqlFromDef(`intrastat`, [reference, reference, reference, reference, reference]);
|
||||
},
|
||||
fetchRectified(reference) {
|
||||
return this.rawSqlFromDef(`rectified`, [reference]);
|
||||
|
|
|
@ -1,32 +1,39 @@
|
|||
(SELECT
|
||||
ir.id code,
|
||||
ir.description description,
|
||||
CAST(SUM(IFNULL(i.stems, 1) * s.quantity) AS DECIMAL(10,2)) stems,
|
||||
CAST(SUM(CAST(IFNULL(i.stems, 1) * s.quantity * IF(ic.grams, ic.grams, i.density * ic.cm3delivery / 1000) / 1000 AS DECIMAL(10,2)) *
|
||||
IF(sub.weight, sub.weight / vn.invoiceOut_getWeight(?), 1)) AS DECIMAL(10,2)) netKg,
|
||||
CAST(SUM((s.quantity * s.price * (100 - s.discount) / 100 )) AS DECIMAL(10,2)) subtotal
|
||||
FROM vn.ticket t
|
||||
JOIN vn.sale s ON s.ticketFk = t.id
|
||||
JOIN vn.item i ON i.id = s.itemFk
|
||||
JOIN vn.itemCost ic ON ic.itemFk = i.id AND ic.warehouseFk = t.warehouseFk
|
||||
JOIN vn.intrastat ir ON ir.id = i.intrastatFk
|
||||
LEFT JOIN (
|
||||
SELECT t2.weight
|
||||
FROM vn.ticket t2
|
||||
WHERE refFk = ? AND weight
|
||||
LIMIT 1
|
||||
) sub ON TRUE
|
||||
WHERE t.refFk = ?
|
||||
AND i.intrastatFk
|
||||
GROUP BY i.intrastatFk
|
||||
ORDER BY i.intrastatFk)
|
||||
UNION ALL
|
||||
(SELECT
|
||||
NULL AS code,
|
||||
NULL AS description,
|
||||
0 AS stems,
|
||||
0 AS netKg,
|
||||
CAST(SUM((ts.quantity * ts.price)) AS DECIMAL(10,2)) AS subtotal
|
||||
FROM vn.ticketService ts
|
||||
JOIN vn.ticket t ON ts.ticketFk = t.id
|
||||
WHERE t.refFk = ?);
|
||||
SELECT *
|
||||
FROM invoiceOut io
|
||||
JOIN invoiceOutSerial ios ON io.serial = ios.code
|
||||
JOIN
|
||||
(SELECT
|
||||
t.refFk,
|
||||
ir.id code,
|
||||
ir.description description,
|
||||
CAST(SUM(IFNULL(i.stems, 1) * s.quantity) AS DECIMAL(10,2)) stems,
|
||||
CAST(SUM(CAST(IFNULL(i.stems, 1) * s.quantity * IF(ic.grams, ic.grams, i.density * ic.cm3delivery / 1000) / 1000 AS DECIMAL(10,2)) *
|
||||
IF(sub.weight, sub.weight / vn.invoiceOut_getWeight(?), 1)) AS DECIMAL(10,2)) netKg,
|
||||
CAST(SUM((s.quantity * s.price * (100 - s.discount) / 100 )) AS DECIMAL(10,2)) subtotal
|
||||
FROM vn.ticket t
|
||||
JOIN vn.sale s ON s.ticketFk = t.id
|
||||
JOIN vn.item i ON i.id = s.itemFk
|
||||
JOIN vn.itemCost ic ON ic.itemFk = i.id AND ic.warehouseFk = t.warehouseFk
|
||||
JOIN vn.intrastat ir ON ir.id = i.intrastatFk
|
||||
LEFT JOIN (
|
||||
SELECT t2.weight
|
||||
FROM vn.ticket t2
|
||||
WHERE refFk = ? AND weight
|
||||
LIMIT 1
|
||||
) sub ON TRUE
|
||||
WHERE t.refFk = ?
|
||||
AND i.intrastatFk
|
||||
GROUP BY i.intrastatFk
|
||||
UNION ALL
|
||||
SELECT
|
||||
NULL AS refFk,
|
||||
NULL AS code,
|
||||
NULL AS description,
|
||||
0 AS stems,
|
||||
0 AS netKg,
|
||||
IF(CAST(SUM((ts.quantity * ts.price)) AS DECIMAL(10,2)), CAST(SUM((ts.quantity * ts.price)) AS DECIMAL(10,2)), 0) AS subtotal
|
||||
FROM vn.ticketService ts
|
||||
JOIN vn.ticket t ON ts.ticketFk = t.id
|
||||
WHERE t.refFk = ?) sub
|
||||
WHERE io.`ref` = ? AND ios.isCEE
|
||||
ORDER BY sub.code;
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
SELECT
|
||||
io.amount,
|
||||
io.ref,
|
||||
io.issued,
|
||||
SELECT
|
||||
io.amount,
|
||||
io.ref,
|
||||
io.issued,
|
||||
ict.description
|
||||
FROM vn.invoiceCorrection ic
|
||||
JOIN vn.invoiceOut io ON io.id = ic.correctedFk
|
||||
JOIN vn.invoiceCorrectionType ict ON ict.id = ic.invoiceCorrectionTypeFk
|
||||
FROM invoiceOut io
|
||||
JOIN invoiceCorrection ic ON ic.correctingFk = io.id
|
||||
JOIN invoiceCorrectionType ict ON ict.id = ic.invoiceCorrectionTypeFk
|
||||
LEFT JOIN ticket t ON t.refFk = io.ref
|
||||
WHERE t.refFk = ?
|
||||
WHERE io.ref = ?
|
Loading…
Reference in New Issue