get(); $atualizacoes = RegistroAtualizacao::where('paciente_id', $id)->get(); $registrosVacinacao = collect(); $aplicacoes->each(function($aplicacao) use ($registrosVacinacao) { $registrosVacinacao->push([ 'data_registro' => Carbon::parse($aplicacao->data_aplicacao)->format('d/m/Y'), 'vacina_id' => $aplicacao->entradaVacina->vacina_id, 'vacina_nome' => $aplicacao->entradaVacina->vacina->nome, 'vacina_codigo' => $aplicacao->entradaVacina->vacina->codigo, 'lote' => $aplicacao->entradaVacina->lote, 'dose_nome' => $aplicacao->dose->nome, 'estrategia_nome' => $aplicacao->estrategia->nome, 'unidade_cnes' => $aplicacao->entradaVacina->entrada->salaVacinacao->infraestrutura->unidade->cnes, 'unidade_nome' => $aplicacao->entradaVacina->entrada->salaVacinacao->infraestrutura->unidade->nome_fantasia, 'municipio_nome' => $aplicacao->entradaVacina->entrada->salaVacinacao->infraestrutura->endereco->logradouro->municipio->nome, 'estado_uf' => $aplicacao->entradaVacina->entrada->salaVacinacao->infraestrutura->endereco->logradouro->municipio->estado->nome, ]); }); $atualizacoes->each(function($atualizacao) use ($registrosVacinacao) { $registrosVacinacao->push([ 'data_registro' => Carbon::parse($atualizacao->data_atualizacao)->format('d/m/Y'), 'vacina_id' => $atualizacao->vacina_id, 'vacina_nome' => $atualizacao->vacina->nome, 'vacina_codigo' => $atualizacao->vacina->codigo, 'lote' => $atualizacao->lote, 'dose_nome' => $atualizacao->dose->nome, 'estrategia_nome' => $atualizacao->estrategia_id ? $atualizacao->estrategia->nome : 'Não Informado', 'unidade_cnes' => $atualizacao->salaVacinacao->infraestrutura->unidade->cnes, 'unidade_nome' => $atualizacao->salaVacinacao->infraestrutura->unidade->nome_fantasia, 'municipio_nome' => $atualizacao->salaVacinacao->infraestrutura->endereco->logradouro->municipio->nome, 'estado_uf' => $atualizacao->salaVacinacao->infraestrutura->endereco->logradouro->municipio->estado->nome, ]); }); return [ 'paciente' => RegistroVacinacaoService::getPaciente($id), 'registros_vacinacao' => $registrosVacinacao->whereNotIn('vacina_codigo', self::VACINAS_COVID), 'vacinas_covid' => $registrosVacinacao->whereIn('vacina_codigo', self::VACINAS_COVID), 'params' => request()->all(), ]; } public function __invoke($id) { return Pdf1::generate(self::TITLE, self::TEMPLATE, self::getTemplate($id), 'landscape'); } }