netgescon-day0/app/Models/AreraOperatore.php

56 lines
1.5 KiB
PHP
Executable File

<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\BelongsToMany;
class AreraOperatore extends Model
{
protected $table = 'arera_operatori';
protected $fillable = [
'societa',
'id_soggetto',
'natura_giuridica_id',
'partita_iva',
'partita_iva_normalizzata',
'gruppo_societario',
'sito_internet',
'sede_legale_raw',
'sede_legale_indirizzo',
'sede_legale_cap',
'sede_legale_citta',
'sede_legale_provincia',
'sede_operativa_raw',
'sede_operativa_indirizzo',
'sede_operativa_cap',
'sede_operativa_citta',
'sede_operativa_provincia',
'contatti_cliente',
'contatti_cliente2',
'settori_raw',
'extra_search_tokens',
'source_filename',
'source_imported_at',
];
protected $casts = [
'contatti_cliente' => 'array',
'contatti_cliente2' => 'array',
'settori_raw' => 'array',
'extra_search_tokens' => 'array',
'source_imported_at' => 'datetime',
];
public function naturaGiuridica(): BelongsTo
{
return $this->belongsTo(AreraNaturaGiuridica::class, 'natura_giuridica_id');
}
public function settori(): BelongsToMany
{
return $this->belongsToMany(AreraSettoreAttivita::class, 'arera_operatore_settore', 'operatore_id', 'settore_id')->withTimestamps();
}
}