Customer.php 860B

12345678910111213141516171819202122232425262728293031323334353637
  1. <?php
  2. namespace App\Models;
  3. use Illuminate\Database\Eloquent\Factories\HasFactory;
  4. use Illuminate\Database\Eloquent\Model;
  5. class Customer extends Model
  6. {
  7. use HasFactory;
  8. protected $fillable = [
  9. 'name',
  10. 'address',
  11. 'phone',
  12. 'npwp'
  13. ];
  14. protected $hidden = ['created_at', 'updated_at'];
  15. public function sales()
  16. {
  17. return $this->hasMany(Sale::class);
  18. }
  19. public function scopeFilter($query, array $filters)
  20. {
  21. $query->when($filters['search'] ?? null, function ($query, $search) {
  22. $query->where(function ($query) use ($search) {
  23. $query->where('name', 'like', '%' . $search . '%')
  24. ->orWhere('phone', 'like', '%' . $search . '%')
  25. ->orWhere('npwp', 'like', '%' . $search . '%');
  26. });
  27. });
  28. }
  29. }