Example #1
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            journeyRepository = new JourneyRepository();
            tripRepository    = new TripRepository();

            base.OnCreate(savedInstanceState);

            SelectedTripId = tripRepository.GetActiveTrip();

            SetContentView(Resource.Layout.chart_reporting_layout);
            DrawTopImageInPurple();
            GetData();

            timeChart          = FindViewById <ChartView>(Resource.Id.timeChartView);
            timeByDayChart     = FindViewById <ChartView>(Resource.Id.timeByDayChartView);
            distanceChart      = FindViewById <ChartView>(Resource.Id.distanceChartView);
            distanceByDayChart = FindViewById <ChartView>(Resource.Id.distanceByDayChartView);

            distanceByDayChart.Chart = new BarChart()
            {
                Entries = _distanceByDayEntries
            };
            distanceChart.Chart = new DonutChart()
            {
                Entries = _distanceEntries
            };
            timeChart.Chart = new DonutChart()
            {
                Entries = _timeEntries
            };
            timeByDayChart.Chart = new BarChart()
            {
                Entries = _timeByDayEntries
            };
        }
        public async Task <bool> DeleteUser(string userName)
        {
            var logger = LogManager.GetCurrentClassLogger();

            return(await Task.Run(() =>
            {
                var userStore = new UserStore <ApplicationUser>(new ApplicationDbContext());

                var manager = new UserManager <ApplicationUser>(userStore);

                var user = manager.FindByName(userName);

                manager.Delete(user);

                var repo = new TripRepository(new TripsContext("TripConnection"));
                var trips = repo.Find(t => t.User == userName);

                foreach (var trip in trips)
                {
                    repo.Delete(trip.Id);
                }

                logger.Info($"AccountController -> handled request  : DeleteUser -> success");
                return true;
            }));
        }
Example #3
0
        public ActionResult _GetAllActiveTripsPartial()
        {
            TripRepository repo        = new TripRepository();
            IList <Trip>   activeTrips = repo.GetAllActiveTrips();

            return(PartialView(activeTrips));
        }
        private async void BtnFinishPassengerTrip_Clicked(object sender, EventArgs e)
        {
            try
            {
                using (TripRepository tripRepository = new TripRepository())
                {
                    var tripState = await tripRepository.GetStatusTrip(Trip.TripId);

                    if (tripState.Equals("Posted"))
                    {
                        await DisplayAlert("Alert", "The trip has not started yet", "Ok");

                        return;
                    }
                    var passenger = (sender as Button).CommandParameter as User;
                    await tripRepository.FinishPassengerTrip(passenger, Trip.TripId);

                    _passengersList.Remove(passenger);
                    if (_passengersList.Count == 0)
                    {
                        await tripRepository.FinishTrip(Trip.TripId);

                        await Navigation.PopAsync();

                        stopWatch.Stop();
                    }
                }
            }
            catch
            {
                await DisplayAlert("Error", "An unexpected error has occurred", "Ok");
            }
        }
Example #5
0
        public void DeleteTrip_WhenValid_ShouldCommit()
        {
            var trip     = ModelTestHelper.CreateTrip(-1, "deleteTripCommit");
            var services = new TripServices();

            services.CreateTrip(trip, 1);
            Assert.IsFalse(services.HasErrors);
            var reloadedTrip = services.GetTrip(trip.Id);

            Assert.IsNotNull(reloadedTrip);
            var pot = reloadedTrip.TripPot;

            Assert.IsNotNull(pot);
            var participants = reloadedTrip.Participants;

            Assert.AreEqual(1, participants.Count());
            var potUsers = pot.Participants;

            Assert.AreEqual(1, potUsers.Count());
            var tripRepo            = new TripRepository();
            var potRepo             = new PotRepository();
            var userTripRepo        = new UserTripRepository();
            var potUserRepo         = new PotUserRepository();
            var tripParticipantRepo = new TripParticipantRepository();

            services.DeleteTrip(reloadedTrip);
            Assert.IsFalse(services.HasErrors);
            Assert.IsNull(tripRepo.GetTrip(reloadedTrip.Id));
            Assert.IsNull(potRepo.GetPot(pot.Id));
            Assert.AreEqual(0, userTripRepo.GetUserTripsByTrip(reloadedTrip.TripName).Count());
            Assert.AreEqual(0, potUserRepo.GetPotUsers(pot.Id).Count());
            Assert.AreEqual(0, tripParticipantRepo.GetTripParticipants(reloadedTrip.Id).Count());
        }
        private async void RemovePassenger_Clicked(object sender, EventArgs e)
        {
            try
            {
                using (TripRepository tripRepository = new TripRepository())
                {
                    var tripState = await tripRepository.GetStatusTrip(Trip.TripId);

                    if (tripState.Equals("OnWay"))
                    {
                        await DisplayAlert("Alert", "The trip is on way, please Finish the trip by passenger", "Ok");

                        return;
                    }
                    var passenger = (sender as MenuItem).CommandParameter as User;
                    await tripRepository.RemovePassenger(passenger, Trip.TripId);

                    _passengersList.Remove(passenger);
                }
            }
            catch (Exception)
            {
                await DisplayAlert("Error", "An unexpected error has occurred", "Ok");
            }
        }
Example #7
0
 static CacheImplementor()
 {
     dbHelper        = new MySqlDbHelper(new MySqlConnectionManager());
     tripRepository  = new TripRepository(dbHelper);
     loginRepository = new LoginRepository(dbHelper);
     cacheContext    = new Context(ConfigurationManager.AppSettings["RedisCache"]);
 }
Example #8
0
        public static async Task <IActionResult> CreateTrip([HttpTrigger(AuthorizationLevel.Function, "post", Route = null)] HttpRequest req)
        {
            req.IsValidToken();

            string requestBody = new StreamReader(req.Body).ReadToEnd();
            Trip   trip        = JsonConvert.DeserializeObject <Trip>(requestBody);

            await TripRepository <Trip> .Initialize();

            if (trip == null)
            {
                return((ActionResult) new OkObjectResult("Trip cannot be null or empty"));
            }


            try
            {
                dynamic u = await TripRepository <Trip> .CreateItemAsync(trip);

                return((ActionResult) new OkObjectResult("Trip Created Successfully"));
            }
            catch (Exception ex)
            {
                return((ActionResult) new OkObjectResult("An error has occured"));
            }
        }
Example #9
0
        public static async Task <IActionResult> AddTripRating([HttpTrigger("post", Route = null)] HttpRequest req)
        {
            req.IsValidToken();
            string  requestBody = new StreamReader(req.Body).ReadToEnd();
            dynamic data        = JsonConvert.DeserializeObject(requestBody);

            if (string.IsNullOrEmpty((string)data.id))
            {
                return((ActionResult) new OkObjectResult("An Id is needed for this request"));
            }

            await TripRepository <Trip> .Initialize();

            Trip trip = await TripRepository <Trip> .GetItemAsync(data.id);

            if (trip != null)
            {
                return((ActionResult) new OkObjectResult("No trip available by that id"));
            }

            trip.Comment = data.Comment;

            trip.Rating = data.Rating;

            var updateTrip = await TripRepository <Trip> .UpdateItemAsync(trip.id, trip);

            if (updateTrip == null)
            {
                return((ActionResult) new OkObjectResult("Failed to update trip"));
            }

            return((ActionResult) new OkObjectResult("Thank you for your service"));
        }
        private async void GetPassengersWaiting(Trip trip)
        {
            try
            {
                using (TripRepository tripRepository = new TripRepository())
                {
                    _passengersList = new ObservableCollection <User>();
                    var tripInDB = await tripRepository.GetTripById(trip.TripId);

                    if (tripInDB.Passengers == null)
                    {
                        passengersListView.ItemsSource = _passengersList;
                        return;
                    }

                    tripInDB.Passengers
                    .Where(p => p.State)
                    .ToList()
                    .ForEach(p => _passengersList.Add(p));
                    passengersListView.ItemsSource = _passengersList;
                }
            }
            catch (Exception ex)
            {
                await DisplayAlert("Error", "An unexpected error has occurred" + ex.Message, "Ok");
            }
        }
Example #11
0
 public BookingListBLL()
 {
     BookingRepository  = new BookingRepository();
     CruiseRepository   = new CruiseRepository();
     TripRepository     = new TripRepository();
     CustomerRepository = new CustomerRepository();
 }
Example #12
0
 public RoomServiceBLL()
 {
     RoomClassRepository = new RoomClassRepository();
     RoomTypeRepository  = new RoomTypeRepository();
     CruiseRepository    = new CruiseRepository();
     TripRepository      = new TripRepository();
 }
 public void Should_Return_All_Trips()
 {
     using (var repos = new TripRepository(DataFilePath)) {
         var result = repos.GetAllTrips();
         Assert.That(result.Count(t => t!=null), Is.EqualTo(DataFileRowCountMinusHeader));
     }
 }
        public void EnterExpense()
        {
            var db = new InMemoryDB();
            var personRepository  = new PersonRepository(db);
            var expenseRepository = new ExpenseRepository(db);
            var tripRepository    = new TripRepository(db);

            var personService = new PersonService(personRepository);

            var expenseTracking = new ExpenseTracking(personRepository,
                                                      tripRepository,
                                                      expenseRepository
                                                      );

            var expenseService = new ExpenseService(expenseRepository);

            expenseService.CreateExpense("Lunch", "Lunch");

            var Personlist = personService.CreatePerson(new string[] { "Suresh", "Sakthivel", "Saravanan" });

            var trip = expenseTracking.CreateTrip("trip1", Personlist.Select(p => p.ID));

            expenseTracking.EnterExpense(trip.TripID, 1, new int[] { 2, 3 }, "Lunch", 100);

            var payer = Personlist.Where(p => p.ID == 1).FirstOrDefault();

            var payee = Personlist.Where(p => p.ID != 1).FirstOrDefault();

            Assert.AreEqual(100, payer.AmountToGet());
            Assert.AreEqual(50, payee.AmountToGive());
        }
Example #15
0
 public IHttpActionResult TripPaymentId(string tripId, string orderId)
 {
     using (TripRepository tripRepo = new TripRepository())
     {
         return(Ok(tripRepo.TripPaymentId(int.Parse(tripId), int.Parse(orderId))));
     }
 }
Example #16
0
        public static void SendRapport(int inCons, int inDest, DateTime inStart)
        {
            var xmlList = Serializer.Load();

            for (int i = 0; i < xmlList.Count; i++)
            {
                if (xmlList[i].myTrip.User == inCons && xmlList[i].myTrip.Destination == inDest && xmlList[i].myTrip.Start == inStart)
                {
                    FullTrip full = xmlList[i];
                    Trip     trip = ModelTransformer.TripModel2Trip(full.myTrip);
                    TripRepository.AddTrip(trip);

                    foreach (var vac in full.myVacation)
                    {
                        vac.tripID = trip.tripID;
                        VacationsRepository.AddVacation(ModelTransformer.VacationModel2Vacation(vac));
                    }
                    foreach (var item in full.myVerifications)
                    {
                        item.tripID = trip.tripID;
                        VerificationRepository.AddVerification(ModelTransformer.VerificationModel2Verification(item));
                    }

                    xmlList.RemoveAt(i);
                }
            }
            Serializer.Overwrite(xmlList);
        }
Example #17
0
        public ActionResult AddNewPosting(NewPostingViewModel viewModel)
        {
            TripRepository tripRepository = new TripRepository();

            tripRepository.AddTrip(viewModel, UserAccountsManager.Instance.CurrentUser);
            return(RedirectToAction("Index"));
        }
Example #18
0
 public ActionResult GetTrips(int clientId)
 {
     using (TripRepository tripRepo = new TripRepository())
     {
         return(View(tripRepo.GetAllByUser(clientId).ReturnedObject));
     }
 }
        public void ReservationCountForTripReturnsCorrectNumber()
        {
            var context = new FakeBreakAwayContext();

            var tripOne = new Trip {
                Identifier = Guid.NewGuid()
            };
            var tripTwo = new Trip {
                Identifier = Guid.NewGuid()
            };

            context.Reservations.Add(new Reservation {
                Trip = tripOne
            });
            context.Reservations.Add(new Reservation {
                Trip = tripOne
            });
            context.Reservations.Add(new Reservation {
                Trip = tripTwo
            });

            var rep = new TripRepository(context);

            Assert.AreEqual(2, rep.ReservationCountForTrip(tripOne));
        }
Example #20
0
        public HttpResponseMessage VehiclStatus1()
        {
            var requestParams = Request.Content.ReadAsStringAsync().Result;



            bool inRide = false;

            requestParams = UnescapeCodes(requestParams);

            List <string> splitedParam = requestParams.Trim().Split(',').ToList();


            if (splitedParam.Count > 0)
            {
                using (VehicleStatusRepository vsRepo = new VehicleStatusRepository())
                {
                    inRide = vsRepo.UpdateCordinates(splitedParam[0], decimal.Parse(splitedParam[1]), splitedParam[4], splitedParam[3]);

                    if (inRide)
                    {
                        int?currentTripId = 0;
                        using (TripRepository tRepo = new TripRepository())
                        {
                            currentTripId = tRepo.GetLastVehicalOpenTrip(splitedParam[0]);
                        }
                        if (currentTripId != null)
                        {
                            using (TripCoordinatesRepository tripCorrRepo = new TripCoordinatesRepository())
                            {
                                tripCorrRepo.AddUpdate(new DomainModel.TripCoordinates()
                                {
                                    DateTime = DateTime.Now,
                                    TripId   = currentTripId.Value,
                                    LatV     = splitedParam[3],
                                    LongV    = splitedParam[4],
                                });
                            }
                        }
                    }
                }
            }

            //var vs = new TempRepository().AddUpdate(new DomainModel.TempStatus()
            //{
            //    CreatedDate = DateTime.Now,
            //    DataStr =" sss   >>> " + sss
            //});



            string result = inRide ? "onn" : "off";
            var    resp   = new HttpResponseMessage(HttpStatusCode.OK);

            resp.Content = new StringContent(result, System.Text.Encoding.UTF8, "text/plain");
            return(resp);

            //return "on";
        }
 public UnitOfWork(TripContext context, ILogger <TripRepository> tripLogger, ILogger <StopRepository> stopLogger)
 {
     _context    = context;
     _tripLogger = tripLogger;
     _stopLogger = stopLogger;
     Trips       = new TripRepository(_context, _tripLogger);
     Stops       = new StopRepository(_context, _stopLogger);
 }
Example #22
0
 public void Dispose()
 {
     if (BookingRepository != null)
     {
         BookingRepository.Dispose();
         BookingRepository = null;
     }
     if (TripRepository != null)
     {
         TripRepository.Dispose();
         TripRepository = null;
     }
     if (CruiseRepository != null)
     {
         CruiseRepository.Dispose();
         CruiseRepository = null;
     }
     if (AgencyRepository != null)
     {
         AgencyRepository.Dispose();
         AgencyRepository = null;
     }
     if (BookingRoomRepository != null)
     {
         BookingRoomRepository.Dispose();
         BookingRoomRepository = null;
     }
     if (BookingHistoryRepository != null)
     {
         BookingHistoryRepository.Dispose();
         BookingHistoryRepository = null;
     }
     if (LockedRepository != null)
     {
         LockedRepository.Dispose();
         LockedRepository = null;
     }
     if (CustomerRepository != null)
     {
         CustomerRepository.Dispose();
         CustomerRepository = null;
     }
     if (UserBLL != null)
     {
         UserBLL.Dispose();
         UserBLL = null;
     }
     if (SeriesRepository != null)
     {
         SeriesRepository.Dispose();
         SeriesRepository = null;
     }
     if (BusTypeRepository != null)
     {
         BusTypeRepository.Dispose();
         BusTypeRepository = null;
     }
 }
Example #23
0
 public TripServicesImpl(AccountRepository accountRepository, TripRepository tripRepository, BookingRepository bookingRepository, AccountValidator accountValidator, TripValidator tripValidator, BookingValidator bookingValidator)
 {
     this.accountRepository = accountRepository;
     this.tripRepository    = tripRepository;
     this.bookingRepository = bookingRepository;
     this.accountValidator  = accountValidator;
     this.tripValidator     = tripValidator;
     this.bookingValidator  = bookingValidator;
 }
Example #24
0
 public PointsController(
     PointRepository pointRepository,
     TripRepository tripRepository, PlaceRepository placeRepository
     )
 {
     _pointRepository = pointRepository;
     _tripRepository  = tripRepository;
     _placeRepository = placeRepository;
 }
Example #25
0
 public IHttpActionResult RateTripByIdPost(string tripId, int rate, bool isRepair)
 {
     using (TripRepository vehiclesRepo = new TripRepository())
     {
         RequestResponse returnData = vehiclesRepo.UpdateTripRate(int.Parse(tripId), rate, isRepair);
         return(Ok(returnData));
     }
     // return Ok(new { IsDone = true, Messages = areaModel.farLeft.lat });
 }
Example #26
0
 public IHttpActionResult GetTripByIdPost(string tripId)
 {
     using (TripRepository vehiclesRepo = new TripRepository())
     {
         RequestResponse returnData = vehiclesRepo.GetTripStatus(int.Parse(tripId));
         return(Ok(returnData));
     }
     // return Ok(new { IsDone = true, Messages = areaModel.farLeft.lat });
 }
 public TripsController(
     UserManager <ApplicationUser> userManager,
     TripRepository tripRepository,
     PointRepository pointRepository)
 {
     _userManager     = userManager;
     _tripRepository  = tripRepository;
     _pointRepository = pointRepository;
 }
        public void FakeGetCustomersOnFutureTripDoesNotReturnNull()
        {
            var trip = new Trip {
                StartDate = DateTime.Today.AddDays(1)
            };
            var context = new FakeBreakAwayContext();
            var rep     = new TripRepository(context);

            Assert.IsNotNull(rep.GetTravelersOnFutureTrip(trip));
        }
        public async void GetDriverFinishedTrips()
        {
            using (TripRepository tripRepository = new TripRepository())
            {
                var driverFinishedTrips = await tripRepository.GetDriverFinishedTrips(_driver);

                _driverTripsList = new ObservableCollection <Trip>(driverFinishedTrips);
                driverTripsListView.ItemsSource = _driverTripsList;
            }
        }
Example #30
0
        public async void GetPassengerFinishedTrips()
        {
            using (TripRepository tripRepository = new TripRepository())
            {
                var passengerFinishedTrips = await tripRepository.GetPassengerFinishedTrips(_passenger);

                _passengerTripsList = new ObservableCollection <Trip>(passengerFinishedTrips);
                passengerTripsListView.ItemsSource = _passengerTripsList;
            }
        }
Example #31
0
        public async void BtnPostTrip_Clicked(object sender, EventArgs e)
        {
            try
            {
                using (TripRepository tripRepository = new TripRepository())
                {
                    if (IsValidForm())
                    {
                        var result = await DisplayAlert("Warning", "Are you sure ?", "Yes", "No");

                        if (result)
                        {
                            EnableDisableActivityIndicator(true);
                            EnableDisableControls(false);
                            var trip = new Trip
                            {
                                TripId    = Guid.NewGuid().ToString(),
                                Driver    = _driver,
                                TripRoute = new TripRoute
                                {
                                    MeetingPointLongitude = route.MeetingPoint.Position.Longitude,
                                    MeetingPoitnLatitude  = route.MeetingPoint.Position.Latitude,
                                    MeetingPoitnAddress   = route.MeetingPoint.Address,
                                    TargetPointLongitude  = route.TargetPoint.Position.Longitude,
                                    TargetPointLatitude   = route.TargetPoint.Position.Latitude,
                                    TargetPoitnAddress    = route.TargetPoint.Address
                                },
                                MeetingTime          = tpMeetingTime.Time.ToString(),
                                TimestampMeetingDate = Util.SetMeetingDate(tpMeetingTime.Time.ToString()),
                                MeetingDate          = Util.FormatMeetingDate(tpMeetingTime.Time.ToString()),
                                Price           = Convert.ToDecimal(txtPrice.Text),
                                SeatsAvailables = Convert.ToInt16(txtSeatsAvailables.Text),
                                State           = "Posted"
                            };

                            await tripRepository.AddTrip(trip);

                            EnableDisableActivityIndicator(false);
                            await DisplayAlert("Info", "Route posted successfully", "Ok");

                            workingPointFlag = string.Empty;
                            RemovePoint();
                            CleanEntries();
                            EnableDisableControls(true);
                            await Navigation.PushAsync(new TripWaitingRoomPage(trip));
                        }
                    }
                }
            }
            catch
            {
                EnableDisableActivityIndicator(false);
                await DisplayAlert("Error", "An unexpected error has occurred", "Ok");
            }
        }
        /// <summary>
        /// When implemented in a derived class, executes the scheduled job asynchronously. Implementations that want to know whether
        ///             the scheduled job is being cancelled can get a <see cref="P:Microsoft.WindowsAzure.Mobile.Service.ScheduledJob.CancellationToken"/> from the <see cref="M:CancellationToken"/> property.
        /// </summary>
        /// <returns>
        /// A <see cref="T:System.Threading.Tasks.Task"/> representing the asynchronous operation.
        /// </returns>
        public override async Task ExecuteAsync()
        {
            // Load Feed Message
            var dbConnStr = ConfigurationManager.ConnectionStrings["MTA_DB"].ConnectionString;

            var combinedUrl = string.Format(Url, ApiKey);
            var service = new FeedMessageService(combinedUrl);
            var msgIrt = await service.GetCurrentRealtimeFeedMessage(SubwayLines.RED_GREEN_S);
            var msgL = await service.GetCurrentRealtimeFeedMessage(SubwayLines.L);

            var alertFactory = new AlertFactory();
            var stopTimeFactory = new StopTimeUpdateFactory();
            var tripFactory = new TripFactory();
            var vehicleFactory = new VehiclePositionFactory();

            var alertsIrt = alertFactory.CreateItemsFromFeedMessage(msgIrt);
            var alertsL = alertFactory.CreateItemsFromFeedMessage(msgL);

            using (SqlConnection conn = new SqlConnection(dbConnStr))
            {

                    conn.Open();

                using (var alertRepos = new AlertRepository() {Connection = conn})
                {
                    // Clear Tables
                    alertRepos.ClearAll(); 

                    // Load Tables
                    alertRepos.AddRange(alertsIrt);
                    alertRepos.AddRange(alertsL);
                }

                var stopsIrt = stopTimeFactory.CreateItemsFromFeedMessage(msgIrt);
                var stopsL = stopTimeFactory.CreateItemsFromFeedMessage(msgL);

                using (var stopsRepos = new StopTimeUpdateRepository() { Connection = conn })
                {
                    // Clear Tables
                    stopsRepos.ClearAll();

                    // Load Tables
                    stopsRepos.AddRange(stopsIrt);
                    stopsRepos.AddRange(stopsL);
                }

                var tripsIrt = tripFactory.CreateItemsFromFeedMessage(msgIrt);
                var tripsL = tripFactory.CreateItemsFromFeedMessage(msgL);

                using (var tripsRepos = new TripRepository() { Connection = conn })
                {
                    // Clear Tables
                    tripsRepos.ClearAll();

                    // Load Tables
                    tripsRepos.AddRange(tripsIrt);
                    tripsRepos.AddRange(tripsL);
                }

                var vehiclesIrt = vehicleFactory.CreateItemsFromFeedMessage(msgIrt);
                var vehiclesL = vehicleFactory.CreateItemsFromFeedMessage(msgL);

                using (var vehiclesRepos = new VehiclePositionRepository() { Connection = conn })
                {
                    // Clear Tables
                    vehiclesRepos.ClearAll();

                    // Load Tables
                    vehiclesRepos.AddRange(vehiclesIrt);
                    vehiclesRepos.AddRange(vehiclesL);
                }

                using (var cmd = new SqlCommand("sp_CreateRealtimeSchedule", conn))
                {
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.ExecuteNonQuery();
                }
            }

            //return Task.FromResult(true);
        }
        public async void Should_Fill_All_Tables()
        {
            var msgL = await _mtaFeedService.GetCurrentRealtimeFeedMessage(SubwayLines.L);
            var msgIrt = await _mtaFeedService.GetCurrentRealtimeFeedMessage(SubwayLines.RED_GREEN_S);

            var alertFactory = new AlertFactory();
            var stopTimeFactory = new StopTimeUpdateFactory();
            var tripFactory = new TripFactory();
            var vehicleFactory = new VehiclePositionFactory();

            var alertsIrt = alertFactory.CreateItemsFromFeedMessage(msgIrt);
            var alertsL = alertFactory.CreateItemsFromFeedMessage(msgL);

            using (var alertRepos = new AlertRepository() { Connection = _connection })
            {
                // Clear Tables
                alertRepos.ClearAll();

                // Load Tables
                alertRepos.AddRange(alertsIrt);
                alertRepos.AddRange(alertsL);
            }

            var stopsIrt = stopTimeFactory.CreateItemsFromFeedMessage(msgIrt);
            var stopsL = stopTimeFactory.CreateItemsFromFeedMessage(msgL);

            using (var stopsRepos = new StopTimeUpdateRepository() { Connection = _connection })
            {
                // Clear Tables
                stopsRepos.ClearAll();

                // Load Tables
                stopsRepos.AddRange(stopsIrt);
                stopsRepos.AddRange(stopsL);
            }

            var tripsIrt = tripFactory.CreateItemsFromFeedMessage(msgIrt);
            var tripsL = tripFactory.CreateItemsFromFeedMessage(msgL);

            using (var tripsRepos = new TripRepository() { Connection = _connection })
            {
                // Clear Tables
                tripsRepos.ClearAll();

                // Load Tables
                tripsRepos.AddRange(tripsIrt);
                tripsRepos.AddRange(tripsL);
            }

            var vehiclesIrt = vehicleFactory.CreateItemsFromFeedMessage(msgIrt);
            var vehiclesL = vehicleFactory.CreateItemsFromFeedMessage(msgL);

            using (var vehiclesRepos = new VehiclePositionRepository() { Connection = _connection }) {
                // Clear Tables
                vehiclesRepos.ClearAll();

                // Load Tables
                vehiclesRepos.AddRange(vehiclesIrt);
                vehiclesRepos.AddRange(vehiclesL);
            }
        }
Example #34
0
        /// <summary>
        /// When implemented in a derived class, executes the scheduled job asynchronously. Implementations that want to know whether
        ///             the scheduled job is being cancelled can get a <see cref="P:Microsoft.WindowsAzure.Mobile.Service.ScheduledJob.CancellationToken"/> from the <see cref="M:CancellationToken"/> property.
        /// </summary>
        /// <returns>
        /// A <see cref="T:System.Threading.Tasks.Task"/> representing the asynchronous operation.
        /// </returns>
        public override async Task ExecuteAsync()
        {
            // Load Feed Message
            var dbConnStr = ConfigurationManager.ConnectionStrings["MTA_DB"].ConnectionString;

            var service = new StaticFileService(new StaticFileDownloader());


            StringBuilder sb = new StringBuilder();

            List<string> tableNames = new List<string>()
            {
                "agency",
                "calendar",
                "calendar_dates",
                "shapes",
                "stop_times",
                "transfers",
                "trips",
                "routes",
                "stops",
            };

            tableNames.ForEach(s => sb.AppendFormat("TRUNCATE TABLE {0};", s));

            using (var conn = new SqlConnection(dbConnStr))
            {
                using (var cmd = new SqlCommand(sb.ToString(), conn))
                {
                    conn.Open();
                    cmd.ExecuteNonQuery();
                }


                //Agency
                using (var repository = new AgencyRepository() {Connection = conn})
                {
                    // Load Tables
                    repository.AddRange(await service.GetAgencies());
                }

//            using (var repository = new CalendarDateRepository(dbConnStr))
//            {
//                // Load Tables
//                repository.AddRange(service.GetCalendarDates());
//            }

                //Calendars
                using (var repository = new CalendarRepository() {Connection = conn})
                {
                    // Load Tables
                    repository.AddRange(await service.GetCalendars());
                }
                //Route
                using (var repository = new RouteRepository() {Connection = conn})
                {
                    // Load Tables
                    repository.AddRange(await service.GetRoutes());
                }
                //Shape
                using (var repository = new ShapeRepository() {Connection = conn})
                {
                    // Load Tables
                    repository.AddRange(await service.GetShapes());
                }
                //Stop
                using (var repository = new StopRepository() {Connection = conn})
                {
                    // Load Tables
                    repository.AddRange(await service.GetStops());
                }
                //Stop Time
                using (var repository = new StopTimeRepository() {Connection = conn})
                {
                    // Load Tables
                    repository.AddRange(await service.GetStopTimes());
                }
                //Transfer
                using (var repository = new TransferRepository() {Connection = conn})
                {
                    // Load Tables
                    repository.AddRange(await service.GetTransfers());
                }
                //Trip
                using (var repository = new TripRepository() {Connection = conn})
                {
                    // Load Tables
                    repository.AddRange(await service.GetTrips());
                }

                // Build Stations
                using (var cmd = new SqlCommand("sp_BuildStations", conn))
                {
                    cmd.CommandType = CommandType.StoredProcedure;
//                    conn.Open();
                    cmd.ExecuteNonQuery();
                }

                using (var cmd = new SqlCommand("sp_CreateStaticSchedule", conn))
                {
                    cmd.CommandTimeout = 120;
                    cmd.CommandType = CommandType.StoredProcedure;
                    //                    conn.Open();

                    TimeZoneInfo easternZone = TimeZoneInfo.FindSystemTimeZoneById("Eastern Standard Time");
                    DateTime easternTimeNow = TimeZoneInfo.ConvertTime(DateTime.UtcNow, TimeZoneInfo.Utc,
                                                                    easternZone);
                    cmd.Parameters.AddWithValue("@today", easternTimeNow);

                    cmd.ExecuteNonQuery();
                }
            }
        }
        public void InsertSubList_ExistingEntity_Successfull()
        {
            UserEntity Entity = new UserEntity()
            {
                ID = Guid.Parse("B42B1A1E-9DD5-4904-B7CE-9D55FD9A547A"),
                FirstName = "SecondEntity",
                LastName = "SecondEntity",
                DateOfBirth = new DateTime(1994, 08, 05, 10, 0, 0),
                Email = "SecondEntity",
                UserPassword = "******",
                Registered = DateTime.Now,
                LastLogin = DateTime.Now,
                InvalidPasswordDate = DateTime.Now
            };

            Trip trip = new Trip()
            {
                ID = Guid.Parse("053340CE-EE99-48B2-9687-693879933AFE"),
                TripName = "Trip",
                TripDescription = "Desc",
                TripLocation = "Location",
                RelationID = this.TestUser.ID
            };

            UserEntityRepository Repository = new UserEntityRepository(helper);
            Entity.Trips.Add(trip);
            Repository.Update(Entity, true);

            IList<Trip> trips = Repository.GetByID(this.TestUser.ID).Trips
                .Where(o => o.ID == trip.ID)
                .ToList();

            Assert.That(Entity.Trips.Any(o => o.ID == trip.ID));
            TripRepository RepositoryTrip = new TripRepository(helper);
            RepositoryTrip.Delete(trip);
        }
Example #36
0
        private static async Task AsyncMain()
        {
            // Load Feed Message
            var dbConnStr = ConfigurationManager.ConnectionStrings["DbConnStr"].ConnectionString;

            var combinedUrl = string.Format(Url, ApiKey);
            var service = new FeedMessageService(combinedUrl);
            var msgIrt = await service.GetCurrentRealtimeFeedMessage(SubwayLines.RED_GREEN_S);
            var msgL = await service.GetCurrentRealtimeFeedMessage(SubwayLines.L);

            var alertFactory = new AlertFactory();
            var stopTimeFactory = new StopTimeUpdateFactory();
            var tripFactory = new TripFactory();
            var vehicleFactory = new VehiclePositionFactory();

            var alertsIrt = alertFactory.CreateItemsFromFeedMessage(msgIrt);
            var alertsL = alertFactory.CreateItemsFromFeedMessage(msgL);

            using (SqlConnection conn = new SqlConnection(dbConnStr))
            {

                using (var alertRepos = new AlertRepository() {Connection = conn})
                {
                    // Clear Tables
                    alertRepos.ClearAll();

                    // Load Tables
                    alertRepos.AddRange(alertsIrt);
                    alertRepos.AddRange(alertsL);
                }

                var stopsIrt = stopTimeFactory.CreateItemsFromFeedMessage(msgIrt);
                var stopsL = stopTimeFactory.CreateItemsFromFeedMessage(msgL);

                using (var stopsRepos = new StopTimeUpdateRepository() { Connection = conn })
                {
                    // Clear Tables
                    stopsRepos.ClearAll();

                    // Load Tables
                    stopsRepos.AddRange(stopsIrt);
                    stopsRepos.AddRange(stopsL);
                }

                var tripsIrt = tripFactory.CreateItemsFromFeedMessage(msgIrt);
                var tripsL = tripFactory.CreateItemsFromFeedMessage(msgL);

                using (var tripsRepos = new TripRepository() { Connection = conn })
                {
                    // Clear Tables
                    tripsRepos.ClearAll();

                    // Load Tables
                    tripsRepos.AddRange(tripsIrt);
                    tripsRepos.AddRange(tripsL);
                }

                var vehiclesIrt = vehicleFactory.CreateItemsFromFeedMessage(msgIrt);
                var vehiclesL = vehicleFactory.CreateItemsFromFeedMessage(msgL);

                using (var vehiclesRepos = new VehiclePositionRepository() { Connection = conn })
                {
                    // Clear Tables
                    vehiclesRepos.ClearAll();

                    // Load Tables
                    vehiclesRepos.AddRange(vehiclesIrt);
                    vehiclesRepos.AddRange(vehiclesL);
                }
            }
        }