Ejemplo n.º 1
0
        public async Task <IHttpActionResult> PostAllergens(AllergensDTO allergensDTO)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var addedRecipies = allergensDTO.Recipes.Select(i => db.Recipes.Find(i)).ToList();

            if (addedRecipies.Contains(null))
            {
                return(NotFound());
            }

            Allergens allergens = new Allergens()
            {
                Name    = allergensDTO.Name,
                Recipes = addedRecipies
            };

            db.Allergens.Add(allergens);
            await db.SaveChangesAsync();

            var x = CreatedAtRoute("DefaultApi", new { id = allergens.ID }, allergens);

            allergensDTO.ID = allergens.ID;

            return(Ok(allergensDTO));
        }
Ejemplo n.º 2
0
        private void AddAllergy_Click(object sender, RoutedEventArgs e)
        {
            if (NewAllergy.Text.Equals(""))
            {
                ErrorMessage.Visibility = Visibility.Visible;
                Error.Text = ERROR_ADD;
                return;
            }
            Allergens allergenToAdd  = null;
            var       recordToUpdate = medicalRecordController.GetMedicalRecord(Informations.currentRecord.MedicalRecord.IdRecord);

            foreach (Allergens allergens in allergensController.GetAllAllergies())
            {
                if (allergens.Allergen.ToLower().Equals(NewAllergy.Text))
                {
                    allergenToAdd = allergens;
                }
            }

            if (allergenToAdd != null)
            {
                medicalRecordController.UpdateAllergies(allergenToAdd, recordToUpdate);
            }
            Informations.currentRecord.MedicalRecord = medicalRecordController.GetMedicalRecord(recordToUpdate.IdRecord);

            setListBoxes();
        }
Ejemplo n.º 3
0
        public Allergens AddAllergen(Allergens allergen)
        {
            if (allergen.AllergenType == null)
            {
                throw new ArgumentException("You need to add a name for the allergen");
            }

            return(_allergensRepo.CreateAllergen(allergen));
        }
Ejemplo n.º 4
0
 public static IEnumerable <string> GetAllergyStrings(this Allergens flags)
 {
     foreach (Allergens allergen in Enum.GetValues(typeof(Allergens)))
     {
         if (flags.HasFlag(allergen))
         {
             yield return(AllergyEnumToString[allergen]);
         }
     }
 }
        public MedicalRecord UpdateAllergies(Allergens allergy, MedicalRecord medicalRecord)
        {
            MedicalRecord medicalRecordToUpdate = medicalRecordRepository.GetObject(medicalRecord.IdRecord);

            if (!medicalRecordToUpdate.Allergies.Any(entity => entity.Allergen.Equals(allergy.Allergen)))
            {
                medicalRecordToUpdate.Allergies.Add(allergy);
            }
            return(medicalRecordRepository.Update(medicalRecordToUpdate));
        }
Ejemplo n.º 6
0
    public static bool HasFlagFromString(this Allergens flags, string allergy)
    {
        if (!AllergyStringToEnum.ContainsKey(allergy))
        {
            return(false);
        }

        var flag = AllergyStringToEnum[allergy];

        return(flags.HasFlag(flag));
    }
Ejemplo n.º 7
0
 public Allergens UpdateAllergen(Allergens allergenUpdate)
 {
     if (allergenUpdate.Id < 1)
     {
         throw new ArgumentException("Íd need to be higher than 0");
     }
     if (allergenUpdate.AllergenType == null)
     {
         throw new ArgumentException("You need to add a name for the allergen");
     }
     return(_allergensRepo.UpdateAllergen(allergenUpdate));
 }
 public Allergens Create(Allergens entity)
 {
     if (!ExistsInSystem(entity))
     {
         var allAllergens = stream.GetAll().ToList();
         allAllergens.Add(entity);
         stream.SaveAll(allAllergens);
         return(entity);
     }
     else
     {
         throw new EntityAlreadyExists(ALREADY_EXISTS);
     }
 }
        public Allergens CreateAllergen(Allergens allergen)
        {
            //Clone allergensInMenu to new location in memory, so they are not overridden on Attach
            var newAllergenInMenu = new List <AllergensInMenu>(allergen.AllergensInMenu);

            //Attach ingredient so basic properties are updated
            _ctx.Attach(allergen).State = EntityState.Added;
            //Remove all recipelines with updated order information
            _ctx.AllergensInMenu.RemoveRange(
                _ctx.AllergensInMenu.Where(ol => ol.MainFoodId == allergen.Id)
                );
            //Add all orderlines with updated order information
            foreach (var ol in newAllergenInMenu)
            {
                _ctx.Entry(ol).State = EntityState.Added;
            }
            // Save it
            _ctx.SaveChanges();
            //Return it
            return(allergen);
        }
Ejemplo n.º 10
0
        public async Task <IHttpActionResult> DeleteAllergens(int id)
        {
            Allergens allergens = await db.Allergens.FindAsync(id);

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

            AllergensDTO result = (new AllergensDTO()
            {
                ID = allergens.ID,
                Name = allergens.Name,
                Recipes = (from s in allergens.Recipes select s.Id).AsEnumerable().ToList()
            });

            db.Allergens.Remove(allergens);
            await db.SaveChangesAsync();

            return(Ok(result));
        }
Ejemplo n.º 11
0
        /// <summary>
        /// Dieser Event Handler wird aufgerufen, wenn die Weboberfläche angefordert wird.<para>
        /// Er konfiguriert gegebenenfalls die Tabelle gemäß der Suchanfrage.</para>
        /// </summary>
        /// <param name="search">
        /// Der zu suchende Ausdruck
        /// </param>
        /// <param name="sortOrder">
        /// Das Sortierverhalten
        /// </param>
        public void OnGet(string search, string sortOrder)
        {
            SearchKeyWord = search ?? string.Empty;
            if (!string.IsNullOrEmpty(SearchKeyWord))
            {
                Allergens = Allergens.Search(search, allergen => allergen.ToString()).ToArray();
            }
            Sort = string.IsNullOrEmpty(sortOrder) ? "!" : "";

            IOrderedEnumerable <Allergen> allergens = Allergens.OrderBy(allergen => 0);

            switch (sortOrder)
            {
            case "!":
                allergens = allergens.OrderByDescending(allergen => allergen.Description);
                break;

            default:
                allergens = allergens.OrderBy(allergen => allergen.Description);
                break;
            }
            Allergens = allergens.ToArray();
        }
Ejemplo n.º 12
0
        private void DeleteAllergies_Click(object sender, RoutedEventArgs e)
        {
            if (selectedAllergy == null)
            {
                ErrorMessage.Visibility = Visibility.Visible;
                Error.Text = ERROR_DELETE;
                return;
            }


            ModelHCI.MedicalRecordHCI record = Informations.currentRecord;
            var       recordToUpdate         = record.MedicalRecord;
            Allergens allergyToDelete        = null;

            foreach (Allergens allergens in recordToUpdate.Allergies)
            {
                if (allergens.Allergen.Equals(selectedAllergy.allergens.Allergen))
                {
                    allergyToDelete = allergens;
                }
            }
            if (allergyToDelete != null)
            {
                recordToUpdate.Allergies.Remove(allergyToDelete);
            }

            var recordUpdate = medicalRecordController.GetMedicalRecord(recordToUpdate.IdRecord);

            if (allergyToDelete != null)
            {
                recordUpdate.Allergies.Remove(allergyToDelete);
            }
            medicalRecordController.UpdateRecord(recordToUpdate);
            Informations.currentRecord.MedicalRecord = medicalRecordController.GetMedicalRecord(recordToUpdate.IdRecord);

            setListBoxes();
        }
        public Allergens UpdateAllergen(Allergens allergenUpdate)
        {
            foreach (var item in _ctx.AllergensInMenu.ToList().Where(c => c.AllergenID == allergenUpdate.Id))
            {
                _ctx.AllergensInMenu.Remove(item);
            }

            //Clone allergens in menu to new location in memory, so they are not overridden on Attach
            var relation = new List <AllergensInMenu>(allergenUpdate.AllergensInMenu);

            //Attach A.I.M so basic properties are updated
            _ctx.Attach(allergenUpdate).State = EntityState.Modified;

            //Add all orderlines with updated order information

            foreach (var ol in relation)
            {
                _ctx.Entry(ol).State = EntityState.Added;
            }
            // Save it
            _ctx.SaveChanges();
            //Return it
            return(allergenUpdate);
        }
Ejemplo n.º 14
0
 public Allergens CreateAllergen(Allergens allergens) => allergensService.CreateAllergen(allergens);
Ejemplo n.º 15
0
 public Allergens CreateAllergen(Allergens allergens) => allergensRepository.Create(allergens);
        public bool ExistsInSystem(Allergens allergens)
        {
            var allAllergens = stream.GetAll().ToList();

            return(allAllergens.Any(item => item.Allergen == allergens.Allergen));
        }
        /// <summary>
        /// Returns true if BrandedFoodObjectItems instances are equal
        /// </summary>
        /// <param name="other">Instance of BrandedFoodObjectItems to be compared</param>
        /// <returns>Boolean</returns>
        public bool Equals(BrandedFoodObjectItems other)
        {
            if (ReferenceEquals(null, other))
            {
                return(false);
            }
            if (ReferenceEquals(this, other))
            {
                return(true);
            }

            return
                ((
                     Barcode == other.Barcode ||
                     Barcode != null &&
                     Barcode.Equals(other.Barcode)
                     ) &&
                 (
                     Name == other.Name ||
                     Name != null &&
                     Name.Equals(other.Name)
                 ) &&
                 (
                     Brand == other.Brand ||
                     Brand != null &&
                     Brand.Equals(other.Brand)
                 ) &&
                 (
                     Ingredients == other.Ingredients ||
                     Ingredients != null &&
                     Ingredients.Equals(other.Ingredients)
                 ) &&
                 (
                     Package == other.Package ||
                     Package != null &&
                     Package.Equals(other.Package)
                 ) &&
                 (
                     Serving == other.Serving ||
                     Serving != null &&
                     Serving.Equals(other.Serving)
                 ) &&
                 (
                     Categories == other.Categories ||
                     Categories != null &&
                     Categories.SequenceEqual(other.Categories)
                 ) &&
                 (
                     Nutrients == other.Nutrients ||
                     Nutrients != null &&
                     Nutrients.SequenceEqual(other.Nutrients)
                 ) &&
                 (
                     DietLabels == other.DietLabels ||
                     DietLabels != null &&
                     DietLabels.Equals(other.DietLabels)
                 ) &&
                 (
                     DietFlags == other.DietFlags ||
                     DietFlags != null &&
                     DietFlags.SequenceEqual(other.DietFlags)
                 ) &&
                 (
                     PackagingPhotos == other.PackagingPhotos ||
                     PackagingPhotos != null &&
                     PackagingPhotos.Equals(other.PackagingPhotos)
                 ) &&
                 (
                     Allergens == other.Allergens ||
                     Allergens != null &&
                     Allergens.SequenceEqual(other.Allergens)
                 ) &&
                 (
                     BrandList == other.BrandList ||
                     BrandList != null &&
                     BrandList.SequenceEqual(other.BrandList)
                 ) &&
                 (
                     Countries == other.Countries ||
                     Countries != null &&
                     Countries.SequenceEqual(other.Countries)
                 ) &&
                 (
                     CountryDetails == other.CountryDetails ||
                     CountryDetails != null &&
                     CountryDetails.Equals(other.CountryDetails)
                 ) &&
                 (
                     PalmOilIngredients == other.PalmOilIngredients ||
                     PalmOilIngredients != null &&
                     PalmOilIngredients.SequenceEqual(other.PalmOilIngredients)
                 ) &&
                 (
                     IngredientList == other.IngredientList ||
                     IngredientList != null &&
                     IngredientList.SequenceEqual(other.IngredientList)
                 ) &&
                 (
                     HasEnglishIngredients == other.HasEnglishIngredients ||
                     HasEnglishIngredients != null &&
                     HasEnglishIngredients.Equals(other.HasEnglishIngredients)
                 ) &&
                 (
                     Minerals == other.Minerals ||
                     Minerals != null &&
                     Minerals.SequenceEqual(other.Minerals)
                 ) &&
                 (
                     Traces == other.Traces ||
                     Traces != null &&
                     Traces.SequenceEqual(other.Traces)
                 ) &&
                 (
                     Vitamins == other.Vitamins ||
                     Vitamins != null &&
                     Vitamins.SequenceEqual(other.Vitamins)
                 ) &&
                 (
                     Description == other.Description ||
                     Description != null &&
                     Description.Equals(other.Description)
                 ) &&
                 (
                     Keywords == other.Keywords ||
                     Keywords != null &&
                     Keywords.SequenceEqual(other.Keywords)
                 ));
        }
 /// <summary>
 /// Gets the hash code
 /// </summary>
 /// <returns>Hash code</returns>
 public override int GetHashCode()
 {
     unchecked // Overflow is fine, just wrap
     {
         var hashCode = 41;
         // Suitable nullity checks etc, of course :)
         if (Barcode != null)
         {
             hashCode = hashCode * 59 + Barcode.GetHashCode();
         }
         if (Name != null)
         {
             hashCode = hashCode * 59 + Name.GetHashCode();
         }
         if (Brand != null)
         {
             hashCode = hashCode * 59 + Brand.GetHashCode();
         }
         if (Ingredients != null)
         {
             hashCode = hashCode * 59 + Ingredients.GetHashCode();
         }
         if (Package != null)
         {
             hashCode = hashCode * 59 + Package.GetHashCode();
         }
         if (Serving != null)
         {
             hashCode = hashCode * 59 + Serving.GetHashCode();
         }
         if (Categories != null)
         {
             hashCode = hashCode * 59 + Categories.GetHashCode();
         }
         if (Nutrients != null)
         {
             hashCode = hashCode * 59 + Nutrients.GetHashCode();
         }
         if (DietLabels != null)
         {
             hashCode = hashCode * 59 + DietLabels.GetHashCode();
         }
         if (DietFlags != null)
         {
             hashCode = hashCode * 59 + DietFlags.GetHashCode();
         }
         if (PackagingPhotos != null)
         {
             hashCode = hashCode * 59 + PackagingPhotos.GetHashCode();
         }
         if (Allergens != null)
         {
             hashCode = hashCode * 59 + Allergens.GetHashCode();
         }
         if (BrandList != null)
         {
             hashCode = hashCode * 59 + BrandList.GetHashCode();
         }
         if (Countries != null)
         {
             hashCode = hashCode * 59 + Countries.GetHashCode();
         }
         if (CountryDetails != null)
         {
             hashCode = hashCode * 59 + CountryDetails.GetHashCode();
         }
         if (PalmOilIngredients != null)
         {
             hashCode = hashCode * 59 + PalmOilIngredients.GetHashCode();
         }
         if (IngredientList != null)
         {
             hashCode = hashCode * 59 + IngredientList.GetHashCode();
         }
         if (HasEnglishIngredients != null)
         {
             hashCode = hashCode * 59 + HasEnglishIngredients.GetHashCode();
         }
         if (Minerals != null)
         {
             hashCode = hashCode * 59 + Minerals.GetHashCode();
         }
         if (Traces != null)
         {
             hashCode = hashCode * 59 + Traces.GetHashCode();
         }
         if (Vitamins != null)
         {
             hashCode = hashCode * 59 + Vitamins.GetHashCode();
         }
         if (Description != null)
         {
             hashCode = hashCode * 59 + Description.GetHashCode();
         }
         if (Keywords != null)
         {
             hashCode = hashCode * 59 + Keywords.GetHashCode();
         }
         return(hashCode);
     }
 }
Ejemplo n.º 19
0
 public bool IsAllergicTo(Allergens allergen)
 {
     return((GetAllergens() & allergen) != 0);
 }
Ejemplo n.º 20
0
 public MedicalRecord UpdateAllergies(Allergens allergy, MedicalRecord medicalRecord) => medicalRecordService.UpdateAllergies(allergy, medicalRecord);
 public IEnumerable GetSuggestions(string filter)
 {
     return(Allergens.Where(a => a.Name.ToLower().Contains(filter)));
 }
Ejemplo n.º 22
0
 public Allergies(int mask)
 {
     _allergenFlags = (Allergens)mask;
 }