private void button1_Click(object sender, EventArgs e)
        {
            ManagerPresupuesto manager = new ManagerPresupuesto(Repo);

            if (nmr_Año.Text != "" && cboMes.SelectedIndex != -1)
            {
                Presupuesto PresupuestoGuardar = new Presupuesto();
                try
                {
                    PresupuestoGuardar.Año = int.Parse(nmr_Año.Text);
                    PresupuestoGuardar.Mes = (String)cboMes.SelectedItem;
                    PresupuestoGuardar.setPresupuestosCategorias(PresupuestoTemporal.getPresupuestosCategorias());
                    manager.ValidacionAgregarPresupuesto(PresupuestoGuardar);
                    nmr_Año.Text         = "";
                    cboMes.SelectedIndex = -1;
                    PresupuestoTemporal  = new Presupuesto();
                    manager.CargarCategoriasPresupuesto(PresupuestoTemporal);
                    CargarList();
                }
                catch (ExceptionAñoPresupuesto año)
                {
                    MessageBox.Show("El año tiene que ser entre 2018 - 2030");
                }
                catch (ExceptionPresupuestoRepetido repetido)
                {
                    MessageBox.Show("Presupuesto para año y mes ya ingresado");
                }
            }
            else
            {
                MessageBox.Show("Los campos Año y Mes son obligatorios");
            }
        }
예제 #2
0
        public void ValidacionAñoMenorA2018()
        {
            Repositorio        Repositorio = new Repositorio();
            ManagerPresupuesto Manager     = new ManagerPresupuesto(Repositorio);
            int Año = 2015;

            Manager.ValidacionAño(Año);
        }
예제 #3
0
        public void TransformarMontoTest()
        {
            Repositorio        Repositorio = new Repositorio();
            ManagerPresupuesto Manager     = new ManagerPresupuesto(Repositorio);
            decimal            unMonto     = 1000.0000M;

            Assert.AreEqual(1000.00M, Manager.TransformarMonto(unMonto));
        }
예제 #4
0
        public void ValidacionMontoCon1Decimal()
        {
            Repositorio        Repositorio = new Repositorio();
            ManagerPresupuesto Manager     = new ManagerPresupuesto(Repositorio);
            decimal            unMonto     = 1000.0M;

            Manager.ValidacionMonto(unMonto);
        }
예제 #5
0
        public void ValidacionMontoNegativo()
        {
            Repositorio        Repositorio = new Repositorio();
            ManagerPresupuesto Manager     = new ManagerPresupuesto(Repositorio);
            decimal            unMonto     = -10.00M;

            Manager.ValidacionMonto(unMonto);
        }
예제 #6
0
        public void ValidacionAñoValido()
        {
            Repositorio        Repositorio = new Repositorio();
            ManagerPresupuesto Manager     = new ManagerPresupuesto(Repositorio);
            int Año = 2025;

            Manager.ValidacionAño(Año);
            Assert.IsNotNull(Año);
        }
예제 #7
0
        public void PresupuestoRepetidoTest()
        {
            Repositorio        Repositorio   = new Repositorio();
            ManagerPresupuesto Manager       = new ManagerPresupuesto(Repositorio);
            Presupuesto        UnPresupuesto = new Presupuesto(2020, "Octubre", new List <MontoCategoria>());

            Repositorio.AgregarPresupuesto(UnPresupuesto);
            Manager.ValidacionAgregarPresupuesto(UnPresupuesto);
        }
예제 #8
0
        public void ValidacionMontoValido()
        {
            Repositorio        Repositorio = new Repositorio();
            ManagerPresupuesto Manager     = new ManagerPresupuesto(Repositorio);
            decimal            unMonto     = 10.00M;

            Manager.ValidacionMonto(unMonto);
            Assert.IsNotNull(unMonto);
        }
예제 #9
0
        public void BuscarPresupuestosPorFechaTest()
        {
            Repositorio        Repositorio   = new Repositorio();
            ManagerPresupuesto Manager       = new ManagerPresupuesto(Repositorio);
            Presupuesto        UnPresupuesto = new Presupuesto(2020, "March", new List <MontoCategoria>());

            Repositorio.AgregarPresupuesto(UnPresupuesto);
            string Periodo = "March 2020";

            Assert.AreEqual(UnPresupuesto.Id, Manager.BuscarPresupuestosPorFecha(Periodo).Id);
        }
예제 #10
0
        public void CargarListaDondeHuboPresupuestosTest()
        {
            Repositorio        Repositorio      = new Repositorio();
            ManagerPresupuesto Manager          = new ManagerPresupuesto(Repositorio);
            Presupuesto        presupuestoNuevo = new Presupuesto();

            presupuestoNuevo.Año = 2020;
            presupuestoNuevo.Mes = "March";
            Repositorio.AgregarPresupuesto(presupuestoNuevo);
            Manager.CargarCategoriasPresupuesto(presupuestoNuevo);
            List <string> Lista = Manager.CargarListaDondeHuboPresupuestos();

            Assert.AreEqual(1, Lista.Count);
        }
예제 #11
0
        public void ValidacionAgregarPresupuestoTest()
        {
            Repositorio        Repositorio  = new Repositorio();
            ManagerPresupuesto Manager      = new ManagerPresupuesto(Repositorio);
            Categoria          UnaCategoria = new Categoria("Entretenimiento");

            Repositorio.AgregarCategoria(UnaCategoria);
            Presupuesto unPresupuesto = new Presupuesto();

            unPresupuesto.Año = 2018;
            unPresupuesto.Mes = "Julio";
            Manager.ValidacionAgregarPresupuesto(unPresupuesto);
            Manager.CargarCategoriasPresupuesto(unPresupuesto);
            Assert.AreEqual(Repositorio.GetPresupuestos().GetAll()[0].Año, 2018);
        }
예제 #12
0
        public void CargarCategoriasAPresupuestoTest()
        {
            Repositorio        Repositorio = new Repositorio();
            ManagerPresupuesto Manager     = new ManagerPresupuesto(Repositorio);
            Categoria          Categoria1  = new Categoria("Entretenimiento");
            Categoria          Categoria2  = new Categoria("Cine");

            Repositorio.AgregarCategoria(Categoria1);
            Repositorio.AgregarCategoria(Categoria2);
            Presupuesto unPresupuesto = new Presupuesto();

            unPresupuesto.Año = 2020;
            unPresupuesto.Mes = "Ebola";
            Manager.ValidacionAgregarPresupuesto(unPresupuesto);
            Manager.CargarCategoriasPresupuesto(unPresupuesto);
            Assert.AreEqual(unPresupuesto.PresupuestosCategorias[1].Cat.Id, Categoria2.Id);
        }
 private void ReportePresupuesto_Load(object sender, EventArgs e)
 {
     try
     {
         ManagerPresupuesto Manager = new ManagerPresupuesto(Repo);
         comboBox1.DataSource = Manager.CargarListaDondeHuboPresupuestos();
     }
     catch (System.Data.Entity.Core.EntityException)
     {
         this.Enabled = false;
         MessageBox.Show("Error: La base de datos no se encuentra disponible");
     }
     catch (System.Data.SqlClient.SqlException)
     {
         this.Enabled = false;
         MessageBox.Show("Error: La base de datos no se encuentra disponible");
     }
 }
 private void RegistroPresupuestoUI_Load(object sender, EventArgs e)
 {
     try
     {
         ManagerPresupuesto manager = new ManagerPresupuesto(Repo);
         manager.CargarCategoriasPresupuesto(PresupuestoTemporal);
         CargarList();
     }
     catch (System.Data.Entity.Core.EntityException)
     {
         this.Enabled = false;
         MessageBox.Show("Error: La base de datos no se encuentra disponible");
     }
     catch (System.Data.SqlClient.SqlException)
     {
         this.Enabled = false;
         MessageBox.Show("Error: La base de datos no se encuentra disponible");
     }
 }
예제 #15
0
        public void AgregarUnMontoTest()
        {
            Repositorio        Repositorio = new Repositorio();
            ManagerPresupuesto Manager     = new ManagerPresupuesto(Repositorio);
            Categoria          Categoria1  = new Categoria("Entretenimiento");
            Categoria          Categoria2  = new Categoria("Cine");

            Repositorio.AgregarCategoria(Categoria1);
            Repositorio.AgregarCategoria(Categoria2);
            Presupuesto unPresupuesto = new Presupuesto();

            unPresupuesto.Año = 2020;
            unPresupuesto.Mes = "Febrero";
            Manager.ValidacionAgregarPresupuesto(unPresupuesto);
            Manager.CargarCategoriasPresupuesto(unPresupuesto);
            decimal unMonto = 1200.00M;

            Manager.ValidacionAgregarUnMonto(unPresupuesto, Categoria1, unMonto);
            Assert.AreEqual(unPresupuesto.PresupuestosCategorias[0].Monto, unMonto);
        }
예제 #16
0
        public void ValidacionModificacionPresupuestoTest()
        {
            Repositorio        Repositorio  = new Repositorio();
            ManagerPresupuesto Manager      = new ManagerPresupuesto(Repositorio);
            Categoria          UnaCategoria = new Categoria("Entretenimiento");

            Repositorio.AgregarCategoria(UnaCategoria);
            MontoCategoria        unMonto = new MontoCategoria(UnaCategoria, 0.00M);
            List <MontoCategoria> montos  = new List <MontoCategoria>();

            montos.Add(unMonto);
            int         unAño            = 2018;
            string      unMes            = "Julio";
            Presupuesto presupuestoNuevo = new Presupuesto(unAño, unMes, montos);

            Manager.ValidacionAgregarPresupuesto(presupuestoNuevo);
            decimal nuevoMontoDeC1 = 15000.00M;

            Manager.ValidacionModificarPresupuesto(Repositorio.GetPresupuestos().GetAll()[0], UnaCategoria, nuevoMontoDeC1);
            Assert.AreEqual(Repositorio.GetPresupuestos().GetAll()[0].getPresupuestosCategorias()[0].Monto, nuevoMontoDeC1);
        }
        private void btn_Consultar_Click(object sender, EventArgs e)
        {
            if (comboBox1.Text != "")
            {
                ManagerPresupuesto ManagerP = new ManagerPresupuesto(Repo);
                ManagerGasto       ManagerG = new ManagerGasto(Repo);
                data_Presupuestos.Rows.Clear();
                data_Presupuestos.Columns.Clear();
                data_Presupuestos.Columns.Add("Catgeoria", "Categoria");
                data_Presupuestos.Columns.Add("Planificado", "Planificado");
                data_Presupuestos.Columns.Add("Real", "Real");
                data_Presupuestos.Columns.Add("Diferencia", "Diferencia");
                Presupuesto Encontrado       = ManagerP.BuscarPresupuestosPorFecha(comboBox1.Text);
                decimal     TotalPlanificado = VALOR_POR_DEFECTO;
                decimal     TotalReal        = VALOR_POR_DEFECTO;
                decimal     TotalDiferencia  = VALOR_POR_DEFECTO;
                foreach (var item in Encontrado.getPresupuestosCategorias())
                {
                    List <Gasto> ListaDeGastosParaEsaFecha = ManagerG.ObtenerGastosPorFechaCategoria(item.Cat, comboBox1.Text);
                    string       SumaDeGastos = ManagerG.SumaDeGastosParaFecha(ListaDeGastosParaEsaFecha);
                    decimal      resultado    = RestaRealPlanificado(item.Monto, decimal.Parse(SumaDeGastos));
                    data_Presupuestos.Rows.Add(item.Cat.Nombre, item.Monto, SumaDeGastos, Formato(resultado));

                    TotalPlanificado += Math.Round(item.Monto, MAX_DECIMALES_MONTO);
                    TotalReal        += Math.Round(decimal.Parse(SumaDeGastos), MAX_DECIMALES_MONTO);
                    TotalDiferencia  += Math.Round(resultado);
                }
                data_Presupuestos.RowHeadersVisible = false;
                data_Presupuestos.Rows.Add("Total", TotalPlanificado, TotalReal, Formato(TotalDiferencia));
                ColorNegativo();
            }
            else
            {
                MessageBox.Show("Seleccione un presupuesto");
            }
        }
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            ManagerPresupuesto manager = new ManagerPresupuesto(Repo);
            Categoria          CategoriaSeleccionada = (Categoria)lstCategorias.SelectedItem;

            if (nroMonto.Text != "" && lstCategorias.SelectedIndex != -1)
            {
                try
                {
                    decimal monto = decimal.Parse(nroMonto.Text);
                    manager.ValidacionAgregarUnMonto(PresupuestoTemporal, CategoriaSeleccionada, monto);
                    nroMonto.Text = "0.00";
                    CargarList();
                }
                catch (ExceptionMontoPresupuesto monto)
                {
                    MessageBox.Show("El monto debe ser mayor a cero, y tener dos decimales");
                }
            }
            else
            {
                MessageBox.Show("La categoria no fue seleccionada o el monto esta vacio");
            }
        }