Commit 2994cad6 authored by Mat's avatar Mat

formCommande, les input sont hidden, le form est réparé >>

était cassé depuis le 'disabled => true'
parent 8eff6bdf
......@@ -116,37 +116,36 @@ class MembreController extends MasterController
$form->handleRequest($request);
/**
* POST
* POST request
*/
if ($form->isSubmitted() && $form->isValid())
{
$total = 0.0;
$total = 0;
foreach ($commande->getCommandeLegumes() as $item)
{
/**
* - on évacue les légumes qui ne sont pas sélectionnés
* - soit on calcule le prix sur base de la quantité
* - soit on calcule la quantité sur base du prix
* - soit on calcule le prix sur base de la quantité
*/
if ( $item->getQuantite() === 0.0 && $item->getPrix() === 0.0 )
if ( $item->getQuantite() === "0" && $item->getPrix() === "0" )
{
$commande->removeCommandeLegumes($item);
} else {
if ($item->getPrix() === 0.0)
if ($item->getQuantite() === "0")
{
$item->setPrix(
round($item->getPrixUnitaire() * $item->getQuantite(), 2)
);
} else {
$item->setQuantite(
round($item->getPrix() / $item->getPrixUnitaire(), 3)
);
} else {
$item->setPrix(
round($item->getPrixUnitaire() * $item->getQuantite(), 2)
);
}
$total += $item->getPrix();
}
}
$commande->setPrixTotal($total);
dump($commande);
$em = $this->getDoctrine()->getManager();
$em->persist($commande);
......
......@@ -4,8 +4,7 @@ namespace PotageBundle\Form\Membre;
use PotageBundle\Entity\CommandeLegumes;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\Extension\Core\Type\MoneyType;
use Symfony\Component\Form\Extension\Core\Type\NumberType;
use Symfony\Component\Form\Extension\Core\Type\HiddenType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
......@@ -14,14 +13,9 @@ class CommandeLegumesType extends AbstractType
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('quantite', NumberType::class, array(
'scale' => 3, //décimales
'disabled' => true,
->add('quantite', HiddenType::class, array(
))
->add('prix', MoneyType::class, array(
'currency' => 'EUR',
'scale' => 2,
'disabled' => true,
->add('prix', HiddenType::class, array(
))
;
}
......
......@@ -22,8 +22,8 @@ class CommandeType extends AbstractType
'allow_delete' => true,
))
->add('sauver', SubmitType::class, array(
'label' => 'Enregistrer',
'attr' => array('class' => 'btn btn-dark mb-2')
'label' => 'Enregistrer la commande',
'attr' => array('class' => 'btn btn-lg btn-block btn-primary mb-2')
))
;
}
......@@ -31,9 +31,11 @@ class CommandeType extends AbstractType
public function configureOptions(OptionsResolver $resolver)
{
parent::configureOptions($resolver);
$resolver->setDefault('data_class', Commande::class);
$resolver->setDefault('attr', array(
'class' => 'formulaire formulaire_commande',
$resolver->setDefaults(array(
'data_class' => Commande::class,
'attr' => array(
'class' => 'formulaire_commande',
)
));
}
......
......@@ -32,13 +32,13 @@
</tbody>
</table>
<button type="button" class="btn btn-lg btn-block btn-primary float-right">Envoyer la commande</button>
<button type="submit" id="commande_sauver" name="commande[sauver]" class="btn btn-lg btn-block btn-primary mb-2"><i class="fas fa-shopping-bag fa-fw"></i> Enregistrer la commande</button>
#}
{{ form_start(formCommande) }}
<ul id="commandeLegumes">
{% for legume in formCommande.commandeLegumes %}
<li class="formItem" data-legume-id="{{ legume.vars.data.offreLegume.id }}">
<li class="formItem hidden" data-legume-id="{{ legume.vars.data.offreLegume.id }}">
{{ form_row(legume.quantite) }}
{{ form_row(legume.prix) }}
</li>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment