diff --git a/OdhApiImporter/Helpers/RAVEN/LtsApiv2Operations.cs b/OdhApiImporter/Helpers/RAVEN/LtsApiv2Operations.cs index 2e271041..77b1f4a3 100644 --- a/OdhApiImporter/Helpers/RAVEN/LtsApiv2Operations.cs +++ b/OdhApiImporter/Helpers/RAVEN/LtsApiv2Operations.cs @@ -264,9 +264,15 @@ QueryFactory queryFactory { if(accommodation.Features.Where(x => x.Id == "8192350ABF6B41DA89B255B340003991").Count() > 0) { - var featuretoremove = accommodation.Features.Where(x => x.Id == "8192350ABF6B41DA89B255B340003991").FirstOrDefault(); - if(featuretoremove != null) - accommodation.Features.Remove(featuretoremove); + var featurestoremove = accommodation.Features.Where(x => x.Id == "8192350ABF6B41DA89B255B340003991").ToList(); + if(featurestoremove != null) + { + foreach(var featuretoremove in featurestoremove) + { + accommodation.Features.Remove(featuretoremove); + } + } + } } @@ -280,7 +286,22 @@ QueryFactory queryFactory //Update also the Features if (accommodation.Features == null) accommodation.Features = new List(); - accommodation.Features.Add(guestcardfeature); + if(accommodation.Features.Count() == 0) + { + accommodation.Features.Add(guestcardfeature); + } + else + { + if (accommodation.Features.Where(x => x.Id == "8192350ABF6B41DA89B255B340003991").Count() == 0) + accommodation.Features.Add(guestcardfeature); + else if (accommodation.Features.Where(x => x.Id == "8192350ABF6B41DA89B255B340003991").Count() == 2) + { + //Clear Duplicates + var featuretoremove = accommodation.Features.Where(x => x.Id == "8192350ABF6B41DA89B255B340003991").FirstOrDefault(); + accommodation.Features.Remove(featuretoremove); + } + } + } //Compatiblity features to Tags