Esempio n. 1
0
        private async void CarregarDados()
        {
            using (var objDialog = UserDialogs.Instance.Loading("Carregando..."))
            {
                await Task.Delay(2000);
            }

            ListaItens          = new ObservableCollection <ItemLancamento>();
            lstView.ItemsSource = ListaItens;

            try
            {
                ApiCamareiraFacil api = new ApiCamareiraFacil();
                produtos = api.GetItensPDV(app.getAcessKey("SETOR"));
                pckProdutos.ItemsSource = produtos;

                apartamentos = api.GetApartamentosOcupados().Where(w => w.Situacao.Equals("O")).ToList();
                pckApartamentos.ItemsSource = apartamentos;

                pontos = api.GetPDVs();
                pckPontoVenda.ItemsSource = pontos;
                for (int i = 0; i < pontos.Count; i++)
                {
                    if (pontos[i].Codigo == app.getAcessKey("SETOR"))
                    {
                        pckPontoVenda.SelectedIndex = i;
                    }
                }
            }
            catch (Exception E)
            {
                await DisplayAlert("Erro", "Erro: " + E.Message, "OK");
            }
        }
        public ApiCamareiraFacil()
        {
            if (!CrossConnectivity.Current.IsConnected)
            {
                throw new System.ArgumentException("Sem Conectividade", "Erro");
            }

            ap = new AppPreferences(Forms.Context);

            BaseURL        = ap.getAcessKey("IP") + ":" + ap.getAcessKey("PORTA");
            BaseURLConsumo = BaseURL + "/datasnap/rest/TCamareiraFacilApi/LancaConsumo";
        }
        private async void Button_Clicked(object sender, EventArgs e)
        {
            Recado recado = new Recado
            {
                Assunto      = edtAssunto.Text,
                Cod_Emp      = "001",
                Descricao    = edtMensagem.Text,
                Destinatario = funcionario.Codigo,
                Data_Cad     = DateTime.Now,
                Hora         = DateTime.Now.ToString("HH:mm:ss"),
                Remetente    = app.getAcessKey("CODUSUARIO")
            };

            ApiCamareiraFacil api = new ApiCamareiraFacil();

            if (!await api.GravaRecado(recado))
            {
                await DisplayAlert("Recado", "Não foi possível gravar recado", "OK");
            }
            else
            {
                await DisplayAlert("Recado", "Recado enviado com sucesso!", "OK");

                await Navigation.PopAsync().ConfigureAwait(false);
            }
        }
        private void btnGravar_Clicked(object sender, EventArgs e)
        {
            appp.saveAcessKey("IP", edtIp.Text);
            appp.saveAcessKey("PORTA", edtPorta.Text);
            if (pdv == null)
            {
                DisplayAlert("Alerta", "Informe o PDV padrão", "OK");
                ApiCamareiraFacil api_ = new ApiCamareiraFacil();
                listaSetores = api_.GetPDVs();
                if (listaSetores != null)
                {
                    pckSetor.ItemsSource = listaSetores;
                }
                else
                {
                    DisplayAlert("Alerta", "Lista de PDVs vazia. Verifique o caminho do servidor", "OK");
                }
                return;
            }
            appp.saveAcessKey("SETOR", pdv.Codigo);

            if (appp.getAcessKey("CONFIGURADO") == "")
            {
                appp.saveAcessKey("CONFIGURADO", "SIM");

                Page original = App.Current.MainPage.Navigation.NavigationStack.Last();
                App.Current.MainPage.Navigation.PopAsync().ConfigureAwait(false);
                App.Current.MainPage.Navigation.PushAsync(new Login());
                App.Current.MainPage.Navigation.RemovePage(original);
            }
            else
            {
                Navigation.PopAsync().ConfigureAwait(false);
            }
        }
        public List <ItemPDV> GetItensPDV(string pdv)
        {
            try
            {
                //TODO: Alterar para o setor
                string prsPdv     = ap.getAcessKey("SETOR"); // "0007";
                var    httpClient = new HttpClient();
                httpClient.BaseAddress = new Uri(BaseURL);
                httpClient.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));

                HttpResponseMessage response = httpClient.GetAsync("datasnap/rest/TCamareiraFacilApi/BuscarItensPDVsPorPDV/" + prsPdv).Result;

                if (response.IsSuccessStatusCode)
                {
                    var teste = response.Content.ReadAsStringAsync().Result;

                    var resultado = JsonConvert.DeserializeObject <DataSnapResponse <List <ItemPDV> > >(teste);

                    return(resultado.result);
                }
                return(null);
            }
            catch (Exception e)
            {
                throw e;
            }
        }
        private async void btnIniciar_Clicked(object sender, EventArgs e)
        {
            try
            {
                if (pckApartamentos.SelectedIndex == -1)
                {
                    await DisplayAlert("Alerta", "Informe o apartamento.", "OK");

                    return;
                }

                Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("pt-BR");
                ApiCamareiraFacil api    = new ApiCamareiraFacil();
                Faxina            faxina = new Faxina
                {
                    Cod_emp       = "001",
                    Operador      = app.getAcessKey("USUARIO"),
                    Historico     = "Faxina",
                    Hora          = DateTime.Now.ToLongTimeString(),
                    NApto         = apartamento.NApto,
                    Hora_Inicial  = DateTime.Now.ToLongTimeString(),
                    Cod_Camareira = app.getAcessKey("CODUSUARIO")
                };

                UserDialogs.Instance.ShowLoading("Gravando...", MaskType.Clear);
                if (!await api.ComecaFaxina(faxina))
                {
                    UserDialogs.Instance.HideLoading();
                    await DisplayAlert("Erro", "Não foi possivel começar faxina", "OK");
                }
                else
                {
                    UserDialogs.Instance.HideLoading();
                    await DisplayAlert("Sucesso", "Gravado com sucesso!", "OK");

                    await Navigation.PopAsync().ConfigureAwait(false);
                }
            }
            catch (Exception ex)
            {
                UserDialogs.Instance.HideLoading();
                await DisplayAlert("Erro", "Ocorreu um erro ao gravar as informações. " + ex.Message, "OK");
            }
        }
        private async void Button_Clicked(object sender, EventArgs e)
        {
            using (var objDialog = UserDialogs.Instance.Loading("Aguarde. Gravando dados..."))
            {
                await Task.Delay(2000);
            }

            if (pckApartamentos.SelectedIndex == -1)
            {
                DisplayAlert("Aviso", "Falta informar o local da manutenção!", "OK");
                return;
            }

            OrdemServico ordemServico = new OrdemServico
            {
                Cod_Emp             = "001",
                Data_Cad            = DateTime.Now,
                Descricao           = edtMensagem.Text,
                Hora                = DateTime.Now.ToString("HH:mm:ss"),
                Operador            = app.getAcessKey("USUARIO"),
                Remetente           = app.getAcessKey("USUARIO"),
                Status              = "A",
                Setor               = locais.Descricao,
                Cod_LocalManutencao = locais.Codigo
            };

            ApiCamareiraFacil api = new ApiCamareiraFacil();

            if (!await api.GravaOrdemServico(ordemServico))
            {
                DisplayAlert("Alerta", "Não foi possível gravar a Ordem de Serviço", "OK");
            }
            else
            {
                DisplayAlert("Informação", "Gravado com sucesso!", "OK");
                await Navigation.PopAsync().ConfigureAwait(false);
            }
        }
        public App()
        {
            InitializeComponent();

            AppPreferences appp = new AppPreferences(Forms.Context);

            if (appp.getAcessKey("CONFIGURADO") != "")
            {
                MainPage = new NavigationPage(new Login());
            }
            else
            {
                MainPage = new NavigationPage(new Configuracao());
            }
        }
        public Configuracao()
        {
            InitializeComponent();

            appp = new AppPreferences(Forms.Context);

            edtIp.Text    = (appp.getAcessKey("IP") != "" ? appp.getAcessKey("IP") : "");
            edtPorta.Text = (appp.getAcessKey("PORTA") != "" ? appp.getAcessKey("PORTA") : "");

            if (appp.getAcessKey("SETOR") != "" && appp.getAcessKey("CONFIGURADO") != "")
            {
                ApiCamareiraFacil api = new ApiCamareiraFacil();
                listaSetores         = api.GetPDVs();
                pckSetor.ItemsSource = listaSetores;
                for (int i = 0; i < listaSetores.Count; i++)
                {
                    if (listaSetores[i].Codigo == appp.getAcessKey("SETOR"))
                    {
                        pckSetor.SelectedIndex = i;
                    }
                }
            }
        }