Exemplo n.º 1
0
        public ActionResult Create(int idMontagem)
        {
            var montagem = repositorioMontagem.Recuperar(idMontagem);

            ViewBag.Montagem = montagem;
            var avaliacaoView = new AvaliacaoView();

            return(View(avaliacaoView));
        }
Exemplo n.º 2
0
        public ActionResult Delete(int idMontagem, int idAvaliacao)
        {
            var montagem = repositorioMontagem.Recuperar(idMontagem);

            ViewBag.Montagem = montagem;
            var avaliacaoView = new AvaliacaoView();

            var avaliacao = repositorioAvaliacao.Recuperar(idAvaliacao);

            avaliacaoView.DataComentario     = avaliacao.DataComentario;
            avaliacaoView.QuantidadeEstrelas = avaliacao.QuantidadeEstrelas;

            return(View(avaliacaoView));
        }
Exemplo n.º 3
0
        public async Task <ActionResult <Avaliacao> > PostAvaliacao(AvaliacaoView avaliacao)
        {
            var a = new Avaliacao()
            {
                Nota        = avaliacao.Nota,
                Comentario  = avaliacao.Comentario,
                Pedido      = await _pedido.BuscarAsync(avaliacao.Pedido.Id),
                Restaurante = await _restaurante.BuscarAsync(avaliacao.RestauranteID),
                Cliente     = await _cliente.BuscarAsync(avaliacao.ClienteID),
            };
            var resultado = await _service.AdicionarAsync(a);

            return(CreatedAtAction("GetAvaliacao", new { id = resultado.Id }));
        }
Exemplo n.º 4
0
        public ActionResult Edit(int idMontagem, int idAvaliacao, AvaliacaoView avaliacaoView)
        {
            var montagem  = repositorioMontagem.Recuperar(idMontagem);
            var avaliacao = repositorioAvaliacao.Recuperar(idAvaliacao);

            avaliacao.QuantidadeEstrelas = avaliacaoView.QuantidadeEstrelas;

            if (TryUpdateModel(avaliacao))
            {
                repositorioMontagem.Atualizar(montagem);
                repositorioMontagem.Salvar();
                return(RedirectToAction("Index", new { idMontagem = idMontagem }));
            }
            return(View(avaliacaoView));
        }
Exemplo n.º 5
0
        public ActionResult Create(int idMontagem, AvaliacaoView avaliacaoView)
        {
            Avaliacao avaliacao = new Avaliacao();

            if (ModelState.IsValid)
            {
                var montagem = repositorioMontagem.Recuperar(idMontagem);

                avaliacao.DataComentario     = DateTime.Now;
                avaliacao.QuantidadeEstrelas = avaliacaoView.QuantidadeEstrelas;

                montagem.Avaliacoes.Add(avaliacao);
                repositorioMontagem.Atualizar(montagem);
                repositorioMontagem.Salvar();
                ViewBag.Montagem = montagem;
                return(RedirectToAction("Index", new { idMontagem = idMontagem }));
            }
            return(View(avaliacao));
        }
Exemplo n.º 6
0
        public async Task <ActionResult> Avaliar([FromForm] string nota, string comentario, string pedido)
        {
            if (!ModelState.IsValid)
            {
                return(NotFound());
            }

            var avaliacao = new AvaliacaoView()
            {
                Nota       = Int32.Parse(nota),
                Comentario = comentario,
            };

            var email = _contextAccessor.HttpContext.User.Identity.Name;
            var user  = _context.Users.FirstOrDefault(u => u.UserName == email);



            using (var httpClient = new HttpClient())
            {
                var url = _configuration["UrlAPICliente:UrlBase"] + $"/Pedidos/{pedido}";
                using var resposta = await httpClient.GetAsync(url);

                string apiResposta = await resposta.Content.ReadAsStringAsync();

                var p = JsonConvert.DeserializeObject <PedidoView>(apiResposta);

                avaliacao.ClienteID     = Guid.Parse(user.Id);
                avaliacao.RestauranteID = p.Restaurante;
                avaliacao.Pedido        = p;

                StringContent content = new StringContent(JsonConvert.SerializeObject(avaliacao), Encoding.UTF8, "application/json");
                url         = _configuration["UrlAPICliente:UrlBase"] + $"/Avaliacoes";
                using var t = await httpClient.PostAsync(url, content);

                string apir = await t.Content.ReadAsStringAsync();

                avaliacao = JsonConvert.DeserializeObject <AvaliacaoView>(apir);
            }

            return(RedirectToAction("Index", "PaginaInicial"));
        }
Exemplo n.º 7
0
        public async Task <IActionResult> FecharTicket([FromHeader] string autorToken, [FromBody] AvaliacaoView Avaliacao)
        {
            var Core   = new TicketCore(_contexto);
            var result = await Core.FecharTicket(autorToken, Avaliacao);

            return(result.Status ? Ok(result) : Ok(result));
        }
Exemplo n.º 8
0
        private void inicializarComponente()
        {
            _StatusLabel = new Label
            {
                Style                 = Estilo.Current[Estilo.TITULO2],
                Margin                = 10,
                TextColor             = Color.White,
                HeightRequest         = 28,
                VerticalTextAlignment = TextAlignment.Center
            };
            _OrigemDestinoLabel = new Label
            {
                Style = Estilo.Current[Estilo.LABEL_CONTROL]
            };
            _Caminhoneiro = new Label
            {
                Style = Estilo.Current[Estilo.LABEL_CONTROL]
            };
            _DataCriacao = new Label
            {
                Style = Estilo.Current[Estilo.LABEL_CONTROL]
            };
            _DataRetirada = new Label
            {
                Style = Estilo.Current[Estilo.LABEL_CONTROL]
            };
            _DataConclusao = new Label
            {
                Style = Estilo.Current[Estilo.LABEL_CONTROL],
            };
            _Fretista = new Label
            {
                Style = Estilo.Current[Estilo.LABEL_CONTROL],
                Text  = "Fretista: ***************"
            };
            _ContatoFretista = new Label
            {
                Style = Estilo.Current[Estilo.LABEL_CONTROL],
                Text  = "Número fretista: (**) ***** - ****"
            };
            _Definicao = new Label
            {
                Style = Estilo.Current[Estilo.TITULO2],
                Text  = "Deginição da carga"
            };
            _AvaliacaoTitulo = new Label
            {
                Style = Estilo.Current[Estilo.TITULO2],
                Text  = "Sua avaliação sobre o frete:"
            };
            _Carga = new Label
            {
                Style = Estilo.Current[Estilo.LABEL_CONTROL]
            };
            _Valor = new Label
            {
                Style = Estilo.Current[Estilo.LABEL_CONTROL]
            };

            _StatusLabel.SetBinding(Label.TextProperty, new Binding("SituacaoLblMaisCargas", stringFormat: " Status: {0} "));
            _StatusLabel.SetBinding(Label.BackgroundColorProperty, new Binding("CorSituacao"));
            _OrigemDestinoLabel.SetBinding(Label.TextProperty, new Binding("OrigemDestinoStr"));
            _Caminhoneiro.SetBinding(Label.TextProperty, new Binding("NomeMotorista", stringFormat: "Motorista: {0}"));
            _DataCriacao.SetBinding(Label.TextProperty, new Binding("DataInclusao", stringFormat: "Data criação: {0}"));
            _DataRetirada.SetBinding(Label.TextProperty, new Binding("DataRetiradaStr", stringFormat: "Data retirada: {0}"));
            _DataConclusao.SetBinding(Label.TextProperty, new Binding("DataEntregaLbl", stringFormat: "Data entrega: {0}"));
            _Carga.SetBinding(Label.TextProperty, new Binding("TituloFreteMotoristaLbl"));
            _Valor.SetBinding(Label.TextProperty, new Binding("Preco", stringFormat: "Valor pago: R$ {0:N}"));


            _VerHistorico = new Button()
            {
                Text = "Ver Histórico de posicionamento",
                HorizontalOptions = LayoutOptions.Fill,
                VerticalOptions   = LayoutOptions.Start,
                Style             = Estilo.Current[Estilo.BTN_PRINCIPAL],
                FontSize          = 12
            };
            _VerHistorico.Clicked += (sender, e) =>
            {
                ((RootPage)App.Current.MainPage).PushAsync(new FreteHistoricoPage((int)GetValue(_IdFrete)));
            };

            _AvaliacaoView = new AvaliacaoView(0);

            _Avaliar = new Button()
            {
                Text = "Avaliar o frete",
                HorizontalOptions = LayoutOptions.Fill,
                VerticalOptions   = LayoutOptions.Start,
                Style             = Estilo.Current[Estilo.BTN_PRINCIPAL],
                FontSize          = 12
            };
            _Avaliar.Clicked += (sender, e) =>
            {
                var avaliacaoPage = new AvaliarPage("Avalie como foi a sua experiência com este frete e o caminhoneiro que lhe atendeu o frete:");
                avaliacaoPage.Confirmed += async(object sender2, int e2) => {
                    //await new FreteBLL().avaliar((int)GetValue(_IdFrete), e2);
                    _AvaliacaoView.setAvaliacao(e2);
                };
                ((RootPage)App.Current.MainPage).PushAsync(avaliacaoPage);
            };

            _Editar = new Label
            {
                Text                    = "Toque para editar",
                TextColor               = Color.LightGray,
                HorizontalOptions       = LayoutOptions.Fill,
                HorizontalTextAlignment = TextAlignment.Center,
                Margin                  = new Thickness(0, 0, 0, 10)
            };
            _Editar.SetBinding(Label.IsVisibleProperty, new Binding("PodeEditar"));
        }