Esempio n. 1
0
        public OOB.Resultado.Lista <OOB.Producto.Lista.Ficha> Producto_GetLista(OOB.Producto.Lista.Filtro filtro)
        {
            var result = new OOB.Resultado.Lista <OOB.Producto.Lista.Ficha>();

            var filtroDTO = new DtoLibPos.Producto.Lista.Filtro()
            {
                AutoDeposito    = filtro.autoDeposito,
                IdPrecioManejar = filtro.idPrecioManejar,
                Cadena          = filtro.cadena,
                IsPorPlu        = filtro.isPorPlu,
            };
            var r01 = MyData.Producto_GetLista(filtroDTO);

            if (r01.Result == DtoLib.Enumerados.EnumResult.isError)
            {
                result.Mensaje = r01.Mensaje;
                result.Result  = OOB.Resultado.Enumerados.EnumResult.isError;
                return(result);
            }

            var lst = new List <OOB.Producto.Lista.Ficha>();

            if (r01.Lista != null)
            {
                if (r01.Lista.Count > 0)
                {
                    lst = r01.Lista.Select(s =>
                    {
                        var nr = new OOB.Producto.Lista.Ficha()
                        {
                            Auto             = s.Auto,
                            Codigo           = s.Codigo,
                            Contenido        = s.Contenido,
                            Decimales        = s.Decimales,
                            Empaque          = s.Empaque,
                            Estatus          = s.Estatus,
                            EstatusDivisa    = s.EstatusDivisa,
                            EstatusPesado    = s.EstatusPesado,
                            ExDisponible     = s.ExDisponible,
                            ExFisica         = s.ExFisica,
                            Nombre           = s.Nombre,
                            PrecioFullDivisa = s.PrecioFullDivisa,
                            PrecioNeto       = s.PrecioNeto,
                            TasaIva          = s.TasaIva,
                            PLU                 = s.PLU,
                            ContenidoMay        = s.contenidoMay,
                            DecimalesMay        = s.decimalesMay,
                            EmpaqueMay          = s.empaqueMay,
                            PrecioFullDivisaMay = s.precioFullDivisaMay,
                        };
                        return(nr);
                    }).ToList();
                }
            }
            result.ListaD = lst;

            return(result);
        }
        public void Buscar()
        {
            _itemSeleccionado     = null;
            _itemSeleccionadoIsOk = false;

            if (_cadenaBusq == "")
            {
                return;
            }

            var mb = OOB.Producto.Lista.Enumerados.EnumMetodoBusqueda.SinDefinir;

            switch (_metodoBusq)
            {
            case "01":
                mb = OOB.Producto.Lista.Enumerados.EnumMetodoBusqueda.PorCodigo;
                break;

            case "02":
                mb = OOB.Producto.Lista.Enumerados.EnumMetodoBusqueda.PorDescripcion;
                break;

            case "03":
                mb = OOB.Producto.Lista.Enumerados.EnumMetodoBusqueda.PorReferencia;
                break;
            }
            var filtro = new OOB.Producto.Lista.Filtro();

            filtro.AutoDeposito   = _depositoFiltrar;
            filtro.Cadena         = _cadenaBusq;
            filtro.MetodoBusqueda = mb;
            var r01 = Sistema.MyData.Producto_GetLista(filtro);

            if (r01.Result == OOB.Resultado.Enumerados.EnumResult.isError)
            {
                Helpers.Msg.Error(r01.Mensaje);
                return;
            }
            _items.setLista(r01.ListaD);

            Inicia();
        }
        public OOB.Resultado.Lista <OOB.Producto.Lista.Ficha> Producto_GetLista(OOB.Producto.Lista.Filtro filtro)
        {
            var rt = new OOB.Resultado.Lista <OOB.Producto.Lista.Ficha>();

            var filtroDto = new DtoLibPos.ProductoAdm.Lista.Filtro()
            {
                AutoDeposito   = filtro.AutoDeposito,
                Cadena         = filtro.Cadena,
                MetodoBusqueda = (DtoLibPos.ProductoAdm.Lista.Enumerados.EnumMetodoBusqueda)filtro.MetodoBusqueda,
            };
            var r01 = MyData.ProductoAdm_GetLista(filtroDto);

            if (r01.Result == DtoLib.Enumerados.EnumResult.isError)
            {
                rt.Mensaje = r01.Mensaje;
                rt.Result  = OOB.Resultado.Enumerados.EnumResult.isError;
                return(rt);
            }

            var list = new List <OOB.Producto.Lista.Ficha>();

            if (r01.Lista != null)
            {
                if (r01.Lista.Count > 0)
                {
                    var fechaNula = new DateTime(2000, 1, 1);
                    list = r01.Lista.Select(s =>
                    {
                        var nr = new OOB.Producto.Lista.Ficha()
                        {
                            Codigo           = s.Codigo,
                            Cont_1           = s.Cont_1,
                            Cont_2           = s.Cont_2,
                            Cont_3           = s.Cont_3,
                            Cont_4           = s.Cont_4,
                            Cont_5           = s.Cont_5,
                            ContMayor1       = s.ContMayor1,
                            ContMayor2       = s.ContMayor2,
                            Departamento     = s.Departamento,
                            Empq_1           = s.Empq_1,
                            Empq_2           = s.Empq_2,
                            Empq_3           = s.Empq_3,
                            Empq_4           = s.Empq_4,
                            Empq_5           = s.Empq_5,
                            EmpqMayor1       = s.EmpqMayor1,
                            EmpqMayor2       = s.EmpqMayor2,
                            Estatus          = s.Estatus,
                            EstatusDivisa    = s.EstatusDivisa,
                            EstatusPesado    = s.EstatusPesado,
                            ExDisponible     = s.ExDisponible,
                            ExFisica         = s.ExFisica,
                            FechaUltActCosto = s.FechaUltActCosto == fechaNula ? "" : s.FechaUltActCosto.ToShortDateString(),
                            FechaUltVenta    = s.FechaUltVenta == fechaNula ? "" : s.FechaUltVenta.ToShortDateString(),
                            Grupo            = s.Grupo,
                            Id          = s.Id,
                            Modelo      = s.Modelo,
                            Nombre      = s.Nombre,
                            PNeto1      = s.PNeto1,
                            PNeto2      = s.PNeto2,
                            PNeto3      = s.PNeto3,
                            PNeto4      = s.PNeto4,
                            PNeto5      = s.PNeto5,
                            PNetoMayor1 = s.PNetoMayor1,
                            PNetoMayor2 = s.PNetoMayor2,
                            Referencia  = s.Referencia,
                            TasaIva     = s.TasaIva,
                        };
                        return(nr);
                    }).ToList();
                }
            }
            rt.ListaD = list;

            return(rt);
        }
        public void ActivarBusqueda(string buscar, bool activarBusquedaPorDescripcion = true)
        {
            _autoPrd = "";
            var codBuscar = buscar.Trim().ToUpper();

            if (codBuscar == "")
            {
                return;
            }

            //var vr = VerificaPreEmpaque(buscar);
            //if (vr.IsPreEmpaque)
            //{
            //    codBuscar = vr.ItemCodigo;
            //    Peso = vr.Peso;
            //}

            var r01 = Sistema.MyData.Producto_BusquedaByCodigoBarra(codBuscar);

            if (r01.Result == OOB.Resultado.Enumerados.EnumResult.isError)
            {
                Helpers.Msg.Error(r01.Mensaje);
                return;
            }
            if (r01.Auto == "")
            {
                var r02 = Sistema.MyData.Producto_BusquedaByPlu(codBuscar);
                if (r02.Result == OOB.Resultado.Enumerados.EnumResult.isError)
                {
                    Helpers.Msg.Error(r02.Mensaje);
                    return;
                }
                if (r02.Auto == "")
                {
                    var r03 = Sistema.MyData.Producto_BusquedaByCodigo(codBuscar);
                    if (r03.Result == OOB.Resultado.Enumerados.EnumResult.isError)
                    {
                        Helpers.Msg.Error(r03.Mensaje);
                        return;
                    }
                    if (r03.Auto == "")
                    {
                        if (activarBusquedaPorDescripcion)
                        {
                            var filtro = new OOB.Producto.Lista.Filtro()
                            {
                                autoDeposito    = _autoDepositoAsignado,
                                cadena          = codBuscar,
                                idPrecioManejar = _tarifaPrecio,
                            };
                            var r04 = Sistema.MyData.Producto_GetLista(filtro);
                            if (r04.Result == OOB.Resultado.Enumerados.EnumResult.isError)
                            {
                                Helpers.Msg.Error(r04.Mensaje);
                                return;
                            }
                            _gestionListar.Inicializa();
                            _gestionListar.setData(r04.ListaD);
                            _gestionListar.Inicia();
                            if (_gestionListar.ItemSeleccionIsOk)
                            {
                                if (_habilitarVentaMayor)
                                {
                                    _gestionMayor.Inicializa();
                                    _gestionMayor.setAutoProducto(_gestionListar.ItemSeleccionado.Auto);
                                    _gestionMayor.setTarifaPrecio(_tarifaPrecio);
                                    _gestionMayor.Inicia();
                                    if (_gestionMayor.PrecioSeleccionadoIsOk)
                                    {
                                        _autoPrd      = _gestionMayor.AutoProducto;
                                        _tarifaPrecio = _gestionMayor.TarifaSeleccionada;
                                    }
                                }
                                else
                                {
                                    _autoPrd = _gestionListar.ItemSeleccionado.Auto;
                                }
                            }
                        }
                    }
                    else
                    {
                        _autoPrd = r03.Auto;
                    }
                }
                else
                {
                    _autoPrd = r02.Auto;
                }
            }
            else
            {
                _autoPrd = r01.Auto;
            }
        }