Kaynağa Gözat

Ajout commentaires + indentation controllers producer

dev
Guillaume Bourgeois 6 yıl önce
ebeveyn
işleme
255db81453
3 değiştirilmiş dosya ile 112 ekleme ve 33 silme
  1. +79
    -16
      producer/controllers/CommandeController.php
  2. +16
    -5
      producer/controllers/ProducerBaseController.php
  3. +17
    -12
      producer/controllers/SiteController.php

+ 79
- 16
producer/controllers/CommandeController.php Dosyayı Görüntüle

@@ -38,9 +38,11 @@ termes.

namespace producer\controllers;

class CommandeController extends ProducerBaseController {
class CommandeController extends ProducerBaseController
{

public function behaviors() {
public function behaviors()
{
return [
'access' => [
'class' => AccessControl::className(),
@@ -54,8 +56,15 @@ class CommandeController extends ProducerBaseController {
];
}

public function actionInfosProduction($id_production) {

/**
* Retourne au format JSON toutes les informations relatives à une
* production donnée.
*
* @param integer $id_production
* @return mixed
*/
public function actionInfosProduction($id_production)
{
$production = Production::findOne($id_production);

if ($production) {
@@ -90,6 +99,12 @@ class CommandeController extends ProducerBaseController {
return json_encode([]);
}

/**
* Initialise le formulaire de création/modification de commande.
*
* @param Commande $commande
* @return array
*/
public function initForm($commande = null) {

// etablissements
@@ -207,8 +222,8 @@ class CommandeController extends ProducerBaseController {
*
* @return ProducerView
*/
public function actionHistorique() {
public function actionHistorique()
{
$data_provider_commandes = new ActiveDataProvider([
'query' => Commande::find()
@@ -232,7 +247,13 @@ class CommandeController extends ProducerBaseController {
]);
}

public function actionRemoveEtablissement($id = 0) {
/**
* Supprime un producteur.
*
* @param integer $id
*/
public function actionRemoveEtablissement($id = 0)
{
$user_etablissement = UserEtablissement::find()
->where(['id_etablissement' => $id, 'id_user' => Yii::$app->user->identity->id])
->one();
@@ -243,7 +264,13 @@ class CommandeController extends ProducerBaseController {
$this->redirect(['commande/index']);
}

public function actionCreate() {
/**
* Crée une commande.
*
* @return mixed
*/
public function actionCreate()
{

$id_etablissement = $this->getProducer()->id ;
$commande = new Commande;
@@ -272,7 +299,15 @@ class CommandeController extends ProducerBaseController {
]));
}

public function actionUpdate($id) {
/**
* Modifie une commande.
*
* @param integer $id
* @return mixed
* @throws UserException
*/
public function actionUpdate($id)
{

$commande = Commande::find()
->with('production')
@@ -292,19 +327,32 @@ class CommandeController extends ProducerBaseController {


return $this->render('update', array_merge($this->initForm($commande), [
'model' => $commande,
'commande_introuvable' => !$commande,
'model' => $commande,
'commande_introuvable' => !$commande,
]));
}

public function _verifEtablissementActif($id_etablissement) {
/**
* Vérifie si un producteur est actif.
*
* @param integer $id_etablissement
* @throws NotFoundHttpException
*/
public function _verifEtablissementActif($id_etablissement)
{
$etablissement = Etablissement::findOne($id_etablissement);
if ($etablissement && !$etablissement->actif) {
throw new NotFoundHttpException('Cet établissement est actuellement hors ligne.');
}
}

public function gestionForm($commande) {
/**
* Traite le formulaire de création/modification de commande.
*
* @param Commande $commande
*/
public function gestionForm($commande)
{
$posts = Yii::$app->request->post();
$produits = array();

@@ -469,8 +517,15 @@ class CommandeController extends ProducerBaseController {
}
}

public function actionAnnuler($id) {

/**
* Annule une commande.
*
* @param integer $id
* @throws \yii\web\NotFoundHttpException
* @throws UserException
*/
public function actionAnnuler($id)
{
$commande = Commande::find()
->with('production', 'creditHistorique', 'commandeProduits')
->where(['id' => $id])
@@ -505,7 +560,15 @@ class CommandeController extends ProducerBaseController {
$this->redirect(Yii::$app->urlManager->createUrl(['commande/historique']));
}

public function actionVerifCodePointVente($id_point_vente, $code) {
/**
* Vérifie le code saisi pour un point de vente.
*
* @param integer $id_point_vente
* @param string $code
* @return boolean
*/
public function actionVerifCodePointVente($id_point_vente, $code)
{
$point_vente = PointVente::findOne($id_point_vente);
if ($point_vente) {
if ($point_vente->verifCode($code)) {

+ 16
- 5
producer/controllers/ProducerBaseController.php Dosyayı Görüntüle

@@ -38,22 +38,26 @@ termes.

namespace producer\controllers;

class ProducerBaseController extends CommonController {
class ProducerBaseController extends CommonController
{

var $producer ;
/**
* @inheritdoc
*/
public function behaviors() {
public function behaviors()
{
return [];
}
public function actions() {
public function actions()
{
return [];
}
public function beforeAction($event) {
public function beforeAction($event)
{
$producer = $this->getProducer() ;
@@ -85,7 +89,14 @@ class ProducerBaseController extends CommonController {
return parent::beforeAction($event);
}
public function getProducer() {
/**
* Retourne le producteur courant.
*
* @return Etablissement
* @throws \yii\web\HttpException
*/
public function getProducer()
{
if($this->producer) {
return $this->producer ;
}

+ 17
- 12
producer/controllers/SiteController.php Dosyayı Görüntüle

@@ -38,16 +38,19 @@ termes.

namespace producer\controllers;

class SiteController extends ProducerBaseController {
class SiteController extends ProducerBaseController
{
/**
* @inheritdoc
*/
public function behaviors() {
public function behaviors()
{
return [];
}
public function actions() {
public function actions()
{
return [
'captcha' => [
'class' => 'yii\captcha\CaptchaAction',
@@ -56,6 +59,11 @@ class SiteController extends ProducerBaseController {
];
}
/**
* Affiche et gère les erreurs.
*
* @return mixed
*/
public function actionError()
{
$exception = Yii::$app->errorHandler->exception;
@@ -72,15 +80,13 @@ class SiteController extends ProducerBaseController {
}
/**
*
* Affiche la page d'accueil des producteurs comprenant une image, une
* description, la liste des points de vente et les produits
*
* @return ProducerView
*/
public function actionIndex() {
public function actionIndex()
{
// points de vente
$data_provider_points_vente = new ActiveDataProvider([
'query' => PointVente::find()
@@ -115,13 +121,12 @@ class SiteController extends ProducerBaseController {
}
/**
*
* Affiche et traite le formulaire de contact dédié aux producteurs
*
* @return ProducerView
*/
public function actionContact() {
public function actionContact()
{
$model = new ContactForm();
$producer = $this->getProducer() ;
@@ -148,8 +153,8 @@ class SiteController extends ProducerBaseController {
*
* @param $action 'add' ou 'delete'
*/
public function actionFavorite($action) {
public function actionFavorite($action)
{
$producer = $this->getProducer() ;
$user_etablissement = UserEtablissement::find()

Yükleniyor…
İptal
Kaydet