/// <summary> /// Obtem um produto e converte em Model /// </summary> /// <param name="id"></param> /// <param name="model"></param> /// <param name="mensagemErro"></param> /// <returns></returns> private bool ObterProduto(Guid id, ref ProdutoModel model, ref string mensagemErro) { //Preparar a requisição e o retorno RetornoObterDto <ProdutoDto> retorno = new RetornoObterDto <ProdutoDto>(); RequisicaoObterDto requisicaoDto = new RequisicaoObterDto() { Id = id, Identificacao = SessaoUsuario.SessaoLogin.Identificacao, IdUsuario = SessaoUsuario.SessaoLogin.IdUsuario }; //Consumir o serviço ProdutoBll produtoBll = new ProdutoBll(true); produtoBll.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); } } }
protected void gvProdutos_RowCommand(object sender, GridViewCommandEventArgs e) { if (e.CommandName.Equals("Alterar")) { int index = int.Parse(e.CommandArgument.ToString()); int ID = int.TryParse(gvProdutos.Rows[index].Cells[1].Text, out ID) ? ID : 0; try { ProdutoBll produtoBll = new ProdutoBll(); Produto produto = produtoBll.RetornaProduto(ID); txtID.Text = string.Format("{0:000000}", produto.ID); txtDescricao.Text = produto.Descricao; txtPrecoQuantidade.Text = string.Format("{0:C}", produto.PrecoQuantidade); txtPrecoUnitario.Text = string.Format("{0:C}", produto.PrecoUnitario); cbAtivo.Checked = produto.Ativo.Equals(1) ? true : false; hfTipoOperacao.Value = TipoOperacao.Update.ToString(); } catch (Exception ex) { LogBll.InserirLog(new Log { ItemID = ID, Login = User.Identity.Name, Mensagem = ex.Message, Operacao = TipoOperacao.Read.ToString(), Tabela = "Produto" }); Msg.Erro(Resource.ContateAdminstrador, this); } } }
private void LimparFormulario() { try { txtID.Text = string.Format("{0:000000}", ProdutoBll.RetornaNovoID()); } catch (Exception ex) { LogBll.InserirLog(new Log { Login = User.Identity.Name, Mensagem = ex.Message, Operacao = TipoOperacao.Read.ToString(), Tabela = "Produto" }); Msg.Erro(Resource.ContateAdminstrador, this); } ddlFornecedor.SelectedValue = "0"; txtDescricao.Text = string.Empty; txtPrecoQuantidade.Text = string.Empty; txtPrecoUnitario.Text = string.Empty; txtQuantidadeReposicao.Text = string.Empty; cbAtivo.Checked = true; hfTipoOperacao.Value = TipoOperacao.Create.ToString(); }
/// <summary> /// Obtem uma listra filtrada de produtos /// </summary> /// <param name="filtros"></param> /// <returns></returns> public string ObterListaFiltrada(FiltrosProdutoModel filtros) { //Requisição para obter a lista RequisicaoObterListaDto requisicaoDto = new RequisicaoObterListaDto() { CampoOrdem = string.IsNullOrWhiteSpace(filtros.CampoOrdenacao) ? "" : filtros.CampoOrdenacao.Trim(), IdUsuario = SessaoUsuario.SessaoLogin.IdUsuario, Identificacao = SessaoUsuario.SessaoLogin.Identificacao, NaoPaginarPesquisa = filtros.NaoPaginaPesquisa, Pagina = filtros.Pagina, NumeroItensPorPagina = (filtros.NumeroItensPagina == 0) ? 20 : filtros.NumeroItensPagina }; //Adicionar filtros utilizados if (!string.IsNullOrWhiteSpace(filtros.Descricao)) { requisicaoDto.ListaFiltros.Add("DESCRICAO", filtros.Descricao.Trim()); } if (!string.IsNullOrWhiteSpace(filtros.Detalhes)) { requisicaoDto.ListaFiltros.Add("DETALHES", filtros.Detalhes.Trim()); } if (filtros.PrecoInicial > 0) { requisicaoDto.ListaFiltros.Add("PRECOMAIOR", filtros.PrecoInicial.ToString()); } if (filtros.PrecoFinal > 0) { requisicaoDto.ListaFiltros.Add("PRECOMENOR", filtros.PrecoFinal.ToString()); } if (!string.IsNullOrWhiteSpace(filtros.ObterInativos)) { requisicaoDto.ListaFiltros.Add("INATIVO", filtros.ObterInativos.Trim()); } if (filtros.Tipo != TipoProduto.NaoIdentificado) { requisicaoDto.ListaFiltros.Add("TIPO", ((int)filtros.Tipo).ToString()); } //Consumir o serviço ProdutoBll produtoBll = new ProdutoBll(true); RetornoObterListaDto <ProdutoDto> retornoDto = new RetornoObterListaDto <ProdutoDto>(); produtoBll.ObterListaFiltrada(requisicaoDto, ref retornoDto); string retorno = new JavaScriptSerializer().Serialize(retornoDto); return(retorno); }
public ActionResult Incluir(ProdutoModel model) { //Se não tiver login, encaminhar para a tela de login if (string.IsNullOrWhiteSpace(SessaoUsuario.SessaoLogin.Identificacao)) { return(RedirectToAction("Login", "Usuario")); } //Validar a model recebida if (!ModelState.IsValid) { return(View(model)); } //Converter para DTO ProdutoDto produtoDto = new ProdutoDto(); string mensagemErro = ""; if (!model.ConverterModelParaDto(ref produtoDto, ref mensagemErro)) { ModelState.AddModelError("", $"Erro ao converter para Dto: {mensagemErro}"); return(View(model)); } produtoDto.Id = Guid.NewGuid(); //Preparar requisição e retorno RetornoDto retorno = new RetornoDto(); RequisicaoEntidadeDto <ProdutoDto> requisicaoDto = new RequisicaoEntidadeDto <ProdutoDto>() { EntidadeDto = produtoDto, Identificacao = SessaoUsuario.SessaoLogin.Identificacao, IdUsuario = SessaoUsuario.SessaoLogin.IdUsuario }; //Consumir o serviço ProdutoBll produtoBll = new ProdutoBll(true); produtoBll.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)); } TempData["Retorno"] = "INCLUIDO"; //Retornar para index return(RedirectToAction("Index")); }
protected void btnProduto_Click(object sender, EventArgs e) { double Quantidade = double.TryParse(txtQuantidadeProduto.Text, out Quantidade) ? Quantidade : 0; if (Quantidade.Equals(0)) { Msg.Info(Resource.QuantidadeMaiorZero, this); txtQuantidadeProduto.Focus(); } else if (!ddlProdutos.SelectedValue.Equals("0")) { ProdutoBll ProdutoBll = new ProdutoBll(); DataTable ProdutosTable = new DataTable(); if (ViewState["Produtos"] != null) { ProdutosTable = (DataTable)ViewState["Produtos"]; } else { ProdutosTable.Columns.Add("ID"); ProdutosTable.Columns.Add("produtoID"); ProdutosTable.Columns.Add("descricao"); ProdutosTable.Columns.Add("quantidade"); ProdutosTable.Columns.Add("total"); ProdutosTable.Columns.Add("precounitario"); } int ID = int.Parse(ddlProdutos.SelectedValue); double PrecoUnitario = double.TryParse(txtPrecoProduto.Text, out PrecoUnitario) ? PrecoUnitario : 0; Produto Produto = ProdutoBll.RetornaProduto(ID); double Total = Quantidade * PrecoUnitario; ProdutosTable.NewRow(); ProdutosTable.Rows.Add(0, Produto.ID, Produto.Descricao, string.Format("{0:N3}", Quantidade), string.Format("{0:N}", Total), PrecoUnitario); ViewState["Produtos"] = ProdutosTable; gvProdutos.DataSource = ProdutosTable; gvProdutos.DataBind(); LimparFormularioProduto(); } else { Msg.Info("Selecione um produto", this); } }
public void CrudProduto() { RequisicaoEntidadeDto <ProdutoDto> requisicaoDto = new RequisicaoEntidadeDto <ProdutoDto>() { EntidadeDto = RetornarNovoProduto() }; Assert.IsTrue(Utilidades.RetornarAutenticacaoRequisicaoPreenchida(requisicaoDto)); ProdutoBll produtoBll = new ProdutoBll(true); // Incluir RetornoDto retornoDto = new RetornoDto(); produtoBll.Incluir(requisicaoDto, ref retornoDto); Assert.AreEqual(true, retornoDto.Retorno); // Editar requisicaoDto.EntidadeDto.Descricao = "Produto atualizado " + DateTime.Now; produtoBll.Editar(requisicaoDto, ref retornoDto); Assert.AreEqual(true, retornoDto.Retorno); // Obter RetornoObterDto <ProdutoDto> retornoObterDto = new RetornoObterDto <ProdutoDto>(); RequisicaoObterDto requisicaoObterDto = new RequisicaoObterDto() { Id = requisicaoDto.EntidadeDto.Id, IdUsuario = requisicaoDto.IdUsuario, Identificacao = requisicaoDto.Identificacao }; produtoBll.Obter(requisicaoObterDto, ref retornoObterDto); Assert.AreEqual(true, retornoObterDto.Retorno); // Obter lista RequisicaoObterListaDto requisicaoObterListaDto = new RequisicaoObterListaDto() { CampoOrdem = "DESCRICAO", IdUsuario = requisicaoDto.IdUsuario, Identificacao = requisicaoDto.Identificacao, NumeroItensPorPagina = 2, Pagina = 1 }; RetornoObterListaDto <ProdutoDto> retornoObterListaDto = new RetornoObterListaDto <ProdutoDto>(); produtoBll.ObterListaFiltrada(requisicaoObterListaDto, ref retornoObterListaDto); Assert.AreEqual(true, retornoObterDto.Retorno); // Excluir produtoBll.Excluir(requisicaoObterDto, ref retornoDto); Assert.AreEqual(true, retornoObterDto.Retorno); }
public ActionResult Editar(ProdutoModel model) { //Se não tiver login, encaminhar para a tela de login if (string.IsNullOrWhiteSpace(SessaoUsuario.SessaoLogin.Identificacao)) { return(RedirectToAction("Login", "Usuario")); } //Valida a entidade recebida if (!ModelState.IsValid) { return(View(model)); } //Converte para DTO ProdutoDto produtoDto = new ProdutoDto(); string mensagemErro = ""; if (!model.ConverterModelParaDto(ref produtoDto, ref mensagemErro)) { ViewBag.MensagemErro = mensagemErro; return(View("Erro")); } //Preparar requisição e retorno RetornoDto retorno = new RetornoDto(); RequisicaoEntidadeDto <ProdutoDto> requisicaoDto = new RequisicaoEntidadeDto <ProdutoDto>() { EntidadeDto = produtoDto, Identificacao = SessaoUsuario.SessaoLogin.Identificacao, IdUsuario = SessaoUsuario.SessaoLogin.IdUsuario }; //Consumir o serviço ProdutoBll produtoBll = new ProdutoBll(true); produtoBll.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 produto return(RedirectToAction("Index")); }
private void AlterarProduto() { int ID = int.TryParse(txtID.Text, out ID) ? ID : 0; try { ProdutoBll produtoBll = new ProdutoBll(); Produto produto = produtoBll.RetornaProduto(ID); int fornecedorID = int.TryParse(ddlFornecedor.SelectedValue, out fornecedorID) ? fornecedorID : 0; decimal precoUnitario = decimal.TryParse(txtPrecoUnitario.Text, out precoUnitario) ? precoUnitario : 0; decimal precoQuantidade = decimal.TryParse(txtPrecoQuantidade.Text, out precoQuantidade) ? precoQuantidade : 0; decimal quantidadeReposicao = decimal.TryParse(txtQuantidadeReposicao.Text, out quantidadeReposicao) ? quantidadeReposicao : 0; produto.Ativo = cbAtivo.Checked; produto.Ativo = cbAtivo.Checked; produto.Descricao = txtDescricao.Text; //TODO: IMPLEMENTAR //produto.EmpresaID //produto.FornecedorID = fornecedorID; produto.PrecoQuantidade = precoQuantidade; produto.PrecoUnitario = precoUnitario; produtoBll.AlterarProduto(produto); LimparFormulario(); LogBll.InserirLog(new Log { ItemID = ID, Login = Context.User.Identity.Name, Operacao = TipoOperacao.Update.ToString(), Tabela = "Produto" }); Msg.Sucesso(Resource.ItemSalvoSucesso, this); } catch (Exception ex) { LogBll.InserirLog(new Log { ItemID = ID, Login = Context.User.Identity.Name, Mensagem = ex.Message, Operacao = TipoOperacao.Update.ToString(), Tabela = "Produto" }); Msg.Erro(Resource.ContateAdminstrador, this); } }
private void BindarProdutos() { try { ProdutoBll ProdutoBll = new ProdutoBll(); ddlProdutos.DataSource = ProdutoBll.RetornaProdutos(); ddlProdutos.DataTextField = "Descricao"; ddlProdutos.DataValueField = "ID"; ddlProdutos.DataBind(); ddlProdutos.Items.Insert(0, "Selecione"); ddlProdutos.Items[0].Value = "0"; } catch (Exception ex) { Msg.Erro(Resource.ContateAdminstrador, this); } }
public static ProdutoDto IncluirProdutoTeste() { RequisicaoEntidadeDto <ProdutoDto> requisicaoDto = new RequisicaoEntidadeDto <ProdutoDto>() { EntidadeDto = RetornarNovoProduto() }; Assert.IsTrue(Utilidades.RetornarAutenticacaoRequisicaoPreenchida(requisicaoDto)); ProdutoBll produtoBll = new ProdutoBll(true); // Incluir RetornoDto retornoDto = new RetornoDto(); produtoBll.Incluir(requisicaoDto, ref retornoDto); Assert.AreEqual(true, retornoDto.Retorno); return(requisicaoDto.EntidadeDto); }
protected void ddlProdutos_SelectedIndexChanged(object sender, EventArgs e) { try { ProdutoBll ProdutoBll = new ProdutoBll(); int ID = int.Parse(ddlProdutos.SelectedValue); if (!ID.Equals(0)) { Produto Produto = ProdutoBll.RetornaProduto(ID); txtPrecoProduto.Text = string.Format("{0:N}", Produto.PrecoUnitario); } } catch (Exception ex) { Msg.Erro(Resource.ContateAdminstrador, this); } }
public ActionResult ExcluirProduto(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 excluir um produto é necessário " + $"logar com um usuário administrador."; return(View("SemPermissao")); } //Preparar requisição e retorno RetornoDto retorno = new RetornoDto(); RequisicaoObterDto requisicaoDto = new RequisicaoObterDto() { Id = model.Id, Identificacao = SessaoUsuario.SessaoLogin.Identificacao, IdUsuario = SessaoUsuario.SessaoLogin.IdUsuario }; //Consumir o serviço ProdutoBll produtoBll = new ProdutoBll(true); produtoBll.Excluir(requisicaoDto, ref retorno); //Tratar o retorno if (retorno.Retorno == false) { ModelState.AddModelError("", retorno.Mensagem); return(View("Excluir", model)); } TempData["Retorno"] = "EXCLUIDO"; //Voltar para a index de produto return(RedirectToAction("Index")); }
private void BindarGrid() { try { ProdutoBll produtoBll = new ProdutoBll(); gvProdutos.DataSource = produtoBll.BuscarProdutos(txtFiltro.Text); gvProdutos.DataBind(); } catch (Exception ex) { LogBll.InserirLog(new Log { Login = User.Identity.Name, Mensagem = ex.Message, Operacao = TipoOperacao.Read.ToString(), Tabela = "Produto" }); Msg.Erro(Resource.ContateAdminstrador, this); } }
public EstoqueBll() { context = new Context(); rep = new EstoqueRepository(context); produtoBll = new ProdutoBll(); }