public function ajax(Request $request) { if ($request->get('tipo') == 'descricao') { $lista = Cnae::where('descricao', 'like', '%' . $request->get('search') . '%')->orderBy('descricao')->take(5)->get(['descricao', 'codigo', 'id']); } else { $lista = Cnae::where('codigo', 'like', '%' . $request->get('search') . '%')->orderBy('descricao')->take(5)->get(['descricao', 'codigo', 'id']); } return response()->json($lista); }
public function update($id, Request $request) { $empresa = \App\Pessoa::where('id', '=', $id)->where('id_usuario', '=', Auth::user()->id)->first(); $request->merge(['id' => $empresa->id]); if (count($request->get('cnaes'))) { foreach ($request->get('cnaes') as $cnae) { if (\App\Cnae::where('id', '=', $cnae)->first()->id_tabela_simples_nacional == null) { return redirect(route('editar-empresa', $id))->withInput()->withErrors(['Não foi possível cadastrar sua empresa pois um de seus CNAEs não está apto para o Simples Nacional.\\nNesse momento só trabalhamos com Simples Nacional.']); } } } if ($empresa->validate($request->except('_token'), true)) { $empresa->update($request->except('_token', 'cnaes', 'socio')); if (count($request->get('cnaes'))) { foreach ($empresa->cnaes()->get() as $cnae) { $cnae->delete(); } foreach ($request->get('cnaes') as $cnae) { $pessoaCnae = new \App\PessoaCnae(); $pessoaCnae->id_pessoa = $id; $pessoaCnae->id_cnae = $cnae; $pessoaCnae->save(); } } return redirect(route('empresas')); } else { return redirect(route('editar-empresa', [$id]))->withInput()->withErrors($empresa->errors()); } }
public function storeAdmin($id, Request $request) { // dd($request->all()); $empresa = new \App\Pessoa(); $request->merge(['id_usuario' => Auth::user()->id]); if (count($request->get('cnaes'))) { foreach ($request->get('cnaes') as $cnae) { if (\App\Cnae::where('id', '=', $cnae)->first()->id_tabela_simples_nacional == null) { return redirect(route('cadastrar-abertura-empresa-admin', [$id]))->withInput()->withErrors(['Não foi possível cadastrar sua empresa pois um de seus CNAEs não está apto para o Simples Nacional.\\nNesse momento só trabalhamos com Simples Nacional.']); } } } if (!count($request->get('socio'))) { return redirect(route('cadastrar-abertura-empresa-admin', [$id]))->withInput()->withErrors(['É necessário cadastrar pelo menos um sócio']); } //atencao, arrumar telefone!!!!!!!!!!!!!!!!!!!! $request->merge(['id_tipo_tributacao' => 1]); if ($empresa->validate($request->all())) { $empresa = $empresa->create($request->all()); if (count($request->get('socio'))) { foreach ($request->get('socio') as $obj) { $socio = new \App\Socio(); $obj['id_pessoa'] = $empresa->id; if ($socio->validate($obj)) { $socio = $socio->create($obj); } else { \App\Socio::where('id_pessoa', '=', $empresa->id)->delete(); \App\Pessoa::find($empresa->id)->delete(); return redirect(route('cadastrar-abertura-empresa-admin', [$id]))->withInput()->withErrors($socio->errors()); } } } if (count($request->get('cnaes'))) { foreach ($request->get('cnaes') as $cnae) { $pessoaCnae = new \App\PessoaCnae(); $pessoaCnae->id_pessoa = $empresa->id; $pessoaCnae->id_cnae = $cnae; $pessoaCnae->save(); } } $abertura_empresa = \App\AberturaEmpresa::find($id); $abertura_empresa->status = 'Concluído'; $abertura_empresa->enviar_notificacao_conclusao($request->get('nome_fantasia')); $abertura_empresa->save(); $impostos_mes = \App\ImpostoMes::where('mes', '=', date('n'))->get(); $competencia = date('Y-m-d', strtotime(date('Y-m') . " -1 month")); foreach ($impostos_mes as $imposto_mes) { if ($imposto_mes->imposto->vencimento > (int) date('d')) { $imposto = $imposto_mes->imposto; $processo = new Processo(); $processo->create(['id_pessoa' => $empresa->id, 'competencia' => $competencia, 'id_imposto' => $imposto_mes->id_imposto, 'vencimento' => $imposto->corrigeData(date('Y') . '-' . date('m') . '-' . $imposto->vencimento, 'Y-m-d'), 'status' => 'novo']); } } $plano = \App\Plano::where('total_documentos', '>=', $request->get('total_documentos'))->where('total_documentos_contabeis', '>=', $request->get('total_contabeis'))->where('pro_labores', '>=', $request->get('pro_labores'))->orderBy('valor', 'asc')->first(); $mensalidade = new \App\Mensalidade(); $mensalidade->id_usuario = Auth::user()->id; $mensalidade->id_pessoa = $empresa->id; $mensalidade->duracao = $plano->duracao; $mensalidade->valor = $plano->valor; $mensalidade->documentos_fiscais = $plano->total_documentos; $mensalidade->documentos_contabeis = $plano->total_documentos_contabeis; $mensalidade->pro_labores = $plano->pro_labores; $mensalidade->funcionarios = $plano->funcionarios; $mensalidade->save(); $pagamento = new \App\Pagamento(); $pagamento->id_mensalidade = $mensalidade->id; $pagamento->status = 'Paga'; $pagamento->valor = 0.0; $pagamento->vencimento = date('Y-m-d H:i:s'); $pagamento->save(); return redirect(route('empresas-admin')); } else { return redirect(route('cadastrar-abertura-empresa-admin', [$id]))->withInput()->withErrors($empresa->errors()); } }