<?php
namespace app\Services;
use app\Serie;
class CriadorDeSerie
{
public function criarSerie(string $nomeSerie, int $qtdTemporada, int $epPorTemporada) : Serie
{
$serie = Serie::create(['nome' => $nomeSerie]);
$qtdTemporadas = $qtdTemporada;
for ($i = 0; $i <= $qtdTemporadas; $i++) {
$temporada = $serie->temporadas()->create(['numero' => $i]);
for ($j = 1; $j <= $epPorTemporada; $j++) {
$temporada->episodios()->create(['numero' => $j]);
}
}
return $serie;
}
}
?>
public function store(SeriesFormRequest $request, CriadorDeSerie $criadorDeSerie) { $serie = $criadorDeSerie->criarSerie( $request->nome, $request->qtd_temporadas, $request->ep_por_temporada ); $request->session() ->flash( 'mensagem', "Série {$serie->id} criada com sucesso {$serie->nome}"
);
return redirect()->route('listar_series');
}