public ActionResult ParametroPartial() { try { clsDParametro = new clsDParametro(); List <PARAMETRO> Parametros = new List <PARAMETRO>(); Parametros = clsDParametro.ConsultaParametros(new PARAMETRO()).ToList(); return(PartialView(Parametros)); } catch (DbEntityValidationException e) { Response.StatusCode = (int)HttpStatusCode.InternalServerError; clsDError = new clsDError(); lsUsuario = User.Identity.Name.Split('_'); string Mensaje = clsDError.ControlError(lsUsuario[0], Request.UserHostAddress, this.ControllerContext.RouteData.Values["controller"].ToString(), "Metodo: " + this.ControllerContext.RouteData.Values["action"].ToString(), null, e); return(Json(Mensaje, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { Response.StatusCode = (int)HttpStatusCode.InternalServerError; clsDError = new clsDError(); lsUsuario = User.Identity.Name.Split('_'); string Mensaje = clsDError.ControlError(lsUsuario[0], Request.UserHostAddress, this.ControllerContext.RouteData.Values["controller"].ToString(), "Metodo: " + this.ControllerContext.RouteData.Values["action"].ToString(), ex, null); return(Json(Mensaje, JsonRequestBehavior.AllowGet)); } }
public void Notificaciones(List <int?> Roles, string Cedula) { clsDParametro = new clsDParametro(); clsDGeneral = new clsDGeneral(); clsDSolicitudPermiso = new clsDSolicitudPermiso(); List <RespuestaGeneral> MensajesNotificaciones = new List <RespuestaGeneral>(); //INICIO -- NOTIFICACIONES ENVIADOS DESDE LA BASE DE DATOS 2020-06-25 var Notificaciones = clsDGeneral.ConsultaNotificaciones(Cedula); foreach (var x in Notificaciones) { MensajesNotificaciones.Add(new RespuestaGeneral { Mensaje = x.Mensaje, Observacion = "/" + x.Url }); } Session["MensajesNotificacionesMenu"] = Notificaciones; //ViewBag.MensajesNotificacionesMenu = Notificaciones; //2020-06-25 -- FIN var MensajeUrgente = clsDParametro.ConsultaParametros(new PARAMETRO { Codigo = clsAtributos.ParaMensajeUrgente, EstadoRegistro = clsAtributos.EstadoRegistroActivo }).FirstOrDefault(); if (MensajeUrgente != null) { ViewBag.MensajeUrgente = MensajeUrgente.Observacion; } var MensajeAviso = clsDParametro.ConsultaParametros(new PARAMETRO { Codigo = clsAtributos.ParaMensajeAviso, EstadoRegistro = clsAtributos.EstadoRegistroActivo }).FirstOrDefault(); if (MensajeAviso != null) { ViewBag.MensajeAviso = MensajeAviso.Observacion; } if (Roles.Any(x => x.Value == clsAtributos.RolAprobacionSolicitud)) { var solicitudes = clsDSolicitudPermiso.ConsultaSolicitudesPermisoNotificaciones(clsAtributos.EstadoSolicitudPendiente, lsUsuario[1]); if (solicitudes > 0) { string enlace = "/SolicitudPermiso/BandejaAprobacion"; string Mensaje = "Tienes " + solicitudes + " solicitudes en su bandeja por aprobar"; MensajesNotificaciones.Add(new RespuestaGeneral { Mensaje = Mensaje, Observacion = enlace }); } } if (Roles.Any(x => x.Value == clsAtributos.RolRRHH)) { var solicitudes = clsDSolicitudPermiso.ConsultaSolicitudesPermisoNotificaciones(clsAtributos.EstadoSolicitudAprobado, lsUsuario[1]); if (solicitudes > 0) { string enlace = "/SolicitudPermiso/BandejaRRHH"; string Mensaje = "Tiene " + solicitudes + " solicitudes en su bandeja por revisar"; MensajesNotificaciones.Add(new RespuestaGeneral { Mensaje = Mensaje, Observacion = enlace }); } } if (Roles.Any(x => x.Value == clsAtributos.RolMedico)) { var solicitudes = clsDSolicitudPermiso.ConsultaSolicitudesPermiso(new SOLICITUD_PERMISO { EstadoSolicitud = clsAtributos.EstadoSolicitudAprobado, Origen = clsAtributos.SolicitudOrigenMedico, ValidaMedico = true }); if (solicitudes.Any()) { string enlace = "/SolicitudPermiso/BandejaMedico"; string Mensaje = "Tiene " + solicitudes.Count + " solicitudes en su bandeja por revisar"; MensajesNotificaciones.Add(new RespuestaGeneral { Mensaje = Mensaje, Observacion = enlace }); } } if (Roles.Any(x => x.Value == clsAtributos.RolGarita)) { var solicitudes = clsDSolicitudPermiso.ConsultaSolicitudesPermisoReporte(null, null, clsAtributos.EstadoSolicitudAprobado, true, null, null).ToList(); if (solicitudes.Any()) { string enlace = "/SolicitudPermiso/ReporteSolicitud"; string Mensaje = "Tiene " + solicitudes.Count + " solicitudes en su bandeja"; MensajesNotificaciones.Add(new RespuestaGeneral { Mensaje = Mensaje, Observacion = enlace }); } } if (Roles.Any(x => x.Value == clsAtributos.RolControladorGeneral)) { clsDProyeccionProgramacion = new clsDProyeccionProgramacion(); clsDAsistencia = new clsDAsistencia(); clsDEmpleado = new clsDEmpleado(); var programaciones = clsDProyeccionProgramacion.ConsultaProyeccionProgramacion(); if (programaciones != null && programaciones.EditaProduccion) { string dia = ci.DateTimeFormat.GetDayName(programaciones.FechaProduccion.DayOfWeek); string enlace = "/ProyeccionProgramacion/EditarProyeccionProgramacionProduccion"; string Mensaje = "Tiene la proyección de la programación pendiente de finalizar del dia " + dia + ", " + programaciones.FechaProduccion.ToString("dd-MM-yyyy"); MensajesNotificaciones.Add(new RespuestaGeneral { Mensaje = Mensaje, Observacion = enlace }); } lsUsuario = User.Identity.Name.Split('_'); var empleado = clsDEmpleado.ConsultaEmpleado(lsUsuario[1]).FirstOrDefault(); if (empleado != null) { var finalizarAsistencia = clsDAsistencia.ConsultaFaltantesFinalizarAsistencia(empleado.CODIGOLINEA, DateTime.Now.AddDays(-1)); if (finalizarAsistencia.Any()) { foreach (var x in finalizarAsistencia) { string dia = ci.DateTimeFormat.GetDayName(x.FechaInicio.Value.DayOfWeek); string enlace = "/Asistencia/FinalizarAsistencia"; string Mensaje = "No ha finalizado la Asistencia del: " + dia + ", " + x.FechaInicio.Value.ToString("dd-MM-yyyy"); MensajesNotificaciones.Add(new RespuestaGeneral { Mensaje = Mensaje, Observacion = enlace }); } } } } if (Roles.Any(x => x.Value == clsAtributos.RolControladorLinea || x.Value == clsAtributos.RolEnlatado || x.Value == clsAtributos.RolEtiquetadoLata || x.Value == clsAtributos.RolEtiquetadoPouch || x.Value == clsAtributos.RolLimpiezaPouch || x.Value == clsAtributos.RolLimpiezaPouch || x.Value == clsAtributos.RolAutoclave || x.Value == clsAtributos.RolFrio || x.Value == clsAtributos.RolEvicerado)) { clsDAsistencia = new clsDAsistencia(); clsDEmpleado = new clsDEmpleado(); lsUsuario = User.Identity.Name.Split('_'); var empleado = clsDEmpleado.ConsultaEmpleado(lsUsuario[1]).FirstOrDefault(); if (empleado != null) { var finalizarAsistencia = clsDAsistencia.ConsultaFaltantesFinalizarAsistencia(empleado.CODIGOLINEA, DateTime.Now.AddDays(-1)); var finalizarCantidadFecha = finalizarAsistencia.Select(x => x.FechaInicio).Distinct(); if (finalizarAsistencia.Any()) { foreach (var x in finalizarCantidadFecha) { int cantidad = finalizarAsistencia.Count(y => y.FechaInicio == x.Value); string dia = ci.DateTimeFormat.GetDayName(x.Value.DayOfWeek); string enlace = "/Asistencia/AsistenciaFinalizar"; string Mensaje = "No ha finalizado la Asistencia del día: " + dia + ", " + x.Value.ToString("dd-MM-yyyy") + " Existen " + cantidad + " empleados sin finalizar"; MensajesNotificaciones.Add(new RespuestaGeneral { Mensaje = Mensaje, Observacion = enlace }); } } } } if (Roles.Any(x => x.Value == clsAtributos.AsistenteProduccion)) { clsDAsistencia = new clsDAsistencia(); clsDEmpleado = new clsDEmpleado(); clsDGeneral = new clsDGeneral(); var finalizarAsistencia = clsDAsistencia.ConsultaFaltantesFinalizarAsistenciaTodos(DateTime.Now.AddDays(-1)); var finalizarCantidadFecha = finalizarAsistencia.Select(x => new { Fecha = x.FechaInicio, Linea = x.CodLinea }).Distinct(); if (finalizarAsistencia.Any()) { foreach (var x in finalizarCantidadFecha) { var linea = clsDGeneral.ConsultaLineas(x.Linea).FirstOrDefault(); int cantidad = finalizarAsistencia.Count(y => y.FechaInicio == x.Fecha && y.CodLinea == x.Linea); string dia = ci.DateTimeFormat.GetDayName(x.Fecha.Value.DayOfWeek); string Mensaje = "No ha finalizado la Asistencia " + linea.Descripcion + " del día: " + dia + ", " + x.Fecha.Value.ToString("dd-MM-yyyy") + " Existen " + cantidad + " empleados sin finalizar"; MensajesNotificaciones.Add(new RespuestaGeneral { Mensaje = Mensaje, }); } } } if (MensajesNotificaciones.Any()) { ViewBag.MensajesNotificaciones = MensajesNotificaciones; } }