public async Task <IActionResult> EditarRegistroHora(RegistroDeHoras registro)
        {
            try
            {
                if (registro.Validar())
                {
                    UsuarioADE usuario = await ObterUsuarioComDadosPessoais();

                    registro.CargaHoraria = (float)(registro.HoraFim - registro.HoraInicio).TotalMinutes;
                    registro.IdUsuario    = usuario.Id;
                    registro.Usuario      = usuario;
                    var registroanterior = await servicoRegistroDeHoras.BuscarPorId(registro.Identificador);

                    registroanterior.Clonar(registro);
                    await servicoRegistroDeHoras.AtualizarAsync(usuario, registroanterior);

                    ViewBag.Retorno = "Seu registro de atividade foi alterado com sucesso.";
                }
            }
            catch (Exception ex)
            {
                await LogError($"{ex.Message}", "RegistroHoras", EnumTipoLog.AlteracaoRegistroHoras);

                ModelState.AddModelError("Falha", "Ocorreu um erro ao alterar o registro. - " + ex.Message);
                ViewBag.Retorno = "Ocorreu um erro ao alterar o registro, contate o suporte para maior exclarecimento. " + ex.Message;
            }
            return(RedirectToAction("Index"));
        }
        public async Task <IActionResult> SPAIncluirRegistroHoraAsync(RegistroDeHoras registro)
        {
            try
            {
                if (registro.Validar())
                {
                    UsuarioADE usuario = await ObterUsuarioComDadosPessoais();

                    registro.IdUsuario = usuario.Id;
                    await servicoRegistroDeHoras.CadastrarAsync(usuario, registro);

                    return(Json(new { Sucesso = "Seu registro de atividade foi incluido com sucesso." }));
                }
                return(Json(new { Erro = "Ocorreu um erro ao incluir o registro. O registro estava inválido." }));
            }
            catch (Exception ex)
            {
                await LogError($"{ex.Message}", "RegistroHoras", EnumTipoLog.CriacaoRegistroHoras);

                ModelState.AddModelError("Falha", "Ocorreu um erro ao incluir o registro - " + ex.Message);
                ViewBag.Retorno = "Ocorreu um erro ao incluir o registro, contate o suporte para maior exclarecimento.";
                return(Json(new { Erro = "Ocorreu um erro ao incluir o registro, contate o suporte para maior exclarecimento." }));
            }
        }