Пример #1
0
        public IHttpActionResult PutOrder(int id, Order order)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != order.OrderId)
            {
                return(BadRequest());
            }

            db.Entry(order).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!OrderExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Пример #2
0
        public IHttpActionResult PutTourStatus(int id, TourStatus tourStatus)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != tourStatus.TourStatusId)
            {
                return(BadRequest());
            }

            db.Entry(tourStatus).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!TourStatusExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Пример #3
0
        public IHttpActionResult PutUser(int id, User user)
        {
            if (id != user.UserId)
            {
                return(BadRequest());
            }

            var currentUser = db.Users.Find(id);

            currentUser.Birthday  = currentUser.Birthday != user.Birthday ? user.Birthday : currentUser.Birthday;
            currentUser.LastName  = currentUser.LastName != user.LastName ? user.LastName : currentUser.LastName;
            currentUser.FirstName = currentUser.FirstName != user.FirstName ? user.FirstName : currentUser.FirstName;
            currentUser.Phone     = currentUser.Phone != user.Phone ? user.Phone : currentUser.Phone;
            if (user.Address != null && user.Address.AddressId == 0)
            {
                db.Addresses.Add(user.Address);
                db.SaveChanges();
                currentUser.Address = user.Address;
            }
            else if (currentUser.Address != null)
            {
                currentUser.Address.City         = currentUser.Address.City != user.Address.City ? user.Address.City : currentUser.Address.City;
                currentUser.Address.Country      = currentUser.Address.Country != user.Address.Country ? user.Address.Country : currentUser.Address.Country;
                currentUser.Address.Street       = currentUser.Address.Street != user.Address.Street ? user.Address.Street : currentUser.Address.Street;
                currentUser.Address.StreetNumber = currentUser.Address.StreetNumber != user.Address.StreetNumber ? user.Address.StreetNumber : currentUser.Address.StreetNumber;
                currentUser.Address.PostIndex    = currentUser.Address.PostIndex != user.Address.PostIndex ? user.Address.PostIndex : currentUser.Address.PostIndex;
            }
            currentUser.IdCard = currentUser.IdCard != user.IdCard ? user.IdCard : currentUser.IdCard;

            db.Entry(currentUser).State = EntityState.Modified;
            db.Entry(currentUser).Property(x => x.ImagePath).IsModified = false;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!UserExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Пример #4
0
        public IHttpActionResult PutBookedPlace(int id, BookedPlace bookedPlace)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != bookedPlace.BookedPlaceId)
            {
                return(BadRequest());
            }

            db.Entry(bookedPlace).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!BookedPlaceExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Пример #5
0
        public async Task <IHttpActionResult> UploadFile(int id)
        {
            HttpRequestMessage request = Request;

            if (!request.Content.IsMimeMultipartContent())
            {
                throw new HttpResponseException(HttpStatusCode.UnsupportedMediaType);
            }
            try
            {
                var currentUser = db.Users.FirstOrDefault(x => x.Email == User.Identity.Name);

                if (currentUser == null)
                {
                    return(NotFound());
                }

                if (!User.IsInRole(Roles.Client) && id != currentUser.UserId)
                {
                    return(Content(HttpStatusCode.Forbidden, Messages.AccsesDenied));
                }

                var streamProvider = new FilenameMultipartFormDataStreamProvider(ServerUploadFolder);
                await Request.Content.ReadAsMultipartAsync(streamProvider);


                var fileName = Path.GetFileName(streamProvider.FileData.Select(entry => entry.LocalFileName).First());

                var user = db.Users.Find(id);

                if (user == null)
                {
                    return(NotFound());
                }

                user.ImagePath = "content/images/" + fileName;

                db.Entry(user).State = System.Data.Entity.EntityState.Modified;

                db.SaveChanges();
                return(Ok(ExtraAirCore.Constants.Path.WebApiPath + "content/images/" + fileName));
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }
        }
        public IHttpActionResult PutAirport(AirportDto airportDto)
        {
            var airport = db.Airports.Find(airportDto.AirportId);

            if (airport == null)
            {
                return(BadRequest());
            }

            airport.Name = airport.Name != airportDto.Name ? airportDto.Name : airport.Name;

            airport.Address.Country      = airport.Address.Country != airportDto.Country ? airportDto.Country : airport.Address.Country;
            airport.Address.Street       = airport.Address.Street != airportDto.Street ? airportDto.Street : airport.Address.Street;
            airport.Address.StreetNumber = airport.Address.StreetNumber != Convert.ToInt32(airportDto.StreetNumber) ? Convert.ToInt32(airportDto.StreetNumber) : airport.Address.StreetNumber;
            airport.Address.City         = airport.Address.City != airportDto.City ? airportDto.City : airport.Address.City;

            db.Entry(airport).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!AirportExists(airportDto.AirportId))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }