protected void btnIncluirItem_Click(object sender, EventArgs e) { //será incluido no grid de ICMS manualmente (não incluirá no banco ainda) //pois só deverá ser incluido no banco quando salvar o produto //armazena em viewstate a linha selecionada para posterior atualização List<ItemEntradaEstoqueVO> newlstItemEntradaEstoque = NissiSession.ItemEntradaEstoques; int codMateriaPrima = 0; try { codMateriaPrima = int.Parse(ddlProduto.SelectedValue); } catch (Exception) { MensagemCliente(updCadastroItem, "Escolha um valor na lista para a Matéria Prima!"); return; } const int codBitola = 0; //try //{ // codBitola = int.Parse(ddlBitola.SelectedValue); //} //catch (Exception) //{ // MensagemCliente(updCadastroItem, "Escolha um valor na lista para a Bitola!"); // return; //} decimal qtde = !string.IsNullOrEmpty(txtQtde.Text) ? decimal.Parse(txtQtde.Text) : 0; decimal valor = !string.IsNullOrEmpty(txtValorUnit.Text) ? decimal.Parse(txtValorUnit.Text) : 0; string norma = ddlProduto.SelectedItem.Text; decimal bitola = !string.IsNullOrEmpty(ddlBitola.SelectedItem.Text) && ddlBitola.SelectedValue != "" ? decimal.Parse(ddlBitola.SelectedItem.Text) : 0; string unidade = ddlUnidade.SelectedItem.Text; string especificacao = txtEspecificacao.Text; decimal Ipi = !string.IsNullOrEmpty(txtIPI.Text) ? decimal.Parse(txtIPI.Text) : 0; int codUnidade = !string.IsNullOrEmpty(ddlUnidade.SelectedValue) ? int.Parse(ddlUnidade.SelectedValue) : 0; //se for edição de ICMS, atualizar o list)) if (hdfTipoAcaoItem.Value.Equals("Incluir")) { /************************************************************************ Se a ação for inclusão, simplesmente verifica se o ítem já foi cadastrado se já for, exibe mensagem e não inclui o ítem /***********************************************************************/ ItemEntradaEstoqueVO result = newlstItemEntradaEstoque.Find( delegate(ItemEntradaEstoqueVO bk) { return bk.MateriaPrimaVo.CodMateriaPrima == codMateriaPrima; } ); if (result != null) { MensagemCliente(updCadastroItem, "Produto já cadastrado!"); return; } /************************************************************************/ /************************************************************************/ //senão, incluir novo ítem no list ItemEntradaEstoqueVO lstItemEntradaEstoqueAux = new ItemEntradaEstoqueVO(); lstItemEntradaEstoqueAux.Lote = !string.IsNullOrEmpty(txtLote.Text)? int.Parse(txtLote.Text):0; lstItemEntradaEstoqueAux.Certificado = txtCertificado.Text; lstItemEntradaEstoqueAux.Corrida = txtCorrida.Text; lstItemEntradaEstoqueAux.MateriaPrimaVo.CodMateriaPrima = codMateriaPrima; lstItemEntradaEstoqueAux.MateriaPrimaVo.NormaVo.Descricao = norma; lstItemEntradaEstoqueAux.BitolaVo.CodBitola = codBitola; lstItemEntradaEstoqueAux.BitolaVo.Bitola = bitola; lstItemEntradaEstoqueAux.Qtd = qtde; lstItemEntradaEstoqueAux.UnidadeVo.CodUnidade = codUnidade; lstItemEntradaEstoqueAux.UnidadeVo.TipoUnidade = unidade; lstItemEntradaEstoqueAux.Especificacao = especificacao; lstItemEntradaEstoqueAux.Ipi = Ipi; lstItemEntradaEstoqueAux.Valor = valor; lstItemEntradaEstoqueAux.C = !string.IsNullOrEmpty(txtC.Text) ? decimal.Parse(txtC.Text) : 0; lstItemEntradaEstoqueAux.Si = !string.IsNullOrEmpty(txtSi.Text) ? decimal.Parse(txtSi.Text) : 0; lstItemEntradaEstoqueAux.Mn = !string.IsNullOrEmpty(txtMn.Text) ? decimal.Parse(txtMn.Text) : 0; lstItemEntradaEstoqueAux.P = !string.IsNullOrEmpty(txtP.Text) ? decimal.Parse(txtP.Text) : 0; lstItemEntradaEstoqueAux.S = !string.IsNullOrEmpty(txtS.Text) ? decimal.Parse(txtS.Text) : 0; lstItemEntradaEstoqueAux.Cr = !string.IsNullOrEmpty(txtCr.Text) ? decimal.Parse(txtCr.Text) : 0; lstItemEntradaEstoqueAux.Ni = !string.IsNullOrEmpty(txtNi.Text) ? decimal.Parse(txtNi.Text) : 0; lstItemEntradaEstoqueAux.Mo = !string.IsNullOrEmpty(txtMo.Text) ? decimal.Parse(txtMo.Text) : 0; lstItemEntradaEstoqueAux.Cu = !string.IsNullOrEmpty(txtCu.Text) ? decimal.Parse(txtCu.Text) : 0; lstItemEntradaEstoqueAux.Ti = !string.IsNullOrEmpty(txtTi.Text) ? decimal.Parse(txtTi.Text) : 0; lstItemEntradaEstoqueAux.N2 = !string.IsNullOrEmpty(txtN2.Text) ? decimal.Parse(txtN2.Text) : 0; lstItemEntradaEstoqueAux.Co = !string.IsNullOrEmpty(txtCo.Text) ? decimal.Parse(txtCo.Text) : 0; lstItemEntradaEstoqueAux.Al = !string.IsNullOrEmpty(txtAl.Text) ? decimal.Parse(txtAl.Text) : 0; lstItemEntradaEstoqueAux.Resistencia = !string.IsNullOrEmpty(txtResistenciaTracao.Text) ? decimal.Parse(txtResistenciaTracao.Text) : 0; lstItemEntradaEstoqueAux.Dureza = !string.IsNullOrEmpty(txtDureza.Text) ? decimal.Parse(txtDureza.Text) : 0; lstItemEntradaEstoqueAux.Nota = !string.IsNullOrEmpty(txtNota.Text) ? decimal.Parse(txtNota.Text) : 0; lstItemEntradaEstoqueAux.CertificadoScanneado = NissiSession.ArquivoPdf; newlstItemEntradaEstoque.Add(lstItemEntradaEstoqueAux); } else { /************************************************************************ Se a ação for alteração, verifica se o ítem já está cadastrado, se já estiver será impedido, desde que não seja ele mesmo /***********************************************************************/ int linha = Convert.ToInt32(ViewState["LinhaSelecionadaItemEntradaEstoque"]); if (linha != codMateriaPrima) { var item1 = newlstItemEntradaEstoque.Where(r => r.MateriaPrimaVo.CodMateriaPrima == codMateriaPrima).Select(r => r). FirstOrDefault(); if (item1 != null) { MensagemCliente(updCadastroItem, "Produto já cadastrado!"); return; } } /************************************************************************ Atualiza o item do grid /***********************************************************************/ var item = newlstItemEntradaEstoque.Where(r => r.MateriaPrimaVo.CodMateriaPrima == linha && r.BitolaVo.CodBitola == codBitola).Select(r => r). FirstOrDefault(); item.MateriaPrimaVo.CodMateriaPrima = codMateriaPrima; item.MateriaPrimaVo.NormaVo.Descricao = norma; item.BitolaVo.CodBitola = codBitola; item.BitolaVo.Bitola = bitola; item.UnidadeVo.CodUnidade = codUnidade; item.Lote = !string.IsNullOrEmpty(txtLote.Text)? int.Parse(txtLote.Text):0; item.Certificado = txtCertificado.Text; item.Corrida = txtCorrida.Text; item.Qtd = qtde; item.UnidadeVo.TipoUnidade = unidade; item.Especificacao = especificacao; item.Ipi = Ipi; item.Valor = valor; item.C = !string.IsNullOrEmpty(txtC.Text) ? decimal.Parse(txtC.Text) : 0; item.Si = !string.IsNullOrEmpty(txtSi.Text) ? decimal.Parse(txtSi.Text) : 0; item.Mn = !string.IsNullOrEmpty(txtMn.Text) ? decimal.Parse(txtMn.Text) : 0; item.P = !string.IsNullOrEmpty(txtP.Text) ? decimal.Parse(txtP.Text) : 0; item.S = !string.IsNullOrEmpty(txtS.Text) ? decimal.Parse(txtS.Text) : 0; item.Cr = !string.IsNullOrEmpty(txtCr.Text) ? decimal.Parse(txtCr.Text) : 0; item.Ni = !string.IsNullOrEmpty(txtNi.Text) ? decimal.Parse(txtNi.Text) : 0; item.Mo = !string.IsNullOrEmpty(txtMo.Text) ? decimal.Parse(txtMo.Text) : 0; item.Cu = !string.IsNullOrEmpty(txtCu.Text) ? decimal.Parse(txtCu.Text) : 0; item.Ti = !string.IsNullOrEmpty(txtTi.Text) ? decimal.Parse(txtTi.Text) : 0; item.N2 = !string.IsNullOrEmpty(txtN2.Text) ? decimal.Parse(txtN2.Text) : 0; item.Co = !string.IsNullOrEmpty(txtCo.Text) ? decimal.Parse(txtCo.Text) : 0; item.Al = !string.IsNullOrEmpty(txtAl.Text) ? decimal.Parse(txtAl.Text) : 0; item.Resistencia = !string.IsNullOrEmpty(txtResistenciaTracao.Text) ? decimal.Parse(txtResistenciaTracao.Text) : 0; item.Dureza = !string.IsNullOrEmpty(txtDureza.Text) ? decimal.Parse(txtDureza.Text) : 0; item.Nota = !string.IsNullOrEmpty(txtNota.Text) ? decimal.Parse(txtNota.Text) : 0; item.CertificadoScanneado = NissiSession.ArquivoPdf; //sai do for } grdProduto.DataSource = newlstItemEntradaEstoque; grdProduto.DataBind(); //atualiza viewstate NissiSession.ItemEntradaEstoques = newlstItemEntradaEstoque; LimparCamposItemEntradaEstoque(); mpeIncluirItem.Hide(); }
private List<ItemEntradaEstoqueVO> ConvertToItemEntradaEstoque(List<ItemPedidoCompraVO> itemPedidoCompraVos) { List<ItemEntradaEstoqueVO> itemEntradaEstoqueVos = new List<ItemEntradaEstoqueVO>(); foreach (var itemPedidoCompraVo in itemPedidoCompraVos) { var itemEntradaEstoque = new ItemEntradaEstoqueVO(); itemEntradaEstoque.MateriaPrimaVo = itemPedidoCompraVo.MateriaPrimaVo; itemEntradaEstoque.BitolaVo = itemPedidoCompraVo.BitolaVo; itemEntradaEstoque.QtdPedidoCompra = itemPedidoCompraVo.Saldo; itemEntradaEstoque.Valor = itemPedidoCompraVo.Valor; //itemEntradaEstoque.Resistencia = itemPedidoCompraVo.ResistenciaTracao; itemEntradaEstoque.Especificacao = itemPedidoCompraVo.Especificacao; itemEntradaEstoque.UnidadeVo.CodUnidade = itemPedidoCompraVo.UnidadeVo.CodUnidade; itemEntradaEstoque.UnidadeVo.TipoUnidade = itemPedidoCompraVo.UnidadeVo.TipoUnidade; itemEntradaEstoque.Ipi = itemPedidoCompraVo.Ipi; itemEntradaEstoqueVos.Add(itemEntradaEstoque); } NissiSession.ItemEntradaEstoques = itemEntradaEstoqueVos; return itemEntradaEstoqueVos; }
protected void grdListaResultado_RowCommand(object sender, GridViewCommandEventArgs e) { if (!e.CommandName.Equals("Page")) { ItemEntradaEstoqueVO itemEntradaEstoqueVo = new ItemEntradaEstoqueVO(); string[] args = e.CommandArgument.ToString().Split('|'); itemEntradaEstoqueVo.EntradaEstoqueVo.CodEntradaEstoque = int.Parse(args[0]); switch (e.CommandName) { //Modulo de Edicao case "Editar": if (rbEntradaEstoque.Checked && !string.IsNullOrEmpty(txtEntradaEstoque.Text)) { hdfValor.Value = txtEntradaEstoque.Text; hdfOpcao.Value = "EntradaEstoque"; } if (rbLote.Checked && !string.IsNullOrEmpty(txtLote.Text)) { hdfValor.Value = txtLote.Text; hdfOpcao.Value = "Lote"; } if (rbRazaoSocial.Checked && !string.IsNullOrEmpty(txtRazaoSocial.Text)) { hdfValor.Value = txtRazaoSocial.Text; hdfOpcao.Value = "RazaoSocial"; } if (rbCorrida.Checked && !string.IsNullOrEmpty(txtCorrida.Text)) { hdfValor.Value = txtCorrida.Text; hdfOpcao.Value = "Corrida"; } if (rbCertificado.Checked && !string.IsNullOrEmpty(txtCertificado.Text)) { hdfValor.Value = txtCertificado.Text; hdfOpcao.Value = "Certificado"; } Response.Redirect("CadastraEntradaEstoque.aspx?acao=Editar&CodEntradaEstoque=" + itemEntradaEstoqueVo.EntradaEstoqueVo.CodEntradaEstoque + "&tipo=" + args[1] + "&valor=" + hdfValor.Value + "&opcao=" + hdfOpcao.Value); break; //Modulo de Excluir case "Excluir": new Business.EntradaEstoque().Excluir(itemEntradaEstoqueVo.EntradaEstoqueVo.CodEntradaEstoque); //Atualizar Lista Pesquisar(); break; //Modulo de Imprimir case "Imprimir": break; //Modulo de Enviar case "Enviar": break; } } }