public IHttpActionResult AtualizarGrupoMedidaProjeto(int id, [FromBody] CadastroAtualizacaoDto dados)
        {
            using (var sessao = new GDATransaction())
            {
                var validacao = this.ValidarExistenciaIdGrupoMedidaProjeto(sessao, id);

                if (validacao != null)
                {
                    return(validacao);
                }

                try
                {
                    sessao.BeginTransaction();

                    var grupoMedidaProjetoAtual = GrupoMedidaProjetoDAO.Instance.GetElementByPrimaryKey(id);

                    grupoMedidaProjetoAtual = new ConverterCadastroAtualizacaoParaGrupoMedidaProjeto(dados, grupoMedidaProjetoAtual)
                                              .ConverterParaGrupoMedidaProjeto();

                    LogAlteracaoDAO.Instance.LogGrupoMedidaProjeto(grupoMedidaProjetoAtual);

                    GrupoMedidaProjetoDAO.Instance.Update(sessao, grupoMedidaProjetoAtual);

                    sessao.Commit();

                    return(this.Aceito($"Grupo de medida de projeto atualizado com sucesso!"));
                }
                catch (Exception ex)
                {
                    sessao.Rollback();
                    return(this.ErroValidacao($"Erro ao atualizar grupo de medida de projeto.", ex));
                }
            }
        }
        public IHttpActionResult CadastrarGrupoMedidaProjeto([FromBody] CadastroAtualizacaoDto dados)
        {
            using (var sessao = new GDATransaction())
            {
                try
                {
                    sessao.BeginTransaction();

                    var grupoMedidaProjeto = new ConverterCadastroAtualizacaoParaGrupoMedidaProjeto(dados)
                                             .ConverterParaGrupoMedidaProjeto();

                    var id = GrupoMedidaProjetoDAO.Instance.Insert(sessao, grupoMedidaProjeto);

                    sessao.Commit();

                    return(this.Criado("Grupo de medida de projeto cadastrado com sucesso!", id));
                }
                catch (Exception ex)
                {
                    sessao.Rollback();
                    return(this.ErroValidacao($"Erro ao cadastrar grupo de medida de projeto.", ex));
                }
            }
        }