File manager - Edit - /var/www/html/portal/app/Models/Ppp.php
Back
<?php namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; use Illuminate\Support\Str; class Ppp extends Model { use HasFactory; protected $table = 'ppps'; public $incrementing = false; protected $keyType = 'string'; protected $fillable = [ // ================= DADOS PRINCIPAIS ================= 'projeto', 'criterio_julgamento', 'empresa', 'prazo_concessao', 'secretaria_responsavel', 'andamento', 'proxima_etapa', 'porcentagem_conclusao', 'prazo_implantacao', 'outorga_fixa', 'outorga_variavel', 'investimento_total', 'aporte_municipio', 'contraprestacao_mensal', 'obrigacao', 'payback', 'capex', 'opex', 'tir', 'valor_estimado_contrato', 'observacoes', 'status', // ================= TOGGLES ================= 'show_projeto', 'show_criterio_julgamento', 'show_empresa', 'show_prazo_concessao', 'show_secretaria_responsavel', 'show_andamento', 'show_proxima_etapa', 'show_porcentagem_conclusao', 'show_prazo_implantacao', 'show_outorga_fixa', 'show_outorga_variavel', 'show_investimento_total', 'show_aporte_municipio', 'show_contraprestacao_mensal', 'show_obrigacao', 'show_payback', 'show_capex', 'show_opex', 'show_tir', 'show_valor_estimado_contrato', 'show_observacoes', ]; protected $casts = [ // ================= BOOLEAN CAST ================= 'show_projeto' => 'boolean', 'show_criterio_julgamento' => 'boolean', 'show_empresa' => 'boolean', 'show_prazo_concessao' => 'boolean', 'show_secretaria_responsavel' => 'boolean', 'show_andamento' => 'boolean', 'show_proxima_etapa' => 'boolean', 'show_porcentagem_conclusao' => 'boolean', 'show_prazo_implantacao' => 'boolean', 'show_outorga_fixa' => 'boolean', 'show_outorga_variavel' => 'boolean', 'show_investimento_total' => 'boolean', 'show_aporte_municipio' => 'boolean', 'show_contraprestacao_mensal' => 'boolean', 'show_obrigacao' => 'boolean', 'show_payback' => 'boolean', 'show_capex' => 'boolean', 'show_opex' => 'boolean', 'show_tir' => 'boolean', 'show_valor_estimado_contrato' => 'boolean', 'show_observacoes' => 'boolean', ]; public function historicos() { return $this->hasMany(PppHistorico::class, 'ppp_id', 'id')->orderByDesc('data')->orderByDesc('id'); } protected static function boot() { parent::boot(); static::creating(function ($model) { if (empty($model->id)) { $model->id = (string) Str::uuid(); } if (empty($model->status)) { $model->status = 'ATIVADO'; } }); static::saving(function ($model) { $map = [ 'Autorização do CGP' => 15, 'Estudo' => 30, 'Consulta Pública' => 45, 'Edital' => 60, 'Envio ao TCE' => 75, 'Sessão Pública' => 90, 'Contrato' => 100, ]; if (array_key_exists($model->andamento, $map)) { $model->porcentagem_conclusao = $map[$model->andamento]; } else { $model->porcentagem_conclusao = 0; } }); } }
| ver. 1.4 |
Github
|
.
| PHP 8.3.28 | Generation time: 0.07 |
proxy
|
phpinfo
|
Settings