public ActionResult SalvarEnderecoEntrega(EnderecoEntregaClienteAprovacao endEnt) { if (ModelState.IsValid) { try { var p = Session["Parecer"] as ParecerSolicitacao; using (var endEntBLL = new EnderecoEntregaClienteAprovacaoBLL()) { endEnt.Parecer = p; if (endEnt.CodEnderecoEntregaClienteApr == 0) { p.EnderecosEntregaAprovacao.Add(endEnt); } else { var ee = endEntBLL.ObterPorCodigo(endEnt.CodEnderecoEntregaClienteApr); var objToRemove = p.EnderecosEntregaAprovacao.Where(e => e.CodEnderecoEntregaClienteApr == endEnt.CodEnderecoEntregaClienteApr).FirstOrDefault(); var indice = p.EnderecosEntregaAprovacao.IndexOf(objToRemove); p.EnderecosEntregaAprovacao.Remove(objToRemove); ee.Bairro = endEnt.Bairro; ee.Cep = endEnt.Cep; ee.Cidade = endEnt.Cidade; ee.CodRota = endEnt.CodRota; ee.CodSubRota = Regex.Replace(endEnt.CodSubRota, @"(\s+)|(\\+)|(\.+)|(/+)|(\-+)", ""); ee.Complemento = endEnt.Complemento; ee.Estado = endEnt.Estado; ee.FaixaInicialCEP = endEnt.FaixaInicialCEP; ee.Logradouro = endEnt.Logradouro; ee.NomContato = endEnt.NomContato; ee.Numero = endEnt.Numero; ee.Proximidade = endEnt.Proximidade; ee.Telefone1 = endEnt.Telefone1; ee.Telefone2 = endEnt.Telefone2; ee.CPFCNPJDeEntrega = endEnt.CPFCNPJDeEntrega; p.EnderecosEntregaAprovacao.Insert(indice, ee); } Session["Parecer"] = p; } return Json(new { msg = "Endereço de entrega (Aprovação) gravado com sucesso." }, JsonRequestBehavior.DenyGet); } catch (Exception ex) { return Json(new { erro = "Erro ao tentar gravar endereço de entrega: " + ex.Message }, JsonRequestBehavior.DenyGet); } } else { return Json(new { erro = "Erro interno de validação do endereço de entrega, Verificar o modelo de dados." }, JsonRequestBehavior.DenyGet); } }
public ActionResult ExcluirEnderecoEntrega(int codigo) { using (var bll = new ParecerSolicitacaoBLL()) { var endEntBLL = new EnderecoEntregaClienteAprovacaoBLL(); var p = Session["Parecer"] as ParecerSolicitacao; try { var ent = p.EnderecosEntregaAprovacao.Where(c => c.CodEnderecoEntregaClienteApr == codigo).Single(); p.EnderecosEntregaAprovacao.Remove(ent); endEntBLL.Excluir(ent); //bll.Atualizar(p); } catch (Exception ex) { return Json(new { erro = ex.Message }, JsonRequestBehavior.DenyGet); } Session["Parecer"] = p; return Json(new { msg = "Endereco de entrega excluido" }, JsonRequestBehavior.DenyGet); } }