Merge branch 'master' into test
gitea/salix/pipeline/head This commit looks good Details

This commit is contained in:
Guillermo Bonet 2024-12-02 13:06:47 +01:00
commit b67585137a
3 changed files with 35 additions and 7 deletions

View File

@ -0,0 +1,32 @@
DELIMITER $$
CREATE OR REPLACE DEFINER=`vn`@`localhost` FUNCTION `vn`.`buy_getLastWithoutInventory`(
vItemFk INT,
vWarehouseFk INT
)
RETURNS int(11)
DETERMINISTIC
BEGIN
/**
* Retorna la última compra que no sea inventario.
*
* @param vItemFk Id del artículo
* @param vWarehouseFk Id del almacén
* @return Id de compra
*/
DECLARE vBuyFk INT;
SELECT b.id INTO vBuyFk
FROM buy b
JOIN entry e ON e.id = b.entryFk
JOIN travel t ON t.id = e.travelFk
WHERE e.id <> (SELECT defaultEntry FROM entryConfig)
AND e.supplierFk <> (SELECT supplierFk FROM inventoryConfig)
AND e.typeFk <> 'inventory'
AND b.itemFk = vItemFk
AND (t.warehouseInFk = vWarehouseFk OR t.warehouseInFk IS NULL)
ORDER BY ABS(DATEDIFF(util.VN_CURDATE(), t.landed)), e.created DESC
LIMIT 1;
RETURN vBuyFk;
END$$
DELIMITER ;

View File

@ -387,10 +387,10 @@ class Controller extends Section {
} }
newOrderFromTicket() { newOrderFromTicket() {
this.$http.post(`Orders/newFromTicket`, {ticketFk: this.ticket.id}).then(res => { this.$http.post(`Orders/newFromTicket`, {ticketFk: this.ticket.id}).then(async res => {
const path = this.$state.href('order.card.catalog', {id: res.data}); const path = await this.vnApp.getUrl(`order/${res.data}/catalog`);
window.open(path, '_blank');
window.open(path, '_blank');
this.vnApp.showSuccess(this.$t('Order created')); this.vnApp.showSuccess(this.$t('Order created'));
}); });
} }

View File

@ -567,14 +567,10 @@ describe('Ticket', () => {
const expectedResponse = {id: 123}; const expectedResponse = {id: 123};
window.open = jasmine.createSpy('open'); window.open = jasmine.createSpy('open');
controller.$state.href = jasmine.createSpy('href')
.and.returnValue('/somePath');
$httpBackend.expect('POST', `Orders/newFromTicket`, expectedParams).respond(expectedResponse); $httpBackend.expect('POST', `Orders/newFromTicket`, expectedParams).respond(expectedResponse);
controller.newOrderFromTicket(); controller.newOrderFromTicket();
$httpBackend.flush(); $httpBackend.flush();
expect(window.open).toHaveBeenCalledWith('/somePath', '_blank');
}); });
}); });