コード例 #1
0
        public IActionResult MyEvents()
        {
            var viewModel = new MyEventsViewModel();

            viewModel.MyEvents = eventsService.GetMyEvents(User);
            return(this.View(viewModel));
        }
コード例 #2
0
        public async Task <ActionResult> MyEvents()
        {
            var viewModel = new List <MyEventsViewModel>();

            var user      = TickMeHelpers.User.FromUser(User);
            var savedUser = await UserManager.GetUserByAuthId(user);

            var tickets = await TicketManager.GetUserTickets(savedUser.Id);

            foreach (var ticket in tickets)
            {
                var evnt = await EventManager.Get(ticket.EventId);

                dynamic pdata = JObject.Parse(JsonConvert.DeserializeObject <PaymentData>(ticket.PaymentData).TransactionData);
                var     item  = new MyEventsViewModel
                {
                    Ticket      = ticket,
                    EventName   = evnt.Title,
                    StartMoment = evnt.StartMoment,
                    Duration    = evnt.Duration,
                    PaymentDate = pdata.TransactionDate
                };
                viewModel.Add(item);
            }
            return(View("~/Views/Events/MyEvents.cshtml", viewModel));
        }
コード例 #3
0
        public IActionResult MyReservations(int page = 1)
        {
            if (page <= 0)
            {
                page = 1;
            }

            string currentUserId = this.userManager.GetUserId(User);

            DateTime markDate = DateTime.Now.Date;

            var myEventsList = this.profileService.MyFutureEvents(currentUserId, page, pageSize, markDate);

            int myEventsCount = this.profileService.TotalFutureEvents(currentUserId, markDate);

            IEnumerable <MyEventsListModel> myEvents = myEventsList.Select(e => new MyEventsListModel
            {
                EventId         = e.Id,
                EventDate       = e.EventDate,
                NumberOfPeople  = e.NumberOfPeople,
                TypeOfEvent     = e.TypeOfEvent,
                RentTimeDisplay = this.eventService.GetRentTimeDisplay(e.RentTime),
                HallName        = e.HallName,
                IsConfirmed     = e.IsReservationConfirmed,
                Totalprice      = e.Totalprice
            })
                                                       .ToList();

            var vm = new MyEventsViewModel
            {
                Events      = myEvents,
                CurrentPage = page,
                TotalPages  = (int)Math.Ceiling(myEventsCount / (double)pageSize)
            };

            vm.TotalPages = vm.TotalPages == 0 ? 1 : vm.TotalPages;


            return(View(vm));
        }
コード例 #4
0
ファイル: EventController.cs プロジェクト: etpedror/TickMe
        public async Task <ActionResult> MyEvents()
        {
            var viewModel = new List <MyEventsViewModel>();

            var user      = TickMeHelpers.User.FromUser(User);
            var savedUser = await UserManager.GetOrCreateUserByAuthId(user);

            var tickets = await TicketManager.GetUserTickets(savedUser.Id);

            foreach (var ticket in tickets)
            {
                var evnt = await EventManager.Get(ticket.EventId);

                var paymentData = $"No payment data available";
                if (ticket.PaymentData != null)
                {
                    var payData = JsonConvert.DeserializeObject <PaymentData>(ticket.PaymentData);
                    if (payData != null && !String.IsNullOrWhiteSpace(payData.TransactionData))
                    {
                        dynamic pdata = JObject.Parse(payData.TransactionData);
                        if (pdata != null)
                        {
                            paymentData = pdata.TransactionDate;
                        }
                    }
                }

                var item = new MyEventsViewModel
                {
                    Ticket      = ticket,
                    EventName   = evnt.Title,
                    StartMoment = evnt.StartMoment,
                    Duration    = evnt.Duration,
                    PaymentDate = paymentData
                };
                viewModel.Add(item);
            }
            return(View("~/Views/Events/MyEvents.cshtml", viewModel));
        }
コード例 #5
0
 public MyEventsView(MyEventsViewModel viewModel)
 {
     InitializeComponent();
     this.BindingContext = viewModel;
 }
コード例 #6
0
        public IActionResult MyEvents(string id)
        {
            var UserIdLogueado  = User.Claims.FirstOrDefault(c => c.Type == "UserId");
            var UserIdLogueado1 = Convert.ToInt32(UserIdLogueado.Value);

            var EventosList    = _context.Eventos.ToList();
            var ConvocadosList = _context.Convocados.FromSqlRaw($"SELECT * FROM Convocados WHERE Convocados.user_id = {UserIdLogueado1}").ToList();


            var query =
                (from convocado in ConvocadosList
                 join evento in EventosList
                 on convocado.event_id equals evento.Id
                 //where convocado.user_id == 1107
                 where convocado.user_id == UserIdLogueado1
                 //select new { Evento = evento };
                 //select new { Convocado = convocado, Evento = evento };
                 select new { Evento = evento }).ToList();


            var eventosVMlist = new List <MyEventsViewModel>();

            foreach (var miEevento in query)

            {
                var eventoVM = new MyEventsViewModel();
                eventoVM.category = miEevento.Evento.category;
                eventoVM.sex      = miEevento.Evento.sex;
                eventoVM.date     = miEevento.Evento.date;
                eventoVM.hour     = miEevento.Evento.hour;
                eventoVM.minute   = miEevento.Evento.minute;
                eventoVM.meridian = miEevento.Evento.meridian;
                eventoVM.Id       = miEevento.Evento.Id;

                eventoVM.time = miEevento.Evento.hour + " : " + miEevento.Evento.minute + " - " + miEevento.Evento.meridian;
                eventoVM.time = miEevento.Evento.time;

                eventoVM.reserve  = miEevento.Evento.reserve;
                eventoVM.cost     = miEevento.Evento.cost;
                eventoVM.paymment = miEevento.Evento.paymment;

                eventoVM.place_id = miEevento.Evento.place_id;
                var lugarEvento = _context.Lugares.Find(miEevento.Evento.place_id);
                eventoVM.place_name = lugarEvento.name;

                eventoVM.sport_id = miEevento.Evento.sport_id;
                var deporteEvento = _context.Deportes.Find(miEevento.Evento.sport_id);
                eventoVM.sport_name = deporteEvento.name;

                string picture_url;

                switch (eventoVM.sport_name)
                {
                case "Baloncesto":
                    picture_url = "~/asset/images/baloncesto.jpg";
                    break;

                case "Futbol":
                    picture_url = "~/asset/images/futbol.jpg";
                    break;

                case "Tenis":
                    picture_url = "~/asset/images/tenis.jpg";
                    break;

                case "Atletismo":
                    picture_url = "~/asset/images/atletismo.jpg";
                    break;

                case "Ciclismo":
                    picture_url = "~/asset/images/ciclismo.jpg";
                    break;

                default:
                    picture_url = "Sin Imagenes para mostrar";
                    break;
                }

                eventoVM.picture_url = picture_url;

                eventosVMlist.Add(eventoVM);
            }

            return(View(eventosVMlist));
        }
コード例 #7
0
        public ActionResult Delete(MyEventsViewModel input)
        {
            this.events.Delete(input.Id.ToString());

            return(this.RedirectToAction("/MyEvents"));
        }
コード例 #8
0
        public ActionResult Edit(MyEventsViewModel input)
        {
            var ev = this.events.Update(input.Id.ToString(), input.Name, input.Description, input.Time, input.NumberOfParticipants);

            return(this.RedirectToAction("/MyEvents"));
        }