Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

54 lines
1.9KB

  1. <?php
  2. namespace Lc\CaracoleBundle\Controller\PointSale;
  3. use EasyCorp\Bundle\EasyAdminBundle\Field\FormField;
  4. use EasyCorp\Bundle\EasyAdminBundle\Field\NumberField;
  5. use EasyCorp\Bundle\EasyAdminBundle\Field\TextField;
  6. use Lc\CaracoleBundle\Controller\AdminControllerTrait;
  7. use Lc\CaracoleBundle\Factory\PointSale\PointSaleFactory;
  8. use Lc\CaracoleBundle\Field\Address\AddressField;
  9. use Lc\CaracoleBundle\Resolver\MerchantResolver;
  10. use Lc\SovBundle\Controller\AbstractAdminController;
  11. use Lc\SovBundle\Field\BooleanField;
  12. use Lc\SovBundle\Field\StatusField;
  13. abstract class PointSaleAdminController extends AbstractAdminController
  14. {
  15. use AdminControllerTrait;
  16. public function configureFields(string $pageName): iterable
  17. {
  18. return array_merge(
  19. [
  20. FormField::addPanel('general'),
  21. TextField::new('title'),
  22. NumberField::new('orderAmountMin')
  23. ->setCustomOption('appendHtml','€')
  24. ->hideOnIndex(),
  25. NumberField::new('deliveryPrice')
  26. ->setCustomOption('appendHtml','€')
  27. ->hideOnIndex(),
  28. BooleanField::new('isPublic'),
  29. BooleanField::new('isDepository'),
  30. StatusField::new('status')
  31. ->hideOnIndex(),
  32. FormField::addPanel('address'),
  33. AddressField::new('address')
  34. ->setRequired(true)
  35. ],
  36. $this->getSeoPanel(),
  37. $this->getConfPanel(),
  38. );
  39. }
  40. public function createEntity(string $entityFqcn)
  41. {
  42. $pointSaleFactory = new PointSaleFactory();
  43. return $pointSaleFactory
  44. ->setMerchant($this->get(MerchantResolver::class)->getCurrent())
  45. ->create();
  46. }
  47. }