コード例 #1
0
        /// <summary>
        /// "Remove" the Business Entity... Actually, just set the "Ativo" field to false. This keeps a history of registered Business Entities  .
        /// </summary>
        /// <param name="entidade"></param>
        /// <returns></returns>
        public IActionResult DeleteEntidade(int entidade)
        {
            EntidadeModel model = new EntidadeModel();

            model.Entidades = new List <EntidadeDTO>();

            try
            {
                EntidadeDTO entidadeDTO = _applicationServiceEntidade.GetById(entidade);

                if (entidadeDTO != null)
                {
                    _applicationServiceEntidade.Remove(entidadeDTO);
                    model.Entidades = _applicationServiceEntidade.GetAll().ToList();
                    model.message   = "Registro removido com sucesso.";
                }

                return(View("Index", model));
            }
            catch (Exception ex)
            {
                model.Entidades = _applicationServiceEntidade.GetAll().ToList();
                model.message   = "Erro ao remover registro.";

                return(View("Index", model));
            }
        }
コード例 #2
0
        public async Task <Object> Add(RhNetContext rhNetContext, EntidadeModel entidadeModel)
        {
            Entidade entidade = new Entidade()
            {
                Codigo_Audesp = entidadeModel.Codigo_Audesp,
                Descricao     = entidadeModel.Descricao
            };

            if (entidadeModel.Municipio_Id.HasValue)
            {
                Municipio municipio = await rhNetContext.Municipios.FindAsync(entidadeModel.Municipio_Id);

                if (municipio != null)
                {
                    entidade.Municipio = municipio;
                    entidadeModel.Municipio_Descricao = municipio.Descricao;
                }
            }
            try
            {
                rhNetContext.Entry(entidade).State = EntityState.Added;
                await rhNetContext.SaveChangesAsync();

                await rhNetContext.Entry(entidade).ReloadAsync();

                entidadeModel.Id = entidade.Id;

                return(entidadeModel);
            }
            catch (DbUpdateException ex)
            {
                return(ex.InnerException.ToString());
            }
        }
コード例 #3
0
        /// <summary>
        /// Redirect to a View with all of relevant details related to this Business Entity.
        /// </summary>
        /// <param name="entidade"></param>
        /// <returns></returns>
        public IActionResult DetalhesEntidade(int entidade)
        {
            EntidadeModel model = new EntidadeModel();

            model.Entidades = new List <EntidadeDTO>();

            model.Entidades.Add(_applicationServiceEntidade.GetById(entidade));

            return(View("DetalhesEntidade", model));
        }
コード例 #4
0
        public IActionResult Index(EntidadeModel model)
        {
            if (TempData.Peek("dtProximaRequisicao") != null && TempData.Peek("requestBlocked") != null)
            {
                ViewData["dtProximaRequisicao"] = TempData.Peek("dtProximaRequisicao").ToString();
            }

            model.Entidades = _applicationServiceEntidade.GetAll().ToList();

            return(View("Index", model));
        }
コード例 #5
0
        /// <summary>
        /// Submits form, get the input text value masked as CNPJ and send it as parameter to ReceitaWS request
        /// </summary>
        /// <returns></returns>
        public IActionResult SubmitForm()
        {
            EntidadeModel model = new EntidadeModel();
            var           cnpj  = Request.Form["cnpj"];

            if (!String.IsNullOrEmpty(cnpj))
            {
                cnpj = Regex.Replace(cnpj, "[^0-9]", "");

                var entidade = Task.Run(async() => await _applicationServiceEntidade.RequestAPI(cnpj));


                if (entidade.Result != null)
                {
                    if (TempData.Peek("dtProximaRequisicao") == null)
                    {
                        TempData["dtProximaRequisicao"] = DateTime.Now.AddMinutes(1);
                    }
                    else
                    {
                        if (DateTime.Now.Subtract(Convert.ToDateTime(TempData.Peek("dtProximaRequisicao"))).TotalSeconds >= 0)
                        {
                            TempData.Remove("dtProximaRequisicao");
                        }
                    }

                    if (entidade.Result.statusCode.Equals(HttpStatusCode.OK))
                    {
                        if (entidade.Result.message == null)
                        {
                            _applicationServiceEntidade.Add(entidade.Result.entidade);
                            model.Entidades = _applicationServiceEntidade.GetAll().ToList();
                        }
                        else
                        {
                            model.message = entidade.Result.message;
                        }
                    }
                    else if (entidade.Result.statusCode.Equals(HttpStatusCode.TooManyRequests))
                    {
                        ViewData["dtProximaRequisicao"] = TempData.Peek("dtProximaRequisicao").ToString();
                        TempData["requestBlocked"]      = true;
                    }
                    else
                    {
                        model.message = "Erro ao enviar requisição.";
                    }
                }
            }

            return(RedirectToAction("Index", model));
        }
コード例 #6
0
        public async Task <IHttpActionResult> Remove([FromBody] EntidadeModel model)
        {
            object result = await repository.Remove(rhNetContext, model);

            if (result.GetType() == typeof(EntidadeModel))
            {
                return(Ok(result));
            }
            else
            {
                return(BadRequest(result.ToString()));
            }
        }
コード例 #7
0
 public void ParaViewModel(EntidadeModel ent)
 {
     Id        = ent.Id;
     Nome      = ent.Nome;
     Uf        = ent.Uf;
     Cidade    = ent.Cidade;
     Endereco  = ent.Endereco;
     Email     = ent.Email;
     Telefone  = ent.Telefone;
     Login     = ent.Login;
     Senha     = ent.Senha;
     ArquivoId = ent.ArquivoId;
     Cnpj      = ent.Cnpj;
     Descricao = ent.Descricao;
 }
コード例 #8
0
        public async Task <IHttpActionResult> Update([FromBody] EntidadeModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            object result = await repository.Update(rhNetContext, model);

            if (result.GetType() == typeof(EntidadeModel))
            {
                return(Ok(result));
            }
            else
            {
                return(BadRequest(result.ToString()));
            }
        }
コード例 #9
0
        public EntidadeModel SelecionarPorLogin(string login)
        {
            try
            {
                using (UnitOfWorkAdo unit = new UnitOfWorkAdo(_connectionString))
                {
                    EntidadeModel entidade = new EntidadeModel();

                    entidade.Login = login;

                    return(unit.Entidades.SelecionarPorLogin(entidade));
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
コード例 #10
0
        public EntidadeModel ParaModel()
        {
            EntidadeModel ent = new EntidadeModel();

            ent.Id       = Id;
            ent.Nome     = Nome;
            ent.Uf       = Uf;
            ent.Cidade   = Cidade;
            ent.Endereco = Endereco;
            ent.Email    = Email;
            ent.Telefone = Telefone;
            ent.Login    = Login;
            ent.DefinirSenha(Senha);
            ent.ArquivoId = ArquivoId;
            ent.Cnpj      = Cnpj;
            ent.Descricao = Descricao;
            ent.Projetos  = new List <ProjetoModel>();

            return(ent);
        }
コード例 #11
0
        public async Task <Object> Remove(RhNetContext rhNetContext, EntidadeModel entidadeModel)
        {
            Entidade entidade = await rhNetContext.Entidades.FindAsync(entidadeModel.Id);

            if (entidade == null)
            {
                return("Entidade não encontrada.");
            }

            try
            {
                rhNetContext.Entry(entidade).State = EntityState.Deleted;
                await rhNetContext.SaveChangesAsync();

                return(entidadeModel);
            }
            catch (DbUpdateException ex)
            {
                return(ex.InnerException.ToString());
            }
        }
コード例 #12
0
        public void AlterarEntidade(EntidadeModel entidade)
        {
            try
            {
                using (UnitOfWorkAdo unit = new UnitOfWorkAdo(_connectionString))
                {
                    var tipo = new TipoUsuarioModel();
                    tipo.Descricao = TipoUsuarioModel.DescricaoEntidade;

                    entidade.TipoUsuario   = unit.TiposUsuario.SelecionarPorDescricao(tipo);
                    entidade.RoleId        = entidade.TipoUsuario.Id;
                    entidade.Descriminador = UsuarioModel.DescriminadorEntidade;

                    unit.Entidades.Alterar(entidade);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
コード例 #13
0
        public async Task <Object> Update(RhNetContext rhNetContext, EntidadeModel entidadeModel)
        {
            Entidade entidade = await rhNetContext.Entidades.FindAsync(entidadeModel.Id);

            if (entidade == null)
            {
                return("Entidade não encontrada.");
            }
            entidade.Descricao     = entidadeModel.Descricao;
            entidade.Codigo_Audesp = entidadeModel.Codigo_Audesp;

            if (entidadeModel.Municipio_Id.HasValue)
            {
                Municipio municipio = await rhNetContext.Municipios.FindAsync(entidadeModel.Municipio_Id);

                if (municipio != null)
                {
                    entidade.Municipio = municipio;
                    entidadeModel.Municipio_Descricao = municipio.Descricao;
                }
            }
            else
            {
                entidade.Municipio = null;
                entidadeModel.Municipio_Descricao = "";
            }

            try
            {
                rhNetContext.Entry(entidade).State = EntityState.Modified;
                await rhNetContext.SaveChangesAsync();

                return(entidadeModel);
            }
            catch (DbUpdateException ex)
            {
                return(ex.InnerException.ToString());
            }
        }
コード例 #14
0
        public async Task <ActionResult> Remove([FromServices] RhNetContext rhNetContext, [FromBody] EntidadeModel entidadeModel)
        {
            EntitadeRepository repository = new EntitadeRepository();
            object             result     = await repository.Remove(rhNetContext, entidadeModel);

            if (result.GetType() == typeof(EntidadeModel))
            {
                return(Ok(result));
            }
            else
            {
                return(BadRequest(result.ToString()));
            }
        }