diff --git a/db/changes/10490-august/00-sale_afterUpdate.sql b/db/changes/10490-august/00-sale_afterUpdate.sql
new file mode 100644
index 000000000..407fb52c9
--- /dev/null
+++ b/db/changes/10490-august/00-sale_afterUpdate.sql
@@ -0,0 +1,100 @@
+DROP TRIGGER IF EXISTS vn.sale_afterUpdate;
+USE vn;
+
+DELIMITER $$
+$$
+CREATE DEFINER=`root`@`localhost` TRIGGER `vn`.`sale_afterUpdate`
+ AFTER UPDATE ON `sale`
+ FOR EACH ROW
+BEGIN
+ DECLARE vIsToSendMail BOOL;
+ DECLARE vPickedLines INT;
+ DECLARE vCollectionFk INT;
+ DECLARE vUserRole VARCHAR(255);
+
+ IF !(NEW.id <=> OLD.id)
+ OR !(NEW.ticketFk <=> OLD.ticketFk)
+ OR !(NEW.itemFk <=> OLD.itemFk)
+ OR !(NEW.quantity <=> OLD.quantity)
+ OR !(NEW.created <=> OLD.created)
+ OR !(NEW.isPicked <=> OLD.isPicked) THEN
+ CALL stock.log_add('sale', NEW.id, OLD.id);
+ END IF;
+
+ IF !(NEW.price <=> OLD.price)
+ OR !(NEW.ticketFk <=> OLD.ticketFk)
+ OR !(NEW.itemFk <=> OLD.itemFk)
+ OR !(NEW.quantity <=> OLD.quantity)
+ OR !(NEW.discount <=> OLD.discount) THEN
+ CALL ticket_requestRecalc(NEW.ticketFk);
+ CALL ticket_requestRecalc(OLD.ticketFk);
+ END IF;
+
+ IF !(OLD.ticketFk <=> NEW.ticketFk) THEN
+ UPDATE ticketRequest SET ticketFk = NEW.ticketFk
+ WHERE saleFk = NEW.id;
+ END IF;
+
+ SELECT account.myUser_getName() INTO vUserRole;
+ SELECT account.user_getMysqlRole(vUserRole) INTO vUserRole;
+
+ IF !(OLD.quantity <=> NEW.quantity) THEN
+ SELECT COUNT(*) INTO vIsToSendMail
+ FROM vncontrol.inter i
+ JOIN vn.state s ON s.id = i.state_id
+ WHERE s.code='PACKED'
+ AND i.Id_Ticket = OLD.ticketFk
+ AND vUserRole IN ('salesPerson', 'salesTeamBoss')
+ LIMIT 1;
+
+ IF vIsToSendMail THEN
+ CALL vn.mail_insert('jefesventas@verdnatura.es',
+ 'noreply@verdnatura.es',
+ CONCAT('Ticket ', OLD.ticketFk ,' modificada cantidad tras encajado'),
+ CONCAT('Ticket ', OLD.ticketFk ,'.
',
+ 'Modificada la catidad de ', OLD.quantity, ' a ' , NEW.quantity,
+ ' del artículo ', OLD.itemFk, ' tras estado encajado del ticket.
',
+ 'Este email se ha generado automáticamente' )
+ );
+ END IF;
+ IF (OLD.quantity > NEW.quantity) THEN
+ INSERT INTO saleComponent(saleFk, componentFk, value)
+ SELECT NEW.id, cm.id, sc.value
+ FROM saleComponent sc
+ JOIN component cd ON cd.id = sc.componentFk
+ JOIN component cm ON cm.code = 'mana'
+ WHERE saleFk = NEW.id AND cd.code = 'lastUnitsDiscount'
+ ON DUPLICATE KEY UPDATE value = sc.value + VALUES(value);
+
+ DELETE sc.*
+ FROM vn.saleComponent sc
+ JOIN component c ON c.id = sc.componentFk
+ WHERE saleFk = NEW.id AND c.code = 'lastUnitsDiscount';
+ END IF;
+ INSERT IGNORE INTO `vn`.`routeRecalc` (`routeFk`)
+ SELECT r.id
+ FROM vn.sale s
+ JOIN vn.ticket t ON t.id = s.ticketFk
+ JOIN vn.route r ON r.id = t.routeFk
+ WHERE r.isOk = FALSE
+ AND s.id = NEW.id
+ AND r.created >= CURDATE()
+ GROUP BY r.id;
+ END IF;
+
+ IF !(ABS(NEW.isPicked) <=> ABS(OLD.isPicked)) AND NEW.quantity > 0 THEN
+
+ UPDATE vn.collection c
+ JOIN vn.ticketCollection tc ON tc.collectionFk = c.id AND tc.ticketFk = NEW.ticketFk
+ SET c.salePickedCount = c.salePickedCount + IF(NEW.isPicked != 0, 1, -1);
+
+ END IF;
+
+ IF !(NEW.quantity <=> OLD.quantity) AND (NEW.quantity = 0 OR OLD.quantity = 0) THEN
+
+ UPDATE vn.collection c
+ JOIN vn.ticketCollection tc ON tc.collectionFk = c.id AND tc.ticketFk = NEW.ticketFk
+ SET c.saleTotalCount = c.saleTotalCount + IF(OLD.quantity = 0, 1, -1);
+ END IF;
+END$$
+DELIMITER ;
diff --git a/db/changes/10490-august/delete.keep b/db/changes/10490-august/delete.keep
deleted file mode 100644
index e69de29bb..000000000
diff --git a/modules/claim/front/search-panel/index.html b/modules/claim/front/search-panel/index.html
index d522763a1..eec8cd727 100644
--- a/modules/claim/front/search-panel/index.html
+++ b/modules/claim/front/search-panel/index.html
@@ -28,7 +28,7 @@
url="Workers/activeWithRole"
search-function="{firstName: $search}"
value-field="id"
- where="{role: {inq: ['salesBoss', 'salesPerson', 'officeBoss']}}"
+ where="{role: {inq: ['salesTeamBoss', 'salesPerson', 'officeBoss']}}"
label="Salesperson">
{{firstName}} {{name}}
@@ -38,7 +38,7 @@
url="Workers/activeWithRole"
search-function="{firstName: $search}"
value-field="id"
- where="{role: {inq: ['salesBoss', 'salesPerson']}}"
+ where="{role: {inq: ['salesTeamBoss', 'salesPerson']}}"
label="Attended by">
{{firstName}} {{name}}