public WhiskeyType CreateWhiskeyType(WhiskeyType whiskeyType)
        {
            var wt = _WSctx.WhiskeyTypes.Add(whiskeyType).Entity;

            _WSctx.SaveChanges();
            return(wt);
        }
 public ActionResult <WhiskeyType> Post([FromBody] WhiskeyType whiskeyType)
 {
     try
     {
         return(Ok(_wtService.CreateWhiskeyType(whiskeyType)));
     }
     catch (Exception ex)
     {
         return(BadRequest(ex.Message));
     }
 }
Esempio n. 3
0
 public WhiskeyType CreateWhiskeyType(WhiskeyType whiskeyType)
 {
     if (string.IsNullOrEmpty(whiskeyType.TypeName))
     {
         throw new Exception("The Whiskey type must be defined");
     }
     else
     {
         return(_wTypeRepo.CreateWhiskeyType(whiskeyType));
     }
 }
 public ActionResult <WhiskeyType> Patch(int id, [FromBody] WhiskeyType whiskeyType)
 {
     try
     {
         whiskeyType.Id = id;
         return(Ok(_wtService.Update(whiskeyType)));
     }
     catch (Exception ex)
     {
         return(BadRequest(ex.Message));
     }
 }
Esempio n. 5
0
        public void CreateWhiskeyTypeWithTypeNameMissing()
        {
            var whiskeyTypeRepo = new Mock <IWhiskeyTypeRepository>();

            IWhiskeyTypeService service = new WhiskeyTypeService(whiskeyTypeRepo.Object);

            var whiskeyType = new WhiskeyType()
            {
                // No WhiskeyType name
            };

            Exception ex = Assert.Throws <Exception>(() => service.CreateWhiskeyType(whiskeyType));

            Assert.Equal("The Whiskey type must be defined", ex.Message);
        }
Esempio n. 6
0
        /// <summary>
        /// Query for the advanced search.
        /// </summary>
        public async Task <IEnumerable <WhiskeyBase> > GetAllWhiskeysSearch(string searchName, string searchBrand, string searchCountry,
                                                                            bool searchForType, WhiskeyType searchType,
                                                                            bool searchRangeAge, int searchAge1, int searchAge2,
                                                                            bool searchRangePrice, decimal searchPrice1, decimal searchPrice2,
                                                                            bool searchRangePercent, decimal searchPercent1, decimal searchPercent2,
                                                                            bool includeSoftDelete)
        {
            var query = from w in db.Whiskeys
                        where (includeSoftDelete || w.SoftDeleted == false)
                        where (string.IsNullOrEmpty(searchName) || w.Name.Contains(searchName))
                        where (string.IsNullOrEmpty(searchBrand) || w.Brand.Contains(searchBrand))
                        where (string.IsNullOrEmpty(searchCountry) || w.CountryOfOrigin.Name.Contains(searchCountry))
                        where (!searchForType || w.Type == searchType)
                        where (!searchRangeAge && (searchAge1 == 0 || w.AgeYears == searchAge1) || (w.AgeYears >= searchAge1 && w.AgeYears <= searchAge2))
                        where (!searchRangePrice && (searchPrice1 == 0 || w.Price == searchPrice1) || (w.Price >= searchPrice1 && w.Price <= searchPrice2))
                        where (!searchRangePercent && (searchPercent1 == 0 || w.Percentage == searchPercent1) || (w.Percentage >= searchPercent1 && w.Percentage <= searchPercent2))
                        orderby w.Name
                        select w;

            return(await query.ToListAsync());
        }
Esempio n. 7
0
 public async Task <IEnumerable <Whiskey> > GetByType(WhiskeyType whiskeyType) =>
 await _db.Whiskeys
 .Where(w => w.WhiskeyType.Name == whiskeyType.Name)
 .Select(w => w).ToListAsync();
Esempio n. 8
0
 public WhiskeyType Update(WhiskeyType whiskeyType)
 {
     return(_wTypeRepo.Update(whiskeyType));
 }
 public WhiskeyType Update(WhiskeyType whiskeyType)
 {
     _WSctx.Attach(whiskeyType).State = EntityState.Modified;
     _WSctx.SaveChanges();
     return(whiskeyType);
 }