diff --git a/CHANGELOG.md b/CHANGELOG.md index c031a3874..b2be92faa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,8 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [24.18.01] - 2024-05-02 + ## [24.16.01] - 2024-04-18 ## [2414.01] - 2024-04-04 diff --git a/back/methods/chat/spec/send.spec.js b/back/methods/chat/spec/send.spec.js index e910f3fab..511f5fe80 100644 --- a/back/methods/chat/spec/send.spec.js +++ b/back/methods/chat/spec/send.spec.js @@ -3,14 +3,14 @@ const {models} = require('vn-loopback/server/server'); describe('Chat send()', () => { it('should return true as response', async() => { let ctx = {req: {accessToken: {userId: 1}}}; - let response = await models.Chat.send(ctx, '@salesPerson', 'I changed something'); + let response = await models.Chat.send(ctx, '@salesperson', 'I changed something'); expect(response).toEqual(true); }); it('should return false as response', async() => { let ctx = {req: {accessToken: {userId: 18}}}; - let response = await models.Chat.send(ctx, '@salesPerson', 'I changed something'); + let response = await models.Chat.send(ctx, '@salesperson', 'I changed something'); expect(response).toEqual(false); }); diff --git a/db/dump/fixtures.before.sql b/db/dump/fixtures.before.sql index d004cb3a7..fdba9682a 100644 --- a/db/dump/fixtures.before.sql +++ b/db/dump/fixtures.before.sql @@ -81,7 +81,7 @@ INSERT INTO `account`.`roleConfig`(`id`, `mysqlPassword`, `rolePrefix`, `userPre CALL `account`.`role_sync`; INSERT INTO `account`.`user`(`id`,`name`, `nickname`, `role`,`active`,`email`, `lang`, `image`, `password`) - SELECT id, name, CONCAT(name, 'Nick'), id, 1, CONCAT(name, '@mydomain.com'), 'en', '4fa3ada0-3ac4-11eb-9ab8-27f6fc3b85fd', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2' + SELECT id, LOWER(name), CONCAT(name, 'Nick'), id, 1, CONCAT(name, '@mydomain.com'), 'en', '4fa3ada0-3ac4-11eb-9ab8-27f6fc3b85fd', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2' FROM `account`.`role` ORDER BY id; @@ -118,18 +118,18 @@ INSERT INTO `hedera`.`tpvConfig`(`id`, `currency`, `terminal`, `transactionType` INSERT INTO `account`.`user`(`id`,`name`,`nickname`, `password`,`role`,`active`,`email`,`lang`, `image`) VALUES - (1101, 'BruceWayne', 'Bruce Wayne', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2', 2, 1, 'BruceWayne@mydomain.com', 'es','1101'), - (1102, 'PetterParker', 'Petter Parker', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2', 2, 1, 'PetterParker@mydomain.com', 'en','1102'), - (1103, 'ClarkKent', 'Clark Kent', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2', 2, 1, 'ClarkKent@mydomain.com', 'fr','1103'), - (1104, 'TonyStark', 'Tony Stark', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2', 2, 1, 'TonyStark@mydomain.com', 'es','1104'), - (1105, 'MaxEisenhardt', 'Max Eisenhardt', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2', 2, 1, 'MaxEisenhardt@mydomain.com', 'pt','1105'), - (1106, 'DavidCharlesHaller', 'David Charles Haller', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2', 1, 1, 'DavidCharlesHaller@mydomain.com', 'en','1106'), - (1107, 'HankPym', 'Hank Pym', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2', 1, 1, 'HankPym@mydomain.com', 'en','1107'), - (1108, 'CharlesXavier', 'Charles Xavier', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2', 1, 1, 'CharlesXavier@mydomain.com', 'en','1108'), - (1109, 'BruceBanner', 'Bruce Banner', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2', 1, 1, 'BruceBanner@mydomain.com', 'en','1109'), - (1110, 'JessicaJones', 'Jessica Jones', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2', 1, 1, 'JessicaJones@mydomain.com', 'en','1110'), - (1111, 'Missing', 'Missing', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2', 2, 0, NULL, 'en','e7723f0b24ff05b32ed09d95196f2f29'), - (1112, 'Trash', 'Trash', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2', 2, 0, NULL, 'en','e7723f0b24ff05b32ed09d95196f2f29'); + (1101, 'brucewayne', 'Bruce Wayne', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2', 2, 1, 'BruceWayne@mydomain.com', 'es','1101'), + (1102, 'petterparker', 'Petter Parker', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2', 2, 1, 'PetterParker@mydomain.com', 'en','1102'), + (1103, 'clarkkent', 'Clark Kent', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2', 2, 1, 'ClarkKent@mydomain.com', 'fr','1103'), + (1104, 'tonystark', 'Tony Stark', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2', 2, 1, 'TonyStark@mydomain.com', 'es','1104'), + (1105, 'maxeisenhardt', 'Max Eisenhardt', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2', 2, 1, 'MaxEisenhardt@mydomain.com', 'pt','1105'), + (1106, 'davidcharleshaller', 'David Charles Haller', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2', 1, 1, 'DavidCharlesHaller@mydomain.com', 'en','1106'), + (1107, 'hankpym', 'Hank Pym', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2', 1, 1, 'HankPym@mydomain.com', 'en','1107'), + (1108, 'charlesxavier', 'Charles Xavier', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2', 1, 1, 'CharlesXavier@mydomain.com', 'en','1108'), + (1109, 'brucebanner', 'Bruce Banner', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2', 1, 1, 'BruceBanner@mydomain.com', 'en','1109'), + (1110, 'jessicajones', 'Jessica Jones', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2', 1, 1, 'JessicaJones@mydomain.com', 'en','1110'), + (1111, 'missing', 'Missing', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2', 2, 0, NULL, 'en','e7723f0b24ff05b32ed09d95196f2f29'), + (1112, 'trash', 'Trash', '$2b$10$UzQHth.9UUQ1T5aiQJ21lOU0oVlbxoqH4PFM9V8T90KNSAcg0eEL2', 2, 0, NULL, 'en','e7723f0b24ff05b32ed09d95196f2f29'); UPDATE account.`user` SET passExpired = DATE_SUB(util.VN_CURDATE(), INTERVAL 1 YEAR) @@ -3739,3 +3739,18 @@ INSERT INTO vn.ticketLog (originFk,userFk,`action`,creationDate,changedModel,new INSERT INTO `vn`.`supplierDms`(`supplierFk`, `dmsFk`, `editorFk`) VALUES (1, 10, 9); + +INSERT INTO `vn`.`accountReconciliation` (supplierAccountFk,operationDated,valueDated,amount,concept,debitCredit,calculatedCode,created) + VALUES + (241,'2023-12-13 00:00:00.000','2023-12-07 00:00:00.000',19.36,'BEL 1','debit','2','2023-12-14 08:39:53.000'), + (241,'2023-12-13 00:00:00.000','2023-12-07 00:00:00.000',30226.43,'BEL 2','debit','1','2023-12-14 08:39:53.000'), + (241,'2023-12-13 00:00:00.000','2023-12-13 00:00:00.000',118.81,'RCBO','debit','10','2023-12-14 08:39:53.000'), + (241,'2023-12-13 00:00:00.000','2023-12-13 00:00:00.000',150.03,'TJ','debit','12','2023-12-14 08:39:53.000'), + (241,'2023-12-13 00:00:00.000','2023-12-13 00:00:00.000',150.03,'TJ','debit','12','2023-12-14 08:39:53.000'), + (241,'2023-12-13 00:00:00.000','2023-12-13 00:00:00.000',2149.71,'RCBO.AMAZON','debit','122','2023-12-14 08:39:53.000'), + (241,'2023-12-13 00:00:00.000','2023-12-13 00:00:00.000',3210.5,'RCBO.VOLVO','debit','121','2023-12-14 08:39:53.000'), + (241,'2023-12-13 00:00:00.000','2023-12-13 00:00:00.000',6513.7,'RCBO.ENERPLUS','debit','120','2023-12-14 08:39:53.000'); + +INSERT INTO `vn`.`accountReconciliationConfig`(currencyFk, warehouseFk) + VALUES + (1, 1); diff --git a/db/routines/account/procedures/user_checkName.sql b/db/routines/account/procedures/user_checkName.sql index 4f954ad00..6fab17361 100644 --- a/db/routines/account/procedures/user_checkName.sql +++ b/db/routines/account/procedures/user_checkName.sql @@ -7,7 +7,7 @@ BEGIN * The user name must only contain lowercase letters or, starting with second * character, numbers or underscores. */ - IF vUserName NOT REGEXP '^[a-z0-9_-]*$' THEN + IF vUserName NOT REGEXP BINARY '^[a-z0-9_-]+$' THEN SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'INVALID_USER_NAME'; END IF; diff --git a/db/routines/floranet/procedures/catalogue_get.sql b/db/routines/floranet/procedures/catalogue_get.sql index e45fa7ddf..32624f383 100644 --- a/db/routines/floranet/procedures/catalogue_get.sql +++ b/db/routines/floranet/procedures/catalogue_get.sql @@ -6,7 +6,7 @@ CREATE DEFINER=`root`@`localhost` PROCEDURE floranet.catalogue_get(vLanded DATE, READS SQL DATA proc:BEGIN /** - * Returns list, price and all the stuff regarding the floranet items + * Returns list, price and all the stuff regarding the floranet items. * * @param vLanded Delivery date * @param vPostalCode Delivery address postal code diff --git a/db/routines/floranet/procedures/contact_request.sql b/db/routines/floranet/procedures/contact_request.sql index 044c22c6f..2ca25b87d 100644 --- a/db/routines/floranet/procedures/contact_request.sql +++ b/db/routines/floranet/procedures/contact_request.sql @@ -11,7 +11,7 @@ PROCEDURE floranet.contact_request( READS SQL DATA BEGIN /** - * Set actions for contact request. + * Set actions for contact request * * @param vPostalCode Delivery address postal code */ diff --git a/db/routines/floranet/procedures/deliveryDate_get.sql b/db/routines/floranet/procedures/deliveryDate_get.sql index 29751ebe4..75e9d6257 100644 --- a/db/routines/floranet/procedures/deliveryDate_get.sql +++ b/db/routines/floranet/procedures/deliveryDate_get.sql @@ -6,7 +6,7 @@ CREATE DEFINER=`root`@`localhost` PROCEDURE `floranet`.`deliveryDate_get`(vPosta READS SQL DATA BEGIN /** - * Returns available dates for this postalCode, in the next seven days + * Returns available dates for this postalCode, in the next seven days. * * @param vPostalCode Delivery address postal code */ diff --git a/db/routines/floranet/procedures/order_confirm.sql b/db/routines/floranet/procedures/order_confirm.sql index fed123663..b6aec033d 100644 --- a/db/routines/floranet/procedures/order_confirm.sql +++ b/db/routines/floranet/procedures/order_confirm.sql @@ -7,7 +7,7 @@ CREATE DEFINER=`root`@`localhost`PROCEDURE floranet.order_confirm(vCatalogueFk I READS SQL DATA BEGIN -/** Update order.isPaid field +/** Update order.isPaid field. * * @param vCatalogueFk floranet.catalogue.id * diff --git a/db/routines/floranet/procedures/order_put.sql b/db/routines/floranet/procedures/order_put.sql index c26cef19a..564587268 100644 --- a/db/routines/floranet/procedures/order_put.sql +++ b/db/routines/floranet/procedures/order_put.sql @@ -6,7 +6,7 @@ CREATE DEFINER=`root`@`localhost` PROCEDURE floranet.order_put(vOrder JSON) READS SQL DATA BEGIN /** - * Get and process an order + * Get and process an order. * * @param vOrder Data of the order * diff --git a/db/routines/floranet/procedures/sliders_get.sql b/db/routines/floranet/procedures/sliders_get.sql index bd791dec7..0e4aa297a 100644 --- a/db/routines/floranet/procedures/sliders_get.sql +++ b/db/routines/floranet/procedures/sliders_get.sql @@ -6,7 +6,7 @@ CREATE DEFINER=`root`@`localhost` PROCEDURE floranet.sliders_get() READS SQL DATA BEGIN /** - * Returns list of url for sliders + * Returns list of url for sliders. */ SELECT CONCAT('https://cdn.verdnatura.es/image/catalog/1600x900/', i.image) url, diff --git a/db/routines/vn/procedures/addAccountReconciliation.sql b/db/routines/vn/procedures/addAccountReconciliation.sql new file mode 100644 index 000000000..8effbd76c --- /dev/null +++ b/db/routines/vn/procedures/addAccountReconciliation.sql @@ -0,0 +1,66 @@ +DELIMITER $$ +CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `vn`.`addAccountReconciliation`() +BEGIN +/** + * Updates duplicate records in the accountReconciliation table, + * by assigning them a new identifier and then inserts a new entry in the till table. + */ + UPDATE accountReconciliation ar + JOIN ( + SELECT id, + calculatedCode, + CONCAT( + calculatedCode, + '(', + ROW_NUMBER() OVER (PARTITION BY calculatedCode ORDER BY id), + ')' + ) newId + FROM accountReconciliation ar + WHERE calculatedCode IN ( + SELECT calculatedCode + FROM accountReconciliation + GROUP BY calculatedCode + HAVING COUNT(*) > 1 + ) + ORDER BY calculatedCode, id + ) sub2 ON ar.id = sub2.id + SET ar.calculatedCode = sub2.newId; + + INSERT INTO till( + dated, + isAccountable, + serie, + concept, + `in`, + `out`, + bankFk, + companyFk, + warehouseFk, + supplierAccountFk, + calculatedCode, + InForeignValue, + OutForeignValue, + workerFk + ) + SELECT ar.operationDated, + TRUE, + 'MB', + ar.concept, + IF(ar.debitCredit = 'credit' AND a.currencyFk = arc.currencyFk, ar.amount, NULL), + IF(ar.debitCredit = 'debit' AND a.currencyFk = arc.currencyFk, ar.amount, NULL), + a.id, + sa.supplierFk, + arc.warehouseFk, + ar.supplierAccountFk, + ar.calculatedCode, + IF(ar.debitCredit = 'credit' AND NOT a.currencyFk = arc.currencyFk, ar.amount, NULL), + IF(ar.debitCredit = 'debit' AND NOT a.currencyFk = arc.currencyFk, ar.amount, NULL), + account.myUser_getId() + FROM accountReconciliation ar + JOIN supplierAccount sa ON sa.id = ar.supplierAccountFk + JOIN accounting a ON a.id = sa.accountingFk + LEFT JOIN till t ON t.calculatedCode = ar.calculatedCode + JOIN accountReconciliationConfig arc + WHERE t.id IS NULL; +END$$ +DELIMITER ; \ No newline at end of file diff --git a/db/routines/vn/procedures/agencyVolume.sql b/db/routines/vn/procedures/agencyVolume.sql new file mode 100644 index 000000000..176b77726 --- /dev/null +++ b/db/routines/vn/procedures/agencyVolume.sql @@ -0,0 +1,38 @@ +DELIMITER $$ +CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `vn`.`agencyVolume`() +BEGIN +/** + * Calculates and presents information on shipment and packaging volumes + * for agencies that are not owned for a specific period. + */ + DECLARE vStarted DATETIME DEFAULT util.VN_CURDATE(); + DECLARE vEnded DATETIME DEFAULT util.dayEnd(util.VN_CURDATE()); + + SELECT ag.id agency_id, + CONCAT(RPAD(c.country, 16,' _') ,' ',ag.name) Agencia, + COUNT(*) expediciones, + SUM(t.packages) Bultos, + SUM(tpe.boxes) Faltan + FROM ticket t + JOIN warehouse w ON w.id = t.warehouseFk + JOIN country c ON w.countryFk = c.id + JOIN address a ON a.id = t.addressFk + JOIN agencyMode am ON am.id = t.agencyModeFk + JOIN agency ag ON ag.id = am.agencyFk + JOIN ( + SELECT sv.ticketFk, + CEIL(1000 * SUM(sv.volume) / vc.standardFlowerBox) boxes + FROM ticket t + JOIN saleVolume sv ON sv.ticketFk = t.id + JOIN volumeConfig vc + WHERE t.shipped BETWEEN vStarted AND vEnded + AND (t.packages IS NULL OR NOT t.packages) + GROUP BY t.id + ) tpe ON tpe.ticketFk = t.id + WHERE t.shipped BETWEEN vStarted AND vEnded + AND NOT ag.isOwn + GROUP BY ag.id + ORDER BY Agencia; + +END$$ +DELIMITER ; \ No newline at end of file diff --git a/db/routines/vn/procedures/entry_checkBooked.sql b/db/routines/vn/procedures/entry_checkBooked.sql index 50990cd43..3ca8c9642 100644 --- a/db/routines/vn/procedures/entry_checkBooked.sql +++ b/db/routines/vn/procedures/entry_checkBooked.sql @@ -15,7 +15,7 @@ BEGIN FROM `entry` WHERE id = vSelf; - IF vIsBooked THEN + IF vIsBooked AND NOT @isModeInventory THEN CALL util.throw('Entry is already booked'); END IF; END$$ diff --git a/db/routines/vn/procedures/inventoryMake.sql b/db/routines/vn/procedures/inventoryMake.sql index a40093679..c50d75b05 100644 --- a/db/routines/vn/procedures/inventoryMake.sql +++ b/db/routines/vn/procedures/inventoryMake.sql @@ -232,8 +232,6 @@ BEGIN CLOSE cWarehouses; UPDATE config SET inventoried = vInventoryDate; - - SET @isModeInventory := FALSE; CREATE OR REPLACE TEMPORARY TABLE tEntryToDelete (INDEX(entryId)) ENGINE = MEMORY @@ -262,6 +260,8 @@ BEGIN FROM travel t JOIN tEntryToDelete tmp ON tmp.travelId = t.id; + SET @isModeInventory := FALSE; + DROP TEMPORARY TABLE IF EXISTS tEntryToDelete; COMMIT; diff --git a/db/routines/vn/procedures/ticket_doCmr.sql b/db/routines/vn/procedures/ticket_doCmr.sql index 5789d09de..61d8da5f9 100644 --- a/db/routines/vn/procedures/ticket_doCmr.sql +++ b/db/routines/vn/procedures/ticket_doCmr.sql @@ -1,5 +1,5 @@ -DELIMITER $$ -CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `vn`.`ticket_doCmr`(vSelf INT) +DELIMITER $$ +CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `vn`.`ticket_doCmr`(vSelf INT) BEGIN /** * Crea u actualiza la información del CMR asociado con @@ -29,7 +29,6 @@ BEGIN JOIN province p ON p.id = a.provinceFk JOIN country co ON co.id = p.countryFk JOIN agencyMode am ON am.id = t.agencyModeFk - JOIN deliveryMethod dm ON dm.id = am.deliveryMethodFk JOIN warehouse w ON w.id = t.warehouseFk JOIN company com ON com.id = t.companyFk JOIN client c2 ON c2.id = com.clientFk @@ -38,12 +37,10 @@ BEGIN LEFT JOIN route r ON r.id = t.routeFk LEFT JOIN worker wo ON wo.id = r.workerFk LEFT JOIN vehicle v ON v.id = r.vehicleFk - WHERE t.shipped BETWEEN util.yesterday() AND util.dayEnd(util.VN_CURDATE()) - AND al.code IN ('PACKED', 'DELIVERED') + WHERE al.code IN ('PACKED', 'DELIVERED') AND co.code <> 'ES' AND am.name <> 'ABONO' AND w.code = 'ALG' - AND dm.code = 'DELIVERY' AND t.id = vSelf GROUP BY t.id; @@ -85,5 +82,5 @@ BEGIN COMMIT; DROP TEMPORARY TABLE tTicket; -END$$ -DELIMITER ; +END$$ +DELIMITER ; diff --git a/db/routines/vn2008/procedures/account_conciliacion_add.sql b/db/routines/vn2008/procedures/account_conciliacion_add.sql deleted file mode 100644 index 94ef0b14b..000000000 --- a/db/routines/vn2008/procedures/account_conciliacion_add.sql +++ /dev/null @@ -1,33 +0,0 @@ -DELIMITER $$ -CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `vn2008`.`account_conciliacion_add`() -BEGIN - UPDATE account_conciliacion ac - JOIN - ( - SELECT idaccount_conciliacion, @c:= if(@id = id_calculated, @c + 1, 1) contador, - @id:= id_calculated as id_calculated, concat(id_calculated,'(',@c,')') as new_id - FROM account_conciliacion - JOIN - ( - select id_calculated, count(*) rep, @c:= 0, @id:= concat('-',id_calculated) - from account_conciliacion - group by id_calculated - having rep > 1 - ) sub using(id_calculated) - ) sub2 using(idaccount_conciliacion) - SET ac.id_calculated = sub2.new_id; - - INSERT INTO Cajas(Cajafecha, Partida, Serie, Concepto, Entrada, - Salida, Id_Banco,empresa_id, warehouse_id, - Proveedores_account_id, id_calculated, InForeignValue, OutForeignValue, Id_Trabajador) - SELECT Fechaoperacion, TRUE, 'MB', ac.Concepto, IF(DebeHaber = 2 AND currencyFk = 1, importe,null), - IF(DebeHaber = 1 AND currencyFk = 1, importe, null), a.id, sa.supplierFk, 1, - ac.Id_Proveedores_account, ac.id_calculated, IF(DebeHaber = 2 AND NOT currencyFk = 1, importe, null), - IF(DebeHaber = 1 AND NOT currencyFk = 1, importe, null), account.myUser_getId() - FROM account_conciliacion ac - JOIN vn.supplierAccount sa on sa.id = ac.Id_Proveedores_account - JOIN vn.accounting a ON a.id = sa.accountingFk - LEFT JOIN Cajas c on c.id_calculated = ac.id_calculated - WHERE c.Id_Caja IS NULL; -END$$ -DELIMITER ; diff --git a/db/routines/vn2008/procedures/agencia_volume.sql b/db/routines/vn2008/procedures/agencia_volume.sql deleted file mode 100644 index ea631793d..000000000 --- a/db/routines/vn2008/procedures/agencia_volume.sql +++ /dev/null @@ -1,44 +0,0 @@ -DELIMITER $$ -CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `vn2008`.`agencia_volume`() -BEGIN - DECLARE vStarted DATETIME DEFAULT TIMESTAMP(util.VN_CURDATE()); - DECLARE vEnded DATETIME DEFAULT TIMESTAMP(util.VN_CURDATE(), '23:59:59'); - - DROP TEMPORARY TABLE IF EXISTS tmp.ticket_PackagingEstimated; - CREATE TEMPORARY TABLE tmp.ticket_PackagingEstimated - ( - ticketFk INT PRIMARY KEY - ,boxes INT DEFAULT 0 - ); - - INSERT INTO tmp.ticket_PackagingEstimated(ticketFk, boxes) - SELECT sv.ticketFk, CEIL(1000 * sum(sv.volume) / vc.standardFlowerBox) - FROM vn.ticket t - JOIN vn.saleVolume sv ON sv.ticketFk = t.id - JOIN vn.volumeConfig vc - WHERE t.shipped BETWEEN vStarted AND vEnded - AND IFNULL(t.packages,0) = 0 - GROUP BY t.id; - SELECT * FROM - ( - SELECT ag.id agency_id, - CONCAT(RPAD(c.country, 16,' _') ,' ',ag.name) Agencia, - count(*) expediciones, - sum(t.packages) Bultos, - sum(tpe.boxes) Faltan - FROM vn.ticket t - JOIN vn.warehouse w ON w.id = t.warehouseFk - JOIN vn.country c ON w.countryFk = c.id - JOIN vn.address a ON a.id = t.addressFk - JOIN vn.agencyMode am ON am.id = t.agencyModeFk - JOIN vn.agency ag ON ag.id = am.agencyFk - JOIN tmp.ticket_PackagingEstimated tpe ON tpe.ticketFk = t.id - WHERE t.shipped BETWEEN vStarted AND vEnded - AND ag.isOwn = FALSE - GROUP BY ag.id - ) sub - ORDER BY Agencia; - - DROP TEMPORARY TABLE tmp.ticket_PackagingEstimated; -END$$ -DELIMITER ; diff --git a/db/routines/vn2008/procedures/article.sql b/db/routines/vn2008/procedures/article.sql deleted file mode 100644 index 3c2664c0f..000000000 --- a/db/routines/vn2008/procedures/article.sql +++ /dev/null @@ -1,15 +0,0 @@ -DELIMITER $$ -CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `vn2008`.`article`() -BEGIN -/** - * Crea la tabla temporal: article_inventory - */ - DROP TEMPORARY TABLE IF EXISTS article_inventory; - CREATE TEMPORARY TABLE article_inventory - ( - `article_id` INT(11) NOT NULL PRIMARY KEY, - `future` DATETIME - ) - ENGINE = MEMORY; -END$$ -DELIMITER ; diff --git a/db/routines/vn2008/views/Proveedores.sql b/db/routines/vn2008/views/Proveedores.sql index 0b7ee89f8..b5d3d3684 100644 --- a/db/routines/vn2008/views/Proveedores.sql +++ b/db/routines/vn2008/views/Proveedores.sql @@ -23,7 +23,7 @@ AS SELECT `s`.`id` AS `Id_Proveedor`, `s`.`isOfficial` AS `oficial`, `s`.`workerFk` AS `workerFk`, `s`.`payDay` AS `pay_day`, - `s`.`isSerious` AS `serious`, + `s`.`isReal` AS `serious`, `s`.`note` AS `notas`, `s`.`taxTypeSageFk` AS `taxTypeSageFk`, `s`.`withholdingSageFk` AS `withholdingSageFk`, diff --git a/db/versions/10900-redOak/00-firstScript.sql b/db/versions/10900-redOak/00-firstScript.sql new file mode 100644 index 000000000..8609ddc7e --- /dev/null +++ b/db/versions/10900-redOak/00-firstScript.sql @@ -0,0 +1 @@ +ALTER TABLE vn.supplier CHANGE COLUMN isSerious isReal tinyint(1) unsigned NOT NULL DEFAULT 0; diff --git a/db/versions/10917-aquaPhormium/00-firstScript.sql b/db/versions/10917-aquaPhormium/00-firstScript.sql new file mode 100644 index 000000000..436243ba5 --- /dev/null +++ b/db/versions/10917-aquaPhormium/00-firstScript.sql @@ -0,0 +1,9 @@ +UPDATE account.user +SET name = LOWER(name), + name = REPLACE(name, ' ', ''), + name = REPLACE(name, '.', ''), + name = REPLACE(name, 'ñ', 'n'), + name = REPLACE(name, '*', ''), + name = REPLACE(name, 'ç', 'z'), + name = REPLACE(name, 'ã', 'a') +WHERE NOT active; diff --git a/db/versions/10948-azureSalal/00-addReconciliationConfig.sql b/db/versions/10948-azureSalal/00-addReconciliationConfig.sql new file mode 100644 index 000000000..1da6473b4 --- /dev/null +++ b/db/versions/10948-azureSalal/00-addReconciliationConfig.sql @@ -0,0 +1,8 @@ + CREATE OR REPLACE TABLE `vn`.`accountReconciliationConfig` ( + `id` INT AUTO_INCREMENT, + `currencyFk` TINYINT(3) unsigned, + `warehouseFk` SMALLINT(6) unsigned, + PRIMARY KEY (`id`), + CONSTRAINT `account_fk_currency` FOREIGN KEY (`currencyFk`) REFERENCES `currency` (`id`), + CONSTRAINT `account_fk_warehouse` FOREIGN KEY (`warehouseFk`) REFERENCES `warehouse` (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_unicode_ci; \ No newline at end of file diff --git a/db/versions/10948-azureSalal/01-addReconciliationConfig.vn.sql b/db/versions/10948-azureSalal/01-addReconciliationConfig.vn.sql new file mode 100644 index 000000000..21743a007 --- /dev/null +++ b/db/versions/10948-azureSalal/01-addReconciliationConfig.vn.sql @@ -0,0 +1,2 @@ +INSERT INTO `vn`.`accountReconciliationConfig`(currencyFk, warehouseFk) + VALUES (1, 1); \ No newline at end of file diff --git a/db/versions/10948-azureSalal/02-grantPrivileges.sql b/db/versions/10948-azureSalal/02-grantPrivileges.sql new file mode 100644 index 000000000..d6853f759 --- /dev/null +++ b/db/versions/10948-azureSalal/02-grantPrivileges.sql @@ -0,0 +1,13 @@ +CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `vn`.`agencyVolume`() +BEGIN +END; + +REVOKE EXECUTE ON PROCEDURE `vn2008`.`agencia_volume` FROM `agency`; +GRANT EXECUTE ON PROCEDURE `vn`.`agencyVolume` TO `agency`; + +CREATE OR REPLACE DEFINER=`root`@`localhost` PROCEDURE `vn`.`addAccountReconciliation`() +BEGIN +END; + +REVOKE EXECUTE ON PROCEDURE `vn2008`.`account_conciliacion_add` FROM `financial`; +GRANT EXECUTE ON PROCEDURE `vn`.`addAccountReconciliation` TO `financial`; diff --git a/db/versions/10948-azureSalal/03-modifyColumn.sql b/db/versions/10948-azureSalal/03-modifyColumn.sql new file mode 100644 index 000000000..95b7d9c74 --- /dev/null +++ b/db/versions/10948-azureSalal/03-modifyColumn.sql @@ -0,0 +1 @@ +ALTER TABLE `vn`.`accountReconciliation` MODIFY debitCredit ENUM('debit', 'credit'); \ No newline at end of file diff --git a/e2e/helpers/selectors.js b/e2e/helpers/selectors.js index daaa17c71..685345273 100644 --- a/e2e/helpers/selectors.js +++ b/e2e/helpers/selectors.js @@ -1258,7 +1258,7 @@ export default { }, supplierBasicData: { alias: 'vn-supplier-basic-data vn-textfield[ng-model="$ctrl.supplier.nickname"]', - isSerious: 'vn-supplier-basic-data vn-check[ng-model="$ctrl.supplier.isSerious"]', + isReal: 'vn-supplier-basic-data vn-check[ng-model="$ctrl.supplier.isReal"]', isActive: 'vn-supplier-basic-data vn-check[ng-model="$ctrl.supplier.isActive"]', isPayMethodChecked: 'vn-supplier-basic-data vn-check[ng-model="$ctrl.supplier.isPayMethodChecked"]', notes: 'vn-supplier-basic-data vn-textarea[ng-model="$ctrl.supplier.note"]', diff --git a/e2e/paths/02-client/01_create_client.spec.js b/e2e/paths/02-client/01_create_client.spec.js index 744b11a72..e951ec784 100644 --- a/e2e/paths/02-client/01_create_client.spec.js +++ b/e2e/paths/02-client/01_create_client.spec.js @@ -32,7 +32,7 @@ describe('Client create path', () => { await page.autocompleteSearch(selectors.createClientView.salesPerson, 'salesPerson'); await page.autocompleteSearch(selectors.createClientView.businessType, 'florist'); await page.write(selectors.createClientView.taxNumber, '74451390E'); - await page.write(selectors.createClientView.userName, 'CaptainMarvel'); + await page.write(selectors.createClientView.userName, 'captainmarvel'); await page.write(selectors.createClientView.email, 'CarolDanvers@verdnatura.es'); await page.waitToClick(selectors.createClientView.createButton); const message = await page.waitForSnackbar(); diff --git a/e2e/paths/02-client/07_edit_web_access.spec.js b/e2e/paths/02-client/07_edit_web_access.spec.js index c5e132ab7..8758c3b05 100644 --- a/e2e/paths/02-client/07_edit_web_access.spec.js +++ b/e2e/paths/02-client/07_edit_web_access.spec.js @@ -29,7 +29,7 @@ describe('Client web access path', () => { await page.click($.enableWebAccess); await page.click($.saveButton); const enableMessage = await page.waitForSnackbar(); - await page.overwrite($.userName, 'Legion'); + await page.overwrite($.userName, 'legion'); await page.overwrite($.email, 'legion@marvel.com'); await page.click($.saveButton); const modifyMessage = await page.waitForSnackbar(); @@ -47,7 +47,7 @@ describe('Client web access path', () => { expect(modifyMessage.type).toBe('success'); expect(hasAccess).toBe('unchecked'); - expect(userName).toEqual('Legion'); + expect(userName).toEqual('legion'); expect(email).toEqual('legion@marvel.com'); // expect(logName).toEqual('Legion'); diff --git a/e2e/paths/02-client/09_add_credit.spec.js b/e2e/paths/02-client/09_add_credit.spec.js index 2365f0635..179265b0f 100644 --- a/e2e/paths/02-client/09_add_credit.spec.js +++ b/e2e/paths/02-client/09_add_credit.spec.js @@ -34,6 +34,6 @@ describe('Client Add credit path', () => { const result = await page.waitToGetProperty(selectors.clientCredit.firstCreditText, 'innerText'); expect(result).toContain(999); - expect(result).toContain('salesAssistant'); + expect(result).toContain('salesassistant'); }); }); diff --git a/e2e/paths/02-client/19_summary.spec.js b/e2e/paths/02-client/19_summary.spec.js index b3bf43c5c..dec8d505c 100644 --- a/e2e/paths/02-client/19_summary.spec.js +++ b/e2e/paths/02-client/19_summary.spec.js @@ -61,7 +61,7 @@ describe('Client summary path', () => { it('should display web access details', async() => { const result = await page.waitToGetProperty(selectors.clientSummary.userName, 'innerText'); - expect(result).toContain('PetterParker'); + expect(result).toContain('petterparker'); }); it('should display business data', async() => { diff --git a/e2e/paths/05-ticket/05_tracking_state.spec.js b/e2e/paths/05-ticket/05_tracking_state.spec.js index 9ac373287..5cfc1c9d4 100644 --- a/e2e/paths/05-ticket/05_tracking_state.spec.js +++ b/e2e/paths/05-ticket/05_tracking_state.spec.js @@ -59,7 +59,7 @@ describe('Ticket Create new tracking state path', () => { const result = await page .waitToGetProperty(selectors.createStateView.worker, 'value'); - expect(result).toEqual('salesPerson'); + expect(result).toEqual('salesperson'); }); it(`should succesfully create a valid state`, async() => { diff --git a/e2e/paths/06-claim/01_basic_data.spec.js b/e2e/paths/06-claim/01_basic_data.spec.js index 8133ee9f2..33c68183f 100644 --- a/e2e/paths/06-claim/01_basic_data.spec.js +++ b/e2e/paths/06-claim/01_basic_data.spec.js @@ -34,14 +34,6 @@ describe('Claim edit basic data path', () => { await page.waitForState('claim.card.detail'); }); - it('should check the "Pick up" checkbox', async() => { - await page.reloadSection('claim.card.basicData'); - await page.waitToClick(selectors.claimBasicData.saveButton); - const message = await page.waitForSnackbar(); - - expect(message.text).toContain('Data saved!'); - }); - it('should confirm the claim state was edited', async() => { await page.reloadSection('claim.card.basicData'); await page.waitForSelector(selectors.claimBasicData.claimState); diff --git a/e2e/paths/13-supplier/02_basic_data.spec.js b/e2e/paths/13-supplier/02_basic_data.spec.js index 79a9898ca..710ebd8df 100644 --- a/e2e/paths/13-supplier/02_basic_data.spec.js +++ b/e2e/paths/13-supplier/02_basic_data.spec.js @@ -20,7 +20,7 @@ describe('Supplier basic data path', () => { it('should edit the basic data', async() => { await page.clearInput(selectors.supplierBasicData.alias); await page.write(selectors.supplierBasicData.alias, 'Plants Nick SL'); - await page.waitToClick(selectors.supplierBasicData.isSerious); + await page.waitToClick(selectors.supplierBasicData.isReal); await page.waitToClick(selectors.supplierBasicData.isActive); await page.waitToClick(selectors.supplierBasicData.isPayMethodChecked); await page.write(selectors.supplierBasicData.notes, 'Some notes'); @@ -41,8 +41,8 @@ describe('Supplier basic data path', () => { expect(result).toEqual('Plants Nick SL'); }); - it('should check the isSerious checkbox is now checked', async() => { - const result = await page.checkboxState(selectors.supplierBasicData.isSerious); + it('should check the isReal checkbox is now checked', async() => { + const result = await page.checkboxState(selectors.supplierBasicData.isReal); expect(result).toBe('checked'); }); diff --git a/e2e/paths/14-account/01_create_and_basic_data.spec.js b/e2e/paths/14-account/01_create_and_basic_data.spec.js index e38d1aeec..e2c069d80 100644 --- a/e2e/paths/14-account/01_create_and_basic_data.spec.js +++ b/e2e/paths/14-account/01_create_and_basic_data.spec.js @@ -21,7 +21,7 @@ describe('Account create and basic data path', () => { }); it('should fill the form and then save it by clicking the create button', async() => { - await page.write(selectors.accountIndex.newName, 'Remy'); + await page.write(selectors.accountIndex.newName, 'remy'); await page.write(selectors.accountIndex.newNickname, 'Gambit'); await page.write(selectors.accountIndex.newEmail, 'RemyEtienneLeBeau@verdnatura.es'); await page.autocompleteSearch(selectors.accountIndex.newRole, 'Trainee'); @@ -39,7 +39,7 @@ describe('Account create and basic data path', () => { it('should check the name is as expected', async() => { const result = await page.waitToGetProperty(selectors.accountBasicData.name, 'value'); - expect(result).toEqual('Remy'); + expect(result).toEqual('remy'); }); it('should check the nickname is as expected', async() => { diff --git a/front/core/services/auth.js b/front/core/services/auth.js index 753bc3fba..d77966aca 100644 --- a/front/core/services/auth.js +++ b/front/core/services/auth.js @@ -86,7 +86,8 @@ export default class Auth { return this.$http.get('VnUsers/ShareToken', { headers: {Authorization: json.data.token} }).then(({data}) => { - this.vnToken.set(json.data.token, data.multimediaToken.id, now, json.data.ttl, remember); + // Usar data.multimediaToken.id cuando el resto de sistemas lo tengan completado + this.vnToken.set(json.data.token, json.data.token, now, json.data.ttl, remember); this.loadAcls().then(() => { let continueHash = this.$state.params.continue; if (continueHash) diff --git a/modules/client/back/methods/client/specs/createWithUser.spec.js b/modules/client/back/methods/client/specs/createWithUser.spec.js index 074cb289a..04fc51a26 100644 --- a/modules/client/back/methods/client/specs/createWithUser.spec.js +++ b/modules/client/back/methods/client/specs/createWithUser.spec.js @@ -3,8 +3,8 @@ const LoopBackContext = require('loopback-context'); describe('Client Create', () => { const newAccount = { - userName: 'Deadpool', - email: 'Deadpool@marvel.com', + userName: 'deadpool', + email: 'deadpool@marvel.com', fi: '16195279J', name: 'Wade', socialName: 'DEADPOOL MARVEL', @@ -31,7 +31,7 @@ describe('Client Create', () => { }); }); - it(`should not find Deadpool as he's not created yet`, async() => { + it(`should not find deadpool as he's not created yet`, async() => { const tx = await models.Client.beginTransaction({}); try { diff --git a/modules/client/back/models/specs/client.spec.js b/modules/client/back/models/specs/client.spec.js index bf134fbf9..1b5132304 100644 --- a/modules/client/back/models/specs/client.spec.js +++ b/modules/client/back/models/specs/client.spec.js @@ -31,8 +31,8 @@ describe('Client Model', () => { await models.Client.notifyAssignment(instance, previousWorkerId, currentWorkerId); - expect(chatModel.send).toHaveBeenCalledWith(ctx, '@DavidCharlesHaller', `Client assignment has changed`); - expect(chatModel.send).toHaveBeenCalledWith(ctx, '@HankPym', `Client assignment has changed`); + expect(chatModel.send).toHaveBeenCalledWith(ctx, '@davidcharleshaller', `Client assignment has changed`); + expect(chatModel.send).toHaveBeenCalledWith(ctx, '@hankpym', `Client assignment has changed`); }); it('should call to the Chat send() method for the previous worker', async() => { @@ -40,7 +40,7 @@ describe('Client Model', () => { await models.Client.notifyAssignment(instance, null, currentWorkerId); - expect(chatModel.send).toHaveBeenCalledWith(ctx, '@HankPym', `Client assignment has changed`); + expect(chatModel.send).toHaveBeenCalledWith(ctx, '@hankpym', `Client assignment has changed`); }); it('should call to the Chat send() method for the current worker', async() => { @@ -48,7 +48,7 @@ describe('Client Model', () => { await models.Client.notifyAssignment(instance, previousWorkerId, null); - expect(chatModel.send).toHaveBeenCalledWith(ctx, '@DavidCharlesHaller', `Client assignment has changed`); + expect(chatModel.send).toHaveBeenCalledWith(ctx, '@davidcharleshaller', `Client assignment has changed`); }); }); diff --git a/modules/route/back/methods/route/getExternalCmrs.js b/modules/route/back/methods/route/getExternalCmrs.js index 3fc9798b0..b8cd1041a 100644 --- a/modules/route/back/methods/route/getExternalCmrs.js +++ b/modules/route/back/methods/route/getExternalCmrs.js @@ -98,40 +98,38 @@ module.exports = Self => { let stmts = []; const stmt = new ParameterizedSQL(` - SELECT * - FROM ( - SELECT t.cmrFk, - t.id ticketFk, - t.routeFk, - co.country, - t.clientFk, - IF(sub.id, TRUE, FALSE) hasCmrDms, - DATE(t.shipped) shipped - FROM ticket t - JOIN ticketState ts ON ts.ticketFk = t.id - JOIN state s ON s.id = ts.stateFk - JOIN alertLevel al ON al.id = s.alertLevel - JOIN client c ON c.id = t.clientFk - JOIN address a ON a.id = t.addressFk - JOIN province p ON p.id = a.provinceFk - JOIN country co ON co.id = p.countryFk - JOIN agencyMode am ON am.id = t.agencyModeFk - JOIN deliveryMethod dm ON dm.id = am.deliveryMethodFk - JOIN warehouse w ON w.id = t.warehouseFk - LEFT JOIN ( - SELECT td.ticketFk, d.id - FROM ticketDms td - JOIN dms d ON d.id = td.dmsFk - JOIN dmsType dt ON dt.id = d.dmsTypeFk - WHERE dt.name = 'cmr' - ) sub ON sub.ticketFk = t.id - WHERE co.code <> 'ES' - AND am.name <> 'ABONO' - AND w.code = 'ALG' - AND dm.code = 'DELIVERY' - AND t.cmrFk - ) sub - `); + SELECT * + FROM ( + SELECT t.cmrFk, + t.id ticketFk, + t.routeFk, + co.country, + t.clientFk, + IF(sub.id, TRUE, FALSE) hasCmrDms, + DATE(t.shipped) shipped + FROM ticket t + JOIN ticketState ts ON ts.ticketFk = t.id + JOIN state s ON s.id = ts.stateFk + JOIN alertLevel al ON al.id = s.alertLevel + JOIN client c ON c.id = t.clientFk + JOIN address a ON a.id = t.addressFk + JOIN province p ON p.id = a.provinceFk + JOIN country co ON co.id = p.countryFk + JOIN agencyMode am ON am.id = t.agencyModeFk + JOIN warehouse w ON w.id = t.warehouseFk + LEFT JOIN ( + SELECT td.ticketFk, d.id + FROM ticketDms td + JOIN dms d ON d.id = td.dmsFk + JOIN dmsType dt ON dt.id = d.dmsTypeFk + WHERE dt.name = 'cmr' + ) sub ON sub.ticketFk = t.id + WHERE co.code <> 'ES' + AND am.name <> 'ABONO' + AND w.code = 'ALG' + AND t.cmrFk + ) sub + `); stmt.merge(conn.makeSuffix(filter)); const itemsIndex = stmts.push(stmt) - 1; diff --git a/modules/supplier/back/locale/supplier/en.yml b/modules/supplier/back/locale/supplier/en.yml index 25bcae1e3..626d78ff8 100644 --- a/modules/supplier/back/locale/supplier/en.yml +++ b/modules/supplier/back/locale/supplier/en.yml @@ -11,7 +11,7 @@ columns: postcodeFk: postcode isActive: active isOfficial: official - isSerious: serious + isReal: real isTrucker: trucker note: note street: street diff --git a/modules/supplier/back/locale/supplier/es.yml b/modules/supplier/back/locale/supplier/es.yml index 678c384a9..ed57d357a 100644 --- a/modules/supplier/back/locale/supplier/es.yml +++ b/modules/supplier/back/locale/supplier/es.yml @@ -11,7 +11,7 @@ columns: postcodeFk: código postal isActive: activo isOfficial: oficial - isSerious: serio + isReal: real isTrucker: camionero note: nota street: calle diff --git a/modules/supplier/back/methods/supplier/getSummary.js b/modules/supplier/back/methods/supplier/getSummary.js index bc869725c..699233386 100644 --- a/modules/supplier/back/methods/supplier/getSummary.js +++ b/modules/supplier/back/methods/supplier/getSummary.js @@ -25,7 +25,7 @@ module.exports = Self => { 'id', 'name', 'nickname', - 'isSerious', + 'isReal', 'isActive', 'note', 'nif', diff --git a/modules/supplier/back/models/supplier.json b/modules/supplier/back/models/supplier.json index 59d23f106..90b266ba9 100644 --- a/modules/supplier/back/models/supplier.json +++ b/modules/supplier/back/models/supplier.json @@ -48,7 +48,7 @@ "isOfficial": { "type": "boolean" }, - "isSerious": { + "isReal": { "type": "boolean" }, "isTrucker": { diff --git a/modules/supplier/front/basic-data/index.html b/modules/supplier/front/basic-data/index.html index 68e635a06..fcdb2a522 100644 --- a/modules/supplier/front/basic-data/index.html +++ b/modules/supplier/front/basic-data/index.html @@ -26,7 +26,7 @@ + ng-model="$ctrl.supplier.isReal"> + ng-if="$ctrl.supplier.isReal == false">