viernes, 7 de agosto de 2015

COnsulta2

//CaTALOGO
        MiDataBase myDB = new MiDataBase();
        List<Producto> lista_Productos = new List<Producto>();
        int cantidad;

        public void cargarProductos()
        {
            var productos = from prod in myDB.productos
                            where prod.id > 0
                            select prod;
            lst_Cargar.Items.Clear();
            foreach (var iterProducto in productos)
            {
                lst_Cargar.Items.Add(iterProducto);
            }
        }

 private void btnVerificarCompra_Click(object sender, EventArgs e)
        {
            //Este código solo es referencial usted puede modificarlo de ser necesario.
            VerificarCompra miVerificar = new VerificarCompra(lista_Productos, cantidad);
            miVerificar.MdiParent = this.MdiParent;
            miVerificar.Show();
        }

        private void btn_Agregar_Click(object sender, EventArgs e)
        {
            Producto pro = (Producto)lst_Cargar.SelectedItem;
            cantidad = Convert.ToInt32(txt_Cantidad.Text);
            lista_Productos.Add(pro);

            lst_Cantidad.Items.Clear();
            foreach (var iterProducto in lista_Productos)
            {
                lst_Cantidad.Items.Add(iterProducto +" -- Cantidad: "+ cantidad);
            }
        }
//======================================================================
//VERIFICAR CUENTA
       
MiDataBase MyDB = new MiDataBase();
        List<Producto> lista_Productos = new List<Producto>();
        int cantida;

public void cargarDatatos()
        {
            foreach (var iter in lista_Productos)
            {
                lst_Datos.Items.Add(iter +" -- Cantidad: "+ cantida);
            }
        }
        private void btnComprar_Click(object sender, EventArgs e)
        {
            if (String.IsNullOrWhiteSpace(txt_Nombre.Text))
            {
                MessageBox.Show("Ingrese el Nombre del Comprador.");
            }
            else
            {
                Compra comprador = new Compra();
                comprador.comprador = txt_Nombre.Text;
                MyDB.compras.InsertOnSubmit(comprador);
                MyDB.SubmitChanges();

                foreach (var iter in lista_Productos)
                {
                    ItemCompra items = new ItemCompra();
                    items.idCompras = comprador.id;
                    items.idProductos = iter.id;
                    items.cantidad = cantida;
                    MyDB.items_compra.InsertOnSubmit(items);
                    MyDB.SubmitChanges();
                }
            }
        }
//===================================================================
//HISTORIAL

 public void cargarCompras()
        {
            var itemsC = from idCompradores in MyDB.items_compra
                         join idC in MyDB.compras on idCompradores.idCompras equals idC.id
                         select new { idC, idCompradores };

            var it = from idCompras in MyDB.productos
                     join id_C in itemsC on idCompras.id equals id_C.idCompradores.idProductos
                     select new { id_C, idCompras };

            lstCompras.Items.Clear();
            foreach (var iter in it)
            {
                lstCompras.Items.Add("Comprador: "+iter.id_C.idC.comprador +" -- Cantidad: "+ iter.id_C.idCompradores.cantidad+" -- Producto: "+iter.idCompras.nombre);
            }
        }
        private void btnBuscarCompras_Click(object sender, EventArgs e)
        {
            var itemsC = from idCompradores in MyDB.items_compra
                         join idC in MyDB.compras on idCompradores.idCompras equals idC.id
                         select new { idC, idCompradores };

            var it = from idCompras in MyDB.productos
                     join id_C in itemsC on idCompras.id equals id_C.idCompradores.idProductos
                     where id_C.idC.comprador == txtComprador.Text
                     select new { id_C, idCompras };

            lstCompras.Items.Clear();
            foreach (var iter in it)
            {
                lstCompras.Items.Add("Comprador: " + iter.id_C.idC.comprador + " -- Cantidad: " + iter.id_C.idCompradores.cantidad + " -- Producto: " + iter.idCompras.nombre);
            }
        }

PROBANDO

//LOGIN
        public void validar()
        {
            var consulta = from iter in MyBD.cliente
                           where Convert.ToInt32(iter.cedula) > 0
                           select iter;
            foreach (var log in consulta)
            {
                if (cmb_Usuario.Text == log.nombre && txt_Contasena.Text == log.clave)
                {
                    cedula = log.cedula;
                    MessageBox.Show("Ingreso correcto.");
                    CuentasBancarias cuantas = new CuentasBancarias(cedula);
                    cuantas.Show();
                }
                else
                {
                    MessageBox.Show("Ingreso incorrecto.");
                }
            }
        }
//=====================================================================

//CuentasBancarias

        MiConexion MiDB = new MiConexion();
        List<Cuenta> lista_Cuenta = new List<Cuenta>();
        String cedula;
        int id_cuenta;
        char act;

 public void cargar()
        {
            var consulta = from iter in MiDB.cuenta
                           where iter.cedula == cedula
                           select iter;
            foreach (var cuenta in consulta)
            {
                cmb_Cuentas.Items.Add(cuenta);
            }
        }

private void btn_Siguiente_Click(object sender, EventArgs e)
        {
            Cuenta seleccion = ((Cuenta)cmb_Cuentas.SelectedItem);
            lista_Cuenta.Add(seleccion);

            foreach (var iter in lista_Cuenta)
            {
                act = iter.activa;
                id_cuenta = iter.idCuenta;
            }

            if (act == '0')
            {
                MessageBox.Show("Cuenta Inactiva");
            }
            if (act == '1')
            {
                RetiroDineros retiro = new RetiroDineros(cedula, id_cuenta);
                retiro.Show();
            }
        }
//=============================================================
//RETIRO

        MiConexion miDB = new MiConexion();
        List<Retiro> lista_retiros = new List<Retiro>();
        String cedula;
        String hora;
        decimal saldoTotal;
        decimal saldoActual;
        decimal montoMax;
        int id_cuenta;
        int id_retiro;


private void timer1_Tick(object sender, EventArgs e)
        {
            Retiro retir = new Retiro();
            hora =DateTime.Now.ToLongTimeString();
            retir.fecha = Convert.ToDateTime( hora);
        }

        public void cargarTreeView()
        {
            tree_Sucursal.Nodes.Add("Sucursal1");
            tree_Sucursal.Nodes.Add("Sucursal2");
            tree_Sucursal.Nodes.Add("Sucursal3");
            tree_Sucursal.Nodes[0].Nodes.Add("Quito");
            tree_Sucursal.Nodes[1].Nodes.Add("Guayaquil");
            tree_Sucursal.Nodes[2].Nodes.Add("Cuenca");
            tree_Sucursal.Nodes[0].Nodes[0].Nodes.Add("Vicentina");
            tree_Sucursal.Nodes[0].Nodes[0].Nodes.Add("Vicentina");
            tree_Sucursal.Nodes[0].Nodes[0].Nodes.Add("Calama");

            tree_Sucursal.Nodes[1].Nodes[0].Nodes.Add("Guasmo");
            tree_Sucursal.Nodes[1].Nodes[0].Nodes.Add("Bastion Popular");
            tree_Sucursal.Nodes[1].Nodes[0].Nodes.Add("iuioiju");

            tree_Sucursal.Nodes[2].Nodes[0].Nodes.Add("jjjjj");
            tree_Sucursal.Nodes[2].Nodes[0].Nodes.Add("rrrrr");
            tree_Sucursal.Nodes[2].Nodes[0].Nodes.Add("kkkk");
        }

        private void btn_REtirar_Click(object sender, EventArgs e)
        {
            //String seleccion = ((String)tree_Sucursal.SelectedNode.Tag);

            var consulta = from iter in miDB.cuenta
                           where iter.idCuenta == id_cuenta
                           select iter;
            foreach(var saldo in consulta)
            {
                saldoTotal = saldo.saldo;
                montoMax = saldo.montoMax;
                if (montoMax < Convert.ToDecimal(txt_Monto.Text))
                {
                    MessageBox.Show("Monto de Dinero superior");
                }
                if (saldoTotal < Convert.ToDecimal(txt_Monto.Text))
                {
                    MessageBox.Show("Saldo insuficiente");
                }
                else
                {
                    saldoActual = saldo.saldo -Convert.ToDecimal(txt_Monto.Text);

                    Retiro retir = new Retiro();
                    retir.idRetiro = Convert.ToInt32(txt_IdRetiro.Text);
                    retir.monto = Convert.ToDecimal(txt_Monto.Text);
                    retir.fecha =Convert.ToDateTime( hora);
                    retir.sucursal = (tree_Sucursal.SelectedNode.Text);
                    retir.idCuenta = id_cuenta;
                    id_retiro = retir.idRetiro;

                    miDB.retiro.InsertOnSubmit(retir);
                    miDB.SubmitChanges();
                    MessageBox.Show("Transaccion realizada exitosamente");

                    Resumen resum = new Resumen(id_cuenta, id_retiro);
                    resum.Show();
                }
            }
        }
//=====================================================

jueves, 23 de julio de 2015

Consultas LINQ

//******************************************************************
//Clase Cliente

using System.Data.Linq.Mapping;

namespace _2015_A_13_LINQ
{
    [Table (Name="clientes")]
    public class Cliente
    {
        //sin get ni set para la base de datos
        //se define como publicas para texto plano
        [Column(AutoSync=AutoSync.OnInsert, DbType="Int NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
        public int id;
        [Column]
        public String nombre;
        [Column]
        public int anionacimiento;

        public override string ToString()
        {
            return "ID: "+id+", Nombre: "+nombre+", Año Nacimiento: "+anionacimiento;
        }
    }
}
//*************************************************************
Formulario LINQ_BDD

namespace _2015_A_13_LINQ
{
    public partial class LINQ_BDD : Form
    {
        //Instancia de la Base de datos
        MiBD baseDatos = new MiBD();

        public LINQ_BDD()
        {
            InitializeComponent();
        }

        private void LINQ_BDD_Load(object sender, EventArgs e)
        {
            this.traerDatos();
            this.cargarIdentificador();
        }

        private void cargarIdentificador()
        {
            var consulta = from idcliente in this.baseDatos.clientes
                           where idcliente.id > 0
                           select (int)idcliente.id;
            foreach (var identificador in consulta)
            {
                lbl_Id.Text = Convert.ToString(identificador + 1);
            }
        }
        private void btn_Guardar_Click(object sender, EventArgs e)
        {
            Cliente clienteNuevo = new Cliente();
            //clienteNuevo.id = Convert.ToInt32(txt_Id.Text);
            clienteNuevo.nombre = txt_Nombre.Text;
            clienteNuevo.anionacimiento = Convert.ToInt32(txt_FechaNac.Text);

            //instancio de la base de datos y inserto de la tabla clientes
            baseDatos.clientes.InsertOnSubmit(clienteNuevo);
            baseDatos.SubmitChanges();
            this.limpiar();
            this.traerDatos();
            this.cargarIdentificador();
        }

        private void traerDatos()
        {
            var clientesConsulta = from registroCliente in baseDatos.clientes
                                   where registroCliente.id > 0
                                   select registroCliente;
           
            lst_Clientes.Items.Clear();
            foreach (var iterclientes in clientesConsulta)
            {
                lst_Clientes.Items.Add(iterclientes);
            }
        }

        private void limpiar()
        {
            txt_Nombre.Clear();
            txt_FechaNac.Clear();
        }

        private void btn_Eliminar_Click(object sender, EventArgs e)
        {
            var resultado = MessageBox.Show("Desea eliminar al cliente?","Eliminar", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
            if (resultado == DialogResult.Yes)
            {
                Cliente clienteEliminar = (Cliente)lst_Clientes.SelectedItem;
                baseDatos.clientes.DeleteOnSubmit(clienteEliminar);
                baseDatos.SubmitChanges();
                lst_Clientes.Items.Remove(clienteEliminar);
            }
        }
    }
}
//**************************************************************************

Conexion SQL

//clase Conexion
using System.Data.Linq.Mapping;
using System.Data.Linq;
namespace Chat_Darwin
{
    class MyDataBase : DataContext
    {
        public MyDataBase() : base(Properties.Settings.Default.cadenaConexion) { }
        public Table<Usuario> usuarios;
        public Table<Conversacion> conversaciones;
        public Table<Mensaje> mensajes;
    }
}
//*********************************************************************************************
//Clase Usuario//********************************
using System.Data.Linq.Mapping;
namespace Chat_Darwin
{
    [Table(Name="usuario")]
    public class Usuario
    {
        [Column(IsPrimaryKey=true, AutoSync=AutoSync.OnInsert, IsDbGenerated=true)]
        public int id_User;
        [Column]
        public String nombre;
        [Column]
        public String login;
        [Column]
        public String password;
        public override string ToString()
        {
            return this.login;
        }
    }
}
//***************************************************************************************************************
//Clase conversacion//********************************************
using System.Data.Linq.Mapping;
namespace Chat_Darwin
{
    [Table(Name="conversacion")]
    public class Conversacion
    {
        [Column(IsPrimaryKey=true, AutoSync=AutoSync.OnInsert, IsDbGenerated=true)]
        public int id_Conversacion;
        [Column]
        public String tema_conversacion;
        public override string ToString()
        {
            return this.tema_conversacion;
        }
    }
}
//********************************************************************************************************
//Clase Mensaje//**********************************************************
using System.Data.Linq.Mapping;
namespace Chat_Darwin
{
    [Table(Name="mensaje")]
    public class Mensaje
    {
        [Column(IsPrimaryKey=true, AutoSync=AutoSync.OnInsert, IsDbGenerated=true)]
        public int id_Mensaje;
        [Column]
        public String texto;
        [Column]
        public int user_Id;
        [Column]
        public int conversacion_Id;
        public override string ToString()
        {
            return this.id_Mensaje + " " + this.texto + " " +this.user_Id+ " " +this.conversacion_Id;
        }
    }
}
//****************************************************************************************************
//*Formulario Login
namespace Chat_Darwin
{
    public partial class Login : Form
    {
        MyDataBase myDB = new MyDataBase();
        List<Usuario> lista_Usuario = new List<Usuario>();
        Usuario usu1 = new Usuario();
        List<Conversacion> lista_Conversacion = new List<Conversacion>();
        Conversacion conver1 = new Conversacion();

        public Login()
        {
            InitializeComponent();
        }
        public Login(List<Usuario> i_lista_Usuario, List<Conversacion> i_lista_Conversacion, Usuario i_usu1, Conversacion i_conver1)
        {
            conver1 = i_conver1;
            usu1 = i_usu1;
            lista_Conversacion = i_lista_Conversacion;
            lista_Usuario = i_lista_Usuario;
            InitializeComponent();
        }

        private void Login_Load(object sender, EventArgs e)
        {

        }

        private void btn_Registrar_Click(object sender, EventArgs e)
        {
            Crear_Cuenta crear = new Crear_Cuenta(lista_Usuario, lista_Conversacion, usu1, conver1);
            crear.Show();
            this.Hide();
        }

        private void btn_Ingresar_Click(object sender, EventArgs e)
        {
            var consulta_Usuario = from user in this.myDB.usuarios
                                   select new
                                   {
                                       id_usu = (int)user.id_User,
                                       nombre_usu = (String)user.nombre,
                                       login_usu = (String)user.login,
                                       password_usu = (String)user.password
                                   };
            foreach (var u in consulta_Usuario)
            {
                if (u.login_usu==txt_Username.Text && u.password_usu==txt_Password.Text)
                {
                    usu1.id_User = u.id_usu;
                    usu1.nombre = u.nombre_usu;
                    usu1.login = u.login_usu;
                    usu1.password = u.password_usu;
                    lista_Usuario.Add(usu1);

                    this.Hide();
                    Lista_Conversaciones listaConversacion = new Lista_Conversaciones(lista_Usuario, lista_Conversacion, usu1, conver1);
                    listaConversacion.Show();
                }
            }
        }
    }
}
//*******************************************************************
//Formulario Crear_Cuenta

namespace Chat_Darwin
{
    public partial class Crear_Cuenta : Form
    {
        MyDataBase myDB = new MyDataBase();
        List<Usuario> lista_Usuario = new List<Usuario>();
        Usuario usu1 = new Usuario();
        List<Conversacion> lista_Conversacion = new List<Conversacion>();
        Conversacion conver1 = new Conversacion();

        public Crear_Cuenta()
        {
            InitializeComponent();
        }

        public Crear_Cuenta(List<Usuario> i_lista_Usuario, List<Conversacion> i_lista_Conversacion, Usuario i_usu1, Conversacion i_conver1)
        {
            conver1 = i_conver1;
            usu1 = i_usu1;
            lista_Conversacion = i_lista_Conversacion;
            lista_Usuario = i_lista_Usuario;
            InitializeComponent();
        }

        private void Crear_Cuenta_Load(object sender, EventArgs e)
        {
            
        }

        private void btn_Guardar_Click(object sender, EventArgs e)
        {
            
            usu1.nombre = txt_Nombre.Text;
            usu1.login = txt_Username.Text;
            usu1.password = txt_Password.Text;
            lista_Usuario.Add(usu1);

            myDB.usuarios.InsertOnSubmit(usu1);
            myDB.SubmitChanges();
            txt_Nombre.Clear();
            txt_Username.Clear();
            txt_Password.Clear();

            Login log = new Login(lista_Usuario, lista_Conversacion, usu1, conver1);
            log.Show();
            this.Hide();
        }
    }
}

//***********************************************************************
//Formulario Lista_conversaciones

namespace Chat_Darwin
{
    public partial class Lista_Conversaciones : Form
    {
        MyDataBase myDB = new MyDataBase();
        List<Usuario> lista_Usuario = new List<Usuario>();
        Usuario usu1 = new Usuario();
        List<Conversacion> lista_Conversacion = new List<Conversacion>();
        Conversacion conver1 = new Conversacion();
        //List<Mensaje> lista_Mensaje = new List<Mensaje>();

        public Lista_Conversaciones()
        {
            InitializeComponent();
        }

        public Lista_Conversaciones(List<Usuario> i_lista_Usuario, List<Conversacion> i_lista_Conversacion, Usuario i_usu1, Conversacion i_conver1)
        {
            conver1 = i_conver1;
            usu1 = i_usu1;
            lista_Conversacion = i_lista_Conversacion;
            lista_Usuario = i_lista_Usuario;
            InitializeComponent();
        }

        private void Lista_Conversaciones_Load(object sender, EventArgs e)
        {
            this.tema_Actual();
            lbl_Nombre.Text = usu1.nombre;
        }

        public void tema_Actual()
        {
            lst_Tema.Items.Clear();

            var temas_Conversacion = from t_conversacion in this.myDB.conversaciones
                                     select new
                                     {
                                         id = (int)t_conversacion.id_Conversacion,
                                         temas = (String)t_conversacion.tema_conversacion
                                     };
            foreach (var c in temas_Conversacion)
            {
                lst_Tema.Items.Add(c.temas);
            }
        }

        private void btn_Actualizar_Click(object sender, EventArgs e)
        {
            this.tema_Actual();
        }

        private void btn_Tema_Click(object sender, EventArgs e)
        {
            Usuario u = new Usuario();
            Conversacion c = new Conversacion();
            c.tema_conversacion = txt_Tema.Text;
            foreach (Usuario usu in lista_Usuario)
            {
                c.id_Conversacion = usu.id_User;
            }
            lista_Conversacion.Add(c);

            myDB.conversaciones.InsertOnSubmit(c);
            myDB.SubmitChanges();
            this.tema_Actual();
        }

        private void btn_Ir_Click(object sender, EventArgs e)
        {
            String seleccion_Tema = (String)lst_Tema.SelectedItem.ToString();

            var item_Selecccionado = from tema in this.myDB.conversaciones
                                     where tema.tema_conversacion == seleccion_Tema && tema.id_Conversacion>0
                                     select new
                                     {
                                         id_Conver = (int)tema.id_Conversacion,
                                         tema_Conver = (String)tema.tema_conversacion
                                     };

            foreach (var c in item_Selecccionado)
            {
                if (c.tema_Conver == seleccion_Tema)
                {
                    //Usuario usu = new Usuario();
                    usu1.id_User = usu1.id_User;
                    usu1.nombre = usu1.nombre;
                    lista_Usuario.Add(usu1);

                    conver1.id_Conversacion = c.id_Conver;
                    conver1.tema_conversacion = c.tema_Conver;
                    lista_Conversacion.Add(conver1);

                    //this.Hide();
                    Chat ch = new Chat(lista_Usuario, lista_Conversacion, usu1, conver1);
                    ch.Show();
                }
            }
        }

        private void lst_Tema_SelectedIndexChanged(object sender, EventArgs e)
        {
            
            //txt_Tema.Text = seleccion_Tema;
        }
    }
}

//*********************************************************************
//Formulario Chat**************************************************
namespace Chat_Darwin
{
    public partial class Chat : Form
    {
        MyDataBase myDB = new MyDataBase();
        List<Usuario> lista_Usuario = new List<Usuario>();
        Usuario usu1 = new Usuario();
        List<Conversacion> lista_Conversacion = new List<Conversacion>();
        Conversacion conver1 = new Conversacion();
        //List<Mensaje> lista_Mensaje = new List<Mensaje>();

        public Chat()
        {
            InitializeComponent();
        }

        public Chat(List<Usuario> i_lista_Usuario, List<Conversacion> i_lista_Conversacion, Usuario i_usu1, Conversacion i_conver1)
        {
            conver1 = i_conver1;
            usu1 = i_usu1;
            lista_Usuario = i_lista_Usuario;
            lista_Conversacion = i_lista_Conversacion;
            InitializeComponent();
        }


        private void Chat_Load(object sender, EventArgs e)
        {
            this.mensajes_Actual();
            lbl_Tema.Text = "TEMA: "+conver1.tema_conversacion;
            lbl_User.Text = "NOMBRE: "+usu1.nombre;
        }

        public void mensajes_Actual()
        {
            //llamar al id de la conversacion y del usuario para  llamar al mensaje
            Conversacion c = new Conversacion();


            lst_Chat.Items.Clear();

            var iter_Mensajes = from temaMensaje in this.myDB.mensajes
                                //where temaMensaje.conversacion_Id==Convert.ToInt32(lbl_Tema.Text) && temaMensaje.user_Id==Convert.ToInt32(lbl_User.Text)
                                where temaMensaje.id_Mensaje == conver1.id_Conversacion && temaMensaje.id_Mensaje==usu1.id_User
                                select new
                                {
                                    id_Mensaje = (int)temaMensaje.id_Mensaje,
                                    mensaje = (String)temaMensaje.texto
                                    //id_user = (int)temaMensaje.user_Id,
                                    //id_conver = (int)temaMensaje.conversacion_Id
                                };
            foreach(var t in iter_Mensajes)
            {
                lst_Chat.Items.Add(t.id_Mensaje+". "+t.mensaje);
            }
        }
        private void btn_Actualizar_Click(object sender, EventArgs e)
        {
            this.mensajes_Actual();
        }

        private void btn_Ok_Click(object sender, EventArgs e)
        {
            this.mensajes_Actual();
            Mensaje m = new Mensaje();
            m.texto = txt_Chat.Text;
            m.user_Id = usu1.id_User;
            m.conversacion_Id = conver1.id_Conversacion;
            myDB.mensajes.InsertOnSubmit(m);
            myDB.SubmitChanges();
        }
    }
}