/// <summary> /// Método que devuelve la vista parcial del desglose de pagos /// </summary> /// <returns></returns> public ActionResult DetallePagoExpress() { try { // Recupero el modelo GenericoViewModel d = (GenericoViewModel)Session["ModeloEnUso"]; var dp = new DesglosePagoModel(); if (d != null) { if (d.TarjetCredito != null) { if (d.TarjetCredito.Count > 0) { dp = CentralAgentesMvc.App_Start.CastObject.Cast<DesglosePagoModel>(d.TarjetCredito.First()); dp.dfVigtarjeta = dp.dfVigtarjeta.Substring(3); } } // Coloco los montos if (dp.mMonto == 0) { dp.mMonto = (d.ObjCalculo.mPago1de == 0 ? d.ObjCalculo.mTotal : d.ObjCalculo.mPago1de); dp.mMontoSig = d.ObjCalculo.mPago2de; } } dp.BancosSource = VarProcInterfazX.arrCatBancos; // Redirecciono return PartialView("_DatosPagoPartial", dp); } catch (Exception err) { Response.StatusCode = (int)(System.Net.HttpStatusCode.InternalServerError); LogDeErrores.RegistroErrorWeb(err, DatoUsuario.idAgente, DatoUsuario.nomAgente, DatoUsuario.sIp, DatoUsuario.sHostName); return Json("ErrInterno"); } }
public ActionResult DesglosePagoEnDocumento(string tipoPago, int pagoID) { try { // Busco info del documento GenericoViewModel modelComplete = (GenericoViewModel)Session["ModeloEnUso"]; DesglosePagoModel dp = new DesglosePagoModel(); switch (tipoPago.ToUpper()) { case "EFECTIVO": case "DEPOSITO": var pagoE = modelComplete.pagos.pagoOtro.FirstOrDefault(t => t.ID == pagoID); dp = CentralAgentesMvc.App_Start.CastObject.Cast<DesglosePagoModel>(pagoE); dp.ID = pagoE.ID; dp.dfVigtarjeta = ""; dp.VigenciaMonth = ""; dp.VigenciaYear = ""; dp.TipoPagoDesc = tipoPago; break; case "TARJETA DE DEBITO": var pagoD = modelComplete.TarjetaDebito.FirstOrDefault(t => t.ID == pagoID); dp = CentralAgentesMvc.App_Start.CastObject.Cast<DesglosePagoModel>(pagoD); dp.ID = pagoD.ID; dp.dfVigtarjeta = dp.dfVigtarjeta.Substring(3); dp.VigenciaMonth = dp.dfVigtarjeta.Substring(0, 2); dp.VigenciaYear = dp.dfVigtarjeta.Substring(3, 4); dp.TipoPagoDesc = tipoPago; break; case "TARJETA DE CREDITO": var pagoC = modelComplete.TarjetCredito.FirstOrDefault(t => t.ID == pagoID); dp = CentralAgentesMvc.App_Start.CastObject.Cast<DesglosePagoModel>(pagoC); dp.ID = pagoC.ID; dp.dfVigtarjeta = dp.dfVigtarjeta.Substring(3); dp.VigenciaMonth = dp.dfVigtarjeta.Substring(0, 2); dp.VigenciaYear = dp.dfVigtarjeta.Substring(3, 4); dp.TipoPagoDesc = tipoPago; break; } SetDesgloseListProperties(ref dp); if (modelComplete.ObjCalculo != null) { dp.mMonto = (modelComplete.ObjCalculo.mPago1de == 0 ? modelComplete.ObjCalculo.mTotal : modelComplete.ObjCalculo.mPago1de); dp.mMontoSig = modelComplete.ObjCalculo.mPago2de; } // Redirecciono return PartialView("DesglosePago", dp); } catch (Exception err) { Response.StatusCode = (int)(System.Net.HttpStatusCode.InternalServerError); LogDeErrores.RegistroErrorWeb(err, DatoUsuario.idAgente, DatoUsuario.nomAgente, DatoUsuario.sIp, DatoUsuario.sHostName); return Json("ErrInterno"); } }
private void SetMediosDePago(ref GenericoViewModel d) { try { // Cargo los pagos en una unica colección d.DocumentosPago = new List<DesglosePagoModel>(); if (d.TarjetCredito != null) { foreach (var tc in d.TarjetCredito) { var dp = new DesglosePagoModel() { TipoPagoDesc = "TARJETA DE CREDITO", ID = tc.ID, cTpoTarjeta = tc.cTpoTarjeta, cBancoDesc = tc.cBancoDesc, mMonto = tc.mMonto, mMontoSig = tc.mMontoSig, cNoTarjeta = tc.cNoTarjeta, dfVigtarjeta = tc.dfVigtarjeta.Substring(3), VigenciaMonth = tc.dfVigtarjeta.Substring(3, 2), VigenciaYear = tc.dfVigtarjeta.Substring(6), cTitular = tc.cTitular, cCodNegro = tc.cCodNegro, }; d.DocumentosPago.Add(dp); } } if (d.TarjetaDebito != null) { foreach (var td in d.TarjetaDebito) { var dp = new DesglosePagoModel() { TipoPagoDesc = "TARJETA DE DEBITO", ID = td.ID, cTpoTarjeta = td.cTpoTarjeta, cBancoDesc = td.cBancoDesc, mMonto = td.mMonto, mMontoSig = td.mMontoSig, cNoTarjeta = td.cNoTarjeta, dfVigtarjeta = td.dfVigtarjeta.Substring(3), VigenciaMonth = td.dfVigtarjeta.Substring(3, 2), VigenciaYear = td.dfVigtarjeta.Substring(6), cTitular = td.cTitular, cCodNegro = "", }; d.DocumentosPago.Add(dp); } } if (d.pagos != null) { if (d.pagos.pagoOtro != null) { foreach (var op in d.pagos.pagoOtro) { var dp = new DesglosePagoModel() { TipoPagoDesc = op.nFormaPagoIDDesc, ID = op.ID, cTpoTarjeta = "", cBancoDesc = "", mMonto = op.mMonto, mMontoSig = op.mMontoSig, cNoTarjeta = "", dfVigtarjeta = "", VigenciaMonth = "", VigenciaYear = "", cTitular = "", cCodNegro = "", }; d.DocumentosPago.Add(dp); } } } } catch (Exception err) { Response.StatusCode = (int)(System.Net.HttpStatusCode.InternalServerError); LogDeErrores.RegistroErrorWeb(err, DatoUsuario.idAgente, DatoUsuario.nomAgente, DatoUsuario.sIp, DatoUsuario.sHostName); throw err; } }
private void SetDesgloseListProperties(ref DesglosePagoModel dp) { try { dp.BancosSource = VarProcInterfazX.arrCatBancos; dp.TipoPagoSource = VarProcInterfazX.arrTipoPago; dp.Years = new Dictionary<string, string>(); for (int i = DateTime.Now.Year; i < DateTime.Now.Year + 11; i++) { dp.Years.Add(i.ToString(), i.ToString()); } dp.Months = new Dictionary<string, string>(); for (int i = 1; i < 13; i++) { dp.Months.Add(i.ToString().PadLeft(2, '0'), i.ToString().PadLeft(2, '0')); } // Prevenir valores requeridos if (dp.TipoPagoDesc.ToUpper() == "EFECTIVO" || dp.TipoPagoDesc.ToUpper() == "DEPOSITO") { dp.cNoTarjeta = "11111"; dp.dfVigtarjeta = "01/1900"; dp.cCodNegro = "999"; dp.cTitular = "XXXX"; } if (dp.TipoPagoDesc.ToUpper() == "TARJETA DE DEBITO") { dp.cCodNegro = "999"; } } catch (Exception err) { Response.StatusCode = (int)(System.Net.HttpStatusCode.InternalServerError); LogDeErrores.RegistroErrorWeb(err, DatoUsuario.idAgente, DatoUsuario.nomAgente, DatoUsuario.sIp, DatoUsuario.sHostName); throw err; } }
public ActionResult CreateDesglosePago() { try { // Recupero el modelo var modelComplete = (GenericoViewModel)Session["ModeloEnUso"]; // Consecutivo de Desglose Pagos int consec = 1; switch (modelComplete.TipoPagoInfo.Descripcion.ToUpper()) { case "EFECTIVO": case "DEPOSITO": if (modelComplete.pagos != null) { if (modelComplete.pagos.pagoOtro != null) consec = modelComplete.pagos.pagoOtro.Count + 1; } break; case "TARJETA DE DEBITO": if (modelComplete.TarjetaDebito != null) consec = modelComplete.TarjetaDebito.Count + 1; break; case "TARJETA DE CREDITO": if (modelComplete.TarjetCredito != null) consec = modelComplete.TarjetCredito.Count + 1; break; } var desglosePago = new DesglosePagoModel(); desglosePago.ID = consec; desglosePago.indice = consec; if (modelComplete.ObjCalculo != null) { desglosePago.mMonto = (modelComplete.ObjCalculo.mPago1de == 0 ? modelComplete.ObjCalculo.mTotal : modelComplete.ObjCalculo.mPago1de); desglosePago.mMontoSig = modelComplete.ObjCalculo.mPago2de; } desglosePago.TipoPagoDesc = modelComplete.TipoPagoInfo.Descripcion; SetDesgloseListProperties(ref desglosePago); return PartialView("DesglosePago", desglosePago); } catch (Exception err) { Response.StatusCode = (int)(System.Net.HttpStatusCode.InternalServerError); LogDeErrores.RegistroErrorWeb(err, DatoUsuario.idAgente, DatoUsuario.nomAgente, DatoUsuario.sIp, DatoUsuario.sHostName); return Json("ErrInterno"); } }
public ActionResult UpdateDesglosePago(DesglosePagoModel dp) { try { if (!ModelState.IsValid) { return Json(new { success = false, errores = GetElementsFromModelState(), validaciones = "" }); } // Recupero el modelo var modelComplete = (GenericoViewModel)Session["ModeloEnUso"]; switch (dp.TipoPagoDesc.ToUpper()) { case "EFECTIVO": case "DEPOSITO": { // Agregar el pago a la colección if (modelComplete.pagos == null) modelComplete.pagos = new ClsPago(); if (modelComplete.pagos.pagoOtro == null) modelComplete.pagos.pagoOtro = new List<ClsPagoOtro>(); if (modelComplete.pagos.pagoOtro.FirstOrDefault(t => t.ID == dp.ID) != null) { var remove = modelComplete.pagos.pagoOtro.FirstOrDefault(t => t.ID == dp.ID); modelComplete.pagos.pagoOtro.Remove(remove); } var idT = VarProcInterfazX.arrTipoPago.First(p => p.strDesc == dp.TipoPagoDesc).strCve; var idF = VarProcInterfazX.arrFormaPago.First(f => f.strStat == idT).strCve; ClsPagoOtro pgO = new ClsPagoOtro() { indice = (modelComplete.pagos.pagoOtro.Count + 1), nFormaPagoID = Convert.ToInt32(idF), nFormaPagoIDDesc = dp.TipoPagoDesc, Accion = "A", mMonto = dp.mMonto, mMontoSig = dp.mMontoSig, dfAlta = DateTime.Now.ToString("dd/MM/yyyy"), }; modelComplete.pagos.pagoOtro.Add(pgO); } break; case "TARJETA DE DEBITO": { // Agregar Tarjeta de Debito a la Colección if (modelComplete.TarjetaDebito == null) modelComplete.TarjetaDebito = new List<ClsTarjetaDebito>(); if (modelComplete.TarjetaDebito.FirstOrDefault(t => t.ID == dp.ID) != null) { var remove = modelComplete.TarjetaDebito.FirstOrDefault(t => t.ID == dp.ID); modelComplete.TarjetaDebito.Remove(remove); } var bncDesc = VarProcInterfazX.arrCatBancos.FirstOrDefault(b => b.strClave == dp.cBanco); var desglose = CentralAgentesMvc.App_Start.CastObject.Cast<ClsTarjetaDebito>(dp); desglose.indice = (modelComplete.TarjetaDebito.Count + 1); desglose.cTitular = desglose.cTitular.ToUpper(); desglose.cBancoDesc = (bncDesc != null ? bncDesc.strDescrip : ""); desglose.dfVigtarjeta = DateTime.Parse(desglose.dfVigtarjeta).ToString("dd/MM/yyyy"); desglose.dfAlta = DateTime.Now.ToString("dd/MM/yyyy"); modelComplete.TarjetaDebito.Add(desglose); } break; case "TARJETA DE CREDITO": { // Agregar Tarjeta de Credito a la Colección if (modelComplete.TarjetCredito == null) modelComplete.TarjetCredito = new List<ClsTarjetaCredito>(); if (modelComplete.TarjetCredito.FirstOrDefault(t => t.ID == dp.ID) != null) { var remove = modelComplete.TarjetCredito.FirstOrDefault(t => t.ID == dp.ID); modelComplete.TarjetCredito.Remove(remove); } var bncDesc = VarProcInterfazX.arrCatBancos.FirstOrDefault(b => b.strClave == dp.cBanco); var desglose = CentralAgentesMvc.App_Start.CastObject.Cast<ClsTarjetaCredito>(dp); desglose.indice = (modelComplete.TarjetCredito.Count + 1); desglose.cTitular = desglose.cTitular.ToUpper(); desglose.cBancoDesc = (bncDesc != null ? bncDesc.strDescrip : ""); desglose.dfVigtarjeta = DateTime.Parse(desglose.dfVigtarjeta).ToString("dd/MM/yyyy"); desglose.dfAlta = DateTime.Now.ToString("dd/MM/yyyy"); desglose.mMonto = dp.mMonto; desglose.mMontoSig = dp.mMontoSig; modelComplete.TarjetCredito.Add(desglose); } break; } // Guardo el modelo GuardaEnMemoria(modelComplete); ClearErrors(); //Redireccionar Vista SetDesgloseListProperties(ref dp); return View("DesglosePago", dp); } catch (Exception err) { Response.StatusCode = (int)(System.Net.HttpStatusCode.InternalServerError); LogDeErrores.RegistroErrorWeb(err, DatoUsuario.idAgente, DatoUsuario.nomAgente, DatoUsuario.sIp, DatoUsuario.sHostName); return Json("ErrInterno"); } }