<?php

namespace App\Http\Controllers;

use App\Models\CategoriaCliente;
use Illuminate\Http\Request;
use App\Models\FuncionarioCliente;
use App\Models\Pessoa;
use App\Models\User;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Gate;
use DateTime;
use Illuminate\Support\Str;
use Illuminate\Support\Facades\Storage;
use Illuminate\Http\File;

class CategoriaClienteController extends Controller
{
    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function index()
    {   
        Gate::denies('clientes',"ver função");

        $idEmpesa=FuncionarioCliente::trazer_Empresa_id();
        $categorias=CategoriaCliente::where('categoriacliente','!=','Super')
            ->where('cliente_id',$idEmpesa->id)->where('categoriacliente','!=','Administrador')->get();
        return view('usuarios.clientes.usuario.funcao.create',['categorias'=>$categorias]);
    }

    /**
     * Show the form for creating a new resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function create()
    {
        //
    }

    /**
     * Store a newly created resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    public function store(Request $request)
    {   //buscar o dic da mepresa

        Gate::denies('clientes',"cadastrar função");

        $idEmpesa=FuncionarioCliente::trazer_Empresa_id();
        $MeuArrayAdmin=['administrador','Administrador','Admin'];
        if(in_array($request->catergoriaCliente,$MeuArrayAdmin))
        {
            $store['success']=false;
            $store['message']='Impossivel Cadastrar esta Função';
              return json_encode($store);
        }

        $categoria_Clie=new CategoriaCliente();
        $categoria_Clie->categoriacliente=$request->catergoriaCliente;
        $categoria_Clie->cliente_id=$idEmpesa->id;
        $categoria_Clie->save();
        if($categoria_Clie)
        {
            $store['success']=true;
            $store['message']='good';
              return json_encode($store);
        }

        $store['success']=false;
        $store['message']='erro ao cadastrar funcao';
          return json_encode($store);
    }

    /**
     * Display the specified resource.
     *
     * @param  \App\Models\CategoriaCliente  $categoriaCliente
     * @return \Illuminate\Http\Response
     */
    public function show(CategoriaCliente $categoriaCliente)
    {
        //
    }

    /**
     * Show the form for editing the specified resource.
     *
     * @param  \App\Models\CategoriaCliente  $categoriaCliente
     * @return \Illuminate\Http\Response
     */
    public function edit(CategoriaCliente $categoriaCliente)
    {
        //
    }

    /**
     * Update the specified resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \App\Models\CategoriaCliente  $categoriaCliente
     * @return \Illuminate\Http\Response
     */
    public function update(Request $request, CategoriaCliente $categoriaCliente)
    {
        //
    }

    /**
     * Remove the specified resource from storage.
     *
     * @param  \App\Models\CategoriaCliente  $categoriaCliente
     * @return \Illuminate\Http\Response
     */
    public function destroy(CategoriaCliente $categoriaCliente)
    {
        //
    }
}
