public ActionResult Accept(int?id, int?tripinfoid) { //Update requests RequestRepository reqRepo = new RequestRepository(); Request request = reqRepo.GetById(id); request.Response = 1; reqRepo.UpdateRequest(request); //Update trip information TripInformationRepository tripInfoRepo = new TripInformationRepository(); TripInformation tripInfo = tripInfoRepo.GetById(tripinfoid); tripInfo.Users.Add(request.User); tripInfo.Capacity--; //Added instead of update repo string sql = "update TripInformation set Capacity=@P0 where TripInformationId=@P1"; List <object> parameterList1 = new List <object>(); //User user = (User)Session["__user"]; parameterList1.Add(tripInfo.Capacity); parameterList1.Add(tripInfo.TripInformationId); object[] parameters1 = parameterList1.ToArray(); int result = db.Database.ExecuteSqlCommand(sql, parameters1); //tripInfoRepo.UpdateTripInformation(tripInfo);//Error when executing this line return(RedirectToAction("Index", "Request")); }
public async Task <TripInformation> AddTrip(TripModel model) { //Gelen istek içerisinde Nerden , Nereye , Tarih , Açıklama ve Koltuk sayısının yanında oluşturan kişinin ID sini alıp DB ye kayıt edilen fonksiyon. var tripEntity = new TripInformation { Explanation = model.Explanation, From = model.From, To = model.To, Date = model.Date, SeatCount = model.SeatCount, CreatedBy = model.CreatedBy }; try { await _unitOfWork.TripInformation.Add(tripEntity); _unitOfWork.Complete(); return(tripEntity); } catch (Exception e) { return(null); } }
public void Add(Trip t, int userId) { Add(t); TripInformation tripInformation = new TripInformation(); tripInformation.Trip = t; tripInformation.Users.Add(new UserRepository().GetById(userId)); Context.Set <TripInformation>().Add(tripInformation); Context.SaveChanges(); }
public ActionResult SendRequest(int id) { ViewBag.from = TempData["from"]; ViewBag.to = TempData["to"]; ViewBag.time = TempData["time"]; //Modify TripInfo database User user = UserAccountsManager.Instance.CurrentUser; TripInformationRepository tripRepo = new TripInformationRepository(); TripInformation tripInfo = tripRepo.GetById(id); Request request = new Request(); request.User = user; request.From = ViewBag.from; request.To = ViewBag.to; request.Response = 0; request.StartTime = Convert.ToDateTime(ViewBag.time); request.TripInformation = tripInfo; request.Owner = tripInfo.Owner; //RequestRepository requestRepo = new RequestRepository(); // requestRepo.CreateRequest(request);//Error when executing this line. Solved the StackOverflow exception string sql = "insert into Request ([To],[From],StartTime,Response,Owner_UserId,User_UserId,TripInformation_TripInformationId) values (@p0,@p1,@p2,@p3,@p4,@p5,@p6)"; List <object> parameterList1 = new List <object>(); parameterList1.Add(request.To); parameterList1.Add(request.From); parameterList1.Add(request.StartTime); parameterList1.Add(request.Response); parameterList1.Add(request.Owner.UserId); parameterList1.Add(request.User.UserId); parameterList1.Add(request.TripInformation.TripInformationId); object[] parameters = parameterList1.ToArray(); int result = db.Database.ExecuteSqlCommand(sql, parameters); return(View()); }
public static double DistanceToKilometers(this TripInformation tripInformation) { return(tripInformation.Distance / 1000); }
public static double DurationToMinutes(this TripInformation tripInformation) { return(tripInformation.Duration.TotalMinutes); }
public void AddTrip(NewPostingViewModel viewModel, User user) { using (Context) { Location to = new Location(); to.StreetAddress = viewModel.StreetAddressDestination; to.City = viewModel.CityDestination; to.State = viewModel.StateDestination; to.ZipCode = viewModel.ZipDestination; Location from = new Location(); from.StreetAddress = viewModel.StreetAddressOrigin; from.City = viewModel.CityOrigin; from.State = viewModel.StateOrigin; from.ZipCode = viewModel.ZipOrigin; Trip trip = new Trip(); trip.To = to; trip.From = from; trip.TravelDateTime = viewModel.DateTime; trip.Type = viewModel.TripType; TripInformation tripInformation = new TripInformation(); tripInformation.Capacity = viewModel.TripType == TripType.LookingForPassengers ? 3 : 1; trip.TripInformation = tripInformation; using (CarpoolContext context = new CarpoolContext()) { user = context.Users.Single(x => x.UserId == user.UserId); trip.TripInformation.Owner = user; context.Trips.Add(trip); AddressBook addressBook = context.AddressBooks.SingleOrDefault(x => x.UserId == user.UserId); bool isNewAddressBook = addressBook == null; if (viewModel.AddOriginToAddressBook) { if (addressBook == null) { addressBook = new AddressBook() { User = user, UserId = user.UserId, Locations = new List <Location>() }; } addressBook.Locations.Add(from); } if (viewModel.AddDestinationToAddressBook) { if (addressBook == null) { addressBook = new AddressBook() { User = user, UserId = user.UserId, Locations = new List <Location>() }; } addressBook.Locations.Add(to); } if (viewModel.AddOriginToAddressBook || viewModel.AddDestinationToAddressBook) { if (isNewAddressBook) { context.AddressBooks.Add(addressBook); } else { context.Set <AddressBook>().Attach(addressBook); context.Entry(addressBook).State = EntityState.Modified; } } context.SaveChanges(); } } }