Gestion des points de fabrication. Le boulanger peut définir dans le backend quel point de vente correspond à son lieu de production.prodstable
@@ -79,6 +79,7 @@ class PointVenteController extends BackendController | |||
$model = new PointVente(); | |||
if ($model->load(Yii::$app->request->post()) && $model->save()) { | |||
$model->gestionPointFabrication() ; | |||
return $this->redirect(['index']); | |||
} else { | |||
return $this->render('create', [ | |||
@@ -98,6 +99,7 @@ class PointVenteController extends BackendController | |||
$model = $this->findModel($id); | |||
if ($model->load(Yii::$app->request->post()) && $model->save()) { | |||
$model->gestionPointFabrication() ; | |||
return $this->redirect(['index']); | |||
} else { | |||
return $this->render('update', [ |
@@ -12,9 +12,9 @@ use yii\widgets\ActiveForm; | |||
<?php $form = ActiveForm::begin(); ?> | |||
<?php //$form->field($model, 'point_fabrication')->checkbox() ?> | |||
<?= $form->field($model, 'point_fabrication')->checkbox()->hint('Cochez cette case si ce point de vente correspond à votre lieu de production.') ?> | |||
<?= $form->field($model, 'nom')->textInput(['maxlength' => 255]) ?> | |||
<?= $form->field($model, 'localite')->textInput(['maxlength' => 255]) ?> | |||
<?= $form->field($model, 'localite')->textInput(['maxlength' => 255]) ?> | |||
<?= $form->field($model, 'adresse')->textarea(['rows' => 6]) ?> | |||
<h2>Horaires</h2> |
@@ -18,6 +18,20 @@ $this->params['breadcrumbs'][] = $this->title; | |||
'columns' => [ | |||
'nom', | |||
'localite', | |||
[ | |||
'attribute' => 'point_fabrication', | |||
'format' => 'raw', | |||
'value' => function($model) { | |||
if($model->point_fabrication) | |||
{ | |||
return '<span class="label label-success">Oui</span>' ; | |||
} | |||
else { | |||
return '<span class="label label-danger">Non</span>' ; | |||
} | |||
} | |||
], | |||
[ | |||
'class' => 'yii\grid\ActionColumn', | |||
'template' => '{update} {delete}', |
@@ -111,4 +111,17 @@ class PointVente extends \yii\db\ActiveRecord | |||
$this->pain = 1 ; | |||
return parent::save($runValidation, $attributeNames) ; | |||
} | |||
public function gestionPointFabrication() | |||
{ | |||
if($this->point_fabrication) | |||
{ | |||
PointVente::updateAll( | |||
['point_fabrication' => 0], | |||
['id_etablissement' => $this->id_etablissement] | |||
) ; | |||
$this->point_fabrication = 1 ; | |||
$this->save() ; | |||
} | |||
} | |||
} |