diff --git a/db/versions/11147-brownBamboo/00-firstScript.sql b/db/versions/11147-brownBamboo/00-firstScript.sql new file mode 100644 index 000000000..5a9098583 --- /dev/null +++ b/db/versions/11147-brownBamboo/00-firstScript.sql @@ -0,0 +1,2 @@ + +ALTER TABLE vn.ticketLastState MODIFY COLUMN name varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NOT NULL; diff --git a/db/versions/11147-brownBamboo/00-firstScript.vn.sql b/db/versions/11147-brownBamboo/00-firstScript.vn.sql index eb62b98b0..53737fa30 100644 --- a/db/versions/11147-brownBamboo/00-firstScript.vn.sql +++ b/db/versions/11147-brownBamboo/00-firstScript.vn.sql @@ -1,5 +1,5 @@ -- Place your SQL code here -INSERT INTO vn.state ( name, `order`, alertLevel, code, sectorProdPriority, nextStateFk, isPreviousPreparable, isPicked, isPreparable, semaphore, isPrintable, isOK, graphCategory, isNotValidated, classColor) VALUES('Entregado en parte', 13, 3, 'PARTIALLY_DELIVERED', NULL, 16, 0, 1, 0, 0, 0, 0, 0, 0, NULL); +INSERT INTO vn.state ( name, `order`, alertLevel, code, sectorProdPriority, nextStateFk, isPreviousPreparable, isPicked, isPreparable, semaphore, isPrintable, isOK, graphCategory, isNotValidated, classColor) VALUES('Entregado en parte', 13, 3, 'PARTIAL_DELIVERED', NULL, 16, 0, 1, 0, 0, 0, 0, 0, 0, NULL); diff --git a/modules/ticket/back/methods/ticket/saveSign.js b/modules/ticket/back/methods/ticket/saveSign.js index f90cc72c2..a76395c77 100644 --- a/modules/ticket/back/methods/ticket/saveSign.js +++ b/modules/ticket/back/methods/ticket/saveSign.js @@ -143,7 +143,7 @@ module.exports = Self => { const [{stateForTicket}] = await Self.rawSql(` SELECT IF((SUM(CASE WHEN est.code = 'DELIVERED' THEN 1 ELSE 0 END) = COUNT(*)), - 'DELIVERED','PARTIALLYDELIVERED') stateForTicket + 'DELIVERED','PARTIAL_DELIVERED') stateForTicket FROM vn.expedition e JOIN vn.expeditionStateType est ON est.id = e.stateTypeFk WHERE e.ticketFk = ?; diff --git a/modules/ticket/back/methods/ticket/specs/saveSign.spec.js b/modules/ticket/back/methods/ticket/specs/saveSign.spec.js index df7c13aad..23c09c184 100644 --- a/modules/ticket/back/methods/ticket/specs/saveSign.spec.js +++ b/modules/ticket/back/methods/ticket/specs/saveSign.spec.js @@ -8,7 +8,7 @@ describe('Ticket saveSign()', () => { accessToken: {userId: 9} }}; - fit(`should throw error if the ticket's alert level is lower than 2`, async() => { + it(`should throw error if the ticket's alert level is lower than 2`, async() => { const tx = await models.TicketDms.beginTransaction({}); const ticketWithOkState = 12; let error; @@ -27,31 +27,35 @@ describe('Ticket saveSign()', () => { expect(error).toBeDefined(); }); - fit('should change state for ticket', async() => { - const tx = await models.TicketDms.beginTransaction({}); - const ticketWithOkState = 12; + it('should change state for ticket', async() => { + const tx = await models.State.beginTransaction({}); + const ticketWithOkState = 7; const ticketStateId = 16; - const ticketCode = 'PARTIALLY_DELIVERED'; + const ticketCode = 'PARTIAL_DELIVERED'; + spyOn(models.Dms, 'uploadFile').and.returnValue([{id: 1}]); + let ticketTrackingAfter; try { const options = {transaction: tx}; const tickets = [ticketWithOkState]; - const state = await models.State.findById(ticketStateId); + + const state = await models.State.findById(ticketStateId, null, options); await state.updateAttributes({ - code: ticketCode - }, options); - const ticketState = await models.TicketTracking.findById(ticketStateId); - await ticketState.updateAttributes({ - code: ticketCode + code: ticketCode, + name: ticketCode + }, options); + + await models.Ticket.saveSign(ctx, tickets, null, null, options); + ticketTrackingAfter = await models.TicketLastState.findOne({ + where: {ticketFk: ticketWithOkState} }, options); - await models.Ticket.saveSign(ctx, tickets, options); await tx.rollback(); } catch (e) { await tx.rollback(); throw e; } - expect(ticket.toEqual('DELIVERED')); + expect(ticketTrackingAfter.name).toBe('PARTIAL_DELIVERED'); }); });