Laravel.io
        const updateOrder = (id, i) => new Promise((resolve, reject) => {
            Portfolio.findOneAndUpdate({_id: id}, {order: i + 1}, function (err, data) {
                if (err) return reject(err)
                resolve();
            })
        });

        Promise.all(body.map(function (o, i) {
            return updateOrder(o, i)
        })).then(() => {
            return res.json('Success update')
        }).catch((err) => {
            return res.status(500).json(err)
        })

    }

Please note that all pasted data is publicly available.