public ViewModelLocator() { try { var config = new ConfigurationBuilder(); config.AddJsonFile("autofac.json"); var module = new ConfigurationModule(config.Build()); var builder = new ContainerBuilder(); builder.RegisterModule(module); Container = builder.Build(); navigationService = Container.Resolve <INavigationService>(); apiService = Container.Resolve <IApiService>(); messageService = Container.Resolve <IMessageService>(); appViewModel = Container.Resolve <AppViewModel>(); startPageViewModel = Container.Resolve <StartPageViewModel>(); signUpViewModel = Container.Resolve <SignUpViewModel>(); tripBoardViewModel = Container.Resolve <TripBoardViewModel>(); addNewTripViewModel = Container.Resolve <AddNewTripViewModel>(); addDestinationsViewModel = Container.Resolve <AddDestinationsViewModel>(); addNewTripTaskViewModel = Container.Resolve <AddNewTripTaskViewModel>(); reviewTripViewModel = Container.Resolve <ReviewTripViewModel>(); tripTasksViewModel = Container.Resolve <TripTasksViewModel>(); destinationsViewModel = Container.Resolve <DestinationsViewModel>(); routeMapViewModel = Container.Resolve <RouteMapViewModel>(); ticketsViewModel = Container.Resolve <TicketsViewModel>(); checkTicketViewModel = Container.Resolve <CheckTicketViewModel>(); navigationService.Register <StartPageViewModel>(startPageViewModel); navigationService.Register <SignUpViewModel>(signUpViewModel); navigationService.Register <TripBoardViewModel>(tripBoardViewModel); navigationService.Register <AddNewTripViewModel>(addNewTripViewModel); navigationService.Register <AddDestinationsViewModel>(addDestinationsViewModel); navigationService.Register <AddNewTripTaskViewModel>(addNewTripTaskViewModel); navigationService.Register <ReviewTripViewModel>(reviewTripViewModel); navigationService.Register <TripTasksViewModel>(tripTasksViewModel); navigationService.Register <DestinationsViewModel>(destinationsViewModel); navigationService.Register <RouteMapViewModel>(routeMapViewModel); navigationService.Register <TicketsViewModel>(ticketsViewModel); navigationService.Register <CheckTicketViewModel>(checkTicketViewModel); navigationService.Navigate <StartPageViewModel>(); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
public IHttpActionResult CheckTicket(CheckTicketViewModel model) { try { Ticket ticket = UnitOfWork.Tickets.GetAll().Where(x => x.Id == model.TicketID).First(); TicketInfoViewModel ticketModel = new TicketInfoViewModel(); string message = string.Empty; switch (ticket.Type) { case Models.Enums.TicketType.Vremenska: { if (ticket.ValidationTime == null) { ticket.ValidationTime = DateTime.Now; message = "Ticket checked"; UnitOfWork.Complete(); } else { if (ticket.ValidationTime.Value.Date.AddDays(1) > DateTime.Now.Date) { message = "Ticket is valid"; } else { message = "Ticket expired"; } } break; } case Models.Enums.TicketType.Dnevna: { if (ticket.ValidationTime.Value.Date.Day < DateTime.Now.Date.Day && ticket.ValidationTime.Value.Month <= DateTime.Now.Month && ticket.ValidationTime.Value.Year <= DateTime.Now.Year) { message = "Ticket is valid"; } else { message = "Ticket expired"; } break; } case Models.Enums.TicketType.Mesecna: { if (DateTime.Now.Date < ticket.ValidationTime.Value.Date.AddMonths(1)) { message = "Ticket is valid"; } else { message = "Ticket expired"; } break; } case Models.Enums.TicketType.Godisnja: { if (DateTime.Now.Date < ticket.ValidationTime.Value.Date.AddYears(1)) { message = "Ticket is valid"; } else { message = "Ticket expired"; } break; } default: { return(BadRequest("Unknown error occured")); } } ticketModel.Id = ticket.Id; ticketModel.Type = ticket.Type.ToString(); ticketModel.Message = message; return(Ok(ticketModel)); } catch (Exception ex) { return(BadRequest()); } }