public ActionResult SalvarReferencia(ReferenciaClienteAprovacao refer) { if (ModelState.IsValid) { try { var p = Session["Parecer"] as ParecerSolicitacao; using (var refBLL = new ReferenciasClienteAprovacaoBLL()) { refer.Parecer = p; if (refer.CodReferenciaApr == 0) { p.ReferenciasAprovacao.Add(refer); } else { var rf = refBLL.ObterPorCodigo(refer.CodReferenciaApr); var objToRemove = p.ReferenciasAprovacao.Where(r => r.CodReferenciaApr == refer.CodReferenciaApr).FirstOrDefault(); var indice = p.ReferenciasAprovacao.IndexOf(objToRemove); p.ReferenciasAprovacao.Remove(objToRemove); rf.CodBanco = refer.CodBanco; rf.NomeEmpresa = refer.NomeEmpresa; rf.NumAgenciaBancaria = refer.NumAgenciaBancaria; rf.NumContaCorrente = refer.NumContaCorrente; rf.Telefone = refer.Telefone; rf.Observacao = refer.Observacao; rf.TipoReferencia = refer.TipoReferencia; p.ReferenciasAprovacao.Insert(indice, rf); } Session["Parecer"] = p; } return Json(new { msg = "Referência (Aprovação) gravada 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 ExcluirReferencia(int codigo) { using (var bll = new ParecerSolicitacaoBLL()) { var refBLL = new ReferenciasClienteAprovacaoBLL(); var p = Session["Parecer"] as ParecerSolicitacao; try { var refer = p.ReferenciasAprovacao.Where(c => c.CodReferenciaApr == codigo).Single(); p.ReferenciasAprovacao.Remove(refer); refBLL.Excluir(refer); //bll.Atualizar(p); } catch (Exception ex) { return Json(new { erro = ex.Message }, JsonRequestBehavior.DenyGet); } Session["Solicitacao"] = p; return Json(new { msg = "referencia excluida" }, JsonRequestBehavior.DenyGet); } }