public void IncrementarItem(Item it, int cnt)
        {
            if (it != null)
            {
                if (cnt > 0)
                {
                    var n_tarifa = it.TarifaPrecio;
                    var n_precio = it.PrecioNeto;
                    if (_habilitarPos_precio_5_para_venta_mayor)
                    {
                        var r00 = Sistema.MyData2.Producto(it.AutoId);
                        if (r00.Result == OOB.Enumerados.EnumResult.isError)
                        {
                            Helpers.Msg.Error(r00.Mensaje);
                        }

                        if ((it.Cantidad + cnt) >= r00.Entidad.Precio_5.ContEmpVenta)
                        {
                            if (r00.Entidad.Precio_5.PrecioNeto > 0 && r00.Entidad.Precio_5.ContEmpVenta > 1)
                            {
                                n_tarifa = "5";
                                n_precio = r00.Entidad.Precio_5.PrecioNeto;
                            }
                        }
                    }

                    var act = new OOB.LibVenta.PosOffline.Item.Actualizar()
                    {
                        Id       = it.Id,
                        Cantidad = (it.Cantidad + cnt),
                        precio   = n_precio,
                        tarifa   = n_tarifa,
                    };
                    var r01 = Sistema.MyData2.Item_Actualizar(act);
                    if (r01.Result == OOB.Enumerados.EnumResult.isError)
                    {
                        Helpers.Sonido.Error();
                        Helpers.Msg.Error(r01.Mensaje);
                        return;
                    }
                    Helpers.Sonido.SonidoOk();

                    _bItems.Remove(it);
                    it.Cantidad    += cnt;
                    it.PrecioNeto   = n_precio;
                    it.TarifaPrecio = n_tarifa;
                    _bItems.Insert(0, it);
                    _bs.MoveFirst();
                }
            }
        }
        public OOB.Resultado Item_Actualizar(OOB.LibVenta.PosOffline.Item.Actualizar ficha)
        {
            var rt = new OOB.Resultado();

            var actualizarDTO = new DtoLibPosOffLine.Item.Actualizar()
            {
                Id       = ficha.Id,
                Cantidad = ficha.Cantidad,
                Precio   = ficha.precio,
                Tarifa   = ficha.tarifa,
            };
            var r01 = MyData.Item_Actualizar(actualizarDTO);

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

            return(rt);
        }
        public bool Restar(int id)
        {
            var rt = false;

            var it = _bItems.First(f => f.Id == id);

            if (it != null)
            {
                var n_tarifa = it.TarifaPrecio;
                var n_precio = it.PrecioNeto;
                if (_habilitarPos_precio_5_para_venta_mayor)
                {
                    var r00 = Sistema.MyData2.Producto(it.AutoId);
                    if (r00.Result == OOB.Enumerados.EnumResult.isError)
                    {
                        Helpers.Msg.Error(r00.Mensaje);
                    }

                    if ((it.Cantidad - 1) < r00.Entidad.Precio_5.ContEmpVenta)
                    {
                        if (_tarifaPrecio == "1")
                        {
                            n_tarifa = "1";
                            n_precio = r00.Entidad.Precio_1.PrecioNeto;
                        }
                        if (_tarifaPrecio == "2")
                        {
                            n_tarifa = "2";
                            n_precio = r00.Entidad.Precio_2.PrecioNeto;
                        }
                        if (_tarifaPrecio == "3")
                        {
                            n_tarifa = "3";
                            n_precio = r00.Entidad.Precio_3.PrecioNeto;
                        }
                        if (_tarifaPrecio == "4")
                        {
                            n_tarifa = "4";
                            n_precio = r00.Entidad.Precio_4.PrecioNeto;
                        }
                    }
                }
                var act = new OOB.LibVenta.PosOffline.Item.Actualizar()
                {
                    Id       = it.Id,
                    Cantidad = it.Cantidad - 1,
                    precio   = n_precio,
                    tarifa   = n_tarifa,
                };
                var r01 = Sistema.MyData2.Item_Actualizar(act);
                if (r01.Result == OOB.Enumerados.EnumResult.isError)
                {
                    Helpers.Sonido.Error();
                    Helpers.Msg.Error(r01.Mensaje);
                    return(false);
                }
                it.PrecioNeto   = n_precio;
                it.TarifaPrecio = n_tarifa;
                rt = true;
            }

            return(rt);
        }
        public void Restar(Item it)
        {
            var eliminar = false;

            if (!it.EsPesado)
            {
                if (it.Cantidad > 1)
                {
                    var n_tarifa = it.TarifaPrecio;
                    var n_precio = it.PrecioNeto;
                    if (_habilitarPos_precio_5_para_venta_mayor)
                    {
                        var r00 = Sistema.MyData2.Producto(it.AutoId);
                        if (r00.Result == OOB.Enumerados.EnumResult.isError)
                        {
                            Helpers.Msg.Error(r00.Mensaje);
                        }

                        if ((it.Cantidad - 1) < r00.Entidad.Precio_5.ContEmpVenta)
                        {
                            if (_tarifaPrecio == "1")
                            {
                                n_tarifa = "1";
                                n_precio = r00.Entidad.Precio_1.PrecioNeto;
                            }
                            if (_tarifaPrecio == "2")
                            {
                                n_tarifa = "2";
                                n_precio = r00.Entidad.Precio_2.PrecioNeto;
                            }
                            if (_tarifaPrecio == "3")
                            {
                                n_tarifa = "3";
                                n_precio = r00.Entidad.Precio_3.PrecioNeto;
                            }
                            if (_tarifaPrecio == "4")
                            {
                                n_tarifa = "4";
                                n_precio = r00.Entidad.Precio_4.PrecioNeto;
                            }
                        }
                    }

                    var act = new OOB.LibVenta.PosOffline.Item.Actualizar()
                    {
                        Id       = it.Id,
                        Cantidad = it.Cantidad - 1,
                        precio   = n_precio,
                        tarifa   = n_tarifa,
                    };
                    var r01 = Sistema.MyData2.Item_Actualizar(act);
                    if (r01.Result == OOB.Enumerados.EnumResult.isError)
                    {
                        Helpers.Sonido.Error();
                        Helpers.Msg.Error(r01.Mensaje);
                        return;
                    }
                    it.Cantidad    -= 1;
                    it.PrecioNeto   = n_precio;
                    it.TarifaPrecio = n_tarifa;
                }
                else
                {
                    eliminar = true;
                }
            }
            else
            {
                eliminar = true;
            }

            if (eliminar)
            {
                var r01 = Sistema.MyData2.Item_Eliminar(it.Id);
                if (r01.Result == OOB.Enumerados.EnumResult.isError)
                {
                    Helpers.Sonido.Error();
                    Helpers.Msg.Error(r01.Mensaje);
                    return;
                }
                _bs.Remove(it);
            }
        }