|
|
|
@@ -10,6 +10,7 @@ namespace App\Controller; |
|
|
|
use App\Entity\Catalogue; |
|
|
|
use App\Entity\User; |
|
|
|
use App\Entity\UserType; |
|
|
|
use App\Entity\UserWorksheet; |
|
|
|
use App\Repository\UserRepository; |
|
|
|
use App\Repository\UserTypeRepository; |
|
|
|
use App\Utils\Utils; |
|
|
|
@@ -21,6 +22,7 @@ use Symfony\Component\HttpFoundation\Request; |
|
|
|
use Symfony\Component\Mailer\Exception\TransportExceptionInterface; |
|
|
|
use Symfony\Component\Mailer\MailerInterface; |
|
|
|
use Symfony\Component\Routing\Annotation\Route; |
|
|
|
use Twig\Environment; |
|
|
|
|
|
|
|
/** |
|
|
|
* @Security("is_granted('ROLE_ADMIN')") |
|
|
|
@@ -219,25 +221,18 @@ class AdminController extends AbstractController |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* @Route("/get-user-catalogue/{catalogueId}", name="admin_user_catalogue", methods={"GET"}) |
|
|
|
* |
|
|
|
* @param Request $request |
|
|
|
* @param $catalogueId |
|
|
|
* @return \Symfony\Component\HttpFoundation\JsonResponse |
|
|
|
* @throws \Twig\Error\LoaderError |
|
|
|
* @throws \Twig\Error\RuntimeError |
|
|
|
* @throws \Twig\Error\SyntaxError |
|
|
|
* @Route("/get-user-catalogue/{userWorksheetId}", name="admin_user_worksheet", methods={"GET"}) |
|
|
|
*/ |
|
|
|
public function getUserCatalogue(Request $request, $catalogueId) |
|
|
|
public function getUserCatalogue(Environment $twig, $userWorksheetId) |
|
|
|
{ |
|
|
|
/** @var Catalogue $catalogue */ |
|
|
|
$catalogue = $this->getDoctrine()->getRepository(Catalogue::class)->find($catalogueId); |
|
|
|
if ($catalogue === null || !$catalogue->getFinished()) { |
|
|
|
return $this->json('Katalog exitiert nicht oder ist nicht abgeschlossen', 409); |
|
|
|
/** @var UserWorksheet $worksheet */ |
|
|
|
$worksheet = $this->getDoctrine()->getRepository(UserWorksheet::class)->find($userWorksheetId); |
|
|
|
if ($worksheet === null) { |
|
|
|
return $this->json('Katalog exitiert nicht', 409); |
|
|
|
} |
|
|
|
$dompdf = UserRepository::renderCatalogue($this->get('twig'), $catalogue); |
|
|
|
$dompdf = UserRepository::renderCatalogue($twig, $worksheet); |
|
|
|
// Output the generated PDF to Browser (force download) |
|
|
|
$fileName = "Fragenkatalog_".$catalogue->getUser()->getId()."_".$catalogue->getFinishDate()->format('Y-m-d_H-i'); |
|
|
|
$fileName = "Arbeitsblatt_".$worksheet->getUser()->getId()."_".$worksheet->getCreationDate()->format('Y-m-d_H-i'); |
|
|
|
$dompdf->stream($fileName, [ |
|
|
|
"Attachment" => true |
|
|
|
]); |
|
|
|
|