feat: refs #8398 sendCheckingPresence #3362
|
@ -19,6 +19,7 @@ BEGIN
|
||||||
sub2.iptd futureIpt,
|
sub2.iptd futureIpt,
|
||||||
sub2.state futureState,
|
sub2.state futureState,
|
||||||
t.clientFk,
|
t.clientFk,
|
||||||
|
cl.salespersonFk,
|
||||||
t.warehouseFk,
|
t.warehouseFk,
|
||||||
ts.alertLevel,
|
ts.alertLevel,
|
||||||
sub2.alertLevel futureAlertLevel,
|
sub2.alertLevel futureAlertLevel,
|
||||||
|
@ -38,6 +39,7 @@ BEGIN
|
||||||
JOIN vn.province p ON p.id = a.provinceFk
|
JOIN vn.province p ON p.id = a.provinceFk
|
||||||
JOIN vn.country c ON c.id = p.countryFk
|
JOIN vn.country c ON c.id = p.countryFk
|
||||||
JOIN vn.ticketState ts ON ts.ticketFk = t.id
|
JOIN vn.ticketState ts ON ts.ticketFk = t.id
|
||||||
|
JOIN vn.client cl ON cl.id = t.clientFk
|
||||||
JOIN vn.state st ON st.id = ts.stateFk
|
JOIN vn.state st ON st.id = ts.stateFk
|
||||||
JOIN vn.alertLevel al ON al.id = ts.alertLevel
|
JOIN vn.alertLevel al ON al.id = ts.alertLevel
|
||||||
LEFT JOIN vn.ticketParking tp ON tp.ticketFk = t.id
|
LEFT JOIN vn.ticketParking tp ON tp.ticketFk = t.id
|
||||||
|
|
|
@ -40,6 +40,11 @@ module.exports = Self => {
|
||||||
|
|
||||||
try {
|
try {
|
||||||
for (let ticket of tickets) {
|
for (let ticket of tickets) {
|
||||||
|
if (!ticket.originId || !ticket.destinationId) continue;
|
||||||
|
|
||||||
|
await models.Sale.updateAll({ticketFk: ticket.originId}, {ticketFk: ticket.destinationId}, myOptions);
|
||||||
|
if (await models.Ticket.setDeleted(ctx, ticket.originId, myOptions)) {
|
||||||
|
if (!ticket.salesPersonFk) continue;
|
||||||
const originFullPath = `${url}ticket/${ticket.originId}/summary`;
|
const originFullPath = `${url}ticket/${ticket.originId}/summary`;
|
||||||
const destinationFullPath = `${url}ticket/${ticket.destinationId}/summary`;
|
const destinationFullPath = `${url}ticket/${ticket.destinationId}/summary`;
|
||||||
const message = $t('Ticket merged', {
|
const message = $t('Ticket merged', {
|
||||||
|
@ -50,11 +55,8 @@ module.exports = Self => {
|
||||||
originFullPath,
|
originFullPath,
|
||||||
destinationFullPath
|
destinationFullPath
|
||||||
});
|
});
|
||||||
if (!ticket.originId || !ticket.destinationId) continue;
|
await models.Chat.sendCheckingPresence(ctx, ticket.salesPersonFk, message);
|
||||||
|
}
|
||||||
await models.Sale.updateAll({ticketFk: ticket.originId}, {ticketFk: ticket.destinationId}, myOptions);
|
|
||||||
if (await models.Ticket.setDeleted(ctx, ticket.originId, myOptions))
|
|
||||||
await models.Chat.sendCheckingPresence(ctx, ticket.workerFk, message);
|
|
||||||
}
|
}
|
||||||
if (tx)
|
if (tx)
|
||||||
await tx.commit();
|
await tx.commit();
|
||||||
|
|
|
@ -7,7 +7,7 @@ describe('ticket merge()', () => {
|
||||||
destinationId: 12,
|
destinationId: 12,
|
||||||
originShipped: Date.vnNew(),
|
originShipped: Date.vnNew(),
|
||||||
destinationShipped: Date.vnNew(),
|
destinationShipped: Date.vnNew(),
|
||||||
workerFk: 1
|
salesPersonFk: 1
|
||||||
};
|
};
|
||||||
|
|
||||||
it('should merge two tickets', async() => {
|
it('should merge two tickets', async() => {
|
||||||
|
|
Loading…
Reference in New Issue