src/Controller/DefaultController.php line 33

Open in your IDE?
  1. <?php
  2. namespace App\Controller;
  3. use App\Service\CommonService;
  4. use App\Service\ToolService;
  5. use PhpOffice\PhpSpreadsheet\Document\Properties as DocumentProperties;
  6. use PhpOffice\PhpSpreadsheet\Reader\Security\XmlScanner;
  7. use PhpOffice\PhpSpreadsheet\Reader\Xls\Style\Border;
  8. use PhpOffice\PhpSpreadsheet\Reader\Xlsx as XlsxReader;
  9. use PhpOffice\PhpSpreadsheet\Shared\File;
  10. use PhpOffice\PhpSpreadsheet\Spreadsheet;
  11. use PhpOffice\PhpSpreadsheet\Worksheet\Worksheet;
  12. use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
  13. use PhpOffice\PhpSpreadsheet\Writer\Xlsx as XlsxWriter;
  14. use Pimcore\Controller\FrontendController;
  15. use Pimcore\Model\Asset;
  16. use Pimcore\Model\DataObject;
  17. use Pimcore\Model\DataObject\Category;
  18. use Pimcore\Model\DataObject\CategoryParam;
  19. use Pimcore\Model\DataObject\Product;
  20. use Symfony\Component\HttpFoundation\Request;
  21. use Symfony\Component\HttpFoundation\Response;
  22. use Symfony\Component\Routing\Annotation\Route;
  23. class DefaultController extends FrontendController
  24. {
  25.     /**
  26.      * 默认页面模板
  27.      * @param Request $request
  28.      * @return Response
  29.      */
  30.     public function defaultAction(Request $request): Response
  31.     {
  32.         $dom $this->document;
  33.         $data = [
  34.             'title'=>$dom->getProperty('title'),
  35.             'css'=>$dom->getProperty('css'),
  36.         ];
  37.         $template $dom->getTemplate();
  38.         return $this->render($template?:'default/default.html.twig'$data);
  39.     }
  40.     /**
  41.      * 测试用
  42.      * 打印商品pdf-模板
  43.      * @param Request $request
  44.      * @return Response
  45.      */
  46.     public function printProductAction(Request $request): Response
  47.     {
  48.         $dom $this->document;
  49.         $id $request->query->get('pid'$dom->getProperty('pid'));
  50.         if(!$id) {
  51.             return new Response('缺少商品id');
  52.         }
  53.         $data CommonService::getProductInfo($id);
  54.         if(is_string($data)) {
  55.             return new Response($data);
  56.         }
  57.         $data['title'] = $dom->getProperty('title');
  58.         $data['css'] = $dom->getProperty('css');
  59.         return $this->render('default/default.html.twig'$data);
  60.     }
  61.     /**
  62.      * 生成报价单-返回文件url
  63.      * @Route("/getExcel")
  64.      * @return \Symfony\Component\HttpFoundation\JsonResponse
  65.      */
  66.     public function getQuotationExcelAction(Request $request)
  67.     {
  68.         $id $request->query->get('id');
  69.         $qua DataObject\Quotation::getById($id);
  70.         $res CommonService::generateExcel($qua);
  71.         return $this->redirect($res);
  72.     }
  73.     /**
  74.      * @Route("/test0")
  75.      * @param Request $request
  76.      */
  77.     public function test0Action(Request $request)
  78.     {
  79.         $file Asset::getByPath('/document/hepar.pptx');
  80.         var_dump(PIMCORE_WEB_ROOT.'/var/assets'.$file->getRealFullPath());
  81.         return $this->file(PIMCORE_WEB_ROOT.'/var/assets'.$file->getRealFullPath(), '22.pptx');
  82.     }
  83.     /**
  84.      * @Route("/test1")
  85.      * @param Request $request
  86.      */
  87.     public function test1Action(Request $request)
  88.     {
  89.         echo date('M');
  90.         echo '----';
  91.         return $this->json(date('M d, Y'));
  92.     }
  93.     /**
  94.      * @Route("/test3")
  95.      * @param Request $request
  96.      */
  97.     public function test3Action(Request $request)
  98.     {
  99.         $product Product::getById(9);
  100.         $list CommonService::getCategoryParamValues($productfalse'zh');
  101.         return $this->json($list);
  102.     }
  103. }