Exemplo n.º 1
0
 public function update($id_imposto, $id_informacao_extra, Request $request)
 {
     $informacao_extra = InformacaoExtra::where('id', '=', $id_informacao_extra)->first();
     $request->merge(['id_imposto' => $id_imposto]);
     if ($informacao_extra->validate($request->all())) {
         $informacao_extra->update($request->all());
         if ($request->get('tipo') == 'anexo') {
             foreach ($informacao_extra->extensoes as $extensao) {
                 $extensao->delete();
             }
             foreach ($request->get('extensao') as $extensao) {
                 $ext = new \App\InformacaoExtraExtensao();
                 $ext->id_informacao_extra = $informacao_extra->id;
                 $ext->extensao = $extensao;
                 $ext->save();
             }
         }
         return redirect(route('listar-informacao-extra', ['id_imposto' => $id_imposto]));
     } else {
         return redirect(route('editar-informacao-extra', ['id_imposto' => $id_imposto, 'id_informacao_extra' => $id_informacao_extra]))->withInput()->withErrors($informacao_extra->errors());
     }
 }
Exemplo n.º 2
0
 public function store($id, Request $request)
 {
     $processo = Processo::join('pessoa', 'processo.id_pessoa', '=', 'pessoa.id')->where('pessoa.id_usuario', '=', Auth::user()->id)->where('processo.id', '=', $id)->select('processo.*')->first();
     $erros = [];
     if ($request->get('informacao_adicional')) {
         foreach ($request->get('informacao_adicional') as $k => $informacao_adicional) {
             if (!$informacao_adicional) {
                 $erros[] = 'É necessário preencher o campo ' . \App\InformacaoExtra::where('id', '=', $k)->first()->nome;
             }
         }
     }
     if ($request->file('anexo')) {
         foreach ($request->file('anexo') as $k => $anexo) {
             $informacao_extra = \App\InformacaoExtra::where('id', '=', $k)->first();
             $nome_bonito = ['informacao' => $informacao_extra->nome];
             $extensoes = '';
             foreach ($informacao_extra->extensoes as $x => $extensao) {
                 if ($x > 0) {
                     $extensoes .= ',';
                 }
                 $extensoes .= $extensao->extensao;
             }
             $rules = ['informacao' => 'required|max:' . $informacao_extra->tamanho_maximo . '|mimes:' . $extensoes];
             // make a new validator object
             $v = Validator::make(['informacao' => $anexo], $rules);
             $v->setAttributeNames($nome_bonito);
             if ($v->fails()) {
                 $erros = array_merge($erros, $v->errors()->all());
             }
         }
     }
     if (count($erros)) {
         return redirect(route('responder-processo-usuario', [$id]))->withErrors($erros);
     }
     if ($request->get('informacao_adicional')) {
         foreach ($request->get('informacao_adicional') as $k => $informacao_adicional) {
             $informacao_extra = new \App\ProcessoInformacaoExtra();
             $informacao_extra->create(['informacao' => $informacao_adicional, 'id_processo' => $processo->id, 'id_informacao_extra' => $k]);
         }
     }
     if ($request->file('anexo')) {
         foreach ($request->file('anexo') as $k => $anexo) {
             $informacao_extra = new \App\ProcessoInformacaoExtra();
             $anexo_nome = 'processo_anexo' . str_shuffle(date('dmyhis')) . '.' . $anexo->guessClientExtension();
             $anexo->move(getcwd() . '/uploads/processos/', $anexo_nome);
             $informacao_extra->create(['informacao' => $anexo_nome, 'id_processo' => $processo->id, 'id_informacao_extra' => $k]);
         }
     }
     return redirect(route('responder-processo-usuario', [$id]));
 }