public ActionResult Delete(Cuota cuota) { try { cuota.Motivo = "Delete Cuota"; CuotaData.bajaCuota(cuota); return(Json(new { ok = true })); } catch (Exception e) { while (e.InnerException != null) { e = e.InnerException; } ViewBag.ErrorMessage = string.Format(Strings.ErrorEliminarRegistroPorIntegridad); } ViewBag.modo = "Delete"; string callback = Request.Params["callback"]; if (string.IsNullOrEmpty(callback)) { callback = "AjaxOk"; } ViewBag.Callback = callback; PrepararViewBag(false, cuota); return(PartialView("Cuota", cuota)); }
public ActionResult Delete(int?id) { if (id == null || !id.HasValue) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } string callback = Request.Params["callback"]; if (string.IsNullOrEmpty(callback)) { callback = "AjaxOk"; } ViewBag.Callback = callback; ViewBag.modo = "Delete"; Cuota cuota = CuotaData.consultarCuota(id.Value); if (cuota == null) { return(HttpNotFound()); } PrepararViewBag(false, cuota); return(View("Cuota", cuota)); }
public ActionResult Edit(int?id) { if (id == null || !id.HasValue) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } string callback = Request.Params["callback"]; if (string.IsNullOrEmpty(callback)) { callback = "AjaxOk"; } //var curso = new curso(); ViewBag.modo = "Edit"; ViewBag.Callback = callback; Cuota cuota = CuotaData.consultarCuota(id.Value); if (cuota == null) { return(HttpNotFound()); } Session.Add("cuota_" + cuota.Id.ToString(), cuota); PrepararViewBag(false, cuota); return(View("Cuota", cuota)); }
public ActionResult PartialGrid(string IdUsuario = "", int?IdSede = null, int?IdCurso = null, int?IdOferta = null, string estado = "", int?IdPeriodo = null, int?IdConcepto = null, int?IdTipoCurso = null, int?NroCuotaDesde = null, int?NroCuotaHasta = null, decimal?ImporteDesde = null, decimal?ImporteHasta = null, decimal?Importe2Desde = null, decimal?Importe2Hasta = null, DateTime?FechaVtoDesde = null, DateTime?FechaVtoHasta = null, DateTime?FechaVto2Desde = null, DateTime?FechaVto2Hasta = null, DateTime?FechaPagoDesde = null, DateTime?FechaPagoHasta = null, DateTime?FechaBajaDesde = null, DateTime?FechaBajaHasta = null ) { if (User.IsInRole("Ventanilla") && ApplicationUser.GetSede() != 19) { IdSede = ApplicationUser.GetSede(); } var cuotas = new List <Cuota>(); cuotas = CuotaData.consultarCuotas(IdUsuario, IdSede, IdCurso, IdOferta, estado, IdPeriodo, IdConcepto, IdTipoCurso, NroCuotaDesde, NroCuotaHasta, ImporteDesde, ImporteHasta, Importe2Desde, Importe2Hasta, FechaVtoDesde, FechaVtoHasta, FechaVto2Desde, FechaVto2Hasta, FechaPagoDesde, FechaPagoHasta, FechaBajaDesde, FechaBajaHasta ); string codigosCuotas = ""; // ofertas.Select(x => x.codigo).ToList().ForEach(; cuotas.Where(x => x.Estado == "0").ToList().ForEach(x => codigosCuotas += "|" + x.Id.ToString()); Session.Remove("cuotasParaEnviarEmail"); Session.Add("cuotasParaEnviarEmail", codigosCuotas); return(PartialView("_Grid", cuotas)); }
public bool TieneDeudaAlumnoVencida(long id, string origen = "", DateTime?fecha = null, bool?SegundoVencimiento = null) { if (!fecha.HasValue) { fecha = DateTime.Now; } return(CuotaData.TieneDeudaVencida(id, origen, fecha.Value, SegundoVencimiento)); }
public ActionResult imputar(int IdCuota) { Cuota cuota = new Cuota(); cuota.Motivo = "Imputación manual - " + ApplicationUser.GetApellidoYNombre(); cuota.Id = IdCuota; CuotaData.ImputarPagoCuota(cuota); return(Json(new { ok = true })); }
public ActionResult baja(int IdCuota) { Cuota cuota = new Cuota(); cuota.Motivo = "Baja manual - " + ApplicationUser.GetApellidoYNombre(); cuota.Id = IdCuota; CuotaData.bajaCuota(cuota); return(Json(new { ok = true })); }
public ActionResult ConfirmarSolicitud(int?codigo) { try { if (codigo == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } // else //Imputo las cuotas de las personas que se aceptaron la baja //imputarCuotas(codigo); cursa cursa = db.cursa.Find(codigo); cursa.estado = 6; ModelState.Remove("DescripcionBaja"); db.Configuration.ValidateOnSaveEnabled = false; if (db.SaveChanges() > 0) { List <Cuota> cuotas = CuotaData.consultarCuotas(cursa.alumno.ToString(), null, cursa.oferta1.curso).Where(x => x.NroFactura.Contains(cursa.codigo.ToString()) && !x.Estado.Equals("B")).ToList(); BajasCuotas(cuotas); //Enviar mail al alumno string mail = db.AspNetUsers.Where(x => x.Id.Equals(cursa.alumno)).First().Email; cnrl.Logica.App.enviarMailUsuario(mail, "Solicitud de Baja", "Se aprobó la solicitud de baja solicitada " + "para el curso " + cursa.oferta1.curso1.descripcion + ", codigo de curso " + cursa.oferta1.curso1.codCurso + ".<br><br> "); if (cursa.DescripcionBaja != null) { return(Json(new { ok = true, motivo = "El alumno/a <b>" + cursa.AspNetUsers.Apellido + ", " + cursa.AspNetUsers.Nombre + "</b> solicito la baja de cursada por el siguiente motivo: <br><b>" + cursa.DescripcionBaja + "</b>" })); } else { return(Json(new { ok = true, motivo = "" })); } } else { return(Json(new { ok = false })); } } catch (Exception e) { while (e.InnerException != null) { e = e.InnerException; } ViewBag.ErrorMessage = string.Format(Strings.ErrorIntentarInsertarRegistro, e.Message.Replace(Strings.TheStatementHasBeenTerminated, "")); return(View()); } }
public async Task <ActionResult> Edit(Cuota cuota) { try { if (ModelState.IsValid) { //LLAMAR WEBSERVICE POST var oferta = db.oferta.Find(cuota.NroComision); if (oferta != null) { cuota.NroCurso = oferta.curso; cuota.CodCon = oferta.curso1.concepto; } var cuotaOriginal = (Cuota)Session["cuota_" + cuota.Id.ToString()]; if (oferta == null) { cuota.NroCurso = cuotaOriginal.NroCurso; cuota.CodCon = cuotaOriginal.CodCon; } cuota.Motivo = cuotaOriginal.Motivo; cuota.fechaBaja = cuotaOriginal.fechaBaja; cuota.fechaPago = cuotaOriginal.fechaPago; cuota.NroFactura = cuotaOriginal.NroFactura; cuota.Estado = cuotaOriginal.Estado; cuota.Origen = cuotaOriginal.Origen; await CuotaData.actualizarCuota(cuota); Session.Remove("cuota_" + cuota.Id.ToString()); return(Json(new { ok = true })); } } catch (Exception e) { while (e.InnerException != null) { e = e.InnerException; } ViewBag.ErrorMessage = string.Format( Strings.ErrorIntentarInsertarRegistro, e.Message.Replace(Strings.TheStatementHasBeenTerminated, "") ); } ViewBag.modo = "Edit"; ViewBag.Callback = "AjaxOk"; PrepararViewBag(false, cuota); return(View("Cuota", cuota)); }
public ActionResult Exportar(string hiddenUsuario = "", int?IdSede = null, int?IdCurso = null, int?IdOferta = null, string estado = "", int?IdPeriodo = null, int?IdConcepto = null, int?IdTipoCurso = null, int?NroCuotaDesde = null, int?NroCuotaHasta = null, decimal?ImporteDesde = null, decimal?ImporteHasta = null, decimal?Importe2Desde = null, decimal?Importe2Hasta = null, DateTime?FechaVtoDesde = null, DateTime?FechaVtoHasta = null, DateTime?FechaVto2Desde = null, DateTime?FechaVto2Hasta = null, DateTime?FechaPagoDesde = null, DateTime?FechaPagoHasta = null, DateTime?FechaBajaDesde = null, DateTime?FechaBajaHasta = null) { var cuotas = new List <Cuota>(); if (User.IsInRole("Ventanilla")) { IdSede = ApplicationUser.GetSede(); } cuotas = CuotaData.consultarCuotas(hiddenUsuario, IdSede, IdCurso, IdOferta, estado, IdPeriodo, IdConcepto, IdTipoCurso, NroCuotaDesde, NroCuotaHasta, ImporteDesde, ImporteHasta, Importe2Desde, Importe2Hasta, FechaVtoDesde, FechaVtoHasta, FechaVto2Desde, FechaVto2Hasta, FechaPagoDesde, FechaPagoHasta, FechaBajaDesde, FechaBajaHasta ); ExportSettings.DefaultExportType = ExportType.WYSIWYG; return(GridViewExtension.ExportToXlsx(CrearGridViewSettingsExportar("Cuotas"), cuotas, true)); }
public void imputarCuotas(int?codigo) { Cuota cuota = new Cuota(); string motivo = "Imputación manual - " + ApplicationUser.GetApellidoYNombre(); cuota.Motivo = motivo; cursa cursa = db.cursa.Find(codigo); List <oferta> oferta = db.oferta.Where(z => z.codigo.Equals(cursa.oferta1.codigo)).ToList(); AspNetUsers pibe = db.AspNetUsers.Where(x => x.Id.Equals(cursa.alumno)).First(); // var cuotas = new List <Cuota>(); cuotas = CuotaData.consultarCuotas(pibe.Id, null, oferta[0].curso, oferta[0].codigo, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null ); // var httpClient = new HttpClient(); httpClient.BaseAddress = new Uri(ConfigurationManager.AppSettings["ServicioTeso"]); httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", Convert.ToBase64String(System.Text.ASCIIEncoding.ASCII.GetBytes(ConfigurationManager.AppSettings["ServicioTesoUsuario"]))); List <KeyValuePair <string, object> > parametros = new List <KeyValuePair <string, object> >(); foreach (Cuota parcial in cuotas) { parametros.Add(new KeyValuePair <string, object>("id", parcial.Id.ToString())); parametros.Add(new KeyValuePair <string, object>("motivo", motivo)); var responseGet = httpClient.GetAsync("Cuota/ImputarPagoCuota" + Constantes.AsQueryString(parametros)).Result; var respuesta = responseGet.Content.ReadAsAsync <bool>().Result; if (responseGet.IsSuccessStatusCode == false) { throw new Exception("Error en servicio Tesoreria"); } parametros.Clear(); } }
public ActionResult VerMotivoBaja(int?codigo) { try { if (codigo == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } /*else * //Imputo las cuotas de las personas que se aceptaron la baja * imputarCuotas(codigo);*/ cursa cursa = db.cursa.Find(codigo); //cursa.estado = 6; //ModelState.Remove("DescripcionBaja"); //db.Configuration.ValidateOnSaveEnabled = false; //if (db.SaveChanges() > 0) //{ //List<Cuota> cuota = CuotaData.consultarCuotas(cursa.alumno.ToString(), null, cursa.oferta1.curso, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null); List <Cuota> cuota = CuotaData.consultarCuotas(cursa.alumno.ToString(), null, cursa.oferta1.curso).Where(x => x.NroFactura.Contains(cursa.codigo.ToString()) && !x.Estado.Equals("B")).ToList(); string cuotasMensaje = ""; cuotasMensaje = "<div><table class=\"table\"><thead><tr><th><strong> Cuota </strong></th>"; cuotasMensaje += "<th><strong> Importe </strong></th>"; cuotasMensaje += "<th><strong> Estado </strong></th>"; cuotasMensaje += "<th><strong> Fecha Vto </strong></th></tr></thead>"; foreach (Cuota item in cuota) { cuotasMensaje += "<tbody><tr><td>" + item.NroCuota + "</td><td>$" + decimal.Round(item.Importe, 2) + "</td><td>" + item.EstadoDescripcion + "</td><td>" + item.fechavto.Value.ToShortDateString() + "</td></tr>"; } cuotasMensaje += "</tbody></table></div>"; if (cursa.DescripcionBaja != null) { return(Json(new { ok = true, curso = cursa.oferta1.curso1.descripcion.ToString(), cuotas = cuotasMensaje, motivo = "El alumno/a <b>" + cursa.AspNetUsers.Apellido + ", " + cursa.AspNetUsers.Nombre + "</b> solicito la baja de cursada por el siguiente motivo: <br><b>" + cursa.DescripcionBaja + "</b><br> ¿Acepta la Baja?", fechaBaja = cursa.DateModified.ToShortDateString().ToString() })); } else { return(Json(new { ok = true, curso = cursa.oferta1.curso1.descripcion.ToString(), cuotas = cuotasMensaje, motivo = "", fechaBaja = cursa.DateModified.ToShortDateString().ToString() })); } //} //else //return Json(new { ok = false }); } catch (Exception e) { while (e.InnerException != null) { e = e.InnerException; } ViewBag.ErrorMessage = string.Format(Strings.ErrorIntentarInsertarRegistro, e.Message.Replace(Strings.TheStatementHasBeenTerminated, "")); return(View()); } }
public ActionResult Enviar(MailModel mail, HttpPostedFileBase adjunto1, HttpPostedFileBase adjunto2, HttpPostedFileBase adjunto3, HttpPostedFileBase adjunto4) { int Ok = 0; int Error = 0; if (adjunto1 != null) { //mail.ImageMimeType = adjunto.ContentType; mail.adjunto = new byte[adjunto1.ContentLength]; adjunto1.InputStream.Read(mail.adjunto, 0, adjunto1.ContentLength); } List <MailModel> mails = new List <MailModel>(); if (!string.IsNullOrEmpty(mail.modo) && mail.modo == "Oferta") { //var ofertas = (List<oferta>)Session["ofertasParaEnviarEmail"]; var codigos = mail.codigos != null?mail.codigos.Split('|') : null; if (codigos != null && codigos.Count() > 0) { oferta ofertaAdministrador = null; foreach (var cod in codigos) { int codigo = 0; if (int.TryParse(cod, out codigo)) { var oferta = db.oferta.Find(codigo); ofertaAdministrador = oferta; foreach (var cur in oferta.cursa) { var email = new MailModel(); email.asunto = reemplazarVariablesOferta(reemplazarVariablesUsuario(mail.asunto, cur.AspNetUsers), oferta); email.editor = reemplazarVariablesOferta(reemplazarVariablesUsuario(mail.editor, cur.AspNetUsers), oferta); email.destinatarios = cur.AspNetUsers.Email; if (!mails.Where(x => x.destinatarios == email.destinatarios).Any() || (mails.Where(x => x.destinatarios == email.destinatarios).Any() && (!mails.Where(x => x.asunto == email.asunto).Any() || !mails.Where(x => x.editor == email.editor).Any()))) //evita enviar el mismo mail a una persona 2 veces (si es que no se usaron variables) { mails.Add(email); } } } } if (ofertaAdministrador != null) { var userAdministrador = db.AspNetUsers.Find(ApplicationUser.GetId()); var emailAdministrador = new MailModel(); emailAdministrador.asunto = reemplazarVariablesOferta(reemplazarVariablesUsuario(mail.asunto, userAdministrador), ofertaAdministrador); emailAdministrador.editor = reemplazarVariablesOferta(reemplazarVariablesUsuario(mail.editor, userAdministrador), ofertaAdministrador); emailAdministrador.destinatarios = userAdministrador.Email; } } } else if (!string.IsNullOrEmpty(mail.modo) && mail.modo == "Deuda") { //var ofertas = (List<oferta>)Session["ofertasParaEnviarEmail"]; //var codigos = mail.codigos.Split('|'); var cuotas = CuotaData.consultarCuotas(mail.codigos); //asdas foreach (var cuota in cuotas) { var oferta = db.oferta.Find(cuota.NroComision); var usuario = db.AspNetUsers.Where(x => x.NroDocumento == cuota.Dni).First(); if (oferta != null && usuario != null) { var email = new MailModel(); email.asunto = reemplazarVariablesCuota(reemplazarVariablesOferta(reemplazarVariablesUsuario(mail.asunto, usuario), oferta), cuota); email.editor = reemplazarVariablesCuota(reemplazarVariablesOferta(reemplazarVariablesUsuario(mail.editor, usuario), oferta), cuota); email.destinatarios = usuario.Email; if (!mails.Where(x => x.destinatarios == email.destinatarios).Any() || (mails.Where(x => x.destinatarios == email.destinatarios).Any() && (!mails.Where(x => x.asunto == email.asunto).Any() || !mails.Where(x => x.editor == email.editor).Any()))) //evita enviar el mismo mail a una persona 2 veces (si es que no se usaron variables) { mails.Add(email); } } } } else if (!string.IsNullOrEmpty(mail.modo) && mail.modo == "Usuario") { var nrosDoc = Session["usuariosParaEnviarEmail"].ToString(); var codigos = nrosDoc.Split('|'); foreach (var cod in codigos) { int codigo = 0; if (int.TryParse(cod, out codigo)) { var usuario = db.AspNetUsers.Where(x => x.NroDocumento == codigo).First(); var email = new MailModel(); email.asunto = reemplazarVariablesUsuario(mail.asunto, usuario); email.editor = reemplazarVariablesUsuario(mail.editor, usuario); email.destinatarios = usuario.Email; if (!mails.Where(x => x.destinatarios == email.destinatarios).Any() || (mails.Where(x => x.destinatarios == email.destinatarios).Any() && (!mails.Where(x => x.asunto == email.asunto).Any() || !mails.Where(x => x.editor == email.editor).Any()))) //evita enviar el mismo mail a una persona 2 veces (si es que no se usaron variables) { mails.Add(email); } } } foreach (var email in mails) { string resultado = cnrl.Logica.App.EnviarMailComunicacion( email.destinatarios, email.asunto, email.editor, false, User.Identity.Name, adjunto1, adjunto2, adjunto3, adjunto4); if (resultado == "Ok") { Ok++; } else { Error++; } } ViewBag.Enviados = Ok; ViewBag.Errores = Error; ViewBag.Error = (Error > 0) ? true : false; ViewBag.Mensaje = ""; return(View("Enviados")); } else { ViewBag.Enviados = 0; ViewBag.Errores = 0; ViewBag.Error = true; ViewBag.Mensaje = "No habia datos en sesión"; return(View("Enviados")); } foreach (var email in mails) { string resultado = cnrl.Logica.App.EnviarMailComunicacion( email.destinatarios, email.asunto, email.editor, false, User.Identity.Name, adjunto1, adjunto2, adjunto3, adjunto4); if (resultado == "Ok") { Ok++; } else { Error++; } } ViewBag.Enviados = Ok; ViewBag.Errores = Error; ViewBag.Error = (Error > 0) ? true : false; ViewBag.Mensaje = ""; return(Json(new { ok = (Ok > 0) ? true : false })); // return View("Enviados"); //return GridViewExtension.ExportToXls(CrearGridViewSettingsExportar(letra), personas, true); }
public bool TieneDeudaAlumno(long id) { return(CuotaData.TieneDeuda(id)); }
public async System.Threading.Tasks.Task <ActionResult> EmitirCuponCuota(int?id) { if (id != null && id.HasValue) { var cuota = CuotaData.consultarCuota(id.Value); var usuario = db.AspNetUsers.Where(x => x.NroDocumento == cuota.Dni).FirstOrDefault(); var oferta = db.oferta.Find(cuota.NroComision); //cursa cursa = null; //int NroCursa = 0; //var SNroCursa = cuota.NroFactura.Split('_').First(); //if (int.TryParse(SNroCursa, out NroCursa)) //{ // cursa = db.cursa.Where(x => x.codigo == NroCursa).FirstOrDefault(); //} using (var httpClient = new HttpClient()) { httpClient.BaseAddress = new Uri(ConfigurationManager.AppSettings["ServicioTeso"]); httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", Convert.ToBase64String(System.Text.ASCIIEncoding.ASCII.GetBytes(ConfigurationManager.AppSettings["ServicioTesoUsuario"]))); List <KeyValuePair <string, object> > parametros = new List <KeyValuePair <string, object> >(); parametros.Add(new KeyValuePair <string, object>("origen", ConfigurationManager.AppSettings["OrigenTeso"])); parametros.Add(new KeyValuePair <string, object>("nroFactura", cuota.NroFactura)); if (usuario != null) { parametros.Add(new KeyValuePair <string, object>("nombre", CultureInfo.CurrentCulture.TextInfo.ToTitleCase(usuario.descripcion.ToLower()))); } if (oferta != null && oferta.curso1 != null) { parametros.Add(new KeyValuePair <string, object>("curso", oferta.curso1.descripcion)); } else { if (cuota.NroCurso > 0) { var curso = db.curso.Where(x => x.codCurso == cuota.NroCurso).FirstOrDefault(); if (curso != null) { parametros.Add(new KeyValuePair <string, object>("curso", curso.descripcion)); } } } //if (cuota.NroCuota == 1) //{ if (oferta != null && oferta.curso1 != null && oferta.curso1.tipocurso1.sector != (int)Sectores.Graduados) { int dias = int.Parse(ConfigurationManager.AppSettings["Dias1erCuota"].ToString()); parametros.Add(new KeyValuePair <string, object>("vencimientoRelativo", true)); parametros.Add(new KeyValuePair <string, object>("diasVencimientoRelativo", dias)); parametros.Add(new KeyValuePair <string, object>("tipoCurso", true)); } //} var responseGet = await httpClient.GetAsync("Cuota.pdf" + Constantes.AsQueryString(parametros)); var cuponPdf = await responseGet.Content.ReadAsByteArrayAsync(); return(File(cuponPdf, "application/pdf", string.Format("{0}-{1}.pdf", cuota.Dni, DateTime.Now.ToShortDateString()))); } } else { throw new Exception("Error en llamada a Servicio"); } }
public async Task <ActionResult> Create(Cuota cuota) { try { ModelState.Remove("Id"); if (ModelState.IsValid) { var oferta = db.oferta.Find(cuota.NroComision); cuota.NroCurso = oferta.curso; cuota.CodCon = oferta.curso1.concepto; cuota.Motivo = ""; cuota.Estado = Constantes.ESTADO_CUOTA_IMPAGA; cuota.Origen = ConfigurationManager.AppSettings["OrigenTeso"]; var cursa = db.cursa.Where(x => x.oferta == (cuota.NroComision) && x.AspNetUsers.NroDocumento == (cuota.Dni)); if (cursa != null && cursa.Count() > 0) { List <Cuota> cu = CuotaData.consultarCuotas(null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, cursa.First().codigo.ToString()); List <Cuota> cuo = cu.Where(x => x.NroFactura.Contains("_1_")).ToList().OrderByDescending(x => x.NroFactura).ToList(); int sumaCuota = 0; if (cuo.Count() > 0) { string[] split = cuo.First().NroFactura.Split('_'); sumaCuota = int.Parse(split[2]); } if (cuota.TotalCuota == 1) { cuota.NroFactura = cursa.First().codigo.ToString() + "_" + cuota.NroCuota.ToString() + "_" + (cuota.TotalCuota + sumaCuota).ToString(); } else { cuota.NroFactura = cursa.First().codigo.ToString() + "_" + cuota.NroCuota.ToString(); } } else { cuota.NroFactura = oferta.codigo.ToString() + cuota.Dni + "_" + cuota.NroCuota.ToString(); } await CuotaData.generarCuota(cuota); //var content = new StringContent(JsonConvert.SerializeObject(cuota)); //content.Headers.ContentType = new MediaTypeHeaderValue("application/json"); //var response = await client.PostAsync(ConfigurationManager.AppSettings["ServicioTeso"] + "Cuota/GenerarCuota", content); //if (response.IsSuccessStatusCode == false)//error! //{ // var error = await response.Content.ReadAsStringAsync(); // throw new Exception(error); //} return(Json(new { ok = true })); // return RedirectToAction("Index"); } } catch (Exception e) { while (e.InnerException != null) { e = e.InnerException; } ViewBag.ErrorMessage = string.Format( Strings.ErrorIntentarInsertarRegistro, e.Message.Replace(Strings.TheStatementHasBeenTerminated, "") ); } ViewBag.modo = "Create"; ViewBag.Callback = "AjaxOk"; PrepararViewBag(false, cuota); return(PartialView("Cuota", cuota)); }