refactor: refs #6802 update references from salesPersonFk to departmentFk

This commit is contained in:
Javi Gallego 2025-01-24 10:03:05 +01:00
parent 54ade6d38a
commit 8dffddfc92
9 changed files with 21 additions and 43 deletions

View File

@ -9,16 +9,16 @@ BEGIN
DECLARE vIsEktSender BOOLEAN;
IF NEW.OrderStatus = vOrderStatusDenied AND NOT (NEW.OrderStatus <=> OLD.OrderStatus) THEN
SELECT s.id INTO vSaleFk
FROM vn.sale s
FROM vn.sale s
JOIN vn.ticket t ON s.ticketFk = t.id
JOIN vn.item i ON i.id = s.itemFk
JOIN deliveryInformation di ON di.ID = NEW.deliveryInformationID
WHERE t.clientFk = NEW.EndUserPartyGLN AND t.shipped >= util.VN_CURDATE()
AND i.supplyResponseFk = NEW.supplyResponseID
LIMIT 1;
UPDATE vn.sale s
JOIN vn.ticket t ON s.ticketFk = t.id
JOIN vn.item i ON i.id = s.itemFk
@ -26,38 +26,20 @@ BEGIN
SET s.quantity = 0
WHERE t.clientFk = NEW.EndUserPartyGLN AND t.shipped >= util.VN_CURDATE()
AND i.supplyResponseFk = NEW.supplyResponseID;
INSERT INTO vn.mail (sender, `subject`, body)
SELECT IF(u.id IS NOT NULL AND c.email IS NOT NULL,
c.email,
CONCAT(account.user_getNameFromId(c.salesPersonFk), '@verdnatura.es')
),
'Producto no disponible en Floramondo',
CONCAT('El artículo ', s.concept, ' del ticket ', t.id , ' ha sido cancelado por Floramondo. ',
' Se ha actualizado la cantidad de ', OLD.quantity,' a 0. ',
IF (u.id IS NOT NULL AND c.email IS NOT NULL ,
CONCAT('https://shop.verdnatura.es/#!form=ecomerce%2Fticket&ticket=', t.id ),
CONCAT('https://salix.verdnatura.es/#!/ticket/', t.id ,'/summary')))
FROM vn.sale s
JOIN vn.ticket t ON t.id = s.ticketFk
JOIN vn.`client` c ON c.id = t.clientFk
LEFT JOIN account.user u ON u.id= c.salesPersonFk AND u.name IN ('ruben', 'ismaelalcolea')
WHERE s.id = vSaleFk;
END IF;
END IF;
IF NEW.OrderStatus = vOrderStatusOK AND NOT (NEW.OrderStatus <=> OLD.OrderStatus) THEN
SELECT v.isEktSender INTO vIsEktSender
SELECT v.isEktSender INTO vIsEktSender
FROM edi.VMPSettings v
JOIN edi.supplyResponse sr ON sr.vmpID = v.VMPID
JOIN edi.supplyResponse sr ON sr.vmpID = v.VMPID
WHERE sr.id = NEW.supplyResponseID;
IF NOT vIsEktSender THEN
CALL edi.ekt_add(NEW.id);
END IF;
IF NEW.barcode THEN
@ -66,7 +48,7 @@ BEGIN
SELECT i.id, NEW.barcode
FROM vn.item i
WHERE i.supplyResponseFk = NEW.supplyResponseID;
END IF;
END IF;

View File

@ -31,7 +31,7 @@ BEGIN
FROM tClient t
JOIN `client` c ON c.id = t.clientFk
WHERE c.isActive
AND c.salesPersonFk
AND c.departmentFk
LIMIT 1;
DROP TEMPORARY TABLE tClient;

View File

@ -20,15 +20,15 @@ BEGIN
WHERE c.typeFk = 'normal'
AND a.id IS NULL
AND u.active
AND c.created < util.VN_CURDATE() - INTERVAL vMonths MONTH
AND c.created < util.VN_CURDATE() - INTERVAL vMonths MONTH
AND NOT u.role = (SELECT id FROM `role` WHERE name = 'supplier')
AND u.id NOT IN (
SELECT DISTINCT c.id
FROM client c
LEFT JOIN ticket t ON t.clientFk = c.id
WHERE c.salesPersonFk IS NOT NULL
OR t.created > util.VN_CURDATE() - INTERVAL vMonths MONTH
OR shipped > util.VN_CURDATE() - INTERVAL vMonths MONTH
WHERE c.departmentFk IS NOT NULL
OR t.created > util.VN_CURDATE() - INTERVAL vMonths MONTH
OR shipped > util.VN_CURDATE() - INTERVAL vMonths MONTH
);
END$$
DELIMITER ;

View File

@ -44,7 +44,6 @@ BEGIN
LEFT JOIN vn.zone z ON z.id = t.zoneFk
LEFT JOIN vn.agencyMode am ON am.id = z.agencyModeFk
LEFT JOIN vn.client c ON c.id = t.clientFk
LEFT JOIN vn.worker w ON w.id = c.salesPersonFk
LEFT JOIN observation ob ON ob.ticketFk = t.id
LEFT JOIN vn.ticketParking tp ON tp.ticketFk = t.id
LEFT JOIN vn.parking p ON tp.parkingFk = p.id
@ -71,7 +70,6 @@ BEGIN
LEFT JOIN vn.zone z ON z.id = t.zoneFk
LEFT JOIN vn.agencyMode am ON am.id = z.agencyModeFk
LEFT JOIN vn.client c ON c.id = t.clientFk
LEFT JOIN vn.worker w ON w.id = c.salesPersonFk
LEFT JOIN observation ob ON ob.ticketFk = t.id
LEFT JOIN vn.ticketParking tp ON tp.ticketFk = t.id
LEFT JOIN vn.parking p ON tp.parkingFk = p.id

View File

@ -1,14 +1,12 @@
const app = require('vn-loopback/server/server');
describe('claimstate isEditable()', () => {
const salesPersonId = 18;
const claimManagerId = 72;
it('should return false if the given state does not exist', async() => {
const tx = await app.models.Claim.beginTransaction({});
try {
const options = {transaction: tx};
const ctx = {req: {accessToken: {userId: claimManagerId}}};
const result = await app.models.ClaimState.isEditable(ctx, 9999, options);
@ -26,7 +24,7 @@ describe('claimstate isEditable()', () => {
try {
const options = {transaction: tx};
const salesPersonId = 18;
const ctx = {req: {accessToken: {userId: salesPersonId}}};
const result = await app.models.ClaimState.isEditable(ctx, 3, options);

View File

@ -90,7 +90,7 @@ describe('claim regularizeClaim()', () => {
}
});
it('should send a chat message to the salesPerson when claim isPickUp is enabled', async() => {
it('should send a chat message to the department when claim isPickUp is enabled', async() => {
const tx = await models.Claim.beginTransaction({});
try {
@ -100,7 +100,7 @@ describe('claim regularizeClaim()', () => {
claimEnds = await importTicket(ticketId, claimId, userId, options);
for (claimEnd of claimEnds)
for (let claimEnd of claimEnds)
await claimEnd.updateAttributes({claimDestinationFk: okDestination}, options);
await models.Claim.regularizeClaim(ctx, claimId, options);

View File

@ -31,11 +31,11 @@ describe('Update Claim', () => {
const newClaim = await app.models.Claim.create(originalData, options);
const forbiddenState = 3;
const salesPersonId = 18;
const userId = 18;
const ctx = {
req: {
accessToken: {
userId: salesPersonId
userId
}
},
args: {

View File

@ -64,7 +64,7 @@
ng-model="$ctrl.client.salesPersonFk"
departments="['VT', 'shopping']"
show-field="nickname"
label="Salesperson"
label="Department"
vn-acl="salesAssistant">
</vn-worker-autocomplete>
<vn-autocomplete

View File

@ -24,7 +24,7 @@ describe('ticket getDepartmentMana()', () => {
try {
const options = {transaction: tx};
const mana = await models.Ticket.getDepartmentMana(99, options);
const mana = await models.Ticket.getDepartmentMana(0, options);
expect(mana).toEqual(0);