public function store($id, Request $request) { $pessoa = \App\Pessoa::where('id_usuario', '=', Auth::user()->id)->where('id', '=', $id)->first(); if (!$pessoa instanceof \App\Pessoa) { return redirect(route('cadastrar-funcionario', [$id]))->withErrors(['Ocorreu um erro ao tentar cadastrar o funcionário, verifique se você está logado e tente novamente.'])->withInput(); } $request->merge(['id_pessoa' => $id, 'id_uf' => 1, 'id_uf_ctps' => 1]); $funcionario = new Funcionario(); $contrato = new \App\ContratoTrabalho(); if ($funcionario->validate($request->all(), false) && $contrato->validate($request->all(), false)) { if (count($request->get('horario'))) { $validator = $this->validateHorario($request->all()); if ($validator->fails()) { return redirect(route('funcionario-novo'))->withErrors($validator->errors()->all())->withInput(); } } $funcionario = $funcionario->create($request->all()); $request->merge(['id_funcionario' => $funcionario->id]); $contrato = $contrato->create($request->all()); if (count($request->get('deficiencia'))) { foreach ($request->get('deficiencia') as $i) { $deficiencia = new FuncionarioDeficiencia(); $deficiencia->id_funcionario = $funcionario->id; $deficiencia->deficiencia = $i; $deficiencia->save(); } } if (count($request->get('dependente'))) { foreach ($request->get('dependente') as $dep) { $dependente = new FuncionarioDependente(); $dep['id_funcionario'] = $funcionario->id; $dependente->create($dep); } } if (count($request->get('horario'))) { foreach ($request->get('horario') as $dia => $hora) { $horario = new HorarioTrabalho(); $horario->id_contrato_trabalho = $contrato->id; $horario->hora1 = $hora[0] ? $hora[0] : null; $horario->hora2 = $hora[1] ? $hora[1] : null; $horario->hora3 = $hora[2] ? $hora[2] : null; $horario->hora4 = $hora[3] ? $hora[3] : null; $horario->dia = $dia; $horario->save(); } } return redirect(route('funcionarios'))->with('alertModal', ['message' => 'Funcionário cadastrado com sucesso!', 'title' => 'Sucesso!']); } else { return array_merge($funcionario->errors(), $contrato->errors()); } }
public function index() { $meses = array('01' => 'Janeiro', '02' => 'Fevereiro', '03' => 'Março', '04' => 'Abril', '05' => 'Maio', '06' => 'Junho', '07' => 'Julho', '08' => 'Agosto', '09' => 'Setembro', '10' => 'Outubro', '11' => 'Novembro', '12' => 'Dezembro'); $impostos = \App\Imposto::join('imposto_mes', 'imposto_mes.id_imposto', '=', 'imposto.id')->where('imposto_mes.mes', '=', (int) date('m'))->orderBy('imposto.vencimento')->select('imposto.*')->get(); $notificacoes = \App\Notificacao::where('id_usuario', '=', Auth::user()->id)->orderBy('created_at', 'desc')->get(); $mensagens = ChamadoResposta::join("chamado", "chamado.id", '=', "chamado_resposta.id_chamado")->where('chamado.id_usuario', '=', Auth::user()->id)->groupBy('chamado_resposta.id_chamado')->orderBy('chamado_resposta.created_at', 'desc')->select('chamado_resposta.*')->limit(5)->get(); $empresas = Pessoa::where('id_usuario', '=', Auth::user()->id)->orderBy('nome_fantasia')->limit(5)->get(); $socios = Socio::join('pessoa', 'pessoa.id', '=', 'socio.id_pessoa')->where('pessoa.id_usuario', '=', Auth::user()->id)->select('socio.*')->orderBy('socio.nome')->limit(5)->get(); $apuracoes = Processo::join('pessoa', 'pessoa.id', '=', 'processo.id_pessoa')->where('pessoa.id_usuario', '=', Auth::user()->id)->where('processo.status', '<>', 'concluido')->select('processo.*')->get(); $apuracoes_urgentes = []; foreach ($apuracoes as $apuracao) { if ($apuracao->imposto->informacoes_extras()->count() > 0 && $apuracao->informacoes_extras()->count() < 1) { $apuracoes_urgentes[] = $apuracao; } } return view('dashboard.index', ['mensagens' => $mensagens, 'empresas' => $empresas, 'impostos' => $impostos, 'apuracoes' => $apuracoes, 'meses' => $meses, 'notificacoes' => $notificacoes]); }
public function updateAdmin($id, Request $request) { $empresa = \App\Pessoa::where('id', '=', $id)->first(); $statusAnterior = $empresa->status; $statusAtual = $request->get('status'); $empresa->status = $statusAtual; $empresa->save(); if ($statusAtual == 'Aprovado' && $statusAnterior != $statusAtual) { $empresa->iniciar_periodo_gratis(); $empresa->abrir_processos(); } $empresa->enviar_notificacao_status(); return redirect(route('empresas-admin')); }
public function index($id_empresa) { $socios = Socio::where('id_pessoa', '=', $id_empresa)->orderBy('nome', 'asc')->get(); $empresa = Pessoa::where('id', '=', $id_empresa)->first()->nome_fantasia; return view('empresa.socios.index', ['socios' => $socios, 'id_empresa' => $id_empresa, 'empresa' => $empresa]); }
public function create($competencia, $id_imposto, $cnpj, $vencimento, Request $request) { $imposto = \App\Imposto::where('id', '=', $id_imposto)->first(); $empresa = \App\Pessoa::where('cpf_cnpj', '=', $cnpj)->where('id_usuario', '=', Auth::user()->id)->first(); return view('processos.cadastrar', ['competencia' => $competencia, 'empresa' => $empresa, 'vencimento' => $vencimento, 'imposto' => $imposto]); }