You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

107 lines
2.7KB

  1. <?php
  2. namespace common\models;
  3. use Yii;
  4. /**
  5. * This is the model class for table "produit".
  6. *
  7. * @property integer $id
  8. * @property string $nom
  9. * @property string $description
  10. * @property integer $actif
  11. * @property string $illustration
  12. * @property string $photo
  13. * @property string $saison
  14. * @property double $prix
  15. * @property double $poids
  16. * @property string $recette
  17. */
  18. class Produit extends \yii\db\ActiveRecord
  19. {
  20. var $total = 0 ;
  21. /**
  22. * @inheritdoc
  23. */
  24. public static function tableName()
  25. {
  26. return 'produit';
  27. }
  28. /**
  29. * @inheritdoc
  30. */
  31. public function rules()
  32. {
  33. return [
  34. [['nom'], 'required'],
  35. [['actif','order','quantite_max'], 'integer'],
  36. [['lundi','mardi','mercredi','jeudi','vendredi','samedi','dimanche','epuise'], 'boolean'],
  37. [['prix', 'poids'], 'number'],
  38. [['illustration','photo'], 'file'],
  39. [['nom', 'description', 'illustration', 'photo', 'saison','diminutif'], 'string', 'max' => 255],
  40. [['recette'], 'string','max'=>1000],
  41. ['id_etablissement','integer'],
  42. ['id_etablissement','required'],
  43. ];
  44. }
  45. /**
  46. * @inheritdoc
  47. */
  48. public function attributeLabels()
  49. {
  50. return [
  51. 'id' => 'ID',
  52. 'nom' => 'Nom',
  53. 'description' => 'Description',
  54. 'actif' => 'Actif',
  55. 'illustration' => 'Illustration',
  56. 'photo' => 'Photo',
  57. 'saison' => 'Saison',
  58. 'prix' => 'Prix',
  59. 'poids' => 'Poids (g)',
  60. 'recette' => 'Recette',
  61. 'lundi' => 'Lundi',
  62. 'mardi' => 'Mardi',
  63. 'mercredi' => 'Mercredi',
  64. 'jeudi' => 'Jeudi',
  65. 'vendredi' => 'Vendredi',
  66. 'samedi' => 'Samedi',
  67. 'dimanche' => 'Dimanche',
  68. 'order' => 'Ordre',
  69. 'quantite_max' => 'Quantité max par défaut',
  70. 'epuise' => 'Épuisé',
  71. ];
  72. }
  73. public function getDescription() {
  74. $description = $this->description ;
  75. if(isset($this->poids) && is_numeric($this->poids) && $this->poids > 0) {
  76. if($this->poids >= 1000) {
  77. $description .= ' ('.($this->poids / 1000).'kg)' ;
  78. }
  79. else {
  80. $description .= ' ('.$this->poids.'g)' ;
  81. }
  82. }
  83. return $description ;
  84. }
  85. public function getLibelleAdmin() {
  86. if(strlen($this->diminutif))
  87. return $this->diminutif ;
  88. else
  89. return $this->description ;
  90. }
  91. public function save($runValidation = true, $attributeNames = NULL)
  92. {
  93. $this->id_etablissement = 0 ;
  94. return parent::save($runValidation, $attributeNames) ;
  95. }
  96. }