public void InitView(long idMethod, dtoGenericRatingSet ratingSet, dtoItemRating rating, Boolean disabled) { if (rating == null) { BaseInitialize(idMethod, ratingSet, disabled, RatingType.simple); } else { RatingType type = rating.RatingType; if (type == RatingType.none) { type = RatingType.simple; } BaseInitialize(idMethod, ratingSet, disabled, type, rating.IdRatingValue, rating.IdRatingValueEnd); } }
public dtoItemRating VerifySettings(dtoItemRating settings) { if (settings.Error == DssError.None) { switch (settings.RatingType) { case RatingType.simple: TemplateRatingValue item = Service.RatingValueGet(settings.IdRatingValue); if (item != null) { if (item.IsFuzzy) { TriangularFuzzyNumber fValue = null; if (TriangularFuzzyNumber.TryParse(item.FuzzyValue, out fValue)) { settings.Value = fValue.CenterOfGravity; settings.ValueFuzzy = item.FuzzyValue; } else { settings.Error = DssError.InvalidWeight; } } else { settings.Value = item.Value; } } else { settings.Error = DssError.InvalidWeight; } break; case RatingType.intermediateValues: TemplateRatingValue fromValue = Service.RatingValueGet(settings.IdRatingValue); TemplateRatingValue toValue = Service.RatingValueGet(settings.IdRatingValueEnd); if (fromValue != null && toValue != null) { if (fromValue.IsFuzzy) { try{ TriangularFuzzyNumber fValue = TriangularFuzzyNumber.Intermediate(TriangularFuzzyNumber.Parse(fromValue.FuzzyValue), TriangularFuzzyNumber.Parse(toValue.FuzzyValue)); settings.Value = fValue.CenterOfGravity; settings.ValueFuzzy = fValue.ToString(); } catch (Exception ex) { settings.Error = DssError.InvalidWeight; } } else { settings.Value = ((fromValue.Value + toValue.Value) / 2); } } else { settings.Error = DssError.InvalidWeight; } break; } } return(settings); }