Exemplo n.º 1
0
        public List<Notaentrada> obtenernotas(string idguiaremision)
        {
            SqlConnection objDB = null;
            try
            {
                objDB = new SqlConnection(cadenaDB);
                List<Notaentrada> Listaordenes = new List<Notaentrada>();
                objDB.Open();
                String strQuery = "SELECT * FROM NotaEntradaDetalle where idNotaentrada= @id ";
                SqlCommand objQuery = new SqlCommand(strQuery, objDB);
                BaseDatos.agregarParametro(objQuery, "@id", idguiaremision);
                SqlDataReader objDataReader = objQuery.ExecuteReader();
                if (objDataReader.HasRows)
                {
                    while (objDataReader.Read())
                    {

                        Notaentrada nota = new Notaentrada();// orden = new Notaentradabean();
                        nota.id = Convert.ToString(objDataReader["idIngrediente"]);
                        nota.cantidadentrante = Convert.ToInt32(objDataReader["cantidadentrante"]);
                        Listaordenes.Add(nota);
                    }
                }

                return Listaordenes;
            }
            catch (Exception e)
            {
                log.Error("Lista de ordenes de compra(EXCEPTION): ", e);
                throw (e);
            }
            finally
            {
                if (objDB != null)
                {
                    objDB.Close();
                }
            }
        }
Exemplo n.º 2
0
        public ActionResult RegistrarNotaEntrada(string id)
        {
            Notaentradabean notaentrada = new Notaentradabean();

            OrdencompraBean ordencompra = comprfacade.buscarOrdenes(id);
            ProveedorBean proveedor = comprfacade.BuscarProveedor(ordencompra.idProveedor);
            ordencompra.nombreProveedor = proveedor.razonSocial;

            notaentrada.idCafeteria = ordencompra.idCafeteria;
            SucursalBean suc = admin.buscarSucursal(notaentrada.idCafeteria);
            notaentrada.nombreCafeteria = suc.nombre;
            notaentrada.nombreProveedor = proveedor.razonSocial;
            notaentrada.idOrdenCompra = id;
            notaentrada.idProveedor = ordencompra.idProveedor;
            notaentrada.fechaRegistradaOrdenCompra = ordencompra.fecha;
            notaentrada.detalleNotaEntrada = new List<Notaentrada>();
            notaentrada.estado = ordencompra.estado;

            for (int i = 0; i < ordencompra.detalle.Count; i++)
            {
                IngredienteBean ingre = almafacade.buscaringrediente(ordencompra.detalle[i].id);
                ordencompra.detalle[i].nombre = ingre.nombre;
            }

            for (int i = 0; i < ordencompra.detalle.Count; i++)
            {
                Notaentrada notas = new Notaentrada();
                notas.cantidadsolicitada = ordencompra.detalle[i].Cantidad;
                notas.id = ordencompra.detalle[i].id;
                notas.nombre = ordencompra.detalle[i].nombre;

                notaentrada.detalleNotaEntrada.Add(notas);

            }

            List<Notaentradabean> notas2 = comprfacade.listarnotasentrada(id); // lista de notas de entrada de uan orden de compra

            for (int i = 0; i < notas2.Count; i++)
            {
                List<Notaentrada> detallenotaentrada = comprfacade.obtenernotas(notas2[i].idGuiaRemision);
                for (int j = 0; j < detallenotaentrada.Count; j++)
                {
                    for (int k = 0; k < notaentrada.detalleNotaEntrada.Count; k++)
                    {
                        if (notaentrada.detalleNotaEntrada[k].id == detallenotaentrada[j].id)
                        {
                            notaentrada.detalleNotaEntrada[k].cantidadrecibida += detallenotaentrada[j].cantidadentrante;
                        }

                    }

                }
            }
            for (int i = 0; i < notaentrada.detalleNotaEntrada.Count; i++)
            {
                notaentrada.detalleNotaEntrada[i].cantidadfaltante = notaentrada.detalleNotaEntrada[i].cantidadsolicitada - notaentrada.detalleNotaEntrada[i].cantidadrecibida;
                if (notaentrada.detalleNotaEntrada[i].cantidadfaltante == 0)
                {
                    notaentrada.detalleNotaEntrada[i].estadonota = true;
                }
            }

            return View(notaentrada);
        }