protected override int _factor_ldescription(int factorsubscript, cfg_factoraspects aspect, int?factorvalue) { switch (factorsubscript) { case 4: /* === P(robability) === */ if (factorvalue.HasValue) { switch (factorvalue.Value) { case 1: return(5069); /* 0.0001% (1 out of 1,000,000) */ case 2: return(5068); /* 0.001% (1 out of 100,000) */ case 3: return(5067); /* 0.01% (1 out of 10,000) */ case 4: return(5066); /* 0.1% (1 out of 1000) */ case 5: return(5065); /* 1% (1 out of 100) */ case 6: return(5064); /* 10% (1 out of 10) */ case 7: return(5063); /* 50% (1 out of 2) */ default: throw new ArgumentOutOfRangeException("rsepf::P", factorvalue.Value, "1-7"); } } break; } return(base._factor_ldescription(factorsubscript, aspect, factorvalue)); }
protected override int _factor_lcaption(int factorsubscript, cfg_factoraspects aspect, int?factorvalue) { switch (factorsubscript) { case 0: /* severity */ if (factorvalue == null) { /* bring the category caption */ return(6634); /* SEVERITY */ } else { switch ((int)factorvalue) { case 1: return(6635); /* very low/insignificant */ case 2: return(6636); /* low/minor */ case 3: return(204); /* moderate */ case 4: return(6637); /* high/major */ case 5: return(853); /* very high */ default: return(195); /* (not specified) */ } } case 1: /* probability */ if (factorvalue == null) { /* bring the caption */ return(6633); /* LIKELIHOOD */ } else { switch ((int)factorvalue) { case 1: return(6638); /* rare/very unlikely */ case 2: return(6639); /* remote/unlikely */ case 3: return(6640); /* moderate/occasional */ case 4: return(6641); /* likely/probable */ case 5: return(6642); /* almost certain */ default: return(195); /* (not specified) */ } } default: return(195); /* (not specified) */ } }
protected override int _factor_ldescription(int factorsubscript, cfg_factoraspects aspect, int?factorvalue) { switch (factorsubscript) { case 0: if (factorvalue == null) { /* bring the category caption */ return(208); /* Severity of possible consequences */ } else { switch (aspect) { case cfg_factoraspects.cfg_fa_material: case cfg_factoraspects.cfg_fa_environmental: case cfg_factoraspects.cfg_fa_reliability: return(base._factor_ldescription(factorsubscript, aspect, factorvalue)); default: /* safety, personal */ switch ((int)factorvalue) { case 1: return(6643); /* minor injury-first aid (cuts, brushishes,blunts) */ case 2: return(6644); /* medical treatment/non permanent disability */ case 3: return(6645); /* major injury/lost time */ case 4: return(6646); /* fatality/permanent disability */ case 5: return(6647); /* multiple fatalities */ default: return(195); /* (not specified) */ } } } case 1: if (factorvalue == null) { /* bring the caption */ return(209); /* Likelihood of damage to happen */ } else { switch (aspect) { case cfg_factoraspects.cfg_fa_reliability: return(base._factor_ldescription(factorsubscript, aspect, factorvalue)); default: switch ((int)factorvalue) { case 1: return(6648); /* virtually impossible */ case 2: return(6649); /* unlikely but possible */ case 3: return(6650); /* unusual (one can think of a scenario-1/3 years) */ case 4: return(6651); /* possible once every six months */ case 5: return(6652); /* to be expected once per week */ default: return(195); /* (not specified) */ } } } default: return(195); /* (not specified) */ } }
public override string riskpicker_dialogidentifier(cfg_factoraspects aspect) { /* they do not distinguish by aspect, all the same */ return(this.riskpicker_dialogidentifier()); }
public override decimal factor_score(int factorsubscript, cfg_factoraspects aspect, int factorvalue) { switch (factorsubscript) { case 0: /* === S === */ switch (factorvalue) { case 1: return(1); /* little */ case 2: return(3); /* average */ case 3: return(7); /* high */ case 4: return(15); /* very high */ case 5: return(40); /* disaster */ case 6: return(100); /* major disaster */ default: throw new ArgumentOutOfRangeException("rsepf::S", factorvalue, "1-6"); } case 3: /* === E(xposition) === */ switch (factorvalue) { case 1: return(0.5M); /* Negligible (once a year) */ case 2: return(1); /* Minimal (a few times a year) */ case 3: return(2); /* Occasionally (once a month) */ case 4: return(3); /* Sporadic (once per week) */ case 5: return(6); /* Often (daily) */ case 6: return(10); /* Permanently */ default: throw new ArgumentOutOfRangeException("rsepf::E", factorvalue, "1-6"); } case 4: /* === P(robability) === */ switch (factorvalue) { case 1: return(0.1M); /* Just theoretically possible */ case 2: return(0.2M); /* Practically impossible */ case 3: return(0.5M); /* Possible */ case 4: return(1); /* Only occasionally possible */ case 5: return(3); /* Unlikely, yet possible */ case 6: return(6); /* Quite probable */ case 7: return(10); /* Very likely */ default: throw new ArgumentOutOfRangeException("rsepf::P", factorvalue, "1-7"); } default: throw new ArgumentOutOfRangeException("rsepf::factorsubscript4score", factorsubscript, "0,3,4"); } }
protected override int _factor_lcaption(int factorsubscript, cfg_factoraspects aspect, int?factorvalue) { /* aspect is not used here (customer does not distinguish) * remember that factorvalue==null should return the caption of the subscript (what we do) */ switch (factorsubscript) { case 0: /* === S === */ if (factorvalue.HasValue == false) { return(5005); /* 1. Potential damage */ } switch (factorvalue.Value) { case 1: return(5011); /* little */ case 2: return(5010); /* average */ case 3: return(5009); /* high */ case 4: return(5008); /* very high */ case 5: return(5007); /* disaster */ case 6: return(5006); /* major disaster */ default: throw new ArgumentOutOfRangeException("rsepf::S", factorvalue.Value, "1-6"); } case 1: /* === S(Pers) === */ if (factorvalue.HasValue == false) { return(5012); /* Damage to persons */ } switch (factorvalue.Value) { case 1: return(5018); /* First aid case */ case 2: return(5017); /* Lost time */ case 3: return(5016); /* Severe injury */ case 4: return(5015); /* Fatality */ case 5: return(5014); /* Some fatalities */ case 6: return(5013); /* Many fatalities */ default: throw new ArgumentOutOfRangeException("rsepf::SPer", factorvalue.Value, "1-6"); } case 2: /* === S(Mat) === */ if (factorvalue.HasValue == false) { return(5019); /* Material damage */ } switch (factorvalue.Value) { case 1: return(5025); /* Less than EUR 1,200 */ case 2: return(5024); /* EUR 1,200 - 6,000 */ case 3: return(5023); /* EUR 6,000 - 125,000 */ case 4: return(5022); /* EUR 125,000 - 1 mio */ case 5: return(5021); /* EUR 1-6 mio */ case 6: return(5020); /* More than EUR 6 mio */ default: throw new ArgumentOutOfRangeException("rsepf::SMat", factorvalue.Value, "1-6"); } case 3: /* === E(xposition) === */ if (factorvalue.HasValue == false) { return(5026); /* 2. Exposition */ } switch (factorvalue.Value) { case 1: return(5032); /* Negligible (once a year) */ case 2: return(5031); /* Minimal (a few times a year) */ case 3: return(5030); /* Occasionally (once a month) */ case 4: return(5029); /* Sporadic (once per week) */ case 5: return(5028); /* Often (daily) */ case 6: return(5027); /* Permanently */ default: throw new ArgumentOutOfRangeException("rsepf::E", factorvalue.Value, "1-6"); } case 4: /* === P(robability) === */ if (factorvalue.HasValue == false) { return(5033); /* 3. Probability */ } switch (factorvalue.Value) { case 1: return(5040); /* Just theoretically possible */ case 2: return(5039); /* Practically impossible */ case 3: return(5038); /* Possible */ case 4: return(5037); /* Only occasionally possible */ case 5: return(5036); /* Unlikely, yet possible */ case 6: return(5035); /* Quite probable */ case 7: return(5034); /* Very likely */ default: throw new ArgumentOutOfRangeException("rsepf::P", factorvalue.Value, "1-7"); } case 5: /* === F(augmentation) === */ return(5047); /* Reduction factor */ default: throw new ArgumentOutOfRangeException("rsepf::factorsubscript", factorsubscript, "0-5"); } }
protected override int _factor_lcaption(int factorsubscript, cfg_factoraspects aspect, int?factorvalue) { /* aspect is not used here (customer does not distinguish according to their statement * remember that factorvalue==null should return the caption of the subscript (what we do) */ switch (factorsubscript) { case 0: if (factorvalue.HasValue == false) { return(4601); /* Schadensausmaß S */ } switch (factorvalue.Value) { case 0: return(4892); /* No health hazard */ case 1: return(4602); /* S1: Minor injury */ case 2: return(4603); /* S2: severe, irreversible injuries of one or more individuals, death of one individual */ case 3: return(4604); /* S3: Multiple fatalities */ case 4: return(4605); /* S4: Catastrophic consequences, many casualties */ default: throw new ArgumentOutOfRangeException("Risikograph::S", factorvalue.Value, ""); } case 1: if (factorvalue.HasValue == false) { return(4606); /* Aufenthaltsdauer A */ } switch (factorvalue.Value) { case 1: return(4607); /* A1: Rare to occasional exposure to hazard */ case 2: return(4608); /* A2: Frequent to permanent exposure to hazard */ default: throw new ArgumentOutOfRangeException("Risikograph::A", factorvalue.Value, ""); } case 2: if (factorvalue.HasValue == false) { return(4609); /* Gefahrenabwendung G */ } switch (factorvalue.Value) { case 1: return(4610); /* G1: Possible under certain conditions */ case 2: return(4611); /* G2: Hardly possible */ default: throw new ArgumentOutOfRangeException("Risikograph::G", factorvalue.Value, ""); } case 3: if (factorvalue.HasValue == false) { return(4612); /* Eintrittswahrscheinlichkeit W */ } switch (factorvalue.Value) { case 1: return(4613); /* W1: Undesirable event very unlikely to occur */ case 2: return(4614); /* W2: Undesirable event unlikely to occur */ case 3: return(4615); /* W3: Undesirable event rather likely to occur */ default: throw new ArgumentOutOfRangeException("Risikograph::W", factorvalue.Value, ""); } default: throw new ArgumentOutOfRangeException("Risikograph::factorsubscript", factorsubscript, "0-3"); } }
} /* added [pkosec 20140707] MEA-2014-00276 */ #region risk and priority: "Risikograph implementation" /* added [yyavorsk 20190226] vdm risk estimation */ protected override int _factorestimation_lcaption(int factorsubscript, cfg_factoraspects aspect, int?factorvalue) { switch (factorsubscript) { case 0: if (factorvalue.HasValue == false) { return(4612); /* Likelihood L */ } switch (factorvalue.Value) { case 1: return(6496); /* Low */ case 2: return(218); /* Moderate */ case 3: return(220); /* High */ default: throw new ArgumentOutOfRangeException("Risk estimation::Likelihood L", factorvalue.Value, ""); } case 1: if (factorvalue.HasValue == false) { return(4601); /* Severity S */ } switch (factorvalue.Value) { case 1: return(7082); /* No consequences */ case 2: return(7083); /* REVERSIBLE: Bagatelle, first aid necessary */ case 3: return(7084); /* REVERSIBLE: Treatment by a physician required (moderately severe consequences without permanent disability) */ case 4: return(7085); /* IRREVERSIBLE: Serious consequences (without permanent disability possible) */ case 5: return(7086); /* IRREVERSIBLE: Fatality */ default: throw new ArgumentOutOfRangeException("Risk estimation::Severity S", factorvalue.Value, ""); } case 2: if (factorvalue.HasValue == false) { return(7087); /* Hazard affects several areas */ } switch (factorvalue.Value) { case 1: return(7088); /* Yes, it may also apply to other areas */ case 2: return(147); /* No */ default: throw new ArgumentOutOfRangeException("Risk estimation::Hazard", factorvalue.Value, ""); } default: throw new ArgumentOutOfRangeException("Risk estimation::factorsubscript", factorsubscript, "0-3"); } }
protected override int _factor_lcaption(int factorsubscript, cfg_factoraspects aspect, int?factorvalue) { /* remember that factorvalue==null should return the caption of the subscript (what we do) */ switch (factorsubscript) { case 0: if (factorvalue.HasValue == false) { return(193); /* Severity */ } switch (aspect) { case cfg_factoraspects.cfg_fa_environmental: switch (factorvalue.Value) { case 1: return(5850); /* Negligible impact */ case 2: return(5849); /* Minor impact */ case 3: return(5848); /* Local impact */ case 4: return(5847); /* Significant impact */ case 5: return(5846); /* Massive impact */ default: throw new ArgumentOutOfRangeException("TAGRiskMatrix::S[env]", factorvalue.Value, ""); } case cfg_factoraspects.cfg_fa_material: switch (factorvalue.Value) { case 1: return(5855); /* No disruption; < 10 000 € material damage */ case 2: return(5854); /* Short disruption; < 100 000 € material damage */ case 3: return(5853); /* Partially out of order; 0.1-2 Mio € material damage */ case 4: return(5852); /* Partial loss; 2-10 Mio € damage */ case 5: return(5851); /* Total loss; major damage > 10 Mio € */ default: throw new ArgumentOutOfRangeException("TAGRiskMatrix::S[mat]", factorvalue.Value, ""); } case cfg_factoraspects.cfg_fa_reputational: switch (factorvalue.Value) { case 1: return(5860); /* Known; no external attention */ case 2: return(5859); /* Local attention, minor impact and/or individual complaints */ case 3: return(5858); /* Regional attention and/or many complaints */ case 4: return(5857); /* National attention */ case 5: return(5856); /* International Attention */ default: throw new ArgumentOutOfRangeException("TAGRiskMatrix::S[rep]", factorvalue.Value, ""); } default: switch (factorvalue.Value) { case 1: return(621); /* First aid; can continue to work */ case 2: return(622); /* 1-2 lost days, and/or MTI */ case 3: return(624); /* Major injury; 3+ lost days */ case 4: return(625); /* Fatality/Permanent Disability */ case 5: return(2048); /* Fatality */ default: throw new ArgumentOutOfRangeException("TAGRiskMatrix::S[per]", factorvalue.Value, ""); } } case 1: if (factorvalue.HasValue == false) { return(194); /* Probability */ } switch (factorvalue.Value) { case 1: return(197); /* Highly unlikely */ case 2: return(198); /* Unlikely */ case 3: return(199); /* Possible */ case 4: return(200); /* Likely */ case 5: return(201); /* Inevitable */ default: throw new ArgumentOutOfRangeException("TAGRiskMatrix::P", factorvalue.Value, ""); } default: throw new ArgumentOutOfRangeException("TAGRiskMatrix::factorsubscript", factorsubscript, "0-1"); } }