/**
  * @param int    $offerId
  * @param string $slug
  *
  * @throws ModelNotFoundException
  *
  * @return View|RedirectResponse
  */
 public function view(int $offerId, string $slug)
 {
     /** @var Offer $offer */
     $offer = Offer::findOrFail($offerId);
     if ($offer->slug() !== $slug) {
         return $this->webUi->redirect('offer.show', [$offerId, $offer->slug()]);
     }
     $products = Product::whereHas('offers', function ($query) use($offer) {
         /* @var Builder $query */
         $query->where('id', '=', $offer->id);
     })->with(Product::standardRelations())->paginate();
     return $this->webUi->view('sales::offer.view', compact('offer', 'products'));
 }