Example #1
0
        private void RescatarDatos()
        {
            WSSoap.WSSHostelClient x = new WSSoap.WSSHostelClient();

            ContenedorOrdenesPedidoCompleta n = new ContenedorOrdenesPedidoCompleta();

            n = x.OrdenPedidoCompletaRescatar(Session["TokenUsuario"].ToString());

            //Filtrar solo por el proveedor
            Sesion datSes = (Sesion)Session["SesionUsuario"];
            var    listaPedidoProveedor = n.Lista.Where(p => p.Cabecera.RutProveedor == datSes.RutEmpresa &&
                                                        (p.Cabecera.Estado == "activo" ||
                                                         p.Cabecera.Estado == "facturada")
                                                        )
                                          .OrderBy(p => p.Cabecera.Numero).ToList();

            if (listaPedidoProveedor != null)
            {
                var pedidos = (from prov in listaPedidoProveedor
                               select new
                {
                    NroOrden = prov.Cabecera.Numero,
                    FechaSolicitud = prov.Cabecera.FechaEmision,
                    Monto = prov.Cabecera.Monto,
                    Estado = prov.Cabecera.Estado
                }

                               ).ToList();

                gwSolicitudes.DataSource = null;
                gwSolicitudes.DataSource = pedidos;
                gwSolicitudes.DataBind();
            }
            else
            {
                gwSolicitudes.DataSource = null;
                gwSolicitudes.DataBind();
            }
            gwOrdenDetalle.DataSource = null;
            gwOrdenDetalle.DataBind();

            Session["OrdenesPedido"] = listaPedidoProveedor;
        }
Example #2
0
        private void RescatarOrdenesXEmpresa(WSSHostelClient x)
        {
            ContenedorOrdenesPedidoCompleta m = new ContenedorOrdenesPedidoCompleta();

            m = x.OrdenPedidoCompletaRescatar(Session["TokenUsuario"].ToString());

            Sesion SesionUsuario = (Sesion)Session["SesionUsuario"];

            //filtrar las ordenes rescatadas
            var OPs = m.Lista.Where(p => p.Cabecera.RutProveedor == SesionUsuario.RutEmpresa &&
                                    p.Cabecera.Estado == "activo").ToList();

            //formatear lista para dejar en dropdwonlist, solo se deja numero orden
            var opc = (from l in OPs
                       select new
            {
                Numero = l.Cabecera.Numero
            }
                       ).ToList();

            if (opc.Count > 0)
            {
                ddlOrdenes.DataSource     = opc;
                ddlOrdenes.DataValueField = "Numero";
                ddlOrdenes.DataTextField  = "Numero";
                ddlOrdenes.DataBind();
                ddlOrdenes.Enabled = true;
                //
                ddlCodigoISO.Enabled = true;
                //
                var OPSeleccionada = OPs.Where(p => p.Cabecera.Numero == decimal.Parse(ddlOrdenes.SelectedValue)).ToList();

                LlenarGridOrdenPedido(OPSeleccionada);

                Session["OrdenesPedido"] = OPs;
            }
            else
            {
                LimpiarControlesOrdenes();
            }
        }
Example #3
0
        private void RescatarDatos()
        {
            WSSoap.WSSHostelClient x = new WSSoap.WSSHostelClient();

            ContenedorOrdenesPedidoCompleta n = new ContenedorOrdenesPedidoCompleta();

            n = x.OrdenPedidoCompletaRescatar(Session["TokenUsuario"].ToString());

            //Filtrar solo por el proveedor
            var listaPedidoProveedor = n.Lista.ToList();

            if (listaPedidoProveedor.Count > 0)
            {
                var pedidos = (from prov in listaPedidoProveedor
                               orderby prov.Cabecera.RutProveedor, prov.Cabecera.Numero
                               select new
                {
                    RutEmpresa = prov.Cabecera.RutProveedor,
                    NroOrden = prov.Cabecera.Numero,
                    FechaSolicitud = prov.Cabecera.FechaEmision,
                    Monto = prov.Cabecera.Monto,
                    Estado = prov.Cabecera.Estado
                }

                               ).ToList();

                gwSolicitudes.DataSource = null;
                gwSolicitudes.DataSource = pedidos;
                gwSolicitudes.DataBind();
            }
            else
            {
                gwSolicitudes.DataSource = null;
                gwSolicitudes.DataBind();
            }

            gwOrdenDetalle.DataSource = null;
            gwOrdenDetalle.DataBind();

            Session["OrdenesPedido"] = listaPedidoProveedor;
        }
        private void RescatarOrdenesXEmpresa(WSSoap.WSSHostelClient x)
        {
            ContenedorOrdenesPedidoCompleta n = new ContenedorOrdenesPedidoCompleta();

            n = x.OrdenPedidoCompletaRescatar(Session["TokenUsuario"].ToString());
            List <OrdenPedidoCompleta> OrdenesPedido = n.Lista.Where(p => p.Cabecera.Estado == "activo" ||
                                                                     p.Cabecera.Estado == "facturada").ToList();

            var opc = (from l in OrdenesPedido
                       where l.Cabecera.RutProveedor == ddlEmpresas.SelectedValue
                       //&& l.Cabecera.Estado == "activo"
                       select new
            {
                Numero = l.Cabecera.Numero
            }
                       ).ToList();

            Session["ListaOrdenesPedidoCompleta"] = OrdenesPedido;

            if (opc.Count > 0)
            {
                ddlOrdenes.DataSource     = opc;
                ddlOrdenes.DataValueField = "Numero";
                ddlOrdenes.DataTextField  = "Numero";
                ddlOrdenes.Enabled        = true;
                ddlOrdenes.DataBind();
            }
            else
            {
                //////////////
                ddlOrdenes.DataSource = opc;
                ddlOrdenes.DataBind();
                ddlOrdenes.Items.Add(new ListItem("No Existe", ""));
                ddlOrdenes.SelectedIndex = 0;
                //////////////
                ddlOrdenes.Enabled = false;
            }
        }
Example #5
0
        public ContenedorOrdenesPedidoCompleta LlamarSPRescatar(string token)
        {
            ContenedorOrdenesPedidoCompleta LOrdenesPedido = new ContenedorOrdenesPedidoCompleta();

            if (ValidarFecExp(token))
            {
                try
                {
                    CapaDato.EntitiesBBDDHostel conex = new CapaDato.EntitiesBBDDHostel();

                    var collection = (from cab  in conex.ORDEN_DE_PEDIDO
                                      join det  in conex.RRP on cab.NUMERO equals det.NUMERO_OP
                                      join prod in conex.PRODUCTO on det.CODIGO_PRODUCTO equals prod.CODIGO
                                      join prov in conex.PROVISION
                                      on     new { rut = cab.RUT_PROVEEDOR, cod = prod.CODIGO }
                                      equals new { rut = prov.RUT_PROVEEDOR, cod = prov.CODIGO_PRODUCTO }
                                      orderby cab.RUT_PROVEEDOR, cab.NUMERO
                                      select new
                    {
                        RutProveedor = cab.RUT_PROVEEDOR,
                        NumeroOP = cab.NUMERO,
                        FecRecepOP = cab.EMISION,
                        MontoOP = cab.MONTO,
                        EstadoOP = cab.ESTADO,
                        CodProd = det.CODIGO_PRODUCTO,
                        NomProd = prod.DESCRIPCION,
                        PreUniProd = prov.PRECIO,
                        CantProd = det.CANTIDAD,
                        FecRecProd = det.RECEPCION,
                        EstadoProd = det.CONFIRMADO
                    }
                                      ).ToList();

                    decimal NumeroOrdenAnterior = decimal.MinValue;
                    foreach (var item in collection)
                    {
                        //Verificar Corte de control por Numero de Orden
                        if (NumeroOrdenAnterior != item.NumeroOP)
                        {
                            //Se crea la OrdenCompleta
                            OrdenPedidoCompleta n = new OrdenPedidoCompleta();
                            //Se carga valores de la cabecera
                            n.Cabecera.RutProveedor = item.RutProveedor;
                            n.Cabecera.Numero       = item.NumeroOP;
                            n.Cabecera.FechaEmision = item.FecRecepOP;
                            n.Cabecera.Monto        = item.MontoOP;
                            n.Cabecera.Estado       = item.EstadoOP;

                            //Se crea el detalle Orden
                            OrdenPedidoDetalle m = new OrdenPedidoDetalle();
                            m.RegistroRecepcionPedido.NumeroOrdenPedido    = item.NumeroOP;
                            m.RegistroRecepcionPedido.Producto.Codigo      = item.CodProd;
                            m.RegistroRecepcionPedido.Producto.Descripcion = item.NomProd;
                            m.RegistroRecepcionPedido.PrecioUnitario       = item.PreUniProd;
                            m.RegistroRecepcionPedido.Cantidad             = item.CantProd;
                            m.RegistroRecepcionPedido.Recepcion            = item.FecRecProd;
                            m.RegistroRecepcionPedido.Confirmado           = item.EstadoProd;

                            //Se agrega el detalle a la cabecera
                            n.ListaDetalle.Add(m);

                            //Se agrega la orden completa a la orden
                            LOrdenesPedido.Lista.Add(n);

                            //Se realiza logica para armar corte de control
                            NumeroOrdenAnterior = item.NumeroOP;
                        }
                        else
                        {
                            //Se crea el detalle Orden
                            OrdenPedidoDetalle m = new OrdenPedidoDetalle();
                            m.RegistroRecepcionPedido.NumeroOrdenPedido    = item.NumeroOP;
                            m.RegistroRecepcionPedido.Producto.Codigo      = item.CodProd;
                            m.RegistroRecepcionPedido.Producto.Descripcion = item.NomProd;
                            m.RegistroRecepcionPedido.PrecioUnitario       = item.PreUniProd;
                            m.RegistroRecepcionPedido.Cantidad             = item.CantProd;
                            m.RegistroRecepcionPedido.Recepcion            = item.FecRecProd;
                            m.RegistroRecepcionPedido.Confirmado           = item.EstadoProd;

                            //Se agrega el detalle a la ultima orden de compra
                            LOrdenesPedido.Lista.Last().ListaDetalle.Add(m);
                        }
                    }
                    LOrdenesPedido.Retorno.Codigo = 0;
                    LOrdenesPedido.Retorno.Glosa  = "OK";
                }
                catch (Exception)
                {
                    LOrdenesPedido.Retorno.Codigo = 1011;
                    LOrdenesPedido.Retorno.Glosa  = "Err codret ORACLE";
                }
            }
            else
            {
                LOrdenesPedido.Retorno.Codigo = 100;
                LOrdenesPedido.Retorno.Glosa  = "Err expiro sesion o perfil invalido";
            }

            return(LOrdenesPedido);
        }