예제 #1
0
파일: Factura.cs 프로젝트: FerMod/HADS
        public Factura(long id, double total, TipoIva tipoIva)
        {
            this.Id      = id;
            this.Total   = total;
            this.TipoIva = tipoIva;

            lazyPrecioBruto = new Lazy <double>(() => CalculoIva.ObtenerPrecioBruto(total, tipoIva));
            lazyPrecioIva   = new Lazy <double>(() => CalculoIva.ObtenerPrecioIva(total, tipoIva));
        }
예제 #2
0
파일: MainWindow.cs 프로젝트: FerMod/HADS
        private void BCalcular_Click(object sender, EventArgs e)
        {
            if (!string.IsNullOrWhiteSpace(tbTotal.Text))
            {
                bool isNumeric = double.TryParse(tbTotal.Text, out double precioTotal);
                if (isNumeric)
                {
                    Enum.TryParse(cbTipoIva.SelectedValue.ToString(), out TipoIva tipoIva);

                    double precioBruto = Math.Round(CalculoIva.ObtenerPrecioBruto(precioTotal, tipoIva), 2);
                    double precioIva   = Math.Round(CalculoIva.ObtenerPrecioIva(precioTotal, tipoIva), 2);

                    tbTotalSinIva.Text = $"{precioBruto:0.00} {regionInfo.CurrencySymbol}";
                    tbIva.Text         = $"{precioIva:0.00} {regionInfo.CurrencySymbol}";
                }
            }
        }
예제 #3
0
파일: Index.aspx.cs 프로젝트: FerMod/HADS
        protected void BotonCalcular_Click(object sender, EventArgs e)
        {
            if (!string.IsNullOrWhiteSpace(textBoxTotal.Text))
            {
                bool isNumeric = double.TryParse(textBoxTotal.Text, out double precioTotal);
                if (isNumeric)
                {
                    TipoIva tipoIva     = (TipoIva)Enum.Parse(typeof(TipoIva), dropDownTipoIva.SelectedItem.Value);
                    double  precioBruto = Math.Round(CalculoIva.ObtenerPrecioBruto(precioTotal, tipoIva), 2);
                    double  precioIva   = Math.Round(CalculoIva.ObtenerPrecioIva(precioTotal, tipoIva), 2);

                    UpdateLabelTotalSinIvaValue(precioBruto);
                    UpdateLabelIva(tipoIva);
                    UpdateLabelIvaValue(precioIva);
                }
            }
        }
예제 #4
0
파일: Program.cs 프로젝트: FerMod/HADS
        static void Main(string[] args)
        {
            double  total = 0.0;
            TipoIva tipoIva;

            total = GetUserInputTotalValue();
            Console.WriteLine();
            tipoIva = GetUserInputTipoIvaValue();

            double totalSinIva = CalculoIva.ObtenerPrecioBruto(total, tipoIva);
            double iva         = CalculoIva.ObtenerPrecioIva(total, tipoIva);

            Console.WriteLine();
            Console.WriteLine($"Total sin IVA: {totalSinIva}");
            Console.WriteLine($"IVA: {iva}");
            Console.WriteLine();

            Console.WriteLine("Pulse cualquier tecla para salir...");
            Console.ReadKey(true);
        }
예제 #5
0
        public void TestPrecioIva(double total, TipoIva tipoIva, double expected)
        {
            double value = CalculoIva.ObtenerPrecioIva(total, tipoIva);

            Assert.That(expected, Is.EqualTo(value).Within(Tolerance));
        }