private void Alterar(Restricao restr) { var strQuery = ""; strQuery += "UPDATE tblrestricao SET "; strQuery += string.Format("idgrestr={0}, codigo='{1}', descricao='{2}', legexec={3} ", restr.GRestrId, restr.Codigo, restr.Descricao, restr.Legexec); strQuery += string.Format("WHERE idrestr={0} ", restr.RestricaoId); using (cnx = new ConexaoBD()) cnx.CommNom(strQuery); }
public async Task <IActionResult> Create([Bind("Id,AlunoId,HorarioId")] Restricao restricao) { if (ModelState.IsValid) { _context.Add(restricao); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["AlunoId"] = new SelectList(_context.Alunos, "Id", "CPF", restricao.AlunoId); ViewData["HorarioId"] = new SelectList(_context.Horarios, "Id", "Id", restricao.HorarioId); return(View(restricao)); }
private void EscreverValorRHS(Restricao rest) { if (!_segundaColunaFlag) { _builder.Append(string.Concat(ESPACO_CURTO, NOME_VETOR_RHS, ESPACO_CURTO, rest.Nome, ESPACO_LONGO, rest.TermoLivre)); } else { _builder.AppendLine(string.Concat(ESPACO_CURTO, rest.Nome, ESPACO_LONGO, rest.TermoLivre)); } _segundaColunaFlag = !_segundaColunaFlag; }
private void Inserir(Restricao restr) { var strQuery = ""; int id; var lid = new List <Restricao>(); lid = ListAll(); id = lid[lid.Count - 1].RestricaoId + 1; strQuery += "INSERT INTO tblrestricao(idrestr, idgrestr, codigo, descricao, legexec) "; strQuery += string.Format("VALUES ({0}, {1}, '{2}', '{3}', {4})", id, restr.GRestrId, restr.Codigo, restr.Descricao, restr.Legexec); using (cnx = new ConexaoBD()) cnx.CommNom(strQuery); }
public bool removerRestricao(int id) { Restricao restricao = null; foreach (Restricao r in Restricoes) { if (r.RestricaoID == id) { restricao = r; } } if (restricao == null) { return(false); } return(Restricoes.Remove(restricao)); }
private Restricao One(DataTable dt, int pos) { if (dt.Rows.Count > 0) { var registro = new Restricao() { RestricaoId = int.Parse(dt.Rows[pos]["idrestr"].ToString()), GRestrId = int.Parse(dt.Rows[pos]["idgrestr"].ToString()), Legexec = int.Parse(dt.Rows[pos]["legexec"].ToString()), Codigo = dt.Rows[pos]["codigo"].ToString(), Descricao = dt.Rows[pos]["descricao"].ToString() }; return(registro); } else { return(new Restricao()); } }
public bool Insert(Restricao restricao) { bool State = false; cmd.CommandText = "INSERT INTO T_RESTRICAO(USARIO, INGREDIENTES) VALUES(@USARIO, @INGREDIENTES)"; cmd.Parameters.AddWithValue("@USARIO", restricao.usuario); cmd.Parameters.AddWithValue("@INGREDIENTES", restricao.ingredientes); try { cmd.Connection = connectionFactory.OpenConnection(); cmd.ExecuteNonQuery(); connectionFactory.CloseConnection(); State = true; } catch (SqlException err) { MessageBox.Show(err.ToString()); } return(State); }
protected void btnResolverSimplex_Click(object sender, EventArgs e) { simplex = new Simplex(); if (txtEqBase.Text == "" || hidenRestricoes.Value == "") { MostraErro(); return; } //variaveis gerais string[] arrayVariaveis; double[] arrayValores; //variaveis para função objetiva Boolean isMaximizacao = true; string[] eqFuncObjetiva = txtEqBase.Text.Trim().Split(' '); //variáveis para restrição string[] equacoes = hidenRestricoes.Value.Split('@'); string[] eqRestricao; ArrayList valores = new ArrayList(); ArrayList variaveis = new ArrayList(); double resultadoRestricao = 0.0f; string sinalRestricaoo = ""; Boolean negativo = false; //Resolve a função objetiva if (cmbTipoFunc.SelectedValue == "1") { isMaximizacao = false; } else { isMaximizacao = true; } for (int k = 0; k < eqFuncObjetiva.Length; k++) { if (eqFuncObjetiva[k] == "-" || eqFuncObjetiva[k] == "+") { if (eqFuncObjetiva[k] == "-") { negativo = true; } else { negativo = false; } } else { String[] separadoObjetiva = System.Text.RegularExpressions.Regex.Split(eqFuncObjetiva[k], @"[^\d]"); double valor; //pega o valor if (separadoObjetiva[0] == "") { valor = Convert.ToDouble("1"); } else if (double.TryParse(separadoObjetiva[0], out valor)) { valor = Convert.ToDouble(separadoObjetiva[0]); } else { valor = Convert.ToDouble(separadoObjetiva[0]); } //verifica se a string anterior foi um sinal negativo, caso seja, o valor é negativado if (negativo) { valores.Add(Convert.ToDouble("-" + valor)); negativo = false; } else { valores.Add(valor); } //pega a variável string variavelFuncObjetiva; if (separadoObjetiva[0] == "") { variavelFuncObjetiva = eqFuncObjetiva[k]; if (variavelFuncObjetiva != "") { variaveis.Add(variavelFuncObjetiva); } } else { var match = Regex.Match(eqFuncObjetiva[k], @"[^\d]"); int indiceValorFuncObjetiva = eqFuncObjetiva[k].IndexOf(match.Value); variavelFuncObjetiva = eqFuncObjetiva[k].Substring(indiceValorFuncObjetiva); if (variavelFuncObjetiva != "") { variaveis.Add(variavelFuncObjetiva); } } } } arrayVariaveis = variaveis.ToArray(typeof(string)) as string[]; arrayValores = valores.ToArray(typeof(double)) as double[]; funcObjetiva = new FuncaoObjetiva(arrayValores, arrayVariaveis, isMaximizacao); simplex.FObjetiva = funcObjetiva; //Resolve as restrições for (int i = 0; i < equacoes.Length; i++) { //limpa os valores e variáveis para reaproveitar pra cada restrição valores.Clear(); variaveis.Clear(); equacoes[i] = equacoes[i].Trim(); eqRestricao = equacoes[i].Split(' '); for (int j = 0; j < eqRestricao.Length; j++) { if (eqRestricao[j] == "-" || eqRestricao[j] == "+") { if (eqRestricao[j] == "-") { negativo = true; } else { negativo = false; } } else if (eqRestricao[j] == "<=" || eqRestricao[j] == ">=" || eqRestricao[j] == "=" || eqRestricao[j] == "<" || eqRestricao[j] == ">") { sinalRestricaoo = eqRestricao[j]; } else if (double.TryParse(eqRestricao[j], out resultadoRestricao)) { Console.WriteLine(resultadoRestricao); } else { String[] separado = System.Text.RegularExpressions.Regex.Split(eqRestricao[j], @"[^\d]"); double valor; //pega o valor if (separado[0] == "") { valor = Convert.ToDouble("1"); } else if (double.TryParse(separado[0], out valor)) { valor = Convert.ToDouble(separado[0]); } else { valor = Convert.ToDouble(separado[0]); } //verifica se a string anterior foi um sinal negativo, caso seja, o valor é negativado if (negativo) { valores.Add(Convert.ToDouble("-" + valor)); negativo = false; } else { valores.Add(valor); } //pega a variável if (separado[0] == "") { string variavel = eqRestricao[j]; if (variavel != "") { variaveis.Add(variavel); } } else { var match = Regex.Match(eqRestricao[j], @"[^\d]"); int indiceValor = eqRestricao[j].IndexOf(match.Value); string variavel = eqRestricao[j].Substring(indiceValor); if (variavel != "") { variaveis.Add(variavel); } } } } //pega os valores da equação e monta a restriçao arrayVariaveis = variaveis.ToArray(typeof(string)) as string[]; arrayValores = valores.ToArray(typeof(double)) as double[]; restricao = new Restricao(arrayValores, arrayVariaveis, sinalRestricaoo, resultadoRestricao); simplex.Restricoes.Add(restricao); } //Normaliza e monta o quadro simplex.Normaliza(); simplex.MontaQuadro(); simplex.QuadroSimplex.Iteracao(); lblResultados.Text = "Resultados: \n\n"; foreach (KeyValuePair <string, double> entry in simplex.Solucao()) { lblResultados.Text += "variável " + entry.Key + " valendo " + entry.Value + "\n "; } }
public void AddRestricao(Problema problema) { Restricao itemNovo = new Restricao(); problema.Restricoes.Add(itemNovo); }
/// <summary> /// TRANSAÇÃO 005 /// </summary> public void Proprietarios() { var consulta = @" SELECT lo.* FROM dbo.tb_leilao_lotes lo JOIN tb_leilao le ON le.id = lo.id_leilao JOIN tb_comitentes co ON co.id = le.id_comitente WHERE lo.flag_transacao = 'L' AND co.tipo_importacao = 1 AND le.id_status = (SELECT id FROM tb_leilao_status WHERE sequencia = 1) "; var lotes = ConsultaSQL(consulta).ConverterParaLista <Lote>(); #if (DEBUG) //lotes = lotes // .Where(p => p.id_leilao == 79).ToList(); #endif foreach (var lote in lotes) { string retorno = string.Empty; if (!string.IsNullOrEmpty(lote.placa)) { retorno = ws_ConsultarVeiculosParaLeilao("ROOT", lote.placa); } else if (!string.IsNullOrEmpty(lote.chassi)) { retorno = ws_ConsultarVeiculosParaLeilao("ROOT", lote.chassi); } if (retorno == "") { continue; } if (!retorno.ToUpper().Contains("ERRO")) { var Transacao005 = JsonConvert.DeserializeObject <Transacao005>(retorno); Transacao005.Id_lote = lote.id; if (Transacao005.Retorno.ToUpper() == "OK") { InserirTransacao(new Transacao() { id_lote = lote.id, retorno = Transacao005.Retorno, transacao = Transacao005.Transacao }); Transacao005.Id = RepositorioGlobal.Proprietario.Inserir(Transacao005); lote.Flag_Transacao = GetProximaTransacao(lote.id); lote.Flag_Agendado = "N"; //PEGAR RESTRIÇÕES var Restricoes = Transacao005.DescricaoRestricoes.ToList <string>(); var SubRestricoes = Transacao005.DescricaoSubRestricoes.ToList <string>(); var ObsRestricoes = Transacao005.ObservacaoRestricoes.ToList <string>(); for (int i = 0; i < Restricoes.Where(p => p != "").ToList <string>().Count; i++) { lote.id_status_lote = 26; Restricao r = new Restricao() { id_lote = lote.id, restricao = Restricoes[i], sub_restricao = SubRestricoes[i], observacoes = ObsRestricoes[i], origem = Transacao005.Transacao }; RepositorioGlobal.Restricao.Inserir(r); } RepositorioGlobal.Lote.Alterar(lote); Console.WriteLine("PROPRIETÁRIO " + lote.marca_modelo + " PROCESSO " + lote.numero_formulario_grv); continue; } InserirTransacao(new Transacao() { id_lote = lote.id, retorno = Transacao005.Retorno, transacao = Transacao005.Transacao }); //ALTERAR LOTES DE ACORDO COM A RESTRIÇÃO lote.Flag_Agendado = "N"; lote.Flag_Transacao = "X"; RepositorioGlobal.Lote.Alterar(lote); } else { } } }