Explorar el Código

Adaptation de l'affichage des commandes dans le tableau de bord, la liste des commandes clients et la liste des commandes dans la page des commandes.

refactoring
keun hace 6 años
padre
commit
e0446ab674
Se han modificado 11 ficheros con 354 adiciones y 272 borrados
  1. +21
    -13
      backend/controllers/CommandeController.php
  2. +4
    -0
      backend/views/commande/index.php
  3. +2
    -7
      backend/views/site/index.php
  4. +4
    -2
      backend/views/user/commandes.php
  5. +3
    -2
      backend/views/user/index.php
  6. BIN
      backend/web/.sass-cache/2a0ffb00578c9d5a537db16d14c734a22b18f35c/screen.scssc
  7. +208
    -199
      backend/web/css/screen.css
  8. +60
    -43
      backend/web/sass/screen.scss
  9. +46
    -3
      common/models/Commande.php
  10. +3
    -1
      common/models/PointVente.php
  11. +3
    -2
      producer/controllers/CommandeController.php

+ 21
- 13
backend/controllers/CommandeController.php Ver fichero

@@ -41,6 +41,7 @@ class CommandeController extends BackendController {

$commandes = Commande::findBy([
'date' => $date,
'date_delete' => 'NULL',
'id_etablissement' => $id_etablissement,
'orderby' => 'commentaire_point_vente ASC, user.nom ASC'
]);
@@ -293,8 +294,9 @@ class CommandeController extends BackendController {

// commandes
$commandes = Commande::findBy([
'date' => $date
]);
'date' => $date,
'date_delete' => 'NULL'
]);

$recettes = 0;
$recettes_pain = 0;
@@ -305,14 +307,17 @@ class CommandeController extends BackendController {

foreach ($commandes as $c) {
$c->init();
$recettes += $c->montant;
$recettes_pain += $c->montant_pain;
$recettes_vrac += $c->montant_vrac;
if ($c->id_point_vente != 1)
$recettes_pain_livre += $c->montant_pain;

$poids_pain += $c->poids_pain;
$poids_vrac += $c->poids_vrac;
if(is_null($c->date_delete)) {
$recettes += $c->montant;
$recettes_pain += $c->montant_pain;
$recettes_vrac += $c->montant_vrac;
if ($c->id_point_vente != 1)
$recettes_pain_livre += $c->montant_pain;

$poids_pain += $c->poids_pain;
$poids_vrac += $c->poids_vrac;
}
}
$recettes = number_format($recettes, 2);
$recettes_pain = number_format($recettes_pain, 2);
@@ -1072,7 +1077,7 @@ class CommandeController extends BackendController {

// commandes
$commandes = Commande::find()
->with('commandeProduits', 'user')
->with('commandeProduits','commandeProduits.produit', 'user')
->joinWith('production')
->where(['production.date' => $date])
->andWhere(['production.id_etablissement' => Yii::$app->user->identity->id_etablissement])
@@ -1083,8 +1088,11 @@ class CommandeController extends BackendController {
$poids_pain = 0;
foreach ($commandes as $c) {
$c->init();
$recettes += $c->montant;
$poids_pain += $c->poids_pain;
if(is_null($c->date_delete)) {
$recettes += $c->montant;
$poids_pain += $c->poids_pain;
}
}

// produits selec pour production

+ 4
- 0
backend/views/commande/index.php Ver fichero

@@ -228,6 +228,10 @@ foreach ($produits as $p) {
<?php else: ?>
<?= Html::encode($c->username); ?>
<?php endif; ?>
<?php if(!is_null($c->date_delete)): ?>
(<span class="glyphicon glyphicon-remove"></span> Annulée)
<?php endif; ?>
</span>
<?php if (strlen($c->commentaire)): ?>

+ 2
- 7
backend/views/site/index.php Ver fichero

@@ -252,14 +252,9 @@ $this->title = 'Tableau de bord';
</thead>
<tbody>
<?php foreach($commandes as $c): ?>
<tr class="<?php if(!is_null($c->date_update)): ?>commande-update<?php endif; ?>">
<tr class="<?= $c->getClassHistorique() ; ?>">
<td class="infos"><?= $c->getStrType(true); ?></td>
<td class="historique">
<div class="small"><span class="glyphicon glyphicon-plus"></span> Création <br /> <strong><?= date('d/m/Y à G\hi', strtotime($c->date)) ?></strong></div>
<?php if(!is_null($c->date_update)): ?>
<div class="small"><span class="update"><span class="glyphicon glyphicon-pencil"></span> Dernière modification</span><br /> <strong><?= date('d/m/Y à G\hi', strtotime($c->date_update)) ?></strong></div>
<?php endif; ?>
</td>
<td class="historique"><?= $c->getStrHistorique() ; ?></td>
<td class="date">
<div class="bloc-date">
<div class="jour"><?= strftime('%A', strtotime($c->production->date)) ?></div>

+ 4
- 2
backend/views/user/commandes.php Ver fichero

@@ -20,7 +20,8 @@ $this->params['breadcrumbs'][] = 'Créditer';
<?php if(count($commandes)): ?>
<table id="historique-commandes" class="table table-striped table-bordered">
<thead>
<tr>
<tr>
<th>Historique</th>
<th>Date livraison</th>
<th>Résumé</th>
<th>Point de vente</th>
@@ -29,7 +30,8 @@ $this->params['breadcrumbs'][] = 'Créditer';
</thead>
<tbody>
<?php foreach($commandes as $c): ?>
<tr>
<tr class="<?= $c->getClassHistorique() ; ?>">
<td class="historique"><?= $c->getStrHistorique() ; ?></td>
<td><?php echo date('d/m/Y',strtotime($c->production->date)); ?></td>
<td class="resume"><?= $c->getResumePanier() ; ?></td>
<td><?= $c->getResumePointVente(); ?></td>

+ 3
- 2
backend/views/user/index.php Ver fichero

@@ -1,4 +1,4 @@
<?php
0<?php

use yii\helpers\Html;
use yii\grid\GridView;
@@ -103,8 +103,9 @@ $this->params['breadcrumbs'][] = $this->title;
$count_commandes = Commande::find()
->joinWith('production')
->where([
'id_user' => $model['user_id'],
'id_user' => $model['user_id'],
'production.id_etablissement' => Yii::$app->user->identity->id_etablissement])
->andWhere('date_delete IS NULL')
->count() ;
$html = '' ;
if($count_commandes)

BIN
backend/web/.sass-cache/2a0ffb00578c9d5a537db16d14c734a22b18f35c/screen.scssc Ver fichero


+ 208
- 199
backend/web/css/screen.css
La diferencia del archivo ha sido suprimido porque es demasiado grande
Ver fichero


+ 60
- 43
backend/web/sass/screen.scss Ver fichero

@@ -264,44 +264,26 @@ a {
}
}

// tableau de bord
.site-index {
.panel {
.panel-title {
.btn {
float: right ;
font-family: 'myriadpro-regular' ;
&.btn-success {
background-color: #5cb85c ;
color: white ;
border-color: #5cb85c ;
}
&.margin-left {
margin-left: 5px ;
}
}
}
.panel-body {
//height: 250px ;
}
}
#dernieres-commandes {
// liste de commandes
.site-index, .user-commandes {
#dernieres-commandes, #historique-commandes {

tr.commande-update {
td {
background-color: $color2 ;
}
.update {
color: $color1 ;
}
}
.small, .localite {
font-size: 12px ;
color: gray ;
}
.commentaire {
font-size: 12px ;
tr.commande-delete {
td {
background-color: lighten(#C9302C, 40);
}
.delete {
color: #C9302C ;
}
}
td.historique {
@@ -309,39 +291,49 @@ a {
.small {
margin-bottom: 7px ;
}
strong {
margin-left: 15px ;
//margin-left: 15px ;
}
.update {
color: $color1 ;
}
/*.label {
color: gray ;
border: solid 1px gray ;
}*/
}

.small, .localite {
font-size: 12px ;
color: gray ;
}
.commentaire {
font-size: 12px ;
}

.date {
text-align: center ;
.bloc-date {
width: 50% ;
margin: 0px auto ;
padding-top: 0px ;
}
.jour {
text-transform: capitalize ;
line-height: 13px ;
font-size: 10px ;
text-transform: uppercase ;
}
.num {
font-size: 23px ;
line-height: 28px ;
font-weight: bold ;
}
.mois {
text-transform: uppercase ;
line-height: 13px ;
@@ -349,6 +341,31 @@ a {
}
}
}
}

// tableau de bord
.site-index {
.panel {
.panel-title {
.btn {
float: right ;
font-family: 'myriadpro-regular' ;
&.btn-success {
background-color: #5cb85c ;
color: white ;
border-color: #5cb85c ;
}
&.margin-left {
margin-left: 5px ;
}
}
}
.panel-body {
//height: 250px ;
}
}
#facturation {
h2 {

+ 46
- 3
common/models/Commande.php Ver fichero

@@ -48,6 +48,8 @@ class Commande extends \yii\db\ActiveRecord {
foreach ($this->commandeProduits as $p) {
if ($p->mode_vente == 'unite') {
$this->montant_pain += $p->prix * $p->quantite;
if(isset($p->produit))
$this->poids_pain += ($p->quantite * $p->produit->poids) / 1000 ;
} elseif ($p->mode_vente == 'poids') {
$this->montant_pain += $p->prix * $p->quantite / 1000;
}
@@ -71,9 +73,11 @@ class Commande extends \yii\db\ActiveRecord {

if (isset($commandes) && is_array($commandes) && count($commandes)) {
foreach ($commandes as $c) {
foreach ($c->commandeProduits as $cp) {
if ($cp->id_produit == $id_produit)
$quantite += $cp->quantite;
if(is_null($c->date_delete)) {
foreach ($c->commandeProduits as $cp) {
if ($cp->id_produit == $id_produit)
$quantite += $cp->quantite;
}
}
}
}
@@ -382,4 +386,43 @@ class Commande extends \yii\db\ActiveRecord {
return $str;
}

public function getStrHistorique() {
$arr = [
'class' => 'create',
'glyphicon' => 'plus',
'str' => 'Ajoutée',
'date' => $this->date
] ;
if(!is_null($this->date_update)) {
$arr = [
'class' => 'update',
'glyphicon' => 'pencil',
'str' => 'Modifiée',
'date' => $this->date_update
] ;
}
if(!is_null($this->date_delete)) {
$arr = [
'class' => 'delete',
'glyphicon' => 'remove',
'str' => 'Annulée',
'date' => $this->date_delete
] ;
}
$html = '<div class="small"><span class="'.$arr['class'].'"><span class="glyphicon glyphicon-'.$arr['glyphicon'].'"></span> '.$arr['str'].'</span> le <strong>'.date('d/m/Y à G\hi', strtotime($arr['date'])).'</strong></div>' ;
return $html ;
}
public function getClassHistorique() {
if(!is_null($this->date_delete)) {
return 'commande-delete' ;
}
if(!is_null($this->date_update)) {
return 'commande-update' ;
}
return 'commande-create' ;
}
}

+ 3
- 1
common/models/PointVente.php Ver fichero

@@ -101,7 +101,9 @@ class PointVente extends \yii\db\ActiveRecord {
if ($this->id == $c->id_point_vente) {
$this->commandes[] = $c;

$this->recettes += (float) $c->montant;
if(is_null($c->date_delete)) {
$this->recettes += (float) $c->montant;
}
$this->recettes_pain += (float) $c->montant_pain;
$this->recettes_vrac += (float) $c->montant_vrac;
}

+ 3
- 2
producer/controllers/CommandeController.php Ver fichero

@@ -191,6 +191,7 @@ class CommandeController extends ProducerBaseController {
'id_user' => Yii::$app->user->id,
'production.id_etablissement' => $this->getProducer()->id
])
->andWhere('date_delete IS NULL')
->orderBy('production.date DESC'),
'pagination' => [
'pageSize' => 10,
@@ -469,8 +470,8 @@ class CommandeController extends ProducerBaseController {
);
}
// delete
$commande->delete();
CommandeProduit::deleteAll(['id_commande' => $commande->id]);
$commande->date_delete = date('Y-m-d H:i:s');
$commande->save() ;
Yii::$app->session->setFlash('success','Votre commande a bien été annulée.') ;
}

Cargando…
Cancelar
Guardar