示例#1
0
        public async Task <IActionResult> Details(long id)
        {
            try
            {
                var dto = (FacturaDto)await _facturaServicio.Obtener(id);

                var model = new FacturaViewModel()
                {
                    Id              = dto.Id,
                    ClienteId       = dto.ClienteId,
                    EmpresaId       = dto.EmpresaId,
                    FormaPagoId     = dto.FormaPagoId,
                    EstaEliminado   = dto.EliminadoStr,
                    Fecha           = dto.Fecha,
                    Total           = dto.Total,
                    TipoFactura     = dto.TipoFactura,
                    FacturaDetalles = dto.FacturaDetalles.Select(d => new FacturaDetalleViewModel()
                    {
                        FacturaId = d.FacturaId,
                        EntradaId = d.EntradaId,
                        Cantidad  = d.Cantidad,
                        SubTotal  = d.SubTotal,
                        Entrada   = _helperEntrada.ObtenerEntrada(d.EntradaId).Result
                    }),
                    Cliente   = _helperCliente.ObtenerNombreCliente(dto.ClienteId).Result,
                    Empresa   = _helperEmpresa.ObtenerEmpresa(dto.EmpresaId).Result,
                    FormaPago = _helperFormaPago.ObtenerFormaPago(dto.FormaPagoId).Result,
                };
                return(View(model));
            }
            catch (Exception)
            {
                return(RedirectToAction(nameof(Index)));
            }
        }
示例#2
0
        public async Task <IActionResult> Index(string cadenaBuscar = "", bool mostrarTodos = false, long?empresaId = null)
        {
            EmpresaViewModel empresa = null;

            ViewBag.EmpresaId = null;

            if (empresaId.HasValue) // si tiene empresaId es que estoy entrando como administrador
            {
                empresa = await _helperEmpresa.ObtenerEmpresa(empresaId.Value);

                ViewBag.EmpresaId = empresaId.Value;
                if (empresa == null)
                {
                    return(RedirectToAction("Index", "Empresa"));
                }
            }
            else // sino la empresaId la extrae desde el usuario logueado
            {
                empresa = await _helperEmpresa.ObtenerEmpresaActual(User.Identity.Name);
            }

            if (cadenaBuscar == null)
            {
                cadenaBuscar = "";
            }
            var disertantes = (IEnumerable <DisertanteDto>) await _disertanteServicio.ObtenerPorEmpresa(empresa.Id, cadenaBuscar, mostrarTodos);

            var models = disertantes.Select(d => new DisertanteViewModel()
            {
                Id            = d.Id,
                Apellido      = d.Apellido,
                Nombre        = d.Nombre,
                Dni           = d.Dni,
                Empresa       = empresa,
                EmpresaId     = d.EmpresaId,
                EstaEliminado = d.EliminadoStr
            }).ToList();

            ViewBag.CadenaBuscar = cadenaBuscar;
            ViewBag.MostrarTodos = mostrarTodos;

            return(View(models));
        }
示例#3
0
        public async Task <EventoViewModel> Obtener(long eventoId)
        {
            var evento = (EventoDto)await _eventoServicio.Obtener(eventoId);

            var model = new EventoViewModel()
            {
                Id                = evento.Id,
                EstaEliminado     = evento.EliminadoStr,
                Cupo              = evento.Cupo,
                CupoDisponible    = evento.CupoDisponible,
                Nombre            = evento.Nombre,
                Descripcion       = evento.Descripcion,
                Fecha             = evento.Fecha,
                EmpresaId         = evento.EmpresaId,
                EstablecimientoId = evento.EstablecimientoId,
                Establecimiento   = await _helperEstablecimiento.ObtenerEstablecimiento(evento.EstablecimientoId),
                Empresa           = await _helperEmpresa.ObtenerEmpresa(evento.EmpresaId)
            };

            return(model);
        }
示例#4
0
        public async Task <IActionResult> Index(long?empresaId = null, string cadenaBuscar = "", bool mostrarTodos = false, bool mostrarPasados = false)
        {
            // si empresaId == null muestro todos los eventos sino muestro solo los de la empresa
            if (cadenaBuscar == null)
            {
                cadenaBuscar = "";
            }
            IEnumerable <EventoDto> eventos;

            if (!empresaId.HasValue)
            {
                if (User.IsInRole("Admin"))
                {
                    eventos = (IEnumerable <EventoDto>) await _eventoServicio.Obtener(cadenaBuscar, mostrarTodos, mostrarPasados);
                }
                else
                {
                    var empresa = await _helperEmpresa.ObtenerEmpresaActual(User.Identity.Name);

                    empresaId = empresa.Id;
                    eventos   = (IEnumerable <EventoDto>) await _eventoServicio.ObtenerPorEmpresa(empresaId.Value, cadenaBuscar, mostrarTodos, mostrarPasados);
                }
            }
            else
            {
                eventos = (IEnumerable <EventoDto>) await _eventoServicio.ObtenerPorEmpresa(empresaId.Value, cadenaBuscar, mostrarTodos, mostrarPasados);
            }

            var models = eventos.Select(e => new EventoViewModel()
            {
                Id                = e.Id,
                EstaEliminado     = e.EliminadoStr,
                Nombre            = e.Nombre,
                Descripcion       = e.Descripcion,
                Cupo              = e.Cupo,
                CupoDisponible    = e.CupoDisponible,
                EstablecimientoId = e.EstablecimientoId,
                EmpresaId         = e.EmpresaId,
                Fecha             = e.Fecha,
                Actividades       = e.Actividades.Select(a => new ActividadViewModel()
                {
                    Id            = a.Id,
                    Nombre        = a.Nombre,
                    DisertanteId  = a.DisertanteId,
                    EstaEliminado = a.EliminadoStr,
                    FechaHora     = a.FechaHora,
                    SalaId        = a.SalaId,
                    EventoId      = a.EventoId
                }).ToList(),
            }).ToList();

            foreach (var m in models)
            {
                m.Empresa = await _helperEmpresa.ObtenerEmpresa(m.EmpresaId);

                m.Establecimiento = await _helperEstablecimiento.ObtenerEstablecimiento(m.EstablecimientoId);

                foreach (var a in m.Actividades)
                {
                    a.Disertante = await _helperDisertante.ObtenerDisertante(a.DisertanteId);

                    a.Sala = await _helperSala.ObtenerSala(a.SalaId);
                }
            }

            ViewBag.CadenaBuscar   = cadenaBuscar;
            ViewBag.MostrarTodos   = mostrarTodos;
            ViewBag.MostrarPasados = mostrarPasados;
            ViewBag.EmpresaId      = empresaId;

            return(View(models));
        }