provincias
tests / ci (push) Canceled after 0s

This commit is contained in:
2026-09-29 14:14:06 +02:00
parent e780e67e98
commit 67dad461d9
35 changed files with 1046 additions and 42 deletions
+29
View File
@@ -0,0 +1,29 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\HasMany;
class GeoLocation extends DomainRecord
{
protected $fillable = ['name', 'location_type', 'parent_id', 'code'];
/** @return BelongsTo<GeoLocation, $this> */
public function parent(): BelongsTo
{
return $this->belongsTo(self::class, 'parent_id');
}
/** @return HasMany<GeoLocation, $this> */
public function children(): HasMany
{
return $this->hasMany(self::class, 'parent_id');
}
/** @return HasMany<Opportunity, $this> */
public function opportunities(): HasMany
{
return $this->hasMany(Opportunity::class, 'primary_territory_id');
}
}
+11 -1
View File
@@ -7,7 +7,10 @@ use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\SoftDeletes;
/** @property string|null $primary_territory_id */
/**
* @property string|null $primary_territory_id
* @property int $territory_version
*/
class Opportunity extends Model
{
use SoftDeletes;
@@ -24,6 +27,7 @@ class Opportunity extends Model
protected $casts = [
'is_featured' => 'boolean',
'territory_version' => 'integer',
'published_at' => 'datetime',
'last_validated_at' => 'datetime',
'estimated_investment_amount' => 'decimal:2',
@@ -35,6 +39,12 @@ class Opportunity extends Model
return $this->belongsTo(Sector::class);
}
/** @return BelongsTo<GeoLocation, $this> */
public function primaryTerritory(): BelongsTo
{
return $this->belongsTo(GeoLocation::class, 'primary_territory_id');
}
/** @param Builder<Opportunity> $query
* @return Builder<Opportunity>
*/