예제 #1
0
        // GET Solicitud/Detalle/1
        public ActionResult Detalle(Guid id)
        {
            var solicitud = solicitudService.ObtenerSolicitudPorId(id);

            if (solicitud == null)
            {
                return(HttpNotFound("ID de solicitud no encotrada."));
            }

            var annosLaborados = DateTime.Now.Year - solicitud.Usuario.FechaIngreso.Year;

            if (solicitud.Usuario.FechaIngreso > DateTime.Now.AddYears(-annosLaborados))
            {
                annosLaborados--;
            }

            return(View(new SolicitudViewModel()
            {
                SolicitudId = solicitud.SolicitudVacacionesId,
                UsuarioId = solicitud.Usuario.Id,
                Nombre = solicitud.Usuario.Nombre,
                PrimerApellido = solicitud.Usuario.PrimerApellido,
                SegundoApellido = solicitud.Usuario.SegundoApellido,
                Email = solicitud.Usuario.Email,
                PhoneNumber = solicitud.Usuario.PhoneNumber,
                UnidadTecnica = solicitud.Usuario.UnidadTecnica,
                Categoria = solicitud.Usuario.Categoria,
                FechaIngreso = solicitud.Usuario.FechaIngreso,
                EstaActivo = solicitud.Usuario.EstaActivo,
                CantidadAnnosLaborados = annosLaborados < 0 ? 0 : annosLaborados,
                CantidadDiasSolicitados = solicitud.CantidadDiasSolicitados,
                Comentario = solicitud.Comentario,
                DiasPorSolicitud = solicitud.DiasPorSolicitud.Select(s => new DiasPorSolicitudViewModel()
                {
                    UsuarioId = s.UsuarioId,
                    Fecha = s.Fecha.ToString("yyyy-MM-dd"),
                    Periodo = s.Periodo
                }).ToList(),
                SaldoDiasDisponibles = solicitud.Usuario.SaldoDiasEmpleado.SaldoDiasDisponibles
            }));
        }