Browse Source

Ajout d'un champs "infos_commande" affiché au client lors de sa commande

Ce champs est modifiable dans les paramètres du producteur.
master
keun 7 years ago
parent
commit
5bf1feb7e7
6 changed files with 72 additions and 33 deletions
  1. +5
    -0
      backend/views/etablissement/update.php
  2. +4
    -4
      common/models/Etablissement.php
  3. +18
    -0
      console/migrations/m170616_112800_add_champs_info_commande.php
  4. +5
    -1
      frontend/controllers/CommandeController.php
  5. +39
    -28
      frontend/views/commande/_form.php
  6. +1
    -0
      frontend/views/commande/create.php

+ 5
- 0
backend/views/etablissement/update.php View File

echo '<input type="checkbox" name="delete_photo" id="delete_photo" /> <label for="delete_photo">Supprimer la photo</label><br /><br />'; echo '<input type="checkbox" name="delete_photo" id="delete_photo" /> <label for="delete_photo">Supprimer la photo</label><br /><br />';
} }
?> ?>
<?= $form->field($model, 'infos_commande')
->textarea(['rows' => 6])
->hint('Affichées au client lors de sa commande')?>
<div class="form-group"> <div class="form-group">
<?= Html::submitButton('Mettre à jour', ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']) ?> <?= Html::submitButton('Mettre à jour', ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']) ?>
</div> </div>

+ 4
- 4
common/models/Etablissement.php View File

$this->addError($attribute, 'Ce code est déjà utilisé par un autre producteur.'); $this->addError($attribute, 'Ce code est déjà utilisé par un autre producteur.');
} }
}], }],
[['description'], 'string'],
[['description','infos_commande'], 'string'],
[['solde_negatif', 'credit_pain','actif'], 'boolean'], [['solde_negatif', 'credit_pain','actif'], 'boolean'],
[['nom', 'siret', 'logo', 'photo', 'code_postal', 'ville','code'], 'string', 'max' => 255], [['nom', 'siret', 'logo', 'photo', 'code_postal', 'ville','code'], 'string', 'max' => 255],
['prix_libre','double'],
['prix_libre','required'],
['prix_libre','double'],
['prix_libre', 'compare', 'compareValue' => 0, 'operator' => '>=', 'type' => 'number','message' => 'Prix libre doit être supérieur ou égal à 0'], ['prix_libre', 'compare', 'compareValue' => 0, 'operator' => '>=', 'type' => 'number','message' => 'Prix libre doit être supérieur ou égal à 0'],
]; ];
'solde_negatif' => 'Solde négatif', 'solde_negatif' => 'Solde négatif',
'credit_pain' => 'Crédit pain', 'credit_pain' => 'Crédit pain',
'actif' => 'Actif', 'actif' => 'Actif',
'date_creation' => 'Date de création'
'date_creation' => 'Date de création',
'infos_commande' => 'Informations'
]; ];
} }

+ 18
- 0
console/migrations/m170616_112800_add_champs_info_commande.php View File

<?php

use yii\db\Migration;
use yii\db\Schema;

class m170616_112800_add_champs_info_commande extends Migration
{
public function up()
{
$this->addColumn('etablissement', 'infos_commande', Schema::TYPE_TEXT.' DEFAULT NULL') ;
}

public function down()
{
$this->dropColumn('etablissement', 'infos_commande') ;
}

}

+ 5
- 1
frontend/controllers/CommandeController.php View File

} }
} }
// etablissement
$etablissement = Etablissement::findOne($id_etablissement) ;
// points de vente // points de vente
$points_vente = PointVente::find() $points_vente = PointVente::find()
->with('pointVenteUser') ->with('pointVenteUser')
'produits_vrac' => $produits_vrac, 'produits_vrac' => $produits_vrac,
'etablissements' => $etablissements, 'etablissements' => $etablissements,
'id_etablissement' => $id_etablissement, 'id_etablissement' => $id_etablissement,
'etablissement' => $etablissement,
'etablissement_paiement_ok' => $etablissement_paiement_ok, 'etablissement_paiement_ok' => $etablissement_paiement_ok,
'credit' => $credit 'credit' => $credit
]; ];
} }


return $this->render('create', array_merge(self::initForm($commande), [ return $this->render('create', array_merge(self::initForm($commande), [
'model' => $commande,
'model' => $commande
])); ]));
} }



+ 39
- 28
frontend/views/commande/_form.php View File

<?php if($id_etablissement && $etablissement_paiement_ok): ?> <?php if($id_etablissement && $etablissement_paiement_ok): ?>
<h2 id="step-choix-date">Date de commande</h2>
<div class="col-md-6">
<h2 id="step-choix-date">Date de commande</h2>
<?= $form->field($model, 'id_production')->label('')->hiddenInput(); ?>


<?= $form->field($model, 'id_production')->label('')->hiddenInput(); ?>
<?php if (isset($model->id)): ?>
<div class="date-commande"><span><?php echo date('d/m/Y', strtotime($production->date)); ?></span></div>
<?= Html::hiddenInput('id_commande', $model->id,['id'=>'id-commande']); ?>
<?= Html::hiddenInput('montant_paye', $model->getMontantPaye(),['id'=>'montant-paye']); ?>
<?php endif; ?>


<?php if (isset($model->id)): ?>
<div class="date-commande"><span><?php echo date('d/m/Y', strtotime($production->date)); ?></span></div>
<?= Html::hiddenInput('id_commande', $model->id,['id'=>'id-commande']); ?>
<?= Html::hiddenInput('montant_paye', $model->getMontantPaye(),['id'=>'montant-paye']); ?>
<?php endif; ?>
<div id="datepicker-production" <?php if (isset($model->id)): ?>style="display:none"<?php endif; ?>>
</div>


<div id="datepicker-production" <?php if (isset($model->id)): ?>style="display:none"<?php endif; ?>>
</div>
<?php if (!isset($model->id)): ?>
<br />
<?php endif; ?>
<div id="dates" style="display:none;">
<?php
foreach ($jours_production as $id_production => $j) {
if ($j != '--') {
echo '<div><span class="date">' . $j . '</span><span class="id_production">' . $id_production . '</span></div>';
<?php if (!isset($model->id)): ?>
<br />
<?php endif; ?>

<div id="dates" style="display:none;">
<?php
foreach ($jours_production as $id_production => $j) {
if ($j != '--') {
echo '<div><span class="date">' . $j . '</span><span class="id_production">' . $id_production . '</span></div>';
}
} }
}
?>
</div>
?>
</div>

<div class="clr"></div>
<div id="commandes-en-cours" style="display:none;">
<?php foreach ($commandes_en_cours as $c): ?>
<?php echo '<div class="commande" data-idproduction="' . $c->id_production . '" data-id="' . $c->id . '" data-href="' . Yii::$app->urlManager->createUrl(['commande/update', 'id' => $c->id, 'id_etablissement' => $c->production->id_etablissement]) . '"></div>'; ?>
<?php endforeach; ?>
</div>
<div id="has-commande-en-cours" style="display:none;" class="alert alert-danger">Vous avez déjà une commande en cours pour cette date. <a href="#">Cliquez ici</a> pour la modifier.</div>


<div class="clr"></div>
<div id="commandes-en-cours" style="display:none;">
<?php foreach ($commandes_en_cours as $c): ?>
<?php echo '<div class="commande" data-idproduction="' . $c->id_production . '" data-id="' . $c->id . '" data-href="' . Yii::$app->urlManager->createUrl(['commande/update', 'id' => $c->id, 'id_etablissement' => $c->production->id_etablissement]) . '"></div>'; ?>
<?php endforeach; ?>
</div> </div>
<div id="has-commande-en-cours" style="display:none;" class="alert alert-danger">Vous avez déjà une commande en cours pour cette date. <a href="#">Cliquez ici</a> pour la modifier.</div>
<div class="col-md-6">
<?php if(strlen($etablissement->infos_commande)): ?>
<h2>Infos du producteur</h2>
<div id="infos-commande">
<?= Html::encode($etablissement->infos_commande) ?>
</div>
<?php endif; ?>
</div>


<div class="clr"></div> <div class="clr"></div>



+ 1
- 0
frontend/views/commande/create.php View File

'produits_vrac' => $produits_vrac, 'produits_vrac' => $produits_vrac,
'etablissements' => $etablissements, 'etablissements' => $etablissements,
'id_etablissement' => $id_etablissement, 'id_etablissement' => $id_etablissement,
'etablissement' => $etablissement,
'etablissement_paiement_ok' => $etablissement_paiement_ok, 'etablissement_paiement_ok' => $etablissement_paiement_ok,
'credit' => $credit 'credit' => $credit
]) ?> ]) ?>

Loading…
Cancel
Save