예제 #1
0
        public async Task <IEnumerable <Pedido> > GetPedidosAsync()
        {
            var resStr = await _client.GetStringAsync("");

            PedidoList    ArrP       = JsonConvert.DeserializeObject <PedidoList>(resStr);
            List <Pedido> Listpedido = new List <Pedido>();

            for (int i = 0; i < ArrP.data.Count; i++)
            {
                Listpedido.Add(new Pedido
                {
                    pedidoId     = ArrP.data[i].pedidoId,
                    fechaentrega = ArrP.data[i].fechaentrega,
                    fechapedido  = ArrP.data[i].fechapedido,
                    cantidad     = ArrP.data[i].cantidad,
                    precio       = ArrP.data[i].precio,
                    productoId   = ArrP.data[i].productoId,
                    clienteId    = ArrP.data[i].clienteId,
                    estado       = ArrP.data[i].estado,
                    modificado   = ArrP.data[i].modificado
                });
            }
            IEnumerable <Pedido> INumPedido = Listpedido;

            return(INumPedido);
        }
        protected virtual void SetCliente(ClienteInfo source)
        {
            if (source == null)
            {
                return;
            }

            Client_BS.DataSource = source;

            _entity.CopyFrom(source);

            //Cargamos los precios especiales del cliente
            if (source.Productos == null)
            {
                source.LoadChilds(typeof(ProductoCliente), false);
            }

            _pedidos_cliente = PedidoList.GetByClienteList(_entity.OidHolder, false);

            if (_cliente != null && _entity.Conceptos.Count > 0)
            {
                foreach (OutputDeliveryLine item in _entity.Conceptos)
                {
                    item.SetPrice(_cliente);
                }
            }
        }
예제 #3
0
        protected PedidoSelectForm(Form parent, EEstado estado, PedidoList lista)
            : base(true, parent, estado, lista)
        {
            InitializeComponent();
            _view_mode = molView.Select;

            _action_result = DialogResult.Cancel;
        }
        public override void UpdateList()
        {
            switch (_current_action)
            {
            case molAction.Add:
                if (_entity == null)
                {
                    return;
                }
                List.AddItem(_entity.GetInfo(false));
                if (FilterType == IFilterType.Filter)
                {
                    PedidoList listA = PedidoList.GetList(_filter_results);
                    listA.AddItem(_entity.GetInfo(false));
                    _filter_results = listA.GetSortedList();
                }
                break;

            case molAction.Edit:
            case molAction.Lock:
            case molAction.Unlock:
                if (_entity == null)
                {
                    return;
                }
                ActiveItem.CopyFrom(_entity);
                break;

            case molAction.Delete:
                if (ActiveItem == null)
                {
                    return;
                }
                List.RemoveItem(ActiveOID);
                if (FilterType == IFilterType.Filter)
                {
                    PedidoList listD = PedidoList.GetList(_filter_results);
                    listD.RemoveItem(ActiveOID);
                    _filter_results = listD.GetSortedList();
                }
                break;
            }

            RefreshSources();
            if (_entity != null)
            {
                Select(_entity.Oid);
            }
            _entity = null;
        }
        public PedidoMngForm(bool isModal, Form parent, EEstado estado, PedidoList lista)
            : base(isModal, parent, lista)
        {
            InitializeComponent();

            SetView(molView.Normal);

            // Parche para poder abrir el formulario en modo diseño y no perder la configuracion de columnas
            DatosLocal_BS    = Datos;
            Tabla.DataSource = DatosLocal_BS;

            SetMainDataGridView(Tabla);
            Datos.DataSource = PedidoList.NewList().GetSortedList();
            SortProperty     = Fecha.DataPropertyName;
            SortDirection    = ListSortDirection.Descending;

            _estado = estado;
        }
        protected override void RefreshMainData()
        {
            PgMng.Grow(string.Empty, "Pedido");

            _selectedOid = ActiveOID;

            switch (DataType)
            {
            case EntityMngFormTypeData.Default:
                List = PedidoList.GetList(Library.Common.ModulePrincipal.GetActiveYear().Year, false);
                break;

            case EntityMngFormTypeData.ByParameter:
                _sorted_list = List.GetSortedList();
                break;
            }
            PgMng.Grow(string.Empty, "Lista de Pedidos");
        }
예제 #7
0
        public IHttpActionResult ListPaginado(string estados, int idCliente, string fechaDesde, string fechaHasta, int numeroPagina, int cantidadRegistros)
        {
            try
            {
                ServiciosPedido servicio = new ServiciosPedido();
                PedidoList      resp     = servicio.PedidoListar(estados, idCliente, fechaDesde, fechaHasta, numeroPagina, cantidadRegistros);

                if (resp == null)
                {
                    return(NotFound());
                }
                return(Ok(resp));
            }
            catch (Exception ex)
            {
                LoggerHelper.LogError(MethodBase.GetCurrentMethod(), ex);
                return(BadRequest(ex.Message));
            }
        }
예제 #8
0
        public PedidoList PedidoListar(string estados, int idCliente, string fechaDesde, string fechaHasta, int numeroPagina, int cantidadRegistros)
        {
            PedidoRepository repository = new PedidoRepository();

            List <Estado> listEstados       = this.ListarVigentes <Estado>().ToList <Estado>();
            List <Estado> listEstadosParams = null;

            bool ordenarAscendente = true;

            if (!string.IsNullOrEmpty(estados))
            {
                string[] ids = estados.Split(',');
                if (ids.Length > 0)
                {
                    listEstadosParams = new List <Estado>();
                    for (int i = 0; i < ids.Length; i++)
                    {
                        int idEstado = ids[i].ConvertirInt();
                        if (idEstado > 0)
                        {
                            listEstadosParams.Add(listEstados.Find(item => item.Id.Equals(idEstado)));
                        }
                    }
                }
            }
            else
            {
                //se ordena descendente para mostrar Mis Pedidos en el carrito
                ordenarAscendente = false;
                listEstadosParams = listEstados;
            }

            PedidoList datos = repository.ObtenerPedidos(listEstadosParams,
                                                         idCliente,
                                                         fechaDesde.ConvertirDateTimeNulleable(),
                                                         fechaHasta.ConvertirDateTimeNulleable(),
                                                         numeroPagina, cantidadRegistros,
                                                         ordenarAscendente);

            return(datos);
        }
        protected virtual void AddPedidoAction(List <PedidoInfo> albaranes)
        {
            if (_entity.OidSerie == 0)
            {
                PgMng.ShowInfoException(Resources.Messages.NO_SERIE_SELECTED);
                return;
            }

            if (_pedidos.Count == 0)
            {
                if (_entity.OidHolder != 0)
                {
                    _pedidos = PedidoList.GetPendientesList(_entity.OidHolder, _entity.OidSerie, false);
                }
                else
                {
                    _pedidos = PedidoList.GetPendientesList(0, _entity.OidSerie, false);
                }
            }

            if (albaranes == null)
            {
                PedidoSelectForm form = new PedidoSelectForm(this, PedidoList.GetList(_pedidos));
                form.ShowDialog(this);
                if (form.DialogResult == DialogResult.OK)
                {
                    _results = form.Selected as List <PedidoInfo>;
                }
                else
                {
                    _results.Clear();
                }
            }
            else
            {
                _results = albaranes;
            }

            if (_results.Count > 0)
            {
                foreach (PedidoInfo item in _results)
                {
                    if (item.OidCliente != _results[0].OidCliente)
                    {
                        PgMng.ShowInfoException("No es posible asignar pedidos de clientes distintos a un mismo Albarán.");
                        return;
                    }
                }

                DoAddPedido(null);
            }

            if (Result == BGResult.OK)
            {
                Serie_BT.Enabled = false;
                Datos.ResetBindings(false);
            }

            if (Result == BGResult.OK)
            {
                Lines_BS.ResetBindings(false);
            }
        }
예제 #10
0
 public PedidoSelectForm(Form parent, PedidoList lista)
     : this(parent, EEstado.Todos, lista)
 {
 }
예제 #11
0
        public PedidoList ObtenerPedidos(List <Estado> estados, int idCliente, DateTime?fechaDesde, DateTime?fechaHasta, int numeroPagina, int cantidadRegistros, bool ordenarAscendente)
        {
            ISession session = NHibernateSessionSingleton.GetSession();


            ICriteria criteriaTotalFilas = session.CreateCriteria(typeof(Pedido));

            criteriaTotalFilas.Add(Expression.Gt("CantidadItems", 0));

            if (estados.Count > 0)
            {
                criteriaTotalFilas.Add(Expression.In("Estado", estados));
            }

            if (idCliente > -1)
            {
                criteriaTotalFilas.Add(Expression.Eq("Cliente.Id", idCliente));
            }

            if (fechaDesde.HasValue && fechaHasta.HasValue)
            {
                criteriaTotalFilas.Add(Expression.Between("Fecha", fechaDesde, fechaHasta.Value.AddDays(1)));
            }
            else
            {
                if (fechaDesde.HasValue)
                {
                    criteriaTotalFilas.Add(Expression.Between("Fecha", fechaDesde, DateTime.Now.AddDays(1)));
                }
                if (fechaHasta.HasValue)
                {
                    criteriaTotalFilas.Add(Expression.Between("Fecha", DateTime.MinValue, fechaHasta.Value.AddDays(1)));
                }
            }


            var total = criteriaTotalFilas.SetProjection(Projections.RowCount()).FutureValue <Int32>();

            ICriteria criteria = session.CreateCriteria(typeof(Pedido));

            criteria.Add(Expression.Gt("CantidadItems", 0));

            if (estados.Count > 0)
            {
                criteria.Add(Expression.In("Estado", estados));
            }

            if (idCliente > -1)
            {
                criteria.Add(Expression.Eq("Cliente.Id", idCliente));
            }

            if (fechaDesde.HasValue && fechaHasta.HasValue)
            {
                criteria.Add(Expression.Between("Fecha", fechaDesde, fechaHasta.Value.AddDays(1)));
            }
            else
            {
                if (fechaDesde.HasValue)
                {
                    criteria.Add(Expression.Between("Fecha", fechaDesde, DateTime.Now.AddDays(1)));
                }
                if (fechaHasta.HasValue)
                {
                    criteria.Add(Expression.Between("Fecha", DateTime.MinValue, fechaHasta.Value.AddDays(1)));
                }
            }

            if (numeroPagina > -1 && cantidadRegistros > -1)
            {
                criteria.SetMaxResults(cantidadRegistros);
                criteria.SetFirstResult((numeroPagina - 1) * cantidadRegistros);
            }

            criteria.AddOrder(new Order("Numero", ordenarAscendente));

            PedidoList listReturn = new PedidoList();

            listReturn.TotalFilas = total.Value;
            listReturn.Pedidos    = criteria.List <Pedido>().ToList <Pedido>();
            return(listReturn);
        }