%PDF- %PDF-
Direktori : /usr/local/apache/htdocs/app/Models/ |
Current File : //usr/local/apache/htdocs/app/Models/Commande.php |
<?php namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; class Commande extends Model { use HasFactory; protected $fillable = [ 'facture_id', 'commercial_id', 'livreur', 'livraison_ref', 'status', 'frais_livraison', 'autre_livraison', ]; protected $appends = [ 'total' ]; protected $with = [ 'reglements' ]; public function commande_products() { return $this->hasMany(Commande_product::class, 'commande_id'); } public function commercial() { return $this->hasOne(User::class, 'id', 'commercial_id'); } public function facture() { return $this->hasOne(Facture::class, 'id', 'facture_id'); } public function reglements() { return $this->hasMany(Reglements::class, 'commande_id', 'id'); } //Mohammed public function paid_reglements() { return $this->hasMany(Reglements::class, 'commande_id', 'id')->where('status', 'payed'); } //Mohammed public function unpaid_reglements() { return $this->hasMany(Reglements::class, 'commande_id', 'id')->where('status', 'nonpayed'); } public function getTotalAttribute() { $total_price = 0; foreach($this->commande_products as $comm) { $total_price = $total_price + ($comm->product->prixvente - $comm->remise); } return $total_price; } public function getPaidAmountAttribute() { $amount = 0; foreach($this->reglements as $reg) { if( $reg->status == 'payed' ) { $amount = $amount + $reg->montant; } } return $amount; } public function getUnPaidAmountAttribute() { return $this->total - $this->paid_amount; } }