Преглед на файлове

Indentation + commentaires modèle Production / ProductionPointVente / ProductionProduit

dev
Guillaume Bourgeois преди 6 години
родител
ревизия
6dc067d0d6
променени са 3 файла, в които са добавени 89 реда и са изтрити 28 реда
  1. +44
    -16
      common/models/Production.php
  2. +25
    -7
      common/models/ProductionPointVente.php
  3. +20
    -5
      common/models/ProductionProduit.php

+ 44
- 16
common/models/Production.php Целия файл

@@ -40,6 +40,7 @@ namespace common\models;

use Yii;
use common\models\Commande;
use common\models\Production;

/**
* This is the model class for table "production".
@@ -48,23 +49,27 @@ use common\models\Commande;
* @property string $date
* @property integer $actif
*/
class Production extends \yii\db\ActiveRecord {
class Production extends \yii\db\ActiveRecord
{

/**
* @inheritdoc
*/
public static function tableName() {
public static function tableName()
{
return 'production';
}

public function getEtablissement() {
public function getEtablissement()
{
return $this->hasOne(Etablissement::className(), ['id' => 'id_etablissement']);
}

/**
* @inheritdoc
*/
public function rules() {
public function rules()
{
return [
[['date'], 'required'],
[['date'], 'safe'],
@@ -75,7 +80,8 @@ class Production extends \yii\db\ActiveRecord {
/**
* @inheritdoc
*/
public function attributeLabels() {
public function attributeLabels()
{
return [
'id' => 'ID',
'date' => 'Date',
@@ -83,22 +89,37 @@ class Production extends \yii\db\ActiveRecord {
];
}

public function getCommande() {
/*
* Relations
*/
public function getCommande()
{
return $this->hasMany(Commande::className(), ['id_production' => 'id']);
}

public function getProductionProduit() {
public function getProductionProduit()
{
return $this->hasMany(ProductionProduit::className(), ['id_production' => 'id']);
}

public function produitActif($id_produit) {
/**
* Retourne si un produit est actif ou non.
*
* @param integer $id_produit
* @return boolean
*/
public function produitActif($id_produit)
{
if ($id_produit &&
isset($this->productionProduit) &&
count($this->productionProduit) > 0) {
isset($this->productionProduit) &&
count($this->productionProduit) > 0)
{

foreach ($this->productionProduit as $production_produit) {
if ($production_produit['id_produit'] == $id_produit &&
$production_produit['actif']) {
$production_produit['actif'])
{
return true;
}
}
@@ -107,7 +128,14 @@ class Production extends \yii\db\ActiveRecord {
return false;
}
public static function initProduction($date) {
/**
* Initialise un jour de production.
*
* @param string $date
* @return Production
*/
public static function initProduction($date)
{
$production = null ;
if ($date != '') {
$production = Production::find()
@@ -126,10 +154,10 @@ class Production extends \yii\db\ActiveRecord {
// production_point_vente à définir s'ils ne sont pas initialisés
if ($production) {
$count_productions_point_vente = ProductionPointVente::find()->
where([
'id_production' => $production->id
])
->count();
where([
'id_production' => $production->id
])
->count();

if (!$count_productions_point_vente) {
ProductionPointVente::setAll($production->id, true);

+ 25
- 7
common/models/ProductionPointVente.php Целия файл

@@ -49,21 +49,24 @@ use common\models\Production;
* @property integer $id_point_vente
* @property integer $livraison
*/
class ProductionPointVente extends \yii\db\ActiveRecord {
class ProductionPointVente extends \yii\db\ActiveRecord
{

var $productions_point_vente;

/**
* @inheritdoc
*/
public static function tableName() {
public static function tableName()
{
return 'production_point_vente';
}

/**
* @inheritdoc
*/
public function rules() {
public function rules()
{
return [
[['id_production', 'id_point_vente'], 'required'],
[['id_production', 'id_point_vente', 'livraison'], 'integer'],
@@ -73,7 +76,8 @@ class ProductionPointVente extends \yii\db\ActiveRecord {
/**
* @inheritdoc
*/
public function attributeLabels() {
public function attributeLabels()
{
return [
'id_production' => 'Id Production',
'id_point_vente' => 'Id Point Vente',
@@ -81,15 +85,29 @@ class ProductionPointVente extends \yii\db\ActiveRecord {
];
}

public function getProduction() {
/*
* Relations
*/
public function getProduction()
{
return $this->hasOne(Production::className(), ['id' => 'id_production']);
}

public function getPointVente() {
public function getPointVente()
{
return $this->hasOne(PointVente::className(), ['id' => 'id_point_vente']);
}

public static function setAll($id_production, $bool_livraison) {
/**
* Définit les jours de livraisons des points de vente pour un jour de
* production donné.
*
* @param integer $id_production
* @param boolean $bool_livraison
*/
public static function setAll($id_production, $bool_livraison)
{
$count_productions_point_vente = self::find()->
where([
'id_production' => $id_production

+ 20
- 5
common/models/ProductionProduit.php Целия файл

@@ -49,32 +49,41 @@ use Yii;
* @property integer $id_produit
* @property integer $actif
*/
class ProductionProduit extends \yii\db\ActiveRecord {
class ProductionProduit extends \yii\db\ActiveRecord
{

/**
* @inheritdoc
*/
public static function tableName() {
public static function tableName()
{
return 'production_produit';
}

/**
* @inheritdoc
*/
public function rules() {
public function rules()
{
return [
[['id_production', 'id_produit', 'actif', 'quantite_max'], 'integer']
];
}

public function getProduit() {
/*
* Relations
*/
public function getProduit()
{
return $this->hasOne(Produit::className(), ['id' => 'id_produit']);
}

/**
* @inheritdoc
*/
public function attributeLabels() {
public function attributeLabels()
{
return [
'id' => 'ID',
'id_production' => 'Id Production',
@@ -84,6 +93,12 @@ class ProductionProduit extends \yii\db\ActiveRecord {
];
}

/**
* Recherche les enregistrement ProductionProduit liés à une production.
*
* @param integer $id_production
* @return array
*/
public static function findProduits($id_production) {

$production_produits = ProductionProduit::find()

Loading…
Отказ
Запис