module.exports = Self => { Self.remoteMethodCtx('getFromSectorCollection', { description: 'Get sales from sector collection', accessType: 'READ', accepts: [ { arg: 'sectorCollectionFk', type: 'number', required: true, }, { arg: 'sectorFk', type: 'number', required: true } ], returns: { type: ['object'], root: true }, http: { path: `/getFromSectorCollection`, verb: 'GET' }, }); Self.getFromSectorCollection = async(ctx, sectorCollectionFk, sectorFk, options) => { const userId = ctx.req.accessToken.userId; const myOptions = {userId}; if (typeof options == 'object') Object.assign(myOptions, options); const [sales] = await Self.rawSql('CALL sectorCollection_getSale(?)', [sectorCollectionFk], myOptions); const itemShelvings = []; for (let sale of sales) { const [carros] = await Self.rawSql( 'CALL vn.itemPlacementSupplyStockGetTargetList(?, ?)', [sale.itemFk, sectorFk], myOptions ); itemShelvings.push({ id: sale.ticketFk, itemFk: sale.itemFk, longName: sale.longName, packingType: sale.itemPackingTypeFk, subName: sale.subName, quantity: sale.quantity, saldo: sale.quantity, trabajador: sale.workerCode, idMovimiento: sale.saleFk, salesPersonFk: sale.salesPersonFk, picked: sale.pickedQuantity, carros }); } return itemShelvings; }; };