예제 #1
0
        /// <summary>
        /// Genera la lista de incidencias a partir de la lista de solicitudes
        /// </summary>
        /// <param name="Empleado"></param>
        /// <returns></returns>
        public List <Incidencia> ListaSolicitudes(int Empleado)
        {
            List <Incidencia> Response = new List <Incidencia>();

            try
            {
                DataAccess.Attendance AttendanceDB = new DataAccess.Attendance();
                List <Solicitud>      Solicitudes  = AttendanceDB.ObtenerSolicitudesVigentes(Empleado);
                Incidencia            incidencia;
                foreach (Solicitud solicitud in Solicitudes)
                {
                    incidencia    = new Incidencia();
                    incidencia.id = solicitud.iSolicitudId;
                    switch (solicitud.iTipoSolicitud)
                    {
                    case 1:
                        incidencia.icono = "Presentation/assets/Vacations.png";
                        break;

                    case 2:
                        incidencia.icono = "Presentation/assets/Permiso.png";
                        break;

                    case 3:
                        incidencia.icono = "Presentation/assets/PermisoGoce.png";
                        break;

                    case 4:
                        incidencia.icono = "Presentation/assets/Incapacidad.png";
                        break;

                    default:
                        break;
                    }
                    incidencia.descripcion = solicitud.strTipoSolicitud;
                    incidencia.periodo     = solicitud.FechaInicio.ToString("dd-MM-yyyy") + " - " + solicitud.FechaFin.ToString("dd-MM-yyyy");
                    incidencia.estatus     = solicitud.strEstatusSolicitud;
                    Response.Add(incidencia);
                }
            }
            catch (Exception exc)
            {
                Log.EscribeLog("[ERROR] : BusinessLogic.ListaSolicitudes - " + exc.Message);
            }
            return(Response);
        }
예제 #2
0
        /// <summary>
        /// obtiene el catalogo de solicitudes
        /// </summary>
        /// <returns></returns>
        public List <TipoSolicitud> CatalogoSolicitudes()
        {
            List <TipoSolicitud> catalogo = new List <TipoSolicitud>();

            try
            {
                Attendance.DataAccess.Attendance DataBase      = new DataAccess.Attendance();
                List <cat_solicitud>             listaCatalogo = DataBase.ObtenerCatalogoTipoSolicitudes();
                TipoSolicitud modelo;
                foreach (cat_solicitud registro in listaCatalogo)
                {
                    modelo         = new TipoSolicitud();
                    modelo.value   = registro.iTipoSolicitudId.ToString();
                    modelo.display = registro.Descripcion;
                    catalogo.Add(modelo);
                }
            }
            catch (Exception ex)
            {
                Log.EscribeLog("[ERROR] : BusinessLogic.CatalogoSolicitudes - " + ex.Message);
            }
            return(catalogo);
        }
예제 #3
0
        /// <summary>
        /// Permite validar un usuario al Kiosco regresando su identificador de empleado en la nómina.
        /// </summary>
        /// <param name="Request"></param>
        /// <returns></returns>
        public Session IngresoSistema(Credentials Request)
        {
            Session Response = new Session();

            try
            {
                DataAccess.Attendance AttendanceDB = new DataAccess.Attendance();
                DataAccess.Eslabon    EslabonDB    = new DataAccess.Eslabon();

                if (ValidarUsuarioDominio(Request))
                {
                    Response.EmpleadoId = AttendanceDB.ObtenerIdEmpleado(Request.username);
                    if (Response.EmpleadoId > 0)
                    {
                        Response.SaldoVacacional = CalculaSaldoVacacional(Response.EmpleadoId);

                        if (Response.EmpleadoId == 5833)
                        {
                            Response.SaldoVacacional = 999999999;
                        }
                        if (Response.EmpleadoId == 359)
                        {
                            Response.SaldoVacacional = 999999999;
                        }
                        Empleado Modelo = AttendanceDB.ObtenerInformacionGeneralEmpleado(Response.EmpleadoId);
                        Modelo.Puesto           = EslabonDB.ObtenerPuestoEmpleado(Response.EmpleadoId);
                        Response.Compania       = Modelo.Compania;
                        Response.isManager      = Modelo.isManager;
                        Response.NombreEmpleado = Modelo.NombreEmpleado;
                        Response.NumeroEmpleado = Modelo.NumeroEmpleado;
                        Response.NombreUsuario  = Modelo.NombreUsuario;
                        Response.Puesto         = Modelo.Puesto;
                        Response.Message        = "Inicio de Sesión exitoso";
                        Response.Incidencias    = ListaSolicitudes(Response.EmpleadoId);
                    }
                    else
                    {
                        Response.Message = "Usuario o contraseña incorrectos";
                    }
                }
                else
                {
                    Response.EmpleadoId = AttendanceDB.ValidaUsuario(Request.username, Request.password);
                    if (Response.EmpleadoId > 0)
                    {
                        Response.SaldoVacacional = CalculaSaldoVacacional(Response.EmpleadoId);
                        Empleado Modelo = AttendanceDB.ObtenerInformacionGeneralEmpleado(Response.EmpleadoId);
                        Modelo.Puesto           = EslabonDB.ObtenerPuestoEmpleado(Response.EmpleadoId);
                        Response.Compania       = Modelo.Compania;
                        Response.isManager      = Modelo.isManager;
                        Response.NombreEmpleado = Modelo.NombreEmpleado;
                        Response.NumeroEmpleado = Modelo.NumeroEmpleado;
                        Response.NombreUsuario  = Modelo.NombreUsuario;
                        Response.Puesto         = Modelo.Puesto;
                        Response.Message        = "Inicio de Sesión exitoso";
                        Response.Incidencias    = ListaSolicitudes(Response.EmpleadoId);
                    }
                    else
                    {
                        Response.Message = "Usuario o contraseña incorrectos";
                    }
                }
            }
            catch (Exception exc)
            {
                Log.EscribeLog("[ERROR] : BusinessLogic.IngresoSistema - " + exc.Message);
                Response.Message = exc.Message;
            }
            return(Response);
        }