%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /home/emtnaeewxm/www/src/EEM/VenteBundle/Form/
Upload File :
Create Path :
Current File : /home/emtnaeewxm/www/src/EEM/VenteBundle/Form/AddLigneVenteType.php

<?php

namespace EEM\VenteBundle\Form;

use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;

use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\Extension\Core\Type\HiddenType;
use Symfony\Bridge\Doctrine\Form\Type\EntityType;
use Doctrine\ORM\EntityRepository;

class AddLigneVenteType extends AbstractType
{
    /**
     * {@inheritdoc}
     */
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $type = $options['type'];
        $builder
            ->add('codeBarre', TextType::class, [
                'label' => "Code à barre",
                'required' => false,
                'attr' => [
                    'autocomplete' => 'off',
                    'placeholder' => "Code à barre"
                ],
            ])
            ->add('prixFinal', TextType::class, [
                'label' => "Prix vente",
                'required' => false,
                'attr' => [
                    'autocomplete' => 'off',
                    'placeholder' => "Prix vente"
                ],
            ])
            ->add('quantite', TextType::class, [
                'label' => "Quantité",
                'required' => false,
                'attr' => [
                    'autocomplete' => 'off',
                    'placeholder' => "Quantité"],
            ])
            ->add('article', HiddenType::class, [
                'label' => "article",
                'required' => false
            ])
            ->add('vente', HiddenType::class, [
                'label' => "vente",
                'required' => false,
            ])
            ->add('ligneVente', HiddenType::class, [
                'label' => "ligneVente",
                'required' => false,
            ])
            ->add('prixAchat', HiddenType::class, [
                'label' => "prix_achat",
                'required' => false
            ])
            ->add('qteDispo', HiddenType::class, [
                "required" => false,
            ]);
        if ($type == 'gros') {
            $builder->add('select_article', EntityType::class, [
                "required" => false,
                'class' => 'EEMArticleBundle:Article',
                'query_builder' => function (EntityRepository $er) {
                    return $er->createQueryBuilder('f')
                        ->andWhere('f.qteGros >0');
                },
                'placeholder' => 'Tous',
                'label' => 'Article',
                'choice_label' => 'articleComplet'
            ]);
        } else {
            $builder->add('select_article', EntityType::class, [
                "required" => false,
                'class' => 'EEMArticleBundle:Article',
                'query_builder' => function (EntityRepository $er) {
                    return $er->createQueryBuilder('f')
                        ->andWhere('f.qte > 0')
                        ->andWhere('f.archiver is null or f.archiver = :archiv')
                        ->setParameter('archiv', false);
                },
                'placeholder' => 'Tous',
                'label' => 'Article',
                'choice_label' => 'articleComplet'
            ]);
        }

    }

    /**
     * {@inheritdoc}
     */
    public function configureOptions(OptionsResolver $resolver)
    {
        $resolver->setDefaults(array(
            'type' => null
        ));
    }

    /**
     * {@inheritdoc}
     */
    public function getBlockPrefix()
    {
        return 'add_ligne';
    }


}

Zerion Mini Shell 1.0