private async void llenarColaPedido() { // var copy = new ObservableCollection<ArticuloBarras>(this.ArticulosBarras); // verificar si no se ha llenado la cola antes yjs 250319 //var oExisteCola = this.apiService.GetExisteCola(this.num); //var a = oExisteCola.Result ; ObservableCollection <ColaArmadoPedidos> allColaArmado = new ObservableCollection <ColaArmadoPedidos>(); var nCuenta = 0; DateTime dFecha = DateTime.Now; foreach (var _item in this.PedidoShow) { nCuenta++; ColaArmadoPedidos itemCola = new ColaArmadoPedidos { idColaArmadoPedidos = 0, idUsuario = _item.idusuario, idPedido = _item.num, numItem = nCuenta, idArticulo = _item.codigo, idSector = _item.idsector, cantidad = _item.cantd, status = 1, fechaStatus = dFecha, pickeado = 0, cantidadPick = 0 }; allColaArmado.Add(itemCola); } var listaCola = (IEnumerable <ColaArmadoPedidos>)allColaArmado; var proceso = await this.apiService.AddAllColaArmadoAsync(listaCola); if (!proceso.IsSuccess) { await Application.Current.MainPage.DisplayAlert( "Error", proceso.Message, "Accept"); await Application.Current.MainPage.Navigation.PopModalAsync(); } return; }
public async Task <Response> AddColaArmadoAsync(ColaArmadoPedidos itemPedido) { try { // string url = "http://192.168.10.111:82/api/ColaArmadoApi"; string url = "http://35.153.240.83:11444/PedidosApi/api/ColaArmadoApi/"; //POR AQUI //url = "http://localhost:56052/api/ColaArmadoApi/"; var uri = new Uri(string.Format(url, itemPedido)); var request = JsonConvert.SerializeObject(itemPedido); var content = new StringContent(request, Encoding.UTF8, "application/json"); HttpResponseMessage response = null; response = await client.PostAsync(uri, content); if (!response.IsSuccessStatusCode) { return(new Response { IsSuccess = false, Message = "Error al agregar pedido a la cola de armado", }); } return(new Response { IsSuccess = true, Message = "Cola Armado pedido actualizado con éxito.", }); } catch (Exception ex) { await Application.Current.MainPage.DisplayAlert( "Error al agregar pedido a la cola de armado", ex.ToString(), "Accept"); return(null); } }
public async void searchProduct() { if (string.IsNullOrEmpty(this.CCodBuscar)) { this.ArticulosBarras02 = new ObservableCollection <ArticuloBarras>(this.articulosBarras02); } else { string cBusca = this.CCodBuscar.ToString(); int nMultiplica = 1; int nPosicion = cBusca.IndexOf('*'); if (nPosicion > 0) { nMultiplica = Int32.Parse(cBusca.Substring(0, nPosicion)); string cBusca02 = cBusca.Substring(nPosicion + 1); cBusca = cBusca02; } var item = this.ArticulosBarras02.FirstOrDefault(p => p.codigobarra.Trim() == cBusca.Trim()); if (item == null) { await Application.Current.MainPage.DisplayAlert( "Código de producto introducido es incorrecto.", "", "Accept"); this.CCodBuscar = ""; return; } this.nCodigo = item.codigo; this.nFactor = item.factor * nMultiplica; var item02 = this.PedidoShow.FirstOrDefault(p => p.codigo == this.nCodigo); if (item02 == null) { await Application.Current.MainPage.DisplayAlert( "Error buscando producto.", "", "Accept"); this.CCodBuscar = ""; return; } if (item02.cantd == item02.cantdrec) { await Application.Current.MainPage.DisplayAlert( "Error, Pedido completo.", "", "Accept"); this.CCodBuscar = ""; return; } if ((this.nFactor > item02.cantd) || this.nFactor > (item02.cantd - item02.cantdrec)) { await Application.Current.MainPage.DisplayAlert( "Error, cantidad scaneada es superior a la requerida.", "", "Accept"); this.CCodBuscar = ""; return; } int nReg = PedidoShow.IndexOf(item02); //int nCode = this.PedidoShow[nReg].codigo; PedidoGet _item02 = new PedidoGet(); _item02.num = this.PedidoShow[nReg].num; _item02.codigo = this.nCodigo; _item02.cajasrec = this.PedidoShow[nReg].cajasrec + (item.cajas * nMultiplica); _item02.cajasc = this.PedidoShow[nReg].cajasc; _item02.cantd = this.PedidoShow[nReg].cantd; _item02.cantdrec = this.PedidoShow[nReg].cantdrec + this.nFactor; _item02.descrip = this.PedidoShow[nReg].descrip; _item02.idsector = this.PedidoShow[nReg].idsector; _item02.precio = this.PedidoShow[nReg].precio; _item02.username = this.PedidoShow[nReg].username; _item02.stock = this.PedidoShow[nReg].stock - 1; _item02.bultosrec = this.PedidoShow[nReg].bultosrec + (item.bultos * nMultiplica); _item02.idusuario = this.PedidoShow[nReg].idusuario; if (_item02.cantd == _item02.cantdrec) { this.nItem = this.nItem + 1; _item02.isCompleted = true; this.IsAceptEnabled = true; this.IsSearchEnabled = false; this.Completado = true; DateTime dFecha = DateTime.Now.ToLocalTime(); string cFec = dFecha.ToString(); // actualizar ColaArmadoPedidos yjs 140319 this.itemColaPedido = new ColaArmadoPedidos { cantidad = _item02.cantd, idArticulo = _item02.codigo, idPedido = _item02.num, idSector = _item02.idsector, idUsuario = _item02.idusuario, numItem = this.nItem, pickeado = _item02.cantdrec, status = 1, fechaStatus = dFecha }; } this.Ncantdrec = _item02.cantdrec; this.Ncantddif = _item02.cantd - _item02.cantdrec; var copy = new ObservableCollection <PedidoGet>(this.PedidoShow); foreach (var _item in copy) { if (_item.codigo == this.nCodigo) { this.PedidoShow.Remove(_item); break; } } this.PedidoShow.Add(_item02); this.PedidoShow = new ObservableCollection <PedidoGet>(this.PedidoShow.OrderBy(b => b.codigo)); this.PedidoList = new List <PedidoGet>(this.PedidoShow); // lista pata local db yjs 08012019 // await this.dataServices.DeleteAll(); // await this.dataServices.Insert(this.PedidoList); this.CCodBuscar = ""; //this.PedidoShow } }
private async void llenaVacio() { var item02 = this.PedidoShow.FirstOrDefault(p => p.codigo == this.Ncodigo); if (item02 == null) { await Application.Current.MainPage.DisplayAlert( "Error buscando producto.", "", "Accept"); this.CCodBuscar = ""; return; } int nReg = PedidoShow.IndexOf(item02); PedidoGet _item02 = new PedidoGet(); _item02.num = this.PedidoShow[nReg].num; _item02.codigo = this.Ncodigo; _item02.cajasrec = this.PedidoShow[nReg].cajasrec; _item02.cajasc = this.PedidoShow[nReg].cajasc; _item02.cantd = this.PedidoShow[nReg].cantd; _item02.cantdrec = this.PedidoShow[nReg].cantdrec; _item02.descrip = this.PedidoShow[nReg].descrip; _item02.idsector = this.PedidoShow[nReg].idsector; _item02.precio = this.PedidoShow[nReg].precio; _item02.username = this.PedidoShow[nReg].username; _item02.stock = this.PedidoShow[nReg].stock - 1; _item02.bultosrec = this.PedidoShow[nReg].bultosrec; _item02.idusuario = this.PedidoShow[nReg].idusuario; this.nItem = this.nItem + 1; _item02.isCompleted = true; this.IsAceptEnabled = true; this.IsSearchEnabled = false; this.Completado = true; // actualizar ColaArmadoPedidos yjs 180319 DateTime dFecha = DateTime.Now; this.itemColaPedido = new ColaArmadoPedidos { cantidad = _item02.cantdrec, idArticulo = _item02.codigo, idPedido = _item02.num, idSector = _item02.idsector, idUsuario = _item02.idusuario, numItem = this.nItem, pickeado = _item02.cantdrec, status = 1, fechaStatus = dFecha }; // actualizar como procesado en PedidosShow yjs 190319 var copy = new ObservableCollection <PedidoGet>(this.PedidoShow); foreach (var _item in copy) { if (_item.codigo == this.Ncodigo) { this.PedidoShow.Remove(_item); break; } } this.PedidoShow.Add(_item02); return; }
private async void Procesar() { if (!this.Completado) { await Application.Current.MainPage.DisplayAlert( "", "Artículo no ha sido pickeado por completo.", "Accept"); return; } if (this.itemColaPedido == null || (this.itemColaPedido.idArticulo == 0 && this.itemColaPedido.pickeado == 0)) // stock incompleto { this.llenaVacio(); } var proceso = await this.apiService.UpdateColaArmadoAsync(this.itemColaPedido); // MARCAR COMO PROCESADO, ACTUALIZAR EL PRODUCTO DE LA COLA YJS140319/260319 if (!proceso.IsSuccess) { await Application.Current.MainPage.DisplayAlert( "Error", proceso.Message, "Accept"); } this.itemColaPedido = new ColaArmadoPedidos(); // vaciar la cola yjs 200319 var itemnext = this.PedidoShow.FirstOrDefault(p => p.isCompleted == false); if (itemnext == null) { var pedidosListViewModel = PedidosListViewModel.GetInstance(); pedidosListViewModel.pedidosShow02 = new ObservableCollection <PedidosShowItemViewModel>( pedidosListViewModel.pedidosShow02.Where(b => b.num != this.num)); pedidosListViewModel.PedidosShow = new ObservableCollection <PedidosShowItemViewModel>( pedidosListViewModel.pedidosShow.Where(b => b.num != this.num)); pedidosListViewModel.Filter = ""; // await this.dataServices.DeleteAll(); await Application.Current.MainPage.DisplayAlert( "", "Pedido ha sido pickeado por completo.", "Accept"); await Application.Current.MainPage.Navigation.PopModalAsync(); return; } this.Cidsector = itemnext.idsector; this.Ncodigo = itemnext.codigo; this.Cnompro = itemnext.descrip; this.Ncantd = itemnext.cantd; this.Ncantdrec = itemnext.cantdrec; this.Ncantddif = itemnext.cantd - itemnext.cantdrec; this.IsAceptEnabled = true; this.IsSearchEnabled = true; this.Completado = false; this.ArticulosBarras02 = new ObservableCollection <ArticuloBarras>(); var oInicial = this.ArticulosBarras.FirstOrDefault(p => p.codigo == this.Ncodigo); var nFirstCodigo = oInicial.codigo; var copy = new ObservableCollection <ArticuloBarras>(this.ArticulosBarras); foreach (var _item in copy) { if (_item.codigo == nFirstCodigo) { this.ArticulosBarras02.Add(_item); } } return; }