'date', 'end_date' => 'date', 'amount' => 'decimal:2', ]; public function meta(): HasMany { return $this->hasMany(ContractMeta::class); } public function documents(): HasMany { return $this->hasMany(Document::class); } public function municipality(): \Illuminate\Database\Eloquent\Relations\BelongsTo { return $this->belongsTo(Municipality::class); } // Helpers public function scopeActive($query) { return $query->where('status', 'active'); } public function scopeExpiringSoon($query, $days = 30) { return $query->where('end_date', '<=', now()->addDays($days)) ->where('end_date', '>=', now()) ->where('status', '!=', 'expired'); } }