public ActionResult PresentaDeclaracion(string id) { ActionResult vista = this.View(RecursoClasificador.ParcialErrorEnPermisos); try { ContribuyenteInfo contribuyente = this.ContribuyenteAutenticado(); if (!string.IsNullOrEmpty(id) && this.PeticionDesdeLugarReferido() && contribuyente.Espms) { string strMensaje = ""; id = new Sat.DyP.Herramientas.Encripcion.Encripcion().DesencriptaCadena(id, Sat.DyP.Herramientas.Encripcion.TipoEncripcion.Base64URL); this.ViewBag.idDeclaracion = id; this.ViewBag.RFC = Utileria.Instancia.CodificarBase64(contribuyente.Rfc); vista = this.View(); using (var declaracion = new Declaracion()) { ViewBag.Devolucion = declaracion.obtieneMontoDevolucion(contribuyente.Rfc, id, out strMensaje); } } } catch (Exception ex) { RegistroEvento.Error(ref ex, CodigoEvento.ErrorNegocio, RecursoClasificador.ErrorEnAutenticacion, null, null, origen: RecursoClasificador.ClasificadorOrigen); } return(vista); }
public ActionResult Abrir(string id) { ActionResult vista = this.View(RecursoClasificador.ParcialErrorEnPermisos); var encabezado = new EncabezadoDypClasificador(); try { ContribuyenteInfo contribuyente = this.ContribuyenteAutenticado(); // TODO: Incluir la petición desde lugar referido // this.PeticionDesdeLugarReferido() : if (!string.IsNullOrEmpty(id) && contribuyente.Espms) { DeclaracionClasificador declaracion = DeclaracionClasificadorComplementos.ObtenerDeclaracionDedeUrl(id); var encriptador = new Sat.DyP.Herramientas.Encripcion.Encripcion(); var limpio = encriptador.DesencriptaCadena(id, Sat.DyP.Herramientas.Encripcion.TipoEncripcion.Base64URL); this.ImportarDatos(declaracion); if (contribuyente.Rfc == declaracion.Rfc) { declaracion.ActualizarDeclaracionPorAbrirDeclaracion(); var pago = new DeterminacionPagoDyP(); var respuesta = pago.ConsultarOpcPagoISREnClasificador(declaracion.Ejercicio, declaracion.Rfc); bool ocisr = string.IsNullOrEmpty(respuesta); var idencriptado = declaracion.CodigoEncirptado(contribuyente.Token); encabezado = declaracion.ObtenerEncabezado(); /********************************************************************************************************************/ var parameters = new Dictionary <int, Dictionary <string, string> >(); string IdDeclaracion = limpio.Split(',').Where(i => i.Contains("idd")).FirstOrDefault().Split(':')[1]; string IdReforma = limpio.Split(',').Where(i => i.Contains("ref")).FirstOrDefault().Split(':')[1]; //if (limpio.Split(',').Where(i => i.Contains("redi")).FirstOrDefault() == null) //{ // vista = Redirect("VistaPrevia/" + encriptador.EncriptaCadena("r:" + declaracion.Rfc + ",idd:" + IdDeclaracion + ",ref:" + IdReforma + "redi:0", Sat.DyP.Herramientas.Encripcion.TipoEncripcion.Base64URL)); //} //else //{ parameters.Add(0, new Dictionary <string, string>() { { "NoReforma", IdReforma }, { "OpcionCalculoISR", ocisr ? "-1" : respuesta } }); parameters.Add(1, new Dictionary <string, string>() { { "NoDeclaracion", IdDeclaracion }, { "presentaDeclaracion", "true" }, { "muestraOCISR", ocisr ? "1" : "0" } }); /********************************************************************************************************************/ this.ViewBag.Info = declaracion.ParametrosVistaPrevia(parameters); ViewBag.idencriptado = idencriptado; vista = View("VistaPrevia"); //} } } } catch (Exception ex) { RegistroEvento.Error(ref ex, CodigoEvento.ErrorNegocio, RecursoClasificador.ErrorEnAutenticacion, null, null, origen: RecursoClasificador.ClasificadorOrigen); } TempData[TEMP_DATA_ENCABEZADO] = encabezado; return(vista); }
public ActionResult AbrirEmpleado(string id) { ActionResult vista = this.View(RecursoClasificador.ParcialErrorEnPermisos); var declaracion = new DeclaracionClasificador(); string limpio = string.Empty; try { if (ConfiguracionApp.AdaptadorCloud.RecuperarBoolean("IsPortalEmpleado")) { var empleado = this.ObtieneInfoEmpleado(); var encriptador = new Sat.DyP.Herramientas.Encripcion.Encripcion(); var datosEntrada = encriptador.DesencriptaCadena(id, Sat.DyP.Herramientas.Encripcion.TipoEncripcion.Base64URL); if (!string.IsNullOrEmpty(datosEntrada)) { var configs = datosEntrada.Split(',').Where(x => x.Contains("re:")).FirstOrDefault(); var rfcContribuyente = datosEntrada.Split(',').Where(x => x.Contains("r:")).FirstOrDefault(); var rfcEmpleado = string.Empty; if (!string.IsNullOrEmpty(configs)) { rfcEmpleado = configs.Replace("re:", string.Empty); rfcContribuyente = !string.IsNullOrEmpty(rfcContribuyente) ? rfcContribuyente.Replace("r:", string.Empty) : rfcEmpleado; // Llamada desde empleado if (rfcEmpleado == empleado.Rfc) { bool contribuyenteValido = this.ObtieneInfoContribuyenteEmpleado(rfcContribuyente); if (contribuyenteValido) { ContribuyenteInfo contribuyente = MemberCache.Instancia.UsuarioActual; if (!string.IsNullOrEmpty(id) && contribuyente.Espms) { declaracion = DeclaracionClasificadorComplementos.ObtenerDeclaracionDedeUrl(id); var declaracionTemporal = declaracion.ActualizarDeclaracionPorAbrirDeclaracion(); if (contribuyente.Rfc == declaracion.Rfc) { var idencriptado = declaracionTemporal.CodigoDeterminacionEncirptado(string.Empty); vista = Redirect(string.Format(RecursoClasificador.UrlDeterminacion, idencriptado)); } else { var ex = new Exception("Rfc no es el mismo"); RegistroEvento.Error(ref ex, CodigoEvento.ErrorNegocio, RecursoClasificador.ErrorEnAutenticacion, limpio, null, origen: System.Reflection.MethodBase.GetCurrentMethod().Name); } } else { var ex = new Exception("Intento entrar"); RegistroEvento.Error(ref ex, CodigoEvento.ErrorNegocio, RecursoClasificador.ErrorEnAutenticacion, limpio, null, origen: System.Reflection.MethodBase.GetCurrentMethod().Name); } } } } } } } catch (Exception ex) { RegistroEvento.Error(ref ex, CodigoEvento.ErrorNegocio, RecursoClasificador.ErrorEnAutenticacion, null, null, origen: System.Reflection.MethodBase.GetCurrentMethod().Name); } return(vista); }