public static string KIndexLabelColor(KIndexLabelValues label) { switch (label) { case KIndexLabelValues.None: return("#000000"); case KIndexLabelValues.A: return("#00A5FF"); case KIndexLabelValues.B: return("#0064B4"); case KIndexLabelValues.C: return("#002D5A"); case KIndexLabelValues.D: return("#9099A3"); case KIndexLabelValues.E: return("#F2B41E"); case KIndexLabelValues.F: return("#D44820"); default: return("#000000"); } }
public static string KIndexLabelIconUrl(KIndexLabelValues value, bool local = true, bool showNone = false) { string url = ""; if (local == false) { url = "https://www.hlidacstatu.cz"; } bool hranate = Devmasters.Config.GetWebConfigValue("KIdxIconStyle") == "hranate"; switch (value) { case KIndexLabelValues.None: if (showNone) { return(url + $"/Content/kindex/{(hranate ? "hranate" : "kulate")}/icon-.svg"); } else { return(url + "/Content/Img/1x1.png "); } default: return(url + $"/Content/kindex/{(hranate ? "hranate" : "kulate")}/icon{value.ToString()}.svg"); } }
/// <summary> /// Returns IMG html tag with path to icon. /// </summary> public static string KindexImageIcon(KIndexLabelValues label, string style, bool showNone = false, string title = "") { if (string.IsNullOrEmpty(title)) { return($"<img title='K–Index {label.ToString()} - Index korupčního rizika' src='{KIndexLabelIconUrl(label, showNone: showNone)}' class='kindex' style='{style}'>"); } return($"<img title='{title}' src='{KIndexLabelIconUrl(label, showNone: showNone)}' class='kindex' style='{style}'>"); }
public static KIndexLabelValues CalculateLabel(decimal?value) { KIndexLabelValues label = KIndexLabelValues.None; for (int i = 0; i < KIndexLimits.Length; i++) { if (value > KIndexLimits[i]) { label = (KIndexLabelValues)i; } } return(label); }
private string _kIndexCommentForPart(KIndexParts part, KIndexLabelValues lbl) { switch (part) { case KIndexParts.PercentBezCeny: switch (lbl) { case KIndexLabelValues.A: return("U smluv neskrývá ceny."); case KIndexLabelValues.B: return("U většiny smluv netají ceny."); case KIndexLabelValues.C: case KIndexLabelValues.D: case KIndexLabelValues.E: return($"Skrývá ceny u {Devmasters.Lang.Plural.Get(this.AnnualData.Statistika.PocetSmluvBezCeny, "{0} smlouvy;{0} smluv;{0} smluv")}."); case KIndexLabelValues.F: return($"Skrývá ceny u varujícího počtu {Devmasters.Lang.Plural.Get(this.AnnualData.Statistika.PocetSmluvBezCeny, "{0} smlouvy;{0} smluv;{0} smluv")} z {this.AnnualData.Statistika.PocetSmluv} smluv."); default: return(""); } case KIndexParts.PercSeZasadnimNedostatkem: switch (lbl) { case KIndexLabelValues.A: return("Smlouvy bez zásadních nedostatků."); case KIndexLabelValues.B: case KIndexLabelValues.C: return($"Zásadní nedostatky u {Devmasters.Lang.Plural.Get(this.AnnualData.Statistika.PocetSmluvSeZasadnimNedostatkem, "{0} smlouvy;{0} smluv;{0} smluv")}."); case KIndexLabelValues.D: case KIndexLabelValues.E: case KIndexLabelValues.F: return($"Zásadní nedostatky u <b>{Devmasters.Lang.Plural.Get(this.AnnualData.Statistika.PocetSmluvSeZasadnimNedostatkem, "{0} smlouvy;{0} smluv;{0} smluv")}</b> z {this.AnnualData.Statistika.PocetSmluv} smluv."); default: return(""); } case KIndexParts.CelkovaKoncentraceDodavatelu: switch (lbl) { case KIndexLabelValues.A: return("Zakázky se nekoncentrují u žádných dodavatelů."); case KIndexLabelValues.B: case KIndexLabelValues.C: return("Žádný dodavatel nedominuje nad ostatními."); case KIndexLabelValues.D: case KIndexLabelValues.E: return("Velké zakázky se koncentrují u malého počtu dodavatelů."); case KIndexLabelValues.F: return($"Většinu peněz {Devmasters.Lang.Plural.Get(this.AnnualData.CelkovaKoncentraceDodavatelu.TopDodavatele().Count(), "dostal {0} dodavatel;dostali {0} dodavatelé;dostalo {0} dodavatelů")} z {this.AnnualData.CelkovaKoncentraceDodavatelu.Dodavatele.Count()}."); default: return(""); } case KIndexParts.KoncentraceDodavateluBezUvedeneCeny: switch (lbl) { case KIndexLabelValues.A: return("Zakázky se skrytou cenou se nekoncentrují u žádných dodavatelů."); case KIndexLabelValues.B: case KIndexLabelValues.C: return("Zakázky se skrytou cenou uzavřelo více dodavatelů, žádný nedominuje."); case KIndexLabelValues.D: case KIndexLabelValues.E: return($"Zakázky se skrytou cenou se koncentrují u {Devmasters.Lang.Plural.Get(this.AnnualData.KoncentraceDodavateluBezUvedeneCeny.TopDodavatele().Count(), "{0} dodavatele;{0} dodavatelů;{0} dodavatelů")}."); case KIndexLabelValues.F: return($"Většinu zakázek se skrytou cenou {Devmasters.Lang.Plural.Get(this.AnnualData.KoncentraceDodavateluBezUvedeneCeny.TopDodavatele().Count(), "dostal {0} dodavatel;dostali {0} dodavatelé;dostalo {0} dodavatelů")}."); default: return(""); } case KIndexParts.KoncentraceDodavateluCenyULimitu: switch (lbl) { case KIndexLabelValues.A: return("Zakázky s podezřelou cenou se nekoncentrují u žádných dodavatelů."); case KIndexLabelValues.B: case KIndexLabelValues.C: return("Zakázky s podezřelou cenou uzavřelo více dodavatelů, žádný nedominuje."); case KIndexLabelValues.D: case KIndexLabelValues.E: return("Zakázky s podezřelou cenou se se koncentrují u malého počtu dodavatelů."); case KIndexLabelValues.F: return($"Většinu zakázek s cenou u limitu VZ {Devmasters.Lang.Plural.Get(this.AnnualData.KoncentraceDodavateluCenyULimitu.TopDodavatele().Count(), "dostal {0} dodavatel;dostali {0} dodavatelé;dostalo {0} dodavatelů")}."); default: return(""); } case KIndexParts.KoncentraceDodavateluObory: switch (lbl) { case KIndexLabelValues.A: return("Zakázky z jednotlivých oborů se u dodavatelů nekoncentrují."); case KIndexLabelValues.B: case KIndexLabelValues.C: return("Zakázky z jednotlivých oborů uzavřelo více dodavatelů, žádný výrazně nedominuje."); case KIndexLabelValues.D: case KIndexLabelValues.E: var oboryE = this.AnnualData.KIndexVypocet.OboroveKoncentrace? .Radky .Where(m => KIndexLabelForPart(KIndexParts.KoncentraceDodavateluObory, m.Hodnota) >= KIndexLabelValues.D); return($"Dominance zakázek u dodavatelů se objevuje v {Devmasters.Lang.Plural.Get(oboryE.Count(), "{0} oboru;{0} oborech;{0} oborech")}."); case KIndexLabelValues.F: var oboryF = this.AnnualData.KIndexVypocet.OboroveKoncentrace? .Radky .Where(m => KIndexLabelForPart(KIndexParts.KoncentraceDodavateluObory, m.Hodnota) >= KIndexLabelValues.D); return($"Dominance zakázek u dodavatelů je výrazná v {Devmasters.Lang.Plural.Get(oboryF.Count(), "{0} oboru;{0} oborech;{0} oborech")}."); default: return(""); } case KIndexParts.PercSmluvUlimitu: switch (lbl) { case KIndexLabelValues.A: return("Neobchází limity zákona o veřejných zakázkách."); case KIndexLabelValues.B: return("Velmi málo smluv má hodnotu blízkou limitům pro veřejné zakázky."); case KIndexLabelValues.C: case KIndexLabelValues.D: case KIndexLabelValues.E: case KIndexLabelValues.F: return($"{Devmasters.Lang.Plural.Get(this.AnnualData.Statistika.PocetSmluvULimitu, "{0} smlouva má;{0} smlouvy mají;{0} smluv má")} hodnotu blízkou limitům veřejných zakázek, což může naznačovat snahu se vyhnout řádné veřejné soutěži."); //return $"Zásadní nedostatky evidujeme u {Devmasters.Lang.Plural.Get(data.StatistikaRegistruSmluv.PocetSmluvSeZasadnimNedostatkem, "{0} smlouva;{0} smlouvy;{0} smluv")} z {data.StatistikaRegistruSmluv.PocetSmluv}"; default: return(""); } case KIndexParts.PercNovaFirmaDodavatel: switch (lbl) { case KIndexLabelValues.A: return("Nemá smlouvy s nově založenými firmami."); case KIndexLabelValues.B: case KIndexLabelValues.C: case KIndexLabelValues.D: case KIndexLabelValues.E: case KIndexLabelValues.F: return($"Uzavřeli {Devmasters.Lang.Plural.Get(this.AnnualData.Statistika.PocetSmluvNovaFirma, "{0} smlouvu;{0} smlouvy;{0} smluv")} s nově založenými firmami."); default: return(""); } case KIndexParts.PercUzavrenoOVikendu: switch (lbl) { case KIndexLabelValues.A: return("Neuzavřeli žádné smlouvy o víkendu či svátku."); case KIndexLabelValues.B: case KIndexLabelValues.C: case KIndexLabelValues.D: case KIndexLabelValues.E: case KIndexLabelValues.F: return($"Uzavřeli {Devmasters.Lang.Plural.Get(this.AnnualData.Statistika.PocetSmluvOVikendu, "{0} smlouvu;{0} smlouvy;{0} smluv")} o víkendu nebo svátku."); default: return(""); } case KIndexParts.PercSmlouvySPolitickyAngazovanouFirmou: switch (lbl) { case KIndexLabelValues.A: return("Nemá uzavřené smlouvy s firmami, jejichž majitelé či ony samy sponzorovali politické strany."); case KIndexLabelValues.B: case KIndexLabelValues.C: case KIndexLabelValues.D: case KIndexLabelValues.E: case KIndexLabelValues.F: return($"Uzavřeli {Devmasters.Lang.Plural.Get(this.AnnualData.Statistika.PocetSmluvPolitiky, "{0} smlouvu;{0} smlouvy;{0} smluv")} s firmami, jejichž majitelé či ony samy sponzorovali politické strany."); default: return(""); } case KIndexParts.PercSmlouvyPod50kBonus: var bonusR = this.AnnualData.KIndexVypocet.Radky.FirstOrDefault(m => m.VelicinaPart == part); if (bonusR != null) { if (bonusR.Hodnota == -1 * Consts.BonusPod50K_3) { return("Dobrovolně zveřejňuje velké množství smluv pod 50 000 Kč."); } if (bonusR.Hodnota == -1 * Consts.BonusPod50K_2) { return("Dobrovolně zveřejňuje smlouvy pod 50 000 Kč."); } if (bonusR.Hodnota == -1 * Consts.BonusPod50K_1) { return("Dobrovolně zveřejňuje smlouvy pod 50 000 Kč."); } } return("Nesplňuje podmínku pro udělení bonusu za transparentnost."); default: return(""); } }