예제 #1
0
        private async void btnRetirada_Clicked(object sender, EventArgs e)
        {
            try
            {
                var          button  = sender as Button;
                var          produto = button.BindingContext as Produto;
                PromptResult result  = await UserDialogs.Instance.PromptAsync($"Quantidade Atual: {produto.quantidade}", $"{produto.nome}", "Retirar", "Cancelar", "Quantidade a retirar", InputType.Number);

                if (result.Ok && !String.IsNullOrWhiteSpace(result.Text))
                {
                    if (Convert.ToInt32(result.Text) < produto.quantidade)
                    {
                        ProdutoDAO query = new ProdutoDAO();
                        query.retirar(produto, Convert.ToInt32(result.Text));
                        RetiradaDAO _query = new RetiradaDAO();
                        _query.retirada(getRetirada(produto, Convert.ToInt32(result.Text)));
                        await DisplayAlert("Confirmação", "Retirada feita com sucesso", "Ok");

                        carregaList();
                    }
                    else
                    {
                        await DisplayAlert("Aviso", "Não é possui efetuar a retirada\n valor solicitado é maior do que o disponível", "Ok");
                    }
                }
                else if (result.Ok && string.IsNullOrWhiteSpace(result.Text))
                {
                    await DisplayAlert("Aviso", "Digite um valor a ser inserido.", "Ok");
                }
            }
            catch (Exception ex)
            {
                await DisplayAlert("Erro", ex.Message, "Ok");
            }
        }
예제 #2
0
        private async void ContentPage_Appearing(object sender, EventArgs e)
        {
            try
            {
                IsLoading = true;
                await Task.Delay(300);

                //RELATÓRIO DAS ULTIMAS 5 ENTRADAS
                EntradaDAO entrada = new EntradaDAO();
                if (entrada.GetLastFive().Count > 0)
                {
                    ltvEntradas.ItemsSource = entrada.GetLastFive();
                }

                //RELATÓRIO DAS ULTIMAS 5 SAIDAS
                RetiradaDAO retirada = new RetiradaDAO();
                if (retirada.GetLastFive().Count > 0)
                {
                    ltvSaidas.ItemsSource = retirada.GetLastFive();
                }


                ProdutoDAO produtos = new ProdutoDAO();
                //RELATÓRIO MICROCHARTS TOPS PRODUTO
                if (produtos.Relatorio1().Count() > 0)
                {
                    TopProduto.Chart = new Microcharts.RadialGaugeChart {
                        Entries = produtos.Relatorio1().OrderBy(x => x.ValueLabel).ToList()
                    };
                    TopProduto.Chart.LabelTextSize = 25;
                    TopProduto.HeightRequest       = 200;
                }
                //RELATÓRIO MICROCHARTS MIN PRODUTO
                if (produtos.Relatorio2().Count() > 0)
                {
                    MinProduto.Chart = new Microcharts.BarChart {
                        Entries = produtos.Relatorio2().OrderBy(x => x.ValueLabel).ToList()
                    };
                    MinProduto.Chart.LabelTextSize = 25;
                    MinProduto.HeightRequest       = 200;
                }

                //FRAME CONTADORES
                produtosCadastrados.Text = $"Totas de itens cadastrados: {Convert.ToString(produtos.listaProduto().Count)}";
                totalItens.Text          = $"Total de itens em estoque: {Convert.ToString(produtos.listaProduto().Sum(x => x.quantidade))}";
                totalEntradas.Text       = $"Total de Entradas: {Convert.ToString(entrada.GetAll().ToList().Count)}";
                totalRetiradas.Text      = $"Total de retiradas: {Convert.ToString(retirada.GetAll().Count)}";
                isLoading = false;
            }catch (Exception ex)
            {
                await DisplayAlert("Erro", "Erro de banco de dados: " + ex.Message, "Ok");
            }
            finally
            {
                isLoading = false;
            }
        }