You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

PointSaleAdminController.php 1.9KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  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. }