예제 #1
0
        private void btnBAJAS_Click(object sender, EventArgs e)
        {
            if (dgvRequerimientos.CurrentRow == null)
            {
                MessageBox.Show("Debe seleccionar un usuario de la lista", "ATENCION!!");
                return;
            }
            Modelo.Requerimiento oUSUARIO = cReq.Recuperar(Convert.ToInt32(dgvRequerimientos.CurrentRow.Cells[0].Value));

            DialogResult dr = MessageBox.Show("¿Confirma que desea eliminar el pedido " + oUSUARIO.Id_Req + "?", "ELIMINAR USUARIO", MessageBoxButtons.YesNo, MessageBoxIcon.Question);

            if (dr == System.Windows.Forms.DialogResult.Yes)
            {
                if (cReq.ValidarFk(Convert.ToInt32(dgvRequerimientos.CurrentRow.Cells[0].Value)))
                {
                    // MessageBox.Show("El requerimiento no se puede eliminar porque se encuentra en una orden de compra");

                    DialogResult drr = MessageBox.Show("El pedido tiene una orden asociada, desea eliminar de todas formas el pedido " + oUSUARIO.Id_Req + "?", "ELIMINAR USUARIO", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                    if (drr == System.Windows.Forms.DialogResult.Yes)
                    {
                        oUSUARIO.Borrado = true;
                    }
                    cReq.modificarRequerimiento(oUSUARIO);
                    ARMA_GRILLA();

                    //return;
                }
                else
                {
                    cReq.Eliminar(oUSUARIO);
                }
                ARMA_GRILLA();
            }
        }
 public bool VALIDA_NOMBRE_Articulo(string nombre_Articulo)
 {
     Modelo.Requerimiento oArticulo = Modelo.SingletonContexto.obtener_instancia().Contexto.RequerimientoSet.ToList().LastOrDefault(u => u.Articulo.Descripcion.Contains(nombre_Articulo));
     if (oArticulo == null)
     {
         return(false);
     }
     else
     {
         return(true);
     }
 }
 public bool ValidarFk(Int32 id_Req)
 {
     Modelo.Requerimiento oArticulo = Modelo.SingletonContexto.obtener_instancia().Contexto.RequerimientoSet.FirstOrDefault(u => (u.Articulo.Id == id_Req));
     if (oArticulo == null)
     {
         return(false);
     }
     else
     {
         return(true);
     }
 }
예제 #4
0
        private void dgvRequerimientos_DoubleClick(object sender, EventArgs e)
        {
            if (dgvRequerimientos.CurrentRow == null)
            {
                MessageBox.Show("Debe seleccionar un requerimiento");
                return;
            }
            oRequerimiento = cReq.Recuperar(Convert.ToInt32(dgvRequerimientos.CurrentRow.Cells[0].Value));


            this.DialogResult = DialogResult.OK;
        }
예제 #5
0
 public New_Item(Modelo.Requerimiento miReq, string miACCION)
 {
     InitializeComponent();
     cReq           = Controladora.Controladora_Req.obtener_instancia();
     cArticulos     = Controladora.controladora_Articulos.obtener_instancia();
     oRequerimiento = miReq;
     ACCION         = miACCION;
     if (ACCION != "A")
     {
         textbox_Desc.Text = oRequerimiento.Articulo.Descripcion;
         textBox_Cant.Text = oRequerimiento.Cantidad.ToString();
         //btn_AddReq.Enabled = false;
         PedidoMaximo = oRequerimiento.Articulo.Pedido_Max;
     }
 }
        private void pictureBox1_Click(object sender, EventArgs e)
        {
            //New_Item newItem = new New_Item(new Modelo.Requerimiento(), "A");
            //newItem.FormBorderStyle = FormBorderStyle.None;
            //DialogResult dr = newItem.ShowDialog();
            //if (dr == System.Windows.Forms.DialogResult.OK)
            //    this.Close();
            DialogResult dr = MessageBox.Show("¿Confirma  el pedido de " + Comentario.Faltantes + " unidad del articulo" + Comentario.Articulo.Descripcion + "?", "Confirmar", MessageBoxButtons.YesNo);

            if (dr == System.Windows.Forms.DialogResult.Yes)
            {
                Modelo.Requerimiento Requerimiento = new Modelo.Requerimiento();
                Requerimiento.Cantidad = Comentario.Faltantes;
                Requerimiento.Fecha    = DateTime.Now;
                Requerimiento.Estado   = false;
                Requerimiento.Articulo = Comentario.Articulo;
                Comentario.Estado      = true;

                cComentarios.Modificar(Comentario);
                cReq.Agregar_Requerimiento(Requerimiento);
            }
            timer1.Interval = 1;
            action          = enmAction.close;
        }
 public void Eliminar(Modelo.Requerimiento req)
 {
     Modelo.SingletonContexto.obtener_instancia().Contexto.RequerimientoSet.Remove(req);
     Modelo.SingletonContexto.obtener_instancia().Contexto.SaveChanges();
 }
 public void Agregar_Requerimiento(Modelo.Requerimiento req)
 {
     Modelo.SingletonContexto.obtener_instancia().Contexto.RequerimientoSet.Add(req);
     Modelo.SingletonContexto.obtener_instancia().Contexto.SaveChanges();
 }
 public virtual void modificarRequerimiento(Modelo.Requerimiento oReq)
 {
     Modelo.SingletonContexto.obtener_instancia().Contexto.Entry(oReq).State = System.Data.Entity.EntityState.Modified;
     Modelo.SingletonContexto.obtener_instancia().Contexto.SaveChanges();
 }
예제 #10
0
        private void btn_Save_Click(object sender, EventArgs e)
        {
            /*foreach (DataGridViewRow F in dgvDetalleCompra.Rows)
             * {
             *  int cod;
             *  Estado = Convert.ToBoolean(F.Cells["Estado"].Value);
             *  if (Estado == true)
             *  {
             *      cod = Convert.ToInt32(F.Cells[4].Value);
             *      Requerimiento = cReq.OBTENER(cod);
             *      Requerimiento.Estado = true;
             *      cReq.modificarRequerimiento(Requerimiento);
             *  }
             * }*/
            bool Estado;

            foreach (DataGridViewRow F in dgvDetalleCompra.Rows)
            {
                int cod;
                int cantidad;
                int resultado;
                Estado = Convert.ToBoolean(F.Cells["Estado"].Value);
                if (Estado == true)
                {
                    cod           = Convert.ToInt32(F.Cells["Id_Req"].Value);
                    cantidad      = Convert.ToInt32(F.Cells[1].Value);
                    oArt          = cArt.OBTENER_ARTICULO(Convert.ToInt32(F.Cells["Id_Art"].Value));
                    Requerimiento = cReq.OBTENER(cod);

                    if (ACCION == "M")
                    {
                        oArt.Stock      = (oArt.Stock - Convert.ToInt32(cDetalleCompra.OBTENER(Convert.ToInt32(F.Cells["Id"].Value)).Cantidad)) + cantidad;
                        oArt.Pendientes = oArt.Pendientes - cantidad;
                        //cReq.modificarRequerimiento(Requerimiento);
                        //cArt.modificarArticulos(oArt);
                    }
                    if (ACCION == "A")
                    {
                        oArt.Stock      = oArt.Stock + cantidad;
                        oArt.Pendientes = oArt.Pendientes - cantidad;
                        // cReq.modificarRequerimiento(Requerimiento);
                        // cArt.modificarArticulos(oArt);
                    }
                    Requerimiento.Estado = Estado;
                    if (Requerimiento.Cantidad > cantidad)
                    {
                        Modelo.Comentarios oComentario = new Modelo.Comentarios();
                        resultado = Requerimiento.Cantidad - cantidad;
                        Requerimiento.Cantidad  = cantidad;
                        oComentario.Faltantes   = resultado;
                        oComentario.Articulo    = Requerimiento.Articulo;
                        oComentario.Estado      = false;
                        oComentario.Descripcion = "Faltan " + resultado + " unidad/es del articulo " + Requerimiento.Articulo.Descripcion;
                        cComentario.Agregar(oComentario);
                        cReq.modificarRequerimiento(Requerimiento);
                        cArt.modificarArticulos(oArt);
                    }
                    else
                    {
                        Requerimiento.Cantidad = cantidad;
                    }
                    cReq.modificarRequerimiento(Requerimiento);
                    cArt.modificarArticulos(oArt);
                }
                else
                {
                    cod                  = Convert.ToInt32(F.Cells[4].Value);
                    Requerimiento        = cReq.OBTENER(cod);
                    Requerimiento.Estado = Estado;
                    Modelo.Comentarios oComentario = new Modelo.Comentarios();
                    cantidad = Convert.ToInt32(F.Cells[1].Value);


                    oComentario.Faltantes   = cantidad;
                    oComentario.Articulo    = Requerimiento.Articulo;
                    oComentario.Estado      = false;
                    oComentario.Descripcion = "Faltan " + cantidad + " unidad/es del articulo " + Requerimiento.Articulo.Descripcion;
                    cComentario.Agregar(oComentario);
                    //Requerimiento.Cantidad = Convert.ToInt32(F.Cells[1].Value);
                    cReq.modificarRequerimiento(Requerimiento);
                }
            }



            Int32 Contador         = 0;
            Int32 ContadorPositivo = 0;
            Int32 ContadorNegativo = 0;

            foreach (DataGridViewRow F in dgvDetalleCompra.Rows)
            {
                Int32 Llego;
                Contador = Contador + 1;
                //Llego = Convert.ToInt32(F.Cells[1].Value);
                // bool Estado;
                Estado = Convert.ToBoolean(F.Cells["Estado"].Value);
                if (Estado == true)
                {
                    ContadorPositivo = ContadorPositivo + 1;
                }

                if (Estado == false)
                {
                    ContadorNegativo = ContadorNegativo + 1;
                }
            }

            if (Contador == ContadorPositivo)
            {
                //Llego = Convert.ToInt32(F.Cells[1].Value);
                if (ACCION == "A")
                {
                    orden         = cOrden.Asociar(textBoxfiltro.Text);
                    orden.Estados = cEstado.OBTENER_Estado(3);
                    cOrden.modificar(orden);
                    MessageBox.Show("Orden cerrada");
                }
                else
                {
                    orden         = oRemito.Orden_Compra;
                    orden.Estados = cEstado.OBTENER_Estado(3);
                    cOrden.modificar(orden);
                    MessageBox.Show("Orden cerrada");
                }
            }
            else if (Contador == ContadorNegativo)
            {
                if (ACCION == "A")
                {
                    OrdenDeCompra_Estados frm = new OrdenDeCompra_Estados("Buscar");
                    //frm.FormBorderStyle = FormBorderStyle.None;
                    frm.Show();
                    orden         = cOrden.Asociar(textBoxfiltro.Text);
                    orden.Estados = cEstado.OBTENER_Estado(1);
                    cOrden.modificar(orden);
                    //MessageBox.Show("Orden abierta");
                }
                else
                {
                    //OrdenDeCompra_Estados frm = new OrdenDeCompra_Estados();
                    //frm.FormBorderStyle = FormBorderStyle.None;
                    //frm.Show();

                    OrdenDeCompra_Estados frm = new OrdenDeCompra_Estados("Buscar");
                    frm.Size            = new Size(646, 382);
                    frm.StartPosition   = FormStartPosition.CenterParent;
                    frm.FormBorderStyle = FormBorderStyle.None;
                    orden = oRemito.Orden_Compra;
                    DialogResult dr = frm.ShowDialog();
                    if (dr == DialogResult.OK)
                    {
                        orden.Estados = frm.ArticuloSelec;
                    }

                    //orden.Estados = cEstado.OBTENER_Estado(1);
                    cOrden.modificar(orden);
                    //MessageBox.Show("Orden abierta");
                }
            }
            else
            {
                if (ACCION == "A")
                {
                    orden         = cOrden.Asociar(textBoxfiltro.Text);
                    orden.Estados = cEstado.OBTENER_Estado(2);
                    cOrden.modificar(orden);
                    MessageBox.Show("Orden abierta");
                }

                else
                {
                    orden         = oRemito.Orden_Compra;
                    orden.Estados = cEstado.OBTENER_Estado(2);
                    cOrden.modificar(orden);
                    MessageBox.Show("Orden Parcial");
                }
            }


            //this.DialogResult = System.Windows.Forms.DialogResult.OK;
        }
예제 #11
0
        private void btnGUARDAR_Click(object sender, EventArgs e)
        {
            if (textbox_Desc.Text == "")
            {
                MessageBox.Show("Debe Ingresar un artìculo");
                return;
            }
            if (textBox_Cant.Text == "")
            {
                MessageBox.Show("Debe Ingresar una cantidad");
                return;
            }

            //Modelo.Requerimiento    oRequerimiento = new Modelo.Requerimiento();
            sumaPendientes = Convert.ToInt32(textBox_Cant.Text);



            //oArticulo.Pendientes = Convert.ToInt32(textBox_Cant.Text);

            if (ACCION == "A")
            {
                if (cReq.VALIDA_NOMBRE_Articulo(textbox_Desc.Text))
                {
                    if (cReq.Asociar(textbox_Desc.Text).Estado == false)
                    {
                        MessageBox.Show("El nombre de Articulo ya se encuentra asignado a otro Articulo", "ATENCION!!");
                        return;
                    }
                }
                Stock = oArticulo.Stock;
                if (Stock <= oArticulo.Stock_Min && Convert.ToInt32(textBox_Cant.Text) <= oArticulo.Pedido_Max)
                {
                    Modelo.Requerimiento requerimiento = new Modelo.Requerimiento();
                    oArticulo.Pendientes = Convert.ToInt32(textBox_Cant.Text) + oArticulo.Pendientes;
                    // oArticulo.Estado = false;
                    cArticulos.modificarArticulos(oArticulo);


                    //odelo.SingletonContexto.obtener_instancia().Contexto.ArticuloSet.Attach(oArticulo);

                    oArticulo.Requerimiento.Add(oRequerimiento);

                    requerimiento.Articulo  = oArticulo;
                    oRequerimiento.Cantidad = Convert.ToInt32(textBox_Cant.Text);


                    oRequerimiento.Fecha  = DateTime.Now;
                    oRequerimiento.Estado = false;
                    cReq.Agregar_Requerimiento(oRequerimiento);
                    Controladora.controladora_Articulos.obtener_instancia().modificarArticulos(oArticulo);
                    MessageBox.Show("Solicitud Realizada");
                    this.DialogResult = DialogResult.OK;
                }

                else
                {
                    MessageBox.Show("Error!! Cantidad incorrecta");
                }
            }
            else
            {
                if (sumaPendientes > PedidoMaximo)
                {
                    MessageBox.Show("La cantidad Ingresada supera los pedidos Maximos");
                    return;
                }
                else
                {
                    oRequerimiento.Cantidad = Convert.ToInt32(textBox_Cant.Text);
                    cReq.modificarRequerimiento(oRequerimiento);
                }
                //cArticulos.modificarArticulos(oArticulo);
                //oUSUARIO.Grupo.Id = Convert.ToInt32(txtIdGrupo.Text);
                //cGrupos.modificarGrupos(oGrupo);
            }

            this.DialogResult = System.Windows.Forms.DialogResult.OK;
        }
        private void Add_Item_Click(object sender, EventArgs e)
        {
            Requerimientos Frm = new Requerimientos();
            DialogResult   dr  = Frm.ShowDialog();

            if (dr == DialogResult.OK)
            {
                oReq = Frm.ReqSelec;
                if (ACCION == "M")
                {
                    if (oReq.Articulo.Rubro.Descripcion == oOrden.Proveedor.Rubro.Descripcion)
                    {
                        if (cReq.ValidarFk(oReq.Id_Req) == false)
                        {
                            Modelo.DetalleCompra detalle = new Modelo.DetalleCompra();
                            detalle.Requerimiento = oReq;
                            detalle.Cantidad      = oReq.Cantidad.ToString();
                            detalle.Orden_Compra  = oOrden;
                            Orden.Agregar(detalle);
                            cDetalleCompra.Agregar(detalle);
                            Filtrar();
                        }
                        else
                        {
                            MessageBox.Show("El pedido ya se realizo");
                        }
                        return;
                    }
                    else
                    {
                        MessageBox.Show("El pedido corresponde a otro rubro");
                        return;
                    }
                }
                else
                {
                    if (oReq.Articulo.Rubro.Descripcion == oProveedor.Rubro.Descripcion)
                    {
                        if (cReq.ValidarFk(oReq.Id_Req) == false)
                        {
                            Modelo.DetalleCompra detalle = new Modelo.DetalleCompra();
                            detalle.Requerimiento = oReq;
                            detalle.Cantidad      = oReq.Cantidad.ToString();
                            detalle.Orden_Compra  = oOrden;
                            Orden.Agregar(detalle);
                            cDetalleCompra.Agregar(detalle);
                            Filtrar();
                        }
                        else
                        {
                            MessageBox.Show("El pedido ya se realizo");
                        }
                        return;
                    }
                    else
                    {
                        MessageBox.Show("El pedido corresponde a otro rubro");
                        return;
                    }
                }
            }


            Filtrar();
        }