public async Task <IActionResult> AddItemslookUp(int userId, DefinitionLookupDto definitionLookupDto) { if (userId != int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value)) { return(Unauthorized()); } if (await _repo.AddNewItems(definitionLookupDto)) { return(BadRequest("Item Already exists")); } return(Ok()); }
public async Task <bool> AddNewItems(DefinitionLookupDto newitemlookup) { switch (newitemlookup.lookUpType) { case (int)LookUpType.TypeOfCar: if (await _context.TypeOfCars.AnyAsync(x => x.CarName == newitemlookup.Description)) { return(true); } var typeOfCar = new TypeOfCar() { CarName = newitemlookup.Description }; await _context.TypeOfCars.AddAsync(typeOfCar); break; case (int)LookUpType.Nationality: if (await _context.Nationalities.AnyAsync(x => x.NationalityName == newitemlookup.Description)) { return(true); } var nationality = new Nationality() { NationalityName = newitemlookup.Description }; await _context.Nationalities.AddAsync(nationality); break; case (int)LookUpType.CarModel: if (await _context.CarModels.AnyAsync(x => x.ModelName == newitemlookup.Description) || await _context.CarModels.AnyAsync(x => x.CarTypeID == newitemlookup.OtherType)) { return(true); } var carModel = new CarModel() { CarTypeID = newitemlookup.OtherType, ModelName = newitemlookup.Description }; await _context.CarModels.AddAsync(carModel); break; } await _context.SaveChangesAsync(); return(false); }