%PDF- %PDF-
Mini Shell

Mini Shell

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

<?php

namespace EEM\TraiteBundle\Form;

use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
use Symfony\Bridge\Doctrine\Form\Type\EntityType;
use Symfony\Component\Form\Extension\Core\Type\DateType;
use Symfony\Component\Form\Extension\Core\Type\TextareaType;
use Doctrine\ORM\EntityRepository;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\Extension\Core\Type\HiddenType;
use Symfony\Component\Validator\Constraints\NotBlank;

class TraiteType extends AbstractType
{
    /**
     * {@inheritdoc}
     */
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder
            ->add('dateTraite', DateType::class, [
                'label' => "Date",
                'required' => false,
                'widget' => 'single_text',
                'format' => 'dd/MM/yyyy',
                'attr' => [
                    'autocomplete' => 'off',
                    'placeholder' => "Date",
                    'class' => 'datepicker'],
                'constraints' => [
                    new NotBlank(['message' => 'Précissez la date de traite'])
                ]
            ])
            ->add('dateEcheance', DateType::class, [
                'label' => "Date 1er écheance",
                'required' => false,
                'widget' => 'single_text',
                'format' => 'dd/MM/yyyy',
                'attr' => [
                    'autocomplete' => 'off',
                    'placeholder' => "Date 1er écheance",
                    'class' => 'datepicker'],
                'constraints' => [
                    new NotBlank(['message' => "Précissez la date du 1er écheance"])
                ]
            ])
            ->add('note', TextAreaType::class, [
                    'label' => "Note",
                    'required' => false,
                    'attr' => [
                        'autocomplete' => 'off',
                        'placeholder' => "Note"],
                ]
            )
            ->add('montantVente', TextType::class, [
                'label' => "Prix vente",
                'required' => false,
                'attr' => [
                    'autocomplete' => 'off',
                    'placeholder' => "Prix vente"],
                'constraints' => [
                    new NotBlank(['message' => "Le montant de vente est obligatoire"])
                ]
            ])
            ->add('montantAvance', TextType::class, [
                    'label' => "Avance",
                    'required' => false,
                    'attr' => [
                        'autocomplete' => 'off',
                        'placeholder' => "Avance"],
                    'constraints' => [
                        new NotBlank(['message' => "Le montant d'avance est obligatoire"])
                    ]
                ])
            ->add('article', EntityType::class, [
                "required" => false,
                'class' => 'EEMArticleBundle:Article',
                'query_builder' => function (EntityRepository $er) {
                    return $er->createQueryBuilder('f')
                        ->andWhere('f.famille = :famille')
                        ->setParameter('famille',1)
         ->andWhere('f.archiver is null or f.archiver = :archiv')
            ->setParameter('archiv',false);
                },
                'placeholder' => 'Tous',
                'label' => 'Article',
                'choice_label' => 'articleComplet',
                'attr' => [
                    'class' => 'select_article_traite'
                ],
                'constraints' => [
                    new NotBlank(['message' => 'Choisissez un article'])
                ]
            ])
            ->add('client', EntityType::class, [
                "required" => false,
                'class' => 'EEMTraiteBundle:Client',
                'query_builder' => function (EntityRepository $er) {
                    return $er->createQueryBuilder('c')
                        ->orderBy('c.prenom', 'ASC')
                        ->orderBy('c.nom', 'ASC');
                },
                'placeholder' => 'Tous',
                'label' => 'Client',
                'choice_label' => 'prenomNom',
                'attr' => [
                    'class' => 'select_client_traite'
                ],
                'constraints' => [
                    new NotBlank(['message' => 'Choisissez un client'])
                ]
            ])
            ->add('nbTraite', HiddenType::class, [
                'label' => false,
                'required' => false
            ]);
    }

    /**
     * {@inheritdoc}
     */
    public function configureOptions(OptionsResolver $resolver)
    {
        $resolver->setDefaults(array(
            'data_class' => 'EEM\TraiteBundle\Entity\Traite'
        ));
    }

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


}

Zerion Mini Shell 1.0