示例#1
0
        public static double CalcularImporteAlcantarilladoComercialIndustrial(ConexionSQLite conex, int grupo, int categoria, double volumen, int periodo)
        {
            double importe = 0;

            if (grupo == 10)
            {
                double tarifa_0_a_50 = conex.ObtenerTarifaDesague(grupo, categoria, 12, periodo);
                importe = tarifa_0_a_50 * volumen;
            }
            else
            {
                double tarifa_0_a_50    = conex.ObtenerTarifaDesague(grupo, categoria, 8, periodo);
                double tarifa_50_a_150  = conex.ObtenerTarifaDesague(grupo, categoria, 9, periodo);
                double tarifa_150_a_mas = conex.ObtenerTarifaDesague(grupo, categoria, 10, periodo);

                if (volumen <= 50)
                {
                    importe = tarifa_0_a_50 * volumen;
                }
                else
                {
                    if (volumen <= 150)
                    {
                        importe = 50 * tarifa_0_a_50 + (volumen - 50) * tarifa_50_a_150;
                    }
                    else
                    {
                        importe = 150 * tarifa_50_a_150 + (volumen - 150) * tarifa_150_a_mas;
                    }
                }
            }

            return(Math.Truncate(100 * importe) / 100);
        }
示例#2
0
        public static double CalcularImporteAlcantarilladoDomestica1(ConexionSQLite conex, int grupo, int categoria, double volumen, int periodo)
        {
            double importe = 0;

            if (grupo == 10)
            {
                double tarifa_0_a_8 = conex.ObtenerTarifaDesague(grupo, categoria, 12, periodo);
                importe = tarifa_0_a_8 * volumen;
            }
            else
            {
                double tarifa_0_a_8    = conex.ObtenerTarifaDesague(grupo, categoria, 3, periodo);
                double tarifa_8_a_25   = conex.ObtenerTarifaDesague(grupo, categoria, 4, periodo);
                double tarifa_25_a_mas = conex.ObtenerTarifaDesague(grupo, categoria, 6, periodo);

                if (volumen <= 8)
                {
                    importe = tarifa_0_a_8 * volumen;
                }
                else
                {
                    if (volumen <= 25)
                    {
                        importe = 8 * tarifa_0_a_8 + (volumen - 8) * tarifa_8_a_25;
                    }
                    else
                    {
                        importe = 8 * tarifa_0_a_8 + 17 * tarifa_8_a_25 + (volumen - 25) * tarifa_25_a_mas;
                    }
                }
            }

            return(Math.Truncate(100 * importe) / 100);
        }
示例#3
0
        public static Double calcular_volumen_alc_social(ConexionSQLite conex, int grupo, int categoria, int importe, int periodo)
        {
            double vol_agua;
            double trf_0_10;
            double trf_10_mas;

            if (grupo == 10)
            {
                trf_0_10 = conex.ObtenerTarifaDesague(grupo, 6, 12, periodo);
                vol_agua = importe / trf_0_10;
            }
            else
            {
                trf_0_10   = conex.ObtenerTarifaDesague(grupo, 6, 1, periodo);
                trf_10_mas = conex.ObtenerTarifaDesague(grupo, 6, 2, periodo);
                if (importe <= trf_0_10 * 10)
                {
                    vol_agua = importe / trf_0_10;
                }
                else
                {
                    vol_agua = 10 + (importe - 10 * trf_0_10) / trf_10_mas;
                }
            }
            vol_agua = Math.Truncate(vol_agua * 100) / 100;
            return(vol_agua);
        }
示例#4
0
        public static Double calcular_volumen_alc_domestica2_morropon(ConexionSQLite conex, int grupo, int importe, int periodo)
        {
            double vol_agua;
            double trf_0_8;
            double trf_8_25;
            double trf_25_mas;

            trf_0_8    = conex.ObtenerTarifaDesague(grupo, 1, 3, periodo);
            trf_8_25   = conex.ObtenerTarifaDesague(grupo, 1, 4, periodo);
            trf_25_mas = conex.ObtenerTarifaDesague(grupo, 1, 6, periodo);
            if (importe <= trf_0_8 * 8)
            {
                vol_agua = importe / trf_0_8;
            }
            else
            {
                if (importe <= trf_0_8 * 8 + trf_8_25 * 17)
                {
                    vol_agua = 8 + (importe - 8 * trf_0_8) / trf_8_25;
                }
                else
                {
                    vol_agua = 25 + (importe - 8 * trf_0_8 - 17 * trf_25_mas) / trf_25_mas;
                }
            }
            vol_agua = Math.Truncate(vol_agua * 100) / 100;
            return(vol_agua);
        }
示例#5
0
        public static double CalcularImporteAlcantarilladoNoResidencialMorropon(ConexionSQLite conex, int grupo, int categoria, double volumen, int periodo)
        {
            double importe         = 0;
            double tarifa_0_50     = conex.ObtenerTarifaDesague(grupo, categoria, 8, periodo);
            double tarifa_50_a_mas = conex.ObtenerTarifaDesague(grupo, categoria, 11, periodo);

            if (volumen <= 50)
            {
                importe = tarifa_0_50 * volumen;
            }
            else
            {
                importe = 50 * tarifa_0_50 + (volumen - 50) * tarifa_50_a_mas;
            }
            return(Math.Truncate(100 * importe) / 100);
        }
示例#6
0
        public static Double calcular_volumen_alc_domestica2(ConexionSQLite conex, int grupo, int importe, int periodo)
        {
            double vol_agua;
            double trf_0_8;
            double trf_8_25;
            double trf_25_100;
            double trf_100_mas;

            if (grupo == 10)
            {
                trf_0_8  = conex.ObtenerTarifaDesague(grupo, 2, 12, periodo);
                vol_agua = importe / trf_0_8;
            }
            else
            {
                trf_0_8     = conex.ObtenerTarifaDesague(grupo, 2, 3, periodo);
                trf_8_25    = conex.ObtenerTarifaDesague(grupo, 2, 4, periodo);
                trf_25_100  = conex.ObtenerTarifaDesague(grupo, 2, 5, periodo);
                trf_100_mas = conex.ObtenerTarifaDesague(grupo, 2, 7, periodo);
                if (importe <= trf_0_8 * 8)
                {
                    vol_agua = importe / trf_0_8;
                }
                else
                {
                    if (importe <= trf_0_8 * 8 + trf_8_25 * 17)
                    {
                        vol_agua = 8 + (importe - 8 * trf_0_8) / trf_8_25;
                    }
                    else
                    {
                        if (importe <= 8 * trf_0_8 + 17 * trf_8_25 + 75 * trf_25_100)
                        {
                            vol_agua = 25 + (importe - 8 * trf_0_8 - 17 * trf_8_25) / trf_25_100;
                        }
                        else
                        {
                            vol_agua = 100 + (importe - 8 * trf_0_8 - 17 * trf_8_25 - 75 * trf_25_100) / trf_100_mas;
                        }
                    }
                }
            }
            vol_agua = Math.Truncate(vol_agua * 100) / 100;
            return(vol_agua);
        }
示例#7
0
        public static Double calcular_volumen_alc_no_residencial_morropon(ConexionSQLite conex, int grupo, int categoria, int importe, int periodo)
        {
            double vol_agua;
            double trf_0_50;
            double trf_50_mas;

            trf_0_50   = conex.ObtenerTarifaDesague(grupo, categoria, 8, periodo);
            trf_50_mas = conex.ObtenerTarifaDesague(grupo, categoria, 11, periodo);
            if (importe <= trf_0_50 * 50)
            {
                vol_agua = importe / trf_0_50;
            }
            else
            {
                vol_agua = 50 + (importe - 50 * trf_0_50) / trf_50_mas;
            }
            vol_agua = Math.Truncate(vol_agua * 100) / 100;
            return(vol_agua);
        }
示例#8
0
        static Double calcular_volumen_alc_comercial_industrial(ConexionSQLite conex, int grupo, int categoria, int importe, int periodo)
        {
            double vol_agua;
            double trf_0_50;
            double trf_50_150;
            double trf_150_mas;

            if (grupo == 10)
            {
                trf_0_50 = conex.ObtenerTarifaDesague(grupo, categoria, 12, periodo);
                vol_agua = importe / trf_0_50;
            }
            else
            {
                trf_0_50    = conex.ObtenerTarifaDesague(grupo, categoria, 8, periodo);
                trf_50_150  = conex.ObtenerTarifaDesague(grupo, categoria, 9, periodo);
                trf_150_mas = conex.ObtenerTarifaDesague(grupo, categoria, 10, periodo);
                if (importe <= trf_0_50 * 50)
                {
                    vol_agua = importe / trf_0_50;
                }
                else
                {
                    if (importe <= trf_0_50 * 150)
                    {
                        vol_agua = 50 + (importe - 50 * trf_0_50) / trf_150_mas;
                    }
                    else
                    {
                        vol_agua = 150 + (importe - 150 * trf_50_150) / trf_150_mas;
                    }
                }
            }
            vol_agua = Math.Truncate(vol_agua * 100) / 100;
            return(vol_agua);
        }