public ActionResult Post(ClienteLoginDTO registro)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState.Values.SelectMany(e => e.Errors)));
                }

                using (ClienteService service = new ClienteService())
                {
                    var cliente = service.Buscar(x => x.Email == registro.Email && x.Senha == x.Senha);

                    if (cliente == null)
                    {
                        return(BadRequest("Cliente não encontrado"));
                    }

                    var data = DateTime.Now.AddHours(2);

                    var token = new TokenClienteDTO()
                    {
                        Cliente       = { Id = cliente.Id, Email = cliente.Email },
                        DataExpiracao = data,
                    };

                    var tokenFinal = Criptografia.CriptografarToken(token);

                    cliente.Token = new TokenPessoa()
                    {
                        Conteudo = tokenFinal, DataExpiracao = data
                    };

                    service.Alterar(x => x.Id == cliente.Id, cliente);

                    return(Ok(tokenFinal));
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
        public ActionResult Put(string id, string data, string descricao)
        {
            try
            {
                using (ClienteService service = new ClienteService())
                {
                    var cliente = service.Buscar(x => x.Id == id);

                    var dataExpiracao = DateTime.Parse(data);
                    var dataAtual     = DateTime.Now.AddHours(6);

                    var tokenAtuall = new TokenClienteDTO()
                    {
                        Cliente       = { Id = cliente.Id, Email = cliente.Email },
                        DataExpiracao = dataExpiracao,
                        Empresa       = { Descricao = descricao }
                    };

                    var tokenRefrexx = new TokenClienteDTO()
                    {
                        Cliente       = { Id = cliente.Id, Email = cliente.Email },
                        DataExpiracao = dataExpiracao,
                        Empresa       = { Descricao = descricao }
                    };

                    var tokenAtual  = Criptografia.CriptografarToken(tokenAtuall);
                    var tokenRefrex = Criptografia.CriptografarToken(tokenRefrexx);

                    cliente.Token.TokenEmpresa = new EmpresaPessoa()
                    {
                        Conteudo = tokenAtual, DataExpiracao = dataAtual, Descricao = descricao
                    };
                    cliente.Token.TokenEmpresa.TokenRefrex = new TokenRefrex()
                    {
                        Conteudo = tokenRefrex, DataExpiracao = dataExpiracao, Descricao = descricao
                    };

                    service.Alterar(x => x.Id == cliente.Id, cliente);

                    var resposta = new TokenDTO()
                    {
                        Token =
                        {
                            Conteudo      = tokenAtual,
                            DataExpiracao = dataAtual,
                        },
                        TokenRefrex =
                        {
                            Conteudo      = tokenRefrex,
                            DataExpiracao = dataExpiracao
                        }
                    };

                    return(Ok(resposta));
                }
            }
            catch (Exception)
            {
                throw;
            }
        }