/// <summary> /// Obtem um pedido e converte em Model /// </summary> /// <param name="id"></param> /// <param name="model"></param> /// <param name="mensagemErro"></param> /// <returns></returns> private bool ObterPedido(Guid id, ref PedidoModel model, ref string mensagemErro) { //Preparar a requisição e o retorno RetornoObterDto <PedidoDto> retorno = new RetornoObterDto <PedidoDto>(); RequisicaoObterDto requisicaoDto = new RequisicaoObterDto() { Id = id, Identificacao = SessaoUsuario.SessaoLogin.Identificacao, IdUsuario = SessaoUsuario.SessaoLogin.IdUsuario }; //Consumir o serviço PedidoBll pedidoBll = new PedidoBll(true); pedidoBll.Obter(requisicaoDto, ref retorno); //Tratar o retorno if (retorno.Retorno == false) { mensagemErro = retorno.Mensagem; return(false); } else { //Converter para Model return(model.ConverterDtoParaModel(retorno.Entidade, ref mensagemErro)); } }
protected void gvPedidos_RowCommand(object sender, GridViewCommandEventArgs e) { if (e.CommandName.Equals("Alterar")) { int Linha = int.Parse(e.CommandArgument.ToString()); int ID = int.TryParse(gvPedidos.Rows[Linha].Cells[0].Text, out ID) ? ID : 0; try { PedidoBll PedidoBll = new PedidoBll(); ProdutoBll ProdutoBll = new ProdutoBll(); Pedido Pedido = PedidoBll.RetornarPedido(ID); hfID.Value = Pedido.ID.ToString(); txtDocumento.Text = Pedido.Documento; txtDataEntrega.Text = string.Format("{0:dd/MM/yyyy}", Pedido.DataEntrega); var Produtos = ProdutoBll.RetornarPedidoProdutos(Pedido.ID); gvProdutos.DataSource = Produtos; gvProdutos.DataBind(); ViewState["Produtos"] = Produtos.ToDataTable(); } catch (Exception ex) { Msg.Erro(Resource.ContateAdminstrador, this); } } }
public void cadastrarPedido(int codSolicitacao, string materiaisFornecedores) { SolicitacaoMateriais objSolicitacao = FactoryClasses.criarSolicitacaoMateriais(); objSolicitacao.Codigo = codSolicitacao; PedidoBll objPedidoBll = FactoryBll.criarPedidoBll(); objPedidoBll.cadastrarPedido(objSolicitacao, materiaisFornecedores); }
/// <summary> /// Obtem uma listra filtrada de pedidos /// </summary> /// <param name="filtros"></param> /// <returns></returns> public string ObterListaFiltrada(FiltrosPedidoModel filtros) { //Requisição para obter a lista RequisicaoObterListaDto requisicaoDto = new RequisicaoObterListaDto() { CampoOrdem = "DATAINCLUSAO", IdUsuario = SessaoUsuario.SessaoLogin.IdUsuario, Identificacao = SessaoUsuario.SessaoLogin.Identificacao, NaoPaginarPesquisa = filtros.NaoPaginaPesquisa, Pagina = filtros.Pagina, NumeroItensPorPagina = 20 }; //Adicionar filtros utilizados if (filtros.IdCliente != Guid.Empty && filtros.IdCliente != null) { requisicaoDto.ListaFiltros.Add("IDCLIENTE", filtros.IdCliente.ToString()); } if (filtros.Tipo != TipoPedido.NaoIdentificado) { requisicaoDto.ListaFiltros.Add("TIPO", ((int)filtros.Tipo).ToString()); } if (filtros.Total > 0) { requisicaoDto.ListaFiltros.Add("TOTAL", filtros.Total.ToString()); } if (!string.IsNullOrWhiteSpace(filtros.ObterInativos)) { requisicaoDto.ListaFiltros.Add("INATIVO", filtros.ObterInativos.Trim()); } if (!string.IsNullOrWhiteSpace(filtros.PedidoIfood)) { requisicaoDto.ListaFiltros.Add("PEDIDOIFOOD", filtros.PedidoIfood); } requisicaoDto.ListaFiltros.Add("DATAINCLUSAOINICIO", filtros.DataInicio.Date.ToString()); requisicaoDto.ListaFiltros.Add("DATAINCLUSAOFIM", filtros.DataFim.Date.ToString()); //Consumir o serviço PedidoBll pedidoBll = new PedidoBll(true); RetornoObterListaDto <PedidoDto> retornoDto = new RetornoObterListaDto <PedidoDto>(); pedidoBll.ObterListaFiltrada(requisicaoDto, ref retornoDto); // o java script converte o fuso horário retornoDto.ListaEntidades.ForEach(p => p.DataInclusao = p.DataInclusao.AddHours(-4)); string retorno = new JavaScriptSerializer().Serialize(retornoDto); return(retorno); }
public ActionResult CancelarPedido(ExclusaoModel model) { //Se não tiver login, encaminhar para a tela de login if (string.IsNullOrWhiteSpace(SessaoUsuario.SessaoLogin.Identificacao)) { return(RedirectToAction("Login", "Usuario")); } if (!SessaoUsuario.SessaoLogin.Administrador) { ViewBag.MensagemErro = "Para estornar um pedido é necessário " + $"logar com um usuário administrador."; return(View("SemPermissao")); } if (string.IsNullOrWhiteSpace(model.Justificativa)) { ModelState.AddModelError("", "Preencha uma justificativa para o estorno do pedido."); return(View("Cancelar", model)); } //Preparar requisição e retorno RetornoDto retorno = new RetornoDto(); RequisicaoCancelarPedidoDto requisicaoDto = new RequisicaoCancelarPedidoDto() { Id = model.Id, Identificacao = SessaoUsuario.SessaoLogin.Identificacao, IdUsuario = SessaoUsuario.SessaoLogin.IdUsuario, Justificativa = model.Justificativa }; //Consumir o serviço PedidoBll pedidoBll = new PedidoBll(true); pedidoBll.CancelarPedido(requisicaoDto, ref retorno); //Tratar o retorno if (retorno.Retorno == false) { ModelState.AddModelError("", retorno.Mensagem); return(View("Cancelar", model)); } TempData["Retorno"] = "ESTORNADO"; //Voltar para a index de pedido return(RedirectToAction("Index")); }
private void BindarGrid() { try { PedidoBll PedidoBll = new PedidoBll(); List <Pedido> Pedidos = PedidoBll.RetornarPedidosCliente(1); gvPedidos.DataSource = Pedidos; gvPedidos.DataBind(); ViewState["Produtos"] = Pedidos.ToDataTable(); } catch (Exception ex) { Msg.Erro(Resource.ContateAdminstrador, this); } }
public void CrudPedidoSimples() { RequisicaoEntidadeDto <PedidoDto> requisicaoDto = new RequisicaoEntidadeDto <PedidoDto>() { EntidadeDto = RetornarNovoPedidoSimples() }; Assert.IsTrue(Utilidades.RetornarAutenticacaoRequisicaoPreenchida(requisicaoDto)); PedidoBll pedidoBll = new PedidoBll(true); // Incluir pedido RetornoDto retornoDto = new RetornoDto(); pedidoBll.Incluir(requisicaoDto, ref retornoDto); Assert.AreEqual(true, retornoDto.Retorno); RetornoObterDto <PedidoDto> retornoObterDto = new RetornoObterDto <PedidoDto>(); RequisicaoObterDto requisicaoObterDto = new RequisicaoObterDto() { Id = requisicaoDto.EntidadeDto.Id, IdUsuario = requisicaoDto.IdUsuario, Identificacao = requisicaoDto.Identificacao }; // Obter pedido pedidoBll.Obter(requisicaoObterDto, ref retornoObterDto); Assert.AreEqual(true, retornoObterDto.Retorno); requisicaoDto.EntidadeDto = retornoObterDto.Entidade; requisicaoDto.EntidadeDto.ListaItens[0].PrecoProduto = 28; requisicaoDto.EntidadeDto.ListaItens.RemoveAt(1); requisicaoDto.EntidadeDto.Total = 28; requisicaoDto.EntidadeDto.RecebidoDebito = 28; requisicaoDto.EntidadeDto.RecebidoDinheiro = 0; // Editar pedido retornoDto = new RetornoDto(); pedidoBll.Editar(requisicaoDto, ref retornoDto); Assert.AreEqual(true, retornoDto.Retorno); // Excluir pedido retornoDto = new RetornoDto(); pedidoBll.Excluir(requisicaoObterDto, ref retornoDto); Assert.AreEqual(true, retornoDto.Retorno); }
/// <summary> /// Obtem uma listra filtrada de pedidos /// </summary> /// <param name="filtros"></param> /// <returns></returns> public string ObterPedidoResumido(Guid idPedido) { //Requisição para obter RequisicaoObterDto requisicaoDto = new RequisicaoObterDto() { IdUsuario = SessaoUsuario.SessaoLogin.IdUsuario, Identificacao = SessaoUsuario.SessaoLogin.Identificacao, Id = idPedido }; //Consumir o serviço PedidoBll pedidoBll = new PedidoBll(true); RetornoObterDto <PedidoResumidoDto> retornoDto = new RetornoObterDto <PedidoResumidoDto>(); pedidoBll.ObterPedidoResumido(requisicaoDto, ref retornoDto); string retorno = new JavaScriptSerializer().Serialize(retornoDto); return(retorno); }
private void BindarGrid() { try { DateTime DataInicial = DateTime.TryParse(txtDataInicialFiltro.Text, out DataInicial) ? DataInicial : DateTime.MinValue; DateTime DataFinal = DateTime.TryParse(txtDataFinalFiltro.Text, out DataFinal) ? DataFinal : DateTime.MinValue; StatusPedido StatusPedido = (StatusPedido)int.Parse(ddlCliente.SelectedValue); PedidoBll PedidoBll = new PedidoBll(); IList <Pedido> Pedidos = PedidoBll.BuscarPedidosUsuario(this.User.Identity.Name, txtDocumentoFiltro.Text, DataInicial, DataFinal, StatusPedido); gvPedidos.DataSource = Pedidos; gvPedidos.DataBind(); ViewState["Produtos"] = Pedidos.ToDataTable(); } catch (Exception ex) { Msg.Erro(Resource.ContateAdminstrador, this); } }
public Collection <Pedido> listarPedidos() { PedidoBll objPedidoBll = FactoryBll.criarPedidoBll(); return(objPedidoBll.listarPedidos()); }
public ActionResult Incluir(PedidoModel model) { //Se não tiver login, encaminhar para a tela de login if (string.IsNullOrWhiteSpace(SessaoUsuario.SessaoLogin.Identificacao)) { return(RedirectToAction("Login", "Usuario")); } ModelState.Where(p => p.Key.Contains("Entrega.ClienteEndereco.")).Select(p => p.Key).ToList().ForEach(p => ModelState.Remove(p)); ModelState.Where(p => p.Key.Contains("Cliente.")).Select(p => p.Key).ToList().ForEach(p => ModelState.Remove(p)); ModelState.Where(p => p.Key.Contains("ListaItens")).Select(p => p.Key).ToList().ForEach(p => ModelState.Remove(p)); //Validar a model recebida if (!ModelState.IsValid) { return(View(model)); } string mensagemErro = ""; if (!PrepararCadastros(ref model, ref mensagemErro)) { ModelState.AddModelError("", mensagemErro); return(View(model)); } //Converter para DTO PedidoDto pedidoDto = new PedidoDto(); if (!model.ConverterModelParaDto(ref pedidoDto, ref mensagemErro)) { ModelState.AddModelError("", $"Erro ao converter para Dto: {mensagemErro}"); return(View(model)); } pedidoDto.Id = Guid.NewGuid(); //Preparar requisição e retorno RetornoDto retorno = new RetornoDto(); RequisicaoEntidadeDto <PedidoDto> requisicaoDto = new RequisicaoEntidadeDto <PedidoDto>() { EntidadeDto = pedidoDto, Identificacao = SessaoUsuario.SessaoLogin.Identificacao, IdUsuario = SessaoUsuario.SessaoLogin.IdUsuario }; //Consumir o serviço PedidoBll pedidoBll = new PedidoBll(true); pedidoBll.Incluir(requisicaoDto, ref retorno); //Verificar o retorno if (retorno.Retorno == false) { //Se houver erro, exibir na tela de inclusão ModelState.AddModelError("", retorno.Mensagem); return(View(model)); } model.DataInclusao = DateTime.Now.AddHours(4); string impressao = ""; if (MontarImpressaoPedido(model, ref impressao)) { TempData["Impressao"] = impressao; } TempData["Retorno"] = "INCLUIDO"; //Retornar para index return(RedirectToAction("Index")); }
public ActionResult Editar(PedidoModel model) { //Se não tiver login, encaminhar para a tela de login if (string.IsNullOrWhiteSpace(SessaoUsuario.SessaoLogin.Identificacao)) { return(RedirectToAction("Login", "Usuario")); } ModelState.Where(p => p.Key.Contains("Entrega.ClienteEndereco.")).Select(p => p.Key).ToList().ForEach(p => ModelState.Remove(p)); ModelState.Where(p => p.Key.Contains("Cliente.")).Select(p => p.Key).ToList().ForEach(p => ModelState.Remove(p)); ModelState.Where(p => p.Key.Contains("ListaItens")).Select(p => p.Key).ToList().ForEach(p => ModelState.Remove(p)); //Valida a entidade recebida if (!ModelState.IsValid) { return(View(model)); } string mensagemErro = ""; if (!PrepararCadastros(ref model, ref mensagemErro)) { ModelState.AddModelError("", mensagemErro); return(View(model)); } //Converte para DTO PedidoDto pedidoDto = new PedidoDto(); if (!model.ConverterModelParaDto(ref pedidoDto, ref mensagemErro)) { ViewBag.MensagemErro = mensagemErro; return(View("Erro")); } //Preparar requisição e retorno RetornoDto retorno = new RetornoDto(); RequisicaoEntidadeDto <PedidoDto> requisicaoDto = new RequisicaoEntidadeDto <PedidoDto>() { EntidadeDto = pedidoDto, Identificacao = SessaoUsuario.SessaoLogin.Identificacao, IdUsuario = SessaoUsuario.SessaoLogin.IdUsuario }; //Consumir o serviço PedidoBll pedidoBll = new PedidoBll(true); pedidoBll.Editar(requisicaoDto, ref retorno); //Tratar o retorno if (retorno.Retorno == false) { ModelState.AddModelError("", retorno.Mensagem); return(View(model)); } TempData["Retorno"] = "ALTERADO"; //Voltar para o visualizar do pedido return(RedirectToAction("Index")); }