public BreweryModel UpdateBrewery(int breweryId, BreweryModel breweryModel)
        {
            var breweryEntity = _mapper.Map <BreweryModel>(breweryModel);

            _libraryRepository.UpdateBrewery(breweryEntity);
            return(breweryModel);
        }
示例#2
0
        public IActionResult UpdateBrewery(int breweryId, [FromBody] BreweryModel breweryModel)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    foreach (var pair in ModelState)
                    {
                        if (pair.Key == nameof(breweryModel.Country) && pair.Value.Errors.Count > 0)
                        {
                            return(BadRequest(pair.Value.Errors));
                        }
                    }
                }

                return(Ok(_breweryService.UpdateBrewery(breweryId, breweryModel)));
            }
            catch (NotFoundOperationException ex)
            {
                return(NotFound(ex.Message));;
            }
            catch (Exception ex)
            {
                return(StatusCode(StatusCodes.Status500InternalServerError, $"Something happend: {ex.Message}"));
            }
        }
        public BreweryModel CreateBrewery(BreweryModel breweryModel)
        {
            var breweryEntity   = _mapper.Map <BreweryModel>(breweryModel);
            var returnedBreuery = _libraryRepository.CreateBrewery(breweryEntity);

            return(_mapper.Map <BreweryModel>(returnedBreuery));
        }
示例#4
0
        public BreweryModel GetBreweryDetail(int breweryId)
        {
            // Use SQL REader to get the details of a single brewery


            try
            {
                using (SqlConnection conn = new SqlConnection(connectionString))
                {
                    conn.Open();

                    SqlCommand cmd = new SqlCommand(@"SELECT * FROM Brewery WHERE BreweryId = @breweryId", conn);
                    cmd.Parameters.AddWithValue("@breweryId", breweryId);

                    SqlDataReader reader = cmd.ExecuteReader();

                    while (reader.Read())
                    {
                        BreweryModel brewery = BreweryReader(reader);
                        return(brewery);
                    }
                }
            }
            catch (SqlException ex)
            {
                throw ex;
            }
            return(null);
        }
示例#5
0
        public IList <BreweryModel> GetAllBreweries()
        {
            List <BreweryModel> breweries = new List <BreweryModel>();

            // Use SQL Reader to get a list of all brewery models
            try
            {
                using (SqlConnection conn = new SqlConnection(connectionString))
                {
                    conn.Open();

                    SqlCommand cmd = new SqlCommand(@"SELECT * FROM Brewery", conn);

                    SqlDataReader reader = cmd.ExecuteReader();

                    while (reader.Read())
                    {
                        BreweryModel brewery = BreweryReader(reader);
                        breweries.Add(brewery);
                    }
                }
            }
            catch (SqlException ex)
            {
                throw ex;
            }

            return(breweries);
        }
        public bool UpdateBrewery(BreweryModel breweryModel)
        {
            var breweryToUpdate = GetBrewery(breweryModel.Id);

            //companyToUpdate.CEO = companyModel.CEO ?? companyToUpdate.CEO;
            breweryToUpdate.Name          = breweryModel.Name ?? breweryToUpdate.Name;
            breweryToUpdate.Country       = breweryModel.Country ?? breweryToUpdate.Country;
            breweryToUpdate.FundationDate = breweryModel.FundationDate ?? breweryToUpdate.FundationDate;

            return(true);
        }
示例#7
0
        public ActionResult <BreweryModel> CreateBrewery([FromBody] BreweryModel breweryModel)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }

                var url        = HttpContext.Request.Host;
                var newBrewery = _breweryService.CreateBrewery(breweryModel);
                return(CreatedAtRoute("GetBrewery", new { breweryId = newBrewery.Id }, newBrewery));
            }
            catch (Exception ex)
            {
                return(StatusCode(StatusCodes.Status500InternalServerError, $"Something happend: {ex.Message}"));
            }
        }
        // breweries
        public BreweryModel CreateBrewery(BreweryModel brewery)
        {
            int newId;

            if (breweries.Count == 0)
            {
                newId = 1;
            }
            else
            {
                newId = breweries.OrderByDescending(b => b.Id).FirstOrDefault().Id + 1;
            }

            brewery.Id = newId;

            breweries.Add(brewery);
            return(brewery);
        }
示例#9
0
        public List <BreweryModel> SearchBreweries(string searchString, string latitude, string longitude, decimal searchRadius)
        {
            Dictionary <string, BreweryModel> searchResults = new Dictionary <string, BreweryModel>();

            Regex reg = new Regex(@"(?:\s)");

            var searchParameters = reg.Split(searchString);

            try
            {
                for (int i = 0; i < searchParameters.Length; i++)
                {
                    using (SqlConnection conn = new SqlConnection(connectionString))
                    {
                        conn.Open();


//DECLARE @user_lat DECIMAL(12, 9)
//DECLARE @user_lng DECIMAL(12, 9)
//SET @user_lat=39.963692 SET @user_lng=-75.139946

//DECLARE @orig geography = geography::Point(@user_lat, @user_lng, 4326);

//SELECT *, @orig.STDistance(geography::Point(Brewery.BreweryLatitude,  Brewery.BreweryLongitude, 4326)) AS distance

//FROM Brewery
//ORDER BY distance ASC
                        string     searchTerm = searchParameters[i];
                        SqlCommand cmd        = new SqlCommand(@"DECLARE @user_lat DECIMAL(12, 9)
                                                          DECLARE @user_lng DECIMAL(12, 9)
                                                          SET @user_lat=@latitude SET @user_lng=@longitude
                                                          DECLARE @orig geography = geography::Point(@user_lat, @user_lng, 4326);
                                                          SELECT *, @orig.STDistance(geography::Point(Brewery.BreweryLatitude, Brewery.BreweryLongitude, 4326)) AS distance
                                                          FROM Brewery
                                                          WHERE (BreweryName LIKE @brewery
                                                          OR Brewery.BreweryDistrict LIKE @district
                                                          OR Brewery.BreweryCity LIKE @city
                                                          OR Brewery.BreweryPostalCode LIKE @postal)
                                                          AND (@orig.STDistance(geography::Point(Brewery.BreweryLatitude, Brewery.BreweryLongitude, 4326)) < @searchRadius)", conn);

                        cmd.Parameters.AddWithValue("@brewery", $"%{searchTerm}%");
                        cmd.Parameters.AddWithValue("@district", $"%{searchTerm}%");
                        cmd.Parameters.AddWithValue("@city", $"%{searchTerm}%");
                        cmd.Parameters.AddWithValue("@postal", $"%{searchTerm}%");
                        cmd.Parameters.AddWithValue("@latitude", latitude);
                        cmd.Parameters.AddWithValue("@longitude", longitude);
                        cmd.Parameters.AddWithValue("@searchRadius", searchRadius);


                        SqlDataReader reader = cmd.ExecuteReader();

                        while (reader.Read())
                        {
                            BreweryModel brewery = BreweryReader(reader);
                            if (!searchResults.ContainsKey(brewery.BreweryName))
                            {
                                searchResults.Add(brewery.BreweryName, brewery);
                            }
                        }
                    }
                }
            }
            catch (SqlException ex)
            {
                Console.WriteLine(ex);
            }

            var searchResultsList = searchResults.Values.ToList();

            return(searchResultsList);
        }
示例#10
0
 public BreweryView(Brewery brewery)
 {
     _vm = new BreweryModel(brewery);
     this.BindingContext = _vm;
     InitializeComponent();
 }