示例#1
0
        public void PassengersUpdate()
        {
            Models.Passenger p = new Models.Passenger();
            p.Id         = 999999;
            p.FirstName  = "Svend";
            p.LastName   = "Andersen";
            p.Luggage    = true;
            p.PassportId = 1234567890;
            p.SeatNumber = null;


            DB.DbPassenger dbPass = new DB.DbPassenger();
            dbPass.Delete(999999);

            Assert.IsNull(dbPass.Get(999999));

            dbPass.Create(p);

            Assert.AreEqual(p.PassportId, dbPass.Get(999999).PassportId);

            p.PassportId = 0987654321;

            dbPass.Update(p);

            Assert.AreEqual(p.PassportId, dbPass.Get(999999).PassportId);
        }
        public int ReserveFlight(int userId, int flightId, List <ViewModel.ReseveFlightVM> model)
        {
            using (var tran = _db.Database.BeginTransaction())
            {
                Models.Reserve r = new Models.Reserve()
                {
                    ReserveDate = DateTime.Now,
                    UserId      = userId,
                };
                _db.Reserves.Add(r);
                _db.SaveChanges();
                try
                {
                    foreach (var item in model)
                    {
                        //به ازای هر یک از اطلاعات مسافران اگر آیدی یا کد ملی وجود داشته باشد همان را از دیتابیس می گیریم
                        // در صورتی که اطلاعات در دیتابیس وجود نداشته باشد آنرا میسازیم
                        var passenger = _db.Passengers.FirstOrDefault(p => p.NationalityCode == item.NationalityCode || p.Id == item.Id);


                        if (passenger == null)
                        {
                            passenger = new Models.Passenger()
                            {
                                Age             = item.Age,
                                NationalityCode = item.NationalityCode,
                                CreateDate      = DateTime.Now,
                                FullName        = item.FullName
                            };
                            _db.Passengers.Add(passenger);

                            _db.SaveChanges();
                        }

                        int?          maxCod = _db.Tickets.Any() ? _db.Tickets.Max(p => p.Code) : 0;
                        Models.Ticket t      = new Models.Ticket()
                        {
                            PassengerId = passenger.Id,
                            Code        = maxCod.HasValue ? maxCod.Value + 1 : 1,
                            ReseveId    = r.Id,
                            Price       = 1000,
                            FlightId    = flightId
                        };
                        _db.Tickets.Add(t);
                        _db.SaveChanges();
                    }

                    tran.Commit();

                    return(r.Id);
                }
                catch (System.Exception ex)
                {
                    tran.Rollback();
                    throw ex;
                }
            }
        }
        public ActionResult DeleteConfirmed(long id)
        {
            var passenger = new Models.Passenger();
            if (passenger.Seleccionar(id))
            {
                passenger.Eliminar();
            }

            return RedirectToAction("Index", new { pagina = 1 });
        }
 /// <summary>
 /// GET /Passenger/Details/5
 /// </summary>
 public ActionResult Details(long id)
 {
     var passenger = new Models.Passenger();
     if (passenger.Seleccionar(id))
     {
         return View(passenger);
     }
     else
     {
         return HttpNotFound();
     }
 }
        private Entities.Passenger MapJsonPassenger(int passengerId, Models.InputJson.Json inputJson)
        {
            Models.Passenger jsonPassenger = inputJson.Passengers.First(x => x.Id == passengerId);

            Entities.Passenger entityPassenger = new Entities.Passenger
            {
                Id = passengerId,
                DestinationStationId = jsonPassenger.DestinationStation,
                PersonId             = jsonPassenger.Person,
                Person   = MapJsonPerson(jsonPassenger.Person, inputJson),
                IsActive = jsonPassenger.IsActive
            };

            return(entityPassenger);
        }
        public async Task <ActionResult> Create(Models.Passenger p)
        {
            Models.Message m = new Models.Message();
            try
            {
                string              flightJson    = JsonConvert.SerializeObject(p);
                HttpContent         stringContent = new StringContent(flightJson, Encoding.UTF8, "application/json");
                HttpResponseMessage response      = await _httpClient.PostAsync("api/Passengers", stringContent);

                response.EnsureSuccessStatusCode();
                string data = await response.Content.ReadAsStringAsync();

                m.Content = data;


                return(View("ShowMessage", m));
            }
            catch (Exception e)
            {
                m.Content = e.Message;
                return(View("ShowMessage", m));
            }
        }
 public void AddPassenger(Models.Passenger p)
 {
     passengerRepo.Create(p);
 }
 /// <summary>
 /// GET /Passenger/pagina
 /// </summary>
 public ActionResult Index(int pagina)
 {
     var passengers = new Models.Passenger().Todos(10, pagina);
     return View(passengers);
 }