78 lines
1.8 KiB
PHP
78 lines
1.8 KiB
PHP
<?php
|
|
|
|
namespace Koneko\SatCatalogs\Models;
|
|
|
|
use Illuminate\Database\Eloquent\Model;
|
|
use Illuminate\Database\Eloquent\Relations\HasMany;
|
|
use Illuminate\Database\Eloquent\Relations\HasOne;
|
|
|
|
class CodigoPostal extends Model
|
|
{
|
|
/**
|
|
* The table associated with the model.
|
|
*
|
|
* @var string
|
|
*/
|
|
protected $table = 'sat_codigo_postal';
|
|
|
|
|
|
/**
|
|
* The attributes that are mass assignable.
|
|
*
|
|
* @var string[]
|
|
*/
|
|
protected $fillable = [
|
|
'c_codigo_postal',
|
|
'c_estado',
|
|
'c_municipio',
|
|
'c_localidad',
|
|
'estimulo_franja_fronteriza',
|
|
'fecha_inicio_vigencia',
|
|
'fecha_fin_vigencia',
|
|
];
|
|
|
|
/**
|
|
* The attributes that should be cast.
|
|
*
|
|
* @var array
|
|
*/
|
|
protected $casts = [
|
|
'fecha_inicio_vigencia' => 'datetime',
|
|
'fecha_fin_vigencia' => 'datetime',
|
|
];
|
|
|
|
/**
|
|
* Get the estado associated with the CodigoPostal.
|
|
*/
|
|
public function estado(): HasOne
|
|
{
|
|
return $this->hasOne(Estado::class, 'c_estado', 'c_estado');
|
|
}
|
|
|
|
/**
|
|
* Get the municipio associated with the CodigoPostal.
|
|
*/
|
|
public function municipio(): HasOne
|
|
{
|
|
return $this->hasOne(Municipio::class, 'c_municipio', 'c_municipio')
|
|
->where('c_estado', $this->c_estado);
|
|
}
|
|
|
|
/**
|
|
* Get the localidad associated with the CodigoPostal.
|
|
*/
|
|
public function localidad(): HasOne
|
|
{
|
|
return $this->hasOne(Localidad::class, 'c_estado', 'c_estado')
|
|
->where('c_localidad', $this->c_localidad);
|
|
}
|
|
|
|
/**
|
|
* Get the localidad associated with the CodigoPostal.
|
|
*/
|
|
public function colonias(): HasMany
|
|
{
|
|
return $this->hasMany(Colonia::class, 'c_codigo_postal', 'c_codigo_postal');
|
|
}
|
|
}
|