protected void lkbSalvarCalculo_Click(object sender, EventArgs e) { CalculoVariavel dadosCalculoVariavel = new CalculoVariavel(); List <VariavelCalculoVariavel> dadosVariavelCalculoVariavel = new List <VariavelCalculoVariavel>(); CalculoVariavelBLL oCalculoVariavel = new CalculoVariavelBLL(); VariavelCalculoVariavelBLL oVariavelCalculoVariavel = new VariavelCalculoVariavelBLL(); for (int i = 0; i < ddlVariavelSelecionada.Items.Count; i++) { if (!ddlVariavelSelecionada.Items[i].Value.EndsWith("/u") && ddlVariavelSelecionada.Items[i].Value != string.Empty) { ScriptManager.RegisterStartupScript(this, this.GetType(), Guid.NewGuid().ToString(), "alert('Todas as Variáveis abaixo de " + txtDescricao.Text + "\\n devem ser utilizadas no calculo');", true); return; } } dadosCalculoVariavel.Usuario = (Usuario)HttpContext.Current.Session["UsuarioLogado"]; dadosCalculoVariavel.Variavel = new Variavel() { IDVariavel = Convert.ToInt32(txtIdVariavel.Text) }; oCalculoVariavel.Novo(dadosCalculoVariavel); dadosVariavelCalculoVariavel = (List <VariavelCalculoVariavel>)HttpContext.Current.Session["CalculoVariavel"]; for (int i = 0; i < dadosVariavelCalculoVariavel.Count; i++) { dadosVariavelCalculoVariavel[i].CalculoVariavel = dadosCalculoVariavel; oVariavelCalculoVariavel.Novo(dadosVariavelCalculoVariavel[i]); } Session.Remove("CalculoVariavel"); mdlCalculo.Hide(); txtOrdem.Text = string.Empty; LimpaCampos(); }
/// <summary> /// Metodo testa o valor da variavel a fim de enquadrar em um critério /// </summary> /// <param name="entidadeFilha"></param> /// <param name="entidade"></param> /// <returns></returns> public Criterio CalculaVariavel(List <Variavel> entidadeFilha, Variavel entidade) { Criterio dadosCriterio = new Criterio(); List <Criterio> dadosCriterioLista = new List <Criterio>(); CalculoVariavel dadosCalculoVariavel = new CalculoVariavel(); VariavelCalculoVariavel dadosVariavelCalculo = new VariavelCalculoVariavel(); VariavelCalculoVariavelBLL oVariavelCalculo = new VariavelCalculoVariavelBLL(); CriterioBLL oCriterio = new CriterioBLL(); dadosCriterio.Variavel = entidade; dadosCalculoVariavel.Variavel = entidade; //retorna todos os valores e operadores para uma expressão dadosCalculoVariavel.VariavelCalculoVariavel = oVariavelCalculo.ListarCalculo(dadosVariavelCalculo); //Concatena todos os valores e operadores da expressão for (int i = 0; i < dadosCalculoVariavel.VariavelCalculoVariavel.Count; i++) { entidade.Expressão += dadosCalculoVariavel.VariavelCalculoVariavel[i].TipoOperadorCalculo.Simbolo; entidade.Expressão += dadosCalculoVariavel.VariavelCalculoVariavel[i].Variavel.Criterio.Valor.ToString(); } //Retorna o valor da expressão calculada entidade.Criterio.Valor = Convert.ToInt32(Eval(entidade.Expressão)); //lista todas os Criterios para a variavel dadosCriterioLista = oCriterio.ListarVariavelLista(dadosCriterio); //Testa todas os critérios variaveis até encontrar o correto for (int j = 0; j < dadosCriterioLista.Count; j++) { //Menor ou igual ao valor do critério atual (Até) if (dadosCriterioLista[j].TipoCriterioVariavel.IDTipoCriterioVariavel == 1 && entidade.Criterio.Valor <= dadosCriterioLista[j].CriterioVariavel.Valor1) { entidade.Criterio.IDCriterio = dadosCriterioLista[j].CriterioVariavel.Criterio.IDCriterio; break; } //Entre os valores do Critério atual (Entre) else if (dadosCriterioLista[j].TipoCriterioVariavel.IDTipoCriterioVariavel == 2 && entidade.Criterio.Valor >= dadosCriterioLista[j].CriterioVariavel.Valor1 && entidade.Criterio.Valor <= dadosCriterioLista[j].CriterioVariavel.Valor2) { entidade.Criterio.IDCriterio = dadosCriterioLista[j].CriterioVariavel.Criterio.IDCriterio; break; } //Menor que o valor do critério atual (Maior que) else if (dadosCriterioLista[j].TipoCriterioVariavel.IDTipoCriterioVariavel == 3 && entidade.Criterio.Valor > dadosCriterioLista[j].CriterioVariavel.Valor1) { entidade.Criterio.IDCriterio = dadosCriterioLista[j].CriterioVariavel.Criterio.IDCriterio; break; } //Igual ao valor do critério atual (Igual) else if (dadosCriterioLista[j].TipoCriterioVariavel.IDTipoCriterioVariavel == 4 && entidade.Criterio.Valor == dadosCriterioLista[j].CriterioVariavel.Valor1) { entidade.Criterio.IDCriterio = dadosCriterioLista[j].CriterioVariavel.Criterio.IDCriterio; break; } //Menor que o valor do criterio atual (Manor que) else if (dadosCriterioLista[j].TipoCriterioVariavel.IDTipoCriterioVariavel == 5 && entidade.Criterio.Valor < dadosCriterioLista[j].CriterioVariavel.Valor1) { entidade.Criterio.IDCriterio = dadosCriterioLista[j].CriterioVariavel.Criterio.IDCriterio; break; } } return(dadosCriterio); }
public CalculoVariavel Listar(CalculoVariavel entidade) { return(_calculoVariavel.Listar(entidade)); }
public void Editar(CalculoVariavel entidade) { _calculoVariavel.Editar(entidade); }
public void Remover(CalculoVariavel entidade) { _calculoVariavel.Remover(entidade); }
public void Novo(CalculoVariavel entidade) { _calculoVariavel.Novo(entidade); }