protected void lkbCalcularAderencia_Click(object sender, EventArgs e) { if (trvAderencia.SelectedNode.Text.EndsWith("(C)")) { double soma = 0; double filhos = 0; double conta = 0; double resultado = 0; for (int i = 0; i < trvAderencia.SelectedNode.ChildNodes.Count; i++) { dadosProduto.Segmento = new Segmento() { IDSegmento = Convert.ToInt32(TextBox1.Text) }; dadosProduto.VersaoProdutoFator = new VersaoProdutoFator() { IdVersaoProdutoFator = Convert.ToInt32(ddlVersao.SelectedValue) }; if (trvAderencia.SelectedNode.ChildNodes[i].Text.EndsWith("(P)")) { dadosProduto.IdProduto = Convert.ToInt32(trvAderencia.SelectedNode.ChildNodes[i].Value); dadosProduto = oProduto.ListarCriterioAderencia(dadosProduto); soma += dadosProduto.valor; filhos++; } } conta = soma / filhos; resultado = Math.Round(conta, 0); dadosCriterio.LinhaNegocio = new VO.LinhaNegocio(); dadosCriterio.Valor = Convert.ToInt32(resultado); dadosCriterio = oCriterio.ListarAderenciaValor(dadosCriterio); dadosProdutoNivel.Produto = new Produto() { IdProduto = Convert.ToInt32(trvAderencia.SelectedValue) }; dadosProdutoNivel.CriterioAderencia = new CriterioAderencia() { IDCriterioAderencia = dadosCriterio.IDIdCriterioAderencia }; dadosProdutoNivel.Segmento = new Segmento() { IDSegmento = Convert.ToInt32(TextBox1.Text) }; dadosProdutoNivel.IDCriterioAderenciaCalculado = Convert.ToInt32(resultado); dadosProdutoNivel.VersaoProdutoFator = new VersaoProdutoFator() { IdVersaoProdutoFator = Convert.ToInt32(ddlVersao.SelectedValue) }; oProdutoNivel.RemoverCriterioAderenciaSegmento(dadosProdutoNivel); oProdutoNivel.NovoCriterioAderenciaSegmento(dadosProdutoNivel); txtAderenciaCalculada.Text = dadosCriterio.Nome; } }
protected void trvAderencia_SelectedNodeChanged(object sender, EventArgs e) { if (trvAderencia.SelectedNode.ChildNodes.Count == 0) { if (trvAderencia.SelectedNode.Text.EndsWith("(C)")) { dadosProdutoNivel.IDProdutoNivel = Convert.ToInt32(trvAderencia.SelectedValue); dadosProdutoNivel = oProdutoNivel.ListarRelacaoProdutoNivel(dadosProdutoNivel); foreach (RelacaoProdutoNivel list in dadosProdutoNivel.RelacaoProdutoNivelLista) { trvAderencia.SelectedNode.ChildNodes.Add(new TreeNode { Value = list.IdFilho.ToString(), Text = list.Nome.ToString() + " (C)" }); } dadosProdutoNivel.IDProdutoNivel = Convert.ToInt32(trvAderencia.SelectedValue); dadosProdutoNivel = oProdutoNivel.ListarRelacaoProdutoNivelProduto(dadosProdutoNivel); foreach (RelacaoProdutoNivelProduto list in dadosProdutoNivel.RelacaoProdutoNivelProdutoLista) { trvAderencia.SelectedNode.ChildNodes.Add(new TreeNode { Value = list.IDProduto.ToString(), Text = list.Nome.ToString() + " (P)" }); } trvAderencia.SelectedNode.Expanded = true; } } txtCatProduto.Text = trvAderencia.SelectedNode.Value.ToString() + " - " + trvAderencia.SelectedNode.Text.ToString(); if (trvAderencia.SelectedNode.Text.EndsWith("(P)")) { lkAderenciaProduto.Enabled = true; lkbAderenciaProdutoFilhos.Enabled = false; txtAderenciaCalculada.Text = string.Empty; dadosProduto.IdProduto = Convert.ToInt32(trvAderencia.SelectedValue); dadosProduto.Segmento = new Segmento() { IDSegmento = Convert.ToInt32(TextBox1.Text) }; dadosProduto.VersaoProdutoFator = new VersaoProdutoFator() { IdVersaoProdutoFator = Convert.ToInt32(ddlVersao.SelectedValue) }; dadosProduto = oProduto.ListarCriterioAderenciaSegmento(dadosProduto); if (dadosProduto.CriterioAderencia != null) { ddlAderencia.SelectedValue = dadosProduto.CriterioAderencia.IDCriterioAderencia.ToString(); } else { ddlAderencia.SelectedIndex = 0; } } else { lkAderenciaProduto.Enabled = false; lkbAderenciaProdutoFilhos.Enabled = true; ddlAderencia.SelectedIndex = 0; dadosProdutoNivel.Produto = new Produto() { IdProduto = Convert.ToInt32(trvAderencia.SelectedValue) }; dadosProdutoNivel.VersaoProdutoFator = new VersaoProdutoFator() { IdVersaoProdutoFator = Convert.ToInt32(ddlVersao.SelectedValue) }; dadosProdutoNivel.Segmento = new Segmento() { IDSegmento = Convert.ToInt32(TextBox1.Text) }; dadosProdutoNivel = oProdutoNivel.ListarCriterioAderenciaSegmento(dadosProdutoNivel); txtAderenciaCalculada.Text = dadosProdutoNivel.Nome; } }