コード例 #1
0
        private string Calc(ValueSelection value)
        {
            var     accM   = PollutionBase_Class.AccurateMeasurements.FirstOrDefault(x => x.PollutionID == value.Pollution.ID && value.Value >= x.From && value.Value <= x.To);
            decimal result = value.Value * 0.01m * (accM != null ? accM.Value : 0);

            return($"{value.ValueRound} ± {Math.Round(result, 4)}");
        }
コード例 #2
0
        private List <MyTools.C_ValueCell> GetResolution(ValueSelection one, string resolutionName, int row, int Col1, int Col2, int Col3)
        {
            Resolution resolution             = PollutionBase_Class.AllResolution.First(x => x.CurtName.Contains(resolutionName));
            List <MyTools.C_ValueCell> result = new List <MyTools.C_ValueCell>();
            decimal value = 0;

            if (obj.CanResolution(resolution.ID))
            {
                uint      IDUnit = resolution.CurtName.Contains("621") ? one.SelectionWell.Well.UnitID : 0;
                ValueNorm VN     = PollutionBase_Class.GetValueNorm(resolution.ID, one.Pollution.ID, IDUnit);
                if (VN != null)
                {
                    if (one.Pollution.HasRange)
                    {
                        if (VN.FromRound > 0 && VN.ToRound > 0)
                        {
                            result.Add(new MyTools.C_ValueCell($"{VN.FromRound.KillZero()}-{VN.ToRound.KillZero()}", row, Col1));
                        }
                    }
                    else
                    {
                        var toValue = VN.ToRound;

                        if (toValue > 0)
                        {
                            table.value.Add(new MyTools.C_ValueCell(VN.ToRound.KillZero(), row, Col1));
                            value = (decimal)MonthVolume * VN.To;
                            if (value > 0)
                            {
                                table.value.Add(new MyTools.C_ValueCell(value.ToMath(6, 4, 1), row, Col2, style: Styles.s_RLTB_RC_T10_W));
                            }
                            value = Math.Round(one.Value / VN.To, 1);
                            if (value > 1)
                            {
                                table.value.Add(new MyTools.C_ValueCell(value.ToMoney(null, 1), row, Col3));
                            }
                        }
                    }
                }
            }
            return(result);
        }