<repo_name>Sanchez056/Proyecto-Final-Aplicada-1-Sistema-De-VentasSm<file_sep>/Entidades/Proveedores.cs
﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;

namespace Entidades
{
    public class Proveedores
    {
       [Key]
        public int ProveedorId { get; set; }

        public string Nombre { get; set; }

        public string Ciudad { get; set; }

        public string Direccion { get; set; }

        public string Telefono { get; set; }

        public string Fax { get; set; }

        public string Correo { get; set; }

        public DateTime Fecha { get; set; }
        public Proveedores( string nombre)
        {
            
            this.Nombre = nombre;
        }

        public Proveedores()
        {

        }

    }
}
<file_sep>/Proyecto Final/Registros/Ejercicio de Estructura/7.2.cpp
#include <iostream>
#include <string.h>

using namespace std;

int polindromo(char *cad)
{
	int tam = strlen(cad);
	char aux[tam];
	for(int x = tam-1,y = 0; x >= 0; x--, y++)
		aux[y] = cad[x];
	if(strcmp(cad,aux) == 0)
		return 1;
	else 
		return 0;
}

void esPolindromo(char *cad)
{
	if(polindromo(cad))
		cout << "es polindromo";
	else
	{
		cout << "introduzca una cadena: ";
		cin >> cad;
		esPolindromo(cad);
	}
}

int main()
{
	char cad[5] = {'e','l','a',};
	esPolindromo(cad);
	
	return 0;
}
<file_sep>/Proyecto Final/MenuPrincipal.cs
﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using BLL;
using Entidades;

namespace ProyectoFinal_Aplicada1
{
    public partial class MenuPrincipal : Form
    {
        public MenuPrincipal()
        {
            InitializeComponent();
        }

        
        

        
       
       

        private void RegistroarticuloToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Registros.RegistrosArticuloss ResUs = new Registros.RegistrosArticuloss();

            ResUs.MdiParent = this;
            ResUs.Show();
            ResUs.Location = new Point(40, 40);
        }

        private void toolStripMenuItem1_Click(object sender, EventArgs e)
        {

            Registros.RegistrosVentass ResUs = new Registros.RegistrosVentass();

            ResUs.MdiParent = this;
            ResUs.Show();
            ResUs.Location = new Point(40, 40);
        }

        private void RegistrosclientesToolStripMenuItem1_Click(object sender, EventArgs e)
        {
            Registros.RegistrosClientes ResUs = new Registros.RegistrosClientes();

            ResUs.MdiParent = this;
            ResUs.Show();
            ResUs.Location = new Point(40, 40);
        }

        private void RegistrosusuariosToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Registros.RegistrosUsuarios ResUs = new Registros.RegistrosUsuarios();

            ResUs.MdiParent = this;
            ResUs.Show();
            ResUs.Location = new Point(40, 40);
        }

        private void tiposUsuariosToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Registros.RegistrosTiposUsuarios ResUs = new Registros.RegistrosTiposUsuarios();

            ResUs.MdiParent = this;
            ResUs.Show();
            ResUs.Location = new Point(40, 40);
        }

        private void RegistrosproveedorToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Registros.RegistrosProvvedores ResUs = new Registros.RegistrosProvvedores();

            ResUs.MdiParent = this;
            ResUs.Show();
            ResUs.Location = new Point(40, 40);
        }

        private void registrosEmpleadoToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Registros.RegistrosEmpleados ResUs = new Registros.RegistrosEmpleados();

            ResUs.MdiParent = this;
            ResUs.Show();
            ResUs.Location = new Point(40, 40);
        }

        private void categoriasToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Registros.RegistrosCategorias ResUs = new Registros.RegistrosCategorias();

            ResUs.MdiParent = this;
            ResUs.Show();
            ResUs.Location = new Point(40, 40);
        }

        private void ConsultausuariosToolStripMenuItem1_Click(object sender, EventArgs e)
        {
             Consultas.ConsultaUsuarios  ConUs = new Consultas.ConsultaUsuarios();

            ConUs.MdiParent = this;
            ConUs.Show();
            ConUs.Location = new Point(40, 40);
        }

        private void tipoDeUsuariosToolStripMenuItem_Click(object sender, EventArgs e)
        {

            Consultas.ConsultaTipoUsuarios ConUs = new Consultas.ConsultaTipoUsuarios();

            ConUs.MdiParent = this;
            ConUs.Show();
            ConUs.Location = new Point(40, 40);
        }

        private void ConsultaclientesToolStripMenuItem2_Click(object sender, EventArgs e)
        {

            Consultas.ConsultaClientes ConUs = new Consultas.ConsultaClientes();

            ConUs.MdiParent = this;
            ConUs.Show();
            ConUs.Location = new Point(40, 40);
        }

        private void ConsultaproveedoresToolStripMenuItem_Click(object sender, EventArgs e)
        {

            Consultas.ConsultaProvvedor ConUs = new Consultas.ConsultaProvvedor();

            ConUs.MdiParent = this;
            ConUs.Show();
            ConUs.Location = new Point(40, 40);
        }

        private void ConsultaempleadosToolStripMenuItem_Click(object sender, EventArgs e)
        {

            Consultas.ConsultaEmpleados ConUs = new Consultas.ConsultaEmpleados();

            ConUs.MdiParent = this;
            ConUs.Show();
            ConUs.Location = new Point(40, 40);
        }

        private void ConsultaarticulosToolStripMenuItem_Click(object sender, EventArgs e)
        {

            Consultas.ConsultasArticulos ConUs = new Consultas.ConsultasArticulos();

            ConUs.MdiParent = this;
            ConUs.Show();
            ConUs.Location = new Point(40, 40);
        }

        private void ventasToolStripMenuItem1_Click(object sender, EventArgs e)
        {

            Consultas.ConsultaVentas ConUs = new Consultas.ConsultaVentas();

            ConUs.MdiParent = this;
            ConUs.Show();
            ConUs.Location = new Point(40, 40);
        }

        private void categoriaDeArticulosToolStripMenuItem_Click(object sender, EventArgs e)
        {

            Consultas.ConsultaCategorias ConUs = new Consultas.ConsultaCategorias();

            ConUs.MdiParent = this;
            ConUs.Show();
            ConUs.Location = new Point(40, 40);
        }
    }
}
<file_sep>/Entidades/TipoPagos.cs
﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;

namespace Entidades
{
   public  class TipoPagos
    {
        [Key]
        public int TipoId { get; set; }

        public string Descripcion { get; set; }
    }
}
<file_sep>/Proyecto Final/Registros/Ejercicio de Estructura/7.4.cpp
#include <iostream>
#include <string.h>
#include <stdlib.h>

using namespace std;

int numeroVocales(char *cad, int x)
{
	if(cad[x] == 'a' || cad[x] == 'e' || cad[x] == 'i' || cad[x] == 'o' || cad[x] == 'u' || cad[x] == 'A' || cad[x] == 'E' || cad[x] == 'I' || cad[x] == 'O' || cad[x] == 'U')
		return 1 + numeroVocales(cad, x+1);
	else
		if(cad[x] != '\0')
			return 0 + numeroVocales(cad, x+1);
	
}

int main()
{
	char array[10] = {'h', 'o', 'l', 'a', 'm', 'i','j','o','s'};
	cout << numeroVocales(array,0);
	return 0;
}
<file_sep>/Proyecto Final/VentanasReportes/FacturaReporte.cs
﻿using Entidades;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace ProyectoFinal_Aplicada1.VentanasReportes
{
    public partial class FacturaReporte : Form
    {

        public int VentaId { get; set; }

        public FacturaReporte()
        {
            InitializeComponent();
        }

        private void FacturaReporte_Load(object sender, EventArgs e)
        {
            Ventas vent = BLL.VentasBLL.Buscar(VentaId);
            VentasBindingSource.Add(vent);
            foreach (var articul in BLL.ArticulosBLL.Articulo(VentaId))
            {
                ArticulosBindingSource.Add(articul);

            }
            this.reportViewer1.RefreshReport();
        }

        private void reportViewer1_Load(object sender, EventArgs e)
        {

        }

        private void VentasBindingSource_CurrentChanged(object sender, EventArgs e)
        {

        }

        private void ArticulosBindingSource_CurrentChanged(object sender, EventArgs e)
        {

        }
    }
}
<file_sep>/Proyecto Final/Consultas/ConsultasArticulos.cs
﻿using BLL;
using Entidades;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace ProyectoFinal_Aplicada1.Consultas
{
    public partial class ConsultasArticulos : Form
    {
        public ConsultasArticulos()
        {
            InitializeComponent();
            CargarFiltrar();
        }
        public List<Articulos> lista = new List<Articulos>();


        private void Buscarbutton_Click(object sender, EventArgs e)
        {

            if (validar() == true)
                BuscarSelecionComBox();
        }
        private void CargarFiltrar()
        {
            FiltrarcomboBox.Items.Insert(0, "ArticuloId");
            FiltrarcomboBox.Items.Insert(1, "NombreArticulo");
            FiltrarcomboBox.Items.Insert(2, "MarcaArticulo");
            FiltrarcomboBox.Items.Insert(3, "FechaIngreso");
            FiltrarcomboBox.DataSource = FiltrarcomboBox.Items;
            FiltrarcomboBox.DisplayMember = "Id";
            ConsultaArticulosdataGridView.DataSource = ArticulosBLL.GetLista();
        }

        private void BuscarSelecionComBox()
        {


            if (FiltrarcomboBox.SelectedIndex == 0)
            {
                if (!String.IsNullOrEmpty(FiltrotextBox.Text))
                {

                    lista = ArticulosBLL.GetLista(Utilidades.ToInt(FiltrotextBox.Text));
                }
                else
                {
                    lista = ArticulosBLL.GetLista();
                }

                ConsultaArticulosdataGridView.DataSource = lista;
            }
            if (FiltrarcomboBox.SelectedIndex == 1)
            {
                if (!String.IsNullOrEmpty(FiltrotextBox.Text))
                {

                    lista = ArticulosBLL.GetListaNombreArticulo(FiltrotextBox.Text);
                }
                else
                {
                    lista = ArticulosBLL.GetLista();
                }

                ConsultaArticulosdataGridView.DataSource = lista;
            }
            if (FiltrarcomboBox.SelectedIndex == 2)
            {
                if (!String.IsNullOrEmpty(FiltrotextBox.Text))
                {

                    lista = ArticulosBLL.GetListaMarcaArticulo(FiltrotextBox.Text);
                }
                else
                {
                    lista = ArticulosBLL.GetLista();
                }

                ConsultaArticulosdataGridView.DataSource = lista;
            }


            if (FiltrarcomboBox.SelectedIndex == 4)
            {
                if (!String.IsNullOrEmpty(FiltrotextBox.Text))
                {

                    //lista = ArticuloBLL.GetListaFecha(DesdeDateTimePicke.Value, HastadateTimePicker.Value);
                }
                else
                {
                    lista = ArticulosBLL.GetLista();
                }

                ConsultaArticulosdataGridView.DataSource = lista;
            }



        }

        private bool validar()
        {

            if (FiltrarcomboBox.SelectedIndex == 0 && ArticulosBLL.GetLista(Utilidades.ToInt(FiltrotextBox.Text)).Count == 0)
            {
                MessageBox.Show("No hay registros que coincidan con este campo de filtro..." + "\n" + "\n" + "Intente con otro campo");
                return false;

            }



            if (string.IsNullOrEmpty(FiltrotextBox.Text))
            {
                BuscarerrorProvider.SetError(FiltrotextBox, "Ingresar el campo que desea filtar");
                return false;
            }


            if (FiltrarcomboBox.SelectedIndex == 1 && ArticulosBLL.GetListaNombreArticulo(FiltrotextBox.Text).Count == 0)
            {
                MessageBox.Show("No hay registros que coincidan con este campo de filtro..." + "\n" + "\n" + "Intente con otro campo");
                return false;

            }
            if (FiltrarcomboBox.SelectedIndex == 2 && ArticulosBLL.GetListaMarcaArticulo(FiltrotextBox.Text).Count == 0)
            {
                MessageBox.Show("No hay registros que coincidan con este campo de filtro..." + "\n" + "\n" + "Intente con otro campo");
                return false;

            }

            if (FiltrarcomboBox.SelectedIndex == 4)
            {
                if (DesdeDateTimePicke.Value == HastadateTimePicker.Value)
                {
                    MessageBox.Show("Favor definir un intervalo diferente entre las dos fechas");
                    return false;
                }
                else
                {
                    return true;
                }
            }


            BuscarerrorProvider.Clear();


            return true;
        }

        private void Imprimirbutton_Click(object sender, EventArgs e)
        {
            MyViewerArticulos viewer = new MyViewerArticulos();

            viewer.ArticulosreportViewer.Reset();
            viewer.ArticulosreportViewer.ProcessingMode = Microsoft.Reporting.WinForms.ProcessingMode.Local;

            viewer.ArticulosreportViewer.LocalReport.ReportPath = @"C:\Users\adolfo\Documents\Proyecto Final\Proyecto-Final-Aplicada-1-Sistema-De-VentasSm\Proyecto Final\Reportes\ListadoArticulos.rdlc";


            viewer.ArticulosreportViewer.LocalReport.DataSources.Clear();


            viewer.ArticulosreportViewer.LocalReport.DataSources.Add(
                new Microsoft.Reporting.WinForms.ReportDataSource("DataSetArticulos",
                ArticulosBLL.GetLista()));

            viewer.ArticulosreportViewer.LocalReport.Refresh();

            viewer.Show();
        }
    }
}
<file_sep>/BLL/ProveedoresBLL.cs
﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Entidades;
using DAL;
using System.Windows.Forms;

namespace BLL
{
   public  class ProveedoresBLL
    {

        public static bool Insertar(Proveedores proveedor)
        {
            bool resultado = false;
            using (var conexion = new SistemaVentasDb())
            {
                try
                {
                    conexion.Proveedore.Add(proveedor);
                    conexion.SaveChanges();
                    resultado = true;
                }
                catch (Exception)
                {

                    throw;
                }
                return resultado;
            }
        }

        public static List<Proveedores> GetLista()
        {
            List<Proveedores> lista = new List<Proveedores>();

            using (var conexion = new SistemaVentasDb())
            {
                try
                {
                    lista = conexion.Proveedore.ToList();
                }
                catch (Exception e)
                {
                    MessageBox.Show(e.ToString());
                    
                }
                return lista;
            }

        }
        public static bool Modificar(int id, Proveedores prov)
        {
            bool retorno = false;
            try
            {
                using (var db = new SistemaVentasDb())
                {
                    Proveedores p = db.Proveedore.Find(id);
                    p.Nombre = prov.Nombre;
                    p.Telefono = prov.Telefono;
                    p.Ciudad = prov.Ciudad;
                    p.Correo = prov.Correo;
                    p.Direccion = prov.Direccion;
                    p.Fax = prov.Fax;

                    db.SaveChanges();
                }
                retorno = true;
            }
            catch (Exception)
            {
                throw;
            }
            return retorno;
        }


        public static Proveedores Buscar(int id)
        {
            var db = new SistemaVentasDb();

            return db.Proveedore.Find(id);


        }

        public static bool Eliminar(int id)
        {
            try
            {

                using (var db = new SistemaVentasDb())
                {
                    Proveedores p = new Proveedores();
                    p = db.Proveedore.Find(id);

                    db.Proveedore.Remove(p);
                    db.SaveChanges();
                    return false;
                }


            }
            catch (Exception)
            {
                return true;
                throw;


            }

        }
        public static List<Proveedores> GetLista(int proveedorId)
        {
            List<Proveedores> lista = new List<Proveedores>();

            var db = new SistemaVentasDb();

            lista = db.Proveedore.Where(p => p.ProveedorId == proveedorId).ToList();

            return lista;

        }



        public static List<Proveedores> GetListaNombreProveedor(string aux)
        {
            List<Proveedores> lista = new List<Proveedores>();

            var db = new SistemaVentasDb();

            lista = db.Proveedore.Where(p => p.Nombre == aux).ToList();

            return lista;

        }




        public static List<Proveedores> GetListaFecha(DateTime aux)
        {
            List<Proveedores> lista = new List<Proveedores>();

            var db = new SistemaVentasDb();

            lista = db.Proveedore.Where(p => p.Fecha == aux).ToList();

            return lista;

        }
        public static List<Proveedores> GetListaFecha(DateTime Desde, DateTime Hasta)
        {
            List<Proveedores> lista = new List<Proveedores>();

            var db = new SistemaVentasDb();

            lista = db.Proveedore.Where(p => p.Fecha >= Desde && p.Fecha <= Hasta).ToList();

            return lista;

        }

    }
}

<file_sep>/Proyecto Final/Registros/RegistrosCategorias.cs
﻿using Entidades;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace ProyectoFinal_Aplicada1.Registros
{
    public partial class RegistrosCategorias : Form
    {
        public RegistrosCategorias()
        {
            InitializeComponent();
        }

        private void Buscarbutton_Click(object sender, EventArgs e)
        {
            if (validarId("Favor ingresar el id de la Categoria que desea buscar") && ValidarBuscar())
                LLenar(BLL.CategoriasBLL.Buscar(Utilidades.ToInt(CategoriaIdtextBox.Text)));
        }
        private void LLenar(Categorias categoria)
        {

            CategoriaIdtextBox.Text = categoria.CategoriaId.ToString();
            DescripciontextBox.Text = categoria.Descripcion;
        }

        private bool ValidarExiste(string aux)
        {
            if (BLL.CategoriasBLL.GetListaDescripcion(aux).Count() > 0)
            {
                MessageBox.Show("Este Categoria ya  existe, favor intentar con otra Descripcion de Categoria o Modificar...");
                return false;
            }
            return true;
        }
        private bool ValidarBuscar()
        {
            if (BLL.CategoriasBLL.Buscar(Utilidades.ToInt(CategoriaIdtextBox.Text)) == null)
            {
                MessageBox.Show("Este registro no existe");
                return false;
            }

            return true;


        }
        private bool validarId(string message)
        {
            if (string.IsNullOrEmpty(CategoriaIdtextBox.Text))
            {

                MessageBox.Show(message);
                return false;
            }
            else
            {
                return true;
            }
        }

        private void Nuevobutton_Click(object sender, EventArgs e)
        {
            Limpiar();
               
        }
        public void Limpiar()
        {
            CategoriaIdtextBox.Clear();
            DescripciontextBox.Clear();
            limpiarErroresProvider();
        }

        private void Guardarbutton_Click(object sender, EventArgs e)
        {
            Categorias categoria = new Categorias();
            BuscarerrorProvider.Clear();
            LlenarClase(categoria);
            if (ValidarTextbox() && ValidarExiste(DescripciontextBox.Text))
            {
                BLL.CategoriasBLL.Insertar(categoria);
                Limpiar();
                limpiarErroresProvider();
                MessageBox.Show("Guardado con exito");
            }
        }
        private void LlenarClase(Categorias c)
        {
            c.Descripcion = DescripciontextBox.Text;
        }





        private bool ValidarTextbox()
        {

            if (string.IsNullOrEmpty(DescripciontextBox.Text)


                )
            {
                DescripcionerrorProvider.SetError(DescripciontextBox, "Favor la descripcion de  la Categoria de los articulo");
                MessageBox.Show("Favor llenar todos los campos obligatorios");
                return false;
            }


            return true;
        }

        private void button1_Click(object sender, EventArgs e)
        {
            if (validarId("Favor digitar el id de la Categoria que desea eliminar") && ValidarBuscar())
            {
                BLL.CategoriasBLL.Eliminar(Utilidades.ToInt(CategoriaIdtextBox.Text));
                Limpiar();
                MessageBox.Show("ELiminado con exito");
            }
        }

        private void limpiarErroresProvider()
        {
            BuscarerrorProvider.Clear();
            DescripcionerrorProvider.Clear();

        }
        private void Editarbutton_Click(object sender, EventArgs e)
        {
            Categorias categoria = new Categorias();
            if (validarId("Favor Buscar el Id para que desea actualizar") && ValidarTextbox())
            {

                LlenarClase(categoria);
                if (ValidarExiste(DescripciontextBox.Text))
                {
                    BLL.CategoriasBLL.Modificar(Utilidades.ToInt(CategoriaIdtextBox.Text), categoria);
                    Limpiar();
                    limpiarErroresProvider();
                    MessageBox.Show("Actualizado con exito");
                }

            }

        }
    }
}
<file_sep>/Entidades/Ventas.cs
﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;

namespace Entidades
{
    public class Ventas
    {
        [Key]
        public int VentaId { get; set; }

        public string Empleado { get; set; }

        public string Cliente { get; set; }


        public int Cantidad { get; set; }
        public double SubTotal { get; set; }

        public double Itebis{ get; set; }

        public double TotalItebis { get; set; }

        public double Total { get; set; }

        public double Abono { get; set; }
        public double Deuda { get; set; }

        public DateTime Fecha { get; set; }


        [Browsable(false)]
        public virtual List<Articulos>  Articulos{ get; set; }
        public Ventas(int VentaId)
        {
            this.VentaId = VentaId;
            this.Articulos = new List<Articulos>();
        }

        public Ventas()
        {
            this.Articulos = new List<Articulos>();
        }

    }
}
<file_sep>/BLL/UsuariosBLL.cs
﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Entidades;
using DAL;
namespace BLL
{
    public class UsuariosBLL
    {

        public static bool Insertar(Usuarios usuario)
        {
            bool retorno = false;
            try
            {
                var db = new SistemaVentasDb();

                db.Usuarios.Add(usuario);

                db.SaveChanges();

                retorno = true;
            }
            catch (Exception)
            {

                throw;
            }

            return retorno;

        }

        public static bool Eliminar(int id)
        {
            bool obtener = false;
            using (var db = new SistemaVentasDb())
            {
                try
                {
                    Usuarios us = db.Usuarios.Find(id);

                    db.Usuarios.Remove(us);

                    db.SaveChanges();

                    obtener = true;
                }
                catch (Exception)
                {

                    throw;
                }
                return obtener;
            }

        }

        public static Usuarios Buscar(int id)
        {

            var us = new Usuarios();
            var conn = new SistemaVentasDb();

            us = conn.Usuarios.Find(id);
            return us;

        }

        public static List<Usuarios> GetLista()
        {
            List<Usuarios> lista = new List<Usuarios>();

            var db = new SistemaVentasDb();

            lista = db.Usuarios.ToList();

            return lista;
        }

        public static List<Usuarios> GetLista(int usuarioId)
        {
            List<Usuarios> lista = new List<Usuarios>();

            var db = new SistemaVentasDb();

            lista = db.Usuarios.Where(p => p.UsuarioId == usuarioId).ToList();

            return lista;
        }




        public static List<Usuarios> GetListaNombreUsuario(string aux)
        {
            List<Usuarios> lista = new List<Usuarios>();

            var db = new SistemaVentasDb();

            lista = db.Usuarios.Where(p => p.Nombre == aux).ToList();

            return lista;

        }
        public static bool Modificar(int id, Usuarios us)
        {
            bool retorno = false;
            try
            {
                using (var db = new SistemaVentasDb())
                {
                    Usuarios usa = db.Usuarios.Find(id);
                    usa.Nombre = us.Nombre;
                    usa.Contrasena = us.Contrasena;
                    usa.Tipo = us.Tipo;
                    db.SaveChanges();
                }
                retorno = true;
            }
            catch (Exception)
            {
                throw;
            }
            return retorno;
        }






        public static List<Usuarios> getContraseña(string aux)
        {
            List<Usuarios> lista = new List<Usuarios>();

            var db = new SistemaVentasDb();

            lista = db.Usuarios.Where(p => p.Contrasena == aux).ToList();

            return lista;

        }

    }
}
<file_sep>/Proyecto Final/Registros/Ejercicio de Estructura/7.8.cpp
#include <iostream>

using namespace std;

long funcionRecursiva(int n)
{
	if(n == 0 || n == 1)
		return 1;
	else 
		if(n % 2 == 0)
			return 2 + funcionRecursiva(n-1);
		else 
			return 3 + funcionRecursiva(n-2);
}

int main()
{
	
	cout << funcionRecursiva(10);
	return 0;
}
<file_sep>/Proyecto Final/Consultas/ConsultaProvvedor.cs
﻿using BLL;
using Entidades;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace ProyectoFinal_Aplicada1.Consultas
{
    public partial class ConsultaProvvedor : Form
    {
        public ConsultaProvvedor()
        {
            InitializeComponent();
            CargarFiltrar();
        }
        public List<Proveedores> lista = new List<Proveedores>();

        private void Buscarbutton_Click(object sender, EventArgs e)
        {
            if (validar() == true)
                BuscarSelecionComBox();
        }
        private void CargarFiltrar()
        {
            FiltrarcomboBox.Items.Insert(0, "ProveedorId");
            FiltrarcomboBox.Items.Insert(1, "NombreProveedor");
            FiltrarcomboBox.Items.Insert(2, "FechaIngreso");
            FiltrarcomboBox.DataSource = FiltrarcomboBox.Items;
            FiltrarcomboBox.DisplayMember = "Id";
            ConsultaProveedoressdataGridView.DataSource = ProveedoresBLL.GetLista();
        }

        private void BuscarSelecionComBox()
        {


            if (FiltrarcomboBox.SelectedIndex == 0)
            {
                if (!String.IsNullOrEmpty(FiltrotextBox.Text))
                {

                    lista = ProveedoresBLL.GetLista(Utilidades.ToInt(FiltrotextBox.Text));
                }
                else
                {
                    lista = ProveedoresBLL.GetLista();
                }

                ConsultaProveedoressdataGridView.DataSource = lista;
            }
            if (FiltrarcomboBox.SelectedIndex == 1)
            {
                if (!String.IsNullOrEmpty(FiltrotextBox.Text))
                {

                    lista = ProveedoresBLL.GetListaNombreProveedor(FiltrotextBox.Text);
                }
                else
                {
                    lista = ProveedoresBLL.GetLista();
                }

                ConsultaProveedoressdataGridView.DataSource = lista;
            }

            if (FiltrarcomboBox.SelectedIndex == 2)
            {
                if (!String.IsNullOrEmpty(FiltrotextBox.Text))
                {

                    lista = ProveedoresBLL.GetListaFecha(DesdeDateTimePicke.Value, HastadateTimePicker.Value);
                }
                else
                {
                    lista = ProveedoresBLL.GetLista();
                }

                ConsultaProveedoressdataGridView.DataSource = lista;
            }



        }

        private bool validar()
        {

            if (FiltrarcomboBox.SelectedIndex == 2)
            {
                if (DesdeDateTimePicke.Value == HastadateTimePicker.Value)
                {
                    MessageBox.Show("Favor definir un intervalo diferente entre las dos fechas");
                    return false;
                }
                else
                {
                    return true;
                }
            }
            if (string.IsNullOrEmpty(FiltrotextBox.Text))
            {
                BuscarerrorProvider.SetError(FiltrotextBox, "Ingresar el campo que desea filtar");
                return false;
            }


            if (FiltrarcomboBox.SelectedIndex == 1 && ProveedoresBLL.GetListaNombreProveedor(FiltrotextBox.Text).Count == 0)
            {
                MessageBox.Show("No hay registros que coincidan con este campo de filtro..." + "\n" + "\n" + "Intente con otro campo");
                return false;

            }


            if (FiltrarcomboBox.SelectedIndex == 0 && ProveedoresBLL.GetLista(Utilidades.ToInt(FiltrotextBox.Text)).Count == 0)
            {
                MessageBox.Show("No hay registros que coincidan con este campo de filtro..." + "\n" + "\n" + "Intente con otro campo");
                return false;

            }

            BuscarerrorProvider.Clear();


            return true;
        }

        private void Imprimirbutton_Click(object sender, EventArgs e)
        {
            MyViewerProveedores viewer = new MyViewerProveedores();

            viewer.ProveedorreportViewer.Reset();
            viewer.ProveedorreportViewer.ProcessingMode = Microsoft.Reporting.WinForms.ProcessingMode.Local;

            viewer.ProveedorreportViewer.LocalReport.ReportPath = @"C:\Users\adolfo\Documents\Proyecto Final\Proyecto-Final-Aplicada-1-Sistema-De-VentasSm\Proyecto Final\Reportes\ListadoProveedores.rdlc";


            viewer.ProveedorreportViewer.LocalReport.DataSources.Clear();


            viewer.ProveedorreportViewer.LocalReport.DataSources.Add(
                new Microsoft.Reporting.WinForms.ReportDataSource("DataSetProveedores",
                ProveedoresBLL.GetLista()));

            viewer.ProveedorreportViewer.LocalReport.Refresh();

            viewer.Show();
        }
    }
}
<file_sep>/Proyecto Final/Registros/RegistrosArticuloss.cs
﻿using BLL;
using DAL;
using Entidades;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace ProyectoFinal_Aplicada1.Registros
{
    public partial class RegistrosArticuloss : Form
    {
        
        private List<Proveedores> prove;
        public RegistrosArticuloss()
        {
            InitializeComponent();
            CargarConboBoxCategorias();
            CargarConboBoxProveedores();
            prove = new List<Proveedores>();
        }

        private void Limpiar()
        {
            ArticuloIdtextBox.Clear();
            NombretextBox.Clear();
            PrecioVentatextBox.Clear();
            CantidadtextBox.Clear();
            MarcatextBox.Clear();
            DespcripciontextBox.Clear();
            limpiarErroresProvider();

        }



        private Articulos LLenarClase()
        {
            Articulos Prod = new Articulos();
            Prod.ArticuloId = Utilidades.ToInt(ArticuloIdtextBox.Text);
            Prod.Cantidad = Utilidades.ToInt(CantidadtextBox.Text);
            Prod.Precio = Utilidades.ToInt(PrecioVentatextBox.Text);
            Prod.Nombre = NombretextBox.Text;
            Prod.Marca = MarcatextBox.Text;
            Prod.Descripcion = DespcripciontextBox.Text;
            CargarConboBoxProveedores();
            CargarConboBoxCategorias();
            return Prod;
          

        }
        public List<Proveedores> lista = new List<Proveedores>();
        private void CargarConboBoxProveedores()
        {
            var db = new SistemaVentasDb();
            lista = db.Proveedore.ToList();
            if (lista.Count > 0)
            {
                NombreProveedorcomboBox1.DataSource = lista;
                NombreProveedorcomboBox1.ValueMember = "ProveedorId";
                NombreProveedorcomboBox1.DisplayMember = "Nombre";
            }
        }
        public List<Categorias> list = new List<Categorias>();
        private void CargarConboBoxCategorias()
        {
            var db = new SistemaVentasDb();
            list = db.Categorias.ToList();
            if (list.Count > 0)
            {
                CategoriacomboBox.DataSource = list;
                CategoriacomboBox.ValueMember = "CategoriaId";
                CategoriacomboBox.DisplayMember = "Descripcion";
            }
        }









        private void button4_Click(object sender, EventArgs e)
        {
            Limpiar();
        }

        private void button3_Click(object sender, EventArgs e)
        {
            Articulos articulo = new Articulos();

            articulo = LLenarClase();
            if (ValidarTextbox() && ValidarExiste(NombretextBox.Text))
            {

                if (articulo != null)
                {
                    limpiarErroresProvider();
                    if (BLL.ArticulosBLL.Insertar(articulo))
                    {
                        MessageBox.Show("Gurardado con exito");
                    }
                }
            }
        }

        private void Buscarbutton_Click_1(object sender, EventArgs e)
        {
                var articulo = ArticulosBLL.Buscar(Utilidades.ToInt(ArticuloIdtextBox.Text));
                if (articulo != null)
                {

                    NombretextBox.Text = articulo.Nombre;
                    MarcatextBox.Text = articulo.Marca;
                    DespcripciontextBox.Text = articulo.Descripcion;
                    CantidadtextBox.Text = articulo.Cantidad.ToString();
                    PrecioVentatextBox.Text = articulo.Precio.ToString();
                    CargarConboBoxCategorias();
                    CargarConboBoxProveedores();
                }
                else
                {
                    MessageBox.Show("Este Id no esta Registrado  ");
                }
            
        }

        private void Editarbutton_Click(object sender, EventArgs e)
        {
            Articulos articulo = new Articulos();
            if (validarId("Favor Buscar el Id para que desea actualizar") && ValidarTextbox())
            {

               articulo= LLenarClase();
                if (ValidarExiste(NombretextBox.Text))
                {
                    ArticulosBLL.Modificar(Utilidades.ToInt(ArticuloIdtextBox.Text), articulo);
                    Limpiar();
                    limpiarErroresProvider();
                    MessageBox.Show("Actualizado con exito");
                }

            }
        }

        private void Eliminarbutton_Click_1(object sender, EventArgs e)
        {
            ArticulosBLL.Eliminar(ArticulosBLL.Buscar(Convert.ToInt32(ArticuloIdtextBox.Text)));
            Limpiar();
            MessageBox.Show("Vendedor ha sido eliminado");

        }
        //-----------------------------Validad-------------------------------------------------------
        private bool ValidarTextbox()
        {


            if (string.IsNullOrEmpty(NombretextBox.Text) &&
                string.IsNullOrEmpty(DespcripciontextBox.Text) &&
                string.IsNullOrEmpty(MarcatextBox.Text) &&
                string.IsNullOrEmpty(NombreProveedorcomboBox1.Text) &&
                string.IsNullOrEmpty(CategoriacomboBox.Text) &&
                string.IsNullOrEmpty(CantidadtextBox.Text) &&
                string.IsNullOrEmpty(PrecioVentatextBox.Text)



                )
            {
                NombreerrorProvider.SetError(NombretextBox, "Favor Ingresar el  nombre del articulos");
                DescripcionerrorProvider.SetError(DespcripciontextBox, "Favor Ingresar la descripcion del articulo");
                MarcaerrorProvider.SetError(MarcatextBox, "Favor Ingresar la marca del articulo");
                NombreProveedorerrorProvider.SetError(NombreProveedorcomboBox1, "Favor elegir el proveedor a que  correponde el  articulo");
                CategoriaerrorProvider.SetError(CategoriacomboBox, "Favor elegir la categoria a que correponde el articulo");
                CantidaderrorProvider.SetError(CantidadtextBox, "Favor Ingresar la cantidad del articulo");
                PrecioVentaerrorProvider.SetError(PrecioVentatextBox, "Favor Ingresar el precio de venta del articulo");
                MessageBox.Show("Favor llenar todos los campos obligatorios");

            }

            if (string.IsNullOrEmpty(NombretextBox.Text))
            {
                NombreerrorProvider.Clear();
                NombreerrorProvider.SetError(NombretextBox, "Favor Ingresar el  nombre del articulos");
                return false;
            }

            if (string.IsNullOrEmpty(DespcripciontextBox.Text))
            {
                DescripcionerrorProvider.Clear();
                DescripcionerrorProvider.SetError(DespcripciontextBox, "Favor Ingresar la descripcion del articulo");
                return false;
            }
            if (string.IsNullOrEmpty(MarcatextBox.Text))
            {
                MarcaerrorProvider.Clear();
                MarcaerrorProvider.SetError(MarcatextBox, "Favor Ingresar la marca del articulo");
                return false;
            }
            if (string.IsNullOrEmpty(NombreProveedorcomboBox1.Text))
            {
                NombreProveedorerrorProvider.Clear();
                NombreProveedorerrorProvider.SetError(NombreProveedorcomboBox1, "Favor elegir el proveedor a que  correponde el  articulo");

                return false;
            }

            if (string.IsNullOrEmpty(CategoriacomboBox.Text))
            {
                CategoriaerrorProvider.Clear();
                CategoriaerrorProvider.SetError(CategoriacomboBox, "Favor elegir la categoria a que correponde el articulo");
                return false;
            }
            if (string.IsNullOrEmpty(CantidadtextBox.Text))
            {
                CantidaderrorProvider.Clear();
                CantidaderrorProvider.SetError(CantidadtextBox, "Favor Ingresar la cantidad del articulo");
                return false;
            }

           
            if (string.IsNullOrEmpty(PrecioVentatextBox.Text))
            {
                PrecioVentaerrorProvider.Clear();
                PrecioVentaerrorProvider.SetError(PrecioVentatextBox, "Favor Ingresar el precio de venta del articulo");
                return false;
            }




            return true;
        }
        private bool ValidarBuscar()
        {
            if (ArticulosBLL.Buscar(Utilidades.ToInt(ArticuloIdtextBox.Text)) == null)
            {
                MessageBox.Show("Este registro no existe");
                return false;
            }

            return true;


        }
        private bool validarId(string message)
        {
            if (string.IsNullOrEmpty(ArticuloIdtextBox.Text))
            {

                MessageBox.Show(message);
                return false;
            }
            else
            {
                return true;
            }
        }

        private bool ValidarExiste(string aux)
        {
            if (ArticulosBLL.GetListaNombreArticulo(aux).Count() > 0)
            {
                MessageBox.Show("Este nombre ya existe, favor intentar con otra nombre o modificar ...");
                return false;
            }


            return true;
        }
        //----------------------------- Limipiar Erro------------------------------------------------
        private void limpiarErroresProvider()
        {
            BuscarerrorProvider.Clear();
            NombreerrorProvider.Clear();
            DescripcionerrorProvider.Clear();
            MarcaerrorProvider.Clear();
            CantidaderrorProvider.Clear();
            PrecioCompraerrorProvider.Clear();
            PrecioVentaerrorProvider.Clear();

        }

        private void NombreProveedorcomboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {

        }
    }
}
<file_sep>/Entidades/Articulos.cs
﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;

namespace Entidades
{
    public class Articulos
    {
        [Key]
        
        public int ArticuloId{ get; set; }        

        public string Nombre { get; set; }

        [Browsable(false)]
        public string Descripcion { get; set; }

        public Double Precio { get; set; }

        
        [Browsable(false)]
        public string Marca { get; set; }


        public int Cantidad { get; set; }

        public Double Importe { get; set; }

        public virtual List<Ventas> Ventas { get; set; }

        public Articulos()
        {
            this.Ventas = new List<Ventas>();
        }

        public Articulos(int articuloId, string nombre, string descripcion, int precio, int unidad,string marca)
        {
            this.ArticuloId = articuloId;
            this.Nombre = nombre;
            this.Descripcion = descripcion;
            this.Precio = precio;
            this.Cantidad= Cantidad;
            this.Marca = marca;
            this.Ventas = new List<Ventas>();
        }

        public Articulos(int articuloId, string nombre, Double precio, int cantidad)
        {
            this.ArticuloId = articuloId;
            this.Nombre = nombre;
            this.Precio = precio;
            this.Cantidad = cantidad;
            this.Importe = cantidad * precio;

            this.Ventas = new List<Ventas>();
        }
    }
}
<file_sep>/Proyecto Final/Registros/Ejercicio de Estructura/7.6.cpp
#include <iostream>

using namespace std;

int hanoi(int Numero)
{
    if(Numero == 1)
        return 1;
    else
        return 2 * hanoi(Numero-1) + 1;
}

int main()
{
    int Disco ;
    cout<< "\n Torre de Hanoi \n\n";
    cout<< "Numero de discos: ";
	cin>> Disco;
    cout<<"\nLos Movimientos Obligatorio Son: ";
    cout<< hanoi(Disco);
    
    return 0;
}
<file_sep>/README.md
# Proyecto-Final-Aplicada-1-Sistema-De-VentasSm
sss
<file_sep>/BLL/TipoPagosBLL.cs
﻿using DAL;
using Entidades;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace BLL
{
    public class TipoPagosBLL
    {
        public static bool Insertar(TipoPagos c)
        {
            bool retorna = false;
            try
            {

                using (var db = new SistemaVentasDb())
                {

                    db.CodicionPagos.Add(c);
                    db.SaveChanges();
                    retorna = true;
                }


            }
            catch (Exception)
            {
                throw;

            }
            return retorna;

        }
        public static bool Modificar(int id, TipoPagos cps)
        {
            bool retorno = false;
            try
            {
                using (var db = new SistemaVentasDb())
                {
                    TipoPagos cp = db.CodicionPagos.Find(id);
                    cp.Descripcion = cps.Descripcion;
                    db.SaveChanges();
                }
                retorno = true;
            }
            catch (Exception)
            {
                throw;
            }
            return retorno;
        }


        public static TipoPagos Buscar(int id)
        {
            var db = new SistemaVentasDb();
            return db.CodicionPagos.Find(id);
        }

        public static bool Eliminar(int id)
        {

            try
            {

                using (var db = new SistemaVentasDb())
                {
                    TipoPagos cps = new TipoPagos();
                    cps = db.CodicionPagos.Find(id);

                    db.CodicionPagos.Remove(cps);
                    db.SaveChanges();
                    db.Dispose();
                    return false;
                }


            }
            catch (Exception)
            {
                return true;
                throw;


            }

        }





        public static List<TipoPagos> GetListaDescripcion(string aux)
        {
            List<TipoPagos> lista = new List<TipoPagos>();

            var db = new SistemaVentasDb();

            lista = db.CodicionPagos.Where(p => p.Descripcion == aux).ToList();

            return lista;

        }

        public static List<TipoPagos> GetLista(int id)
        {
            List<TipoPagos> lista = new List<TipoPagos>();

            var db = new SistemaVentasDb();

            lista = db.CodicionPagos.Where(p => p.TipoId == id).ToList();

            return lista;

        }

        public static List<TipoPagos> GetLista()
        {
            List<TipoPagos> lista = new List<TipoPagos>();

            var db = new SistemaVentasDb();

            lista = db.CodicionPagos.ToList();

            return lista;


        }
    }
}
<file_sep>/DAL/SistemaVentasDb.cs
﻿using Entidades;
using SistemaDeVentas.Entidades;
using System;
using System.Collections.Generic;
using System.Data.Entity;
using System.Linq;
using System.Text;

namespace DAL
{
    public class SistemaVentasDb : DbContext
    {
        public SistemaVentasDb() : base("name=ConStr")
        {
                
        }


        public virtual DbSet<Usuarios> Usuarios { get; set; }

        public virtual DbSet<Articulos> Articulos { get; set; }
        public virtual DbSet<Categorias> Categorias { get; set; }

        public virtual DbSet<Clientes> Clientes{ get; set; }
        public virtual DbSet<Empleados> Empleados { get; set; }
        public virtual DbSet<TipoUsuarios> TipoUsuarios { get; set; }

        public virtual DbSet<TipoPagos> CodicionPagos { get; set; }

        public virtual DbSet<Proveedores> Proveedore { get; set; }

        public virtual DbSet<Ventas> Ventas{ get; set; }


        protected override void OnModelCreating(DbModelBuilder modelBuilder)
        {
            modelBuilder.Entity<Ventas>()
                .HasMany<Articulos>(v => v.Articulos)
                .WithMany(a=> a.Ventas)
                .Map(Va=>
                {
                    Va.MapLeftKey("VentaId");
                    Va.MapRightKey("ArticuloId");
                    Va.ToTable("DetalleVentas");
                });
        }
    }
}
