public bool Inserir(FornecedorLinha fornecedor) { _bd = new Persistencia(); try { _bd.Cmd.CommandText = "Select max(sequencia) from enderecosLinha where linha_id = @linhaId"; _bd.Cmd.Parameters.AddWithValue("@linhaId", fornecedor.Linha.Id);//id da linha int lastSeq = Convert.ToInt32(_bd.ExecuteScalar() == DBNull.Value ? 0 : _bd.ExecuteScalar());//valor do ultimo da sequencia fornecedor.Sequencia = lastSeq+1; _bd.Cmd.Parameters.Clear(); _bd.Cmd.CommandText = @"INSERT INTO enderecosLinha (linha_id, fornecedor_id, endereco_id, sequencia) VALUES (@linhaId, @pesId, @endId, @seq)"; _bd.Cmd.Parameters.AddWithValue("@linhaId", fornecedor.Linha.Id);//id da linha _bd.Cmd.Parameters.AddWithValue("@pesId", fornecedor.Endereco.Pessoa.Id);//id da pessoa _bd.Cmd.Parameters.AddWithValue("@endId", fornecedor.Endereco.Id);//id do endereço _bd.Cmd.Parameters.AddWithValue("@seq", fornecedor.Sequencia);//sequencia de visita na rota da linha _bd.ExecuteNonQuery(); } catch (Exception) { return false; } return true; }
public bool Remover(FornecedorLinha fornecedor) { if(new DataBase.coleta.FornecedorLinhaBd().Remover(fornecedor)) { ReordenarSeqLinha(fornecedor); return true; } return false; }
private void ReordenarSeqLinha(FornecedorLinha fornecedor) { var linha = fornecedor.Linha; new LinhaCtrl().RecuperarFornecedoresLinha(linha, false);//recupera as ids e a sequencia das linhas var seq = 0; foreach (FornecedorLinha frn in linha.Fornecedores) { seq++; frn.Sequencia = seq; frn.Linha = new Linha(linha.Id); new DataBase.coleta.FornecedorLinhaBd().AtualizarSeq(frn); } }
//ultima modificacao/checagem em 28/01/2014 funcionando! by GM public bool AtualizarSeq(FornecedorLinha fornecedor) { _bd = new Persistencia(); try { _bd.Cmd.CommandText = "UPDATE enderecosLinha SET sequencia = @seq WHERE linha_id= @linhaId and fornecedor_id = @pesId and endereco_id = @endId"; _bd.Cmd.Parameters.AddWithValue("@linhaId", fornecedor.Linha.Id);//id da linha _bd.Cmd.Parameters.AddWithValue("@pesId", fornecedor.Endereco.Pessoa.Id);//id da pessoa _bd.Cmd.Parameters.AddWithValue("@endId", fornecedor.Endereco.Id);//id do endereço _bd.Cmd.Parameters.AddWithValue("@seq", fornecedor.Sequencia);//sequencia de visita na rota da linha _bd.ExecuteNonQuery(); } catch (Exception) { return false; } return true; }
public void GerFrnLinhas(object sender, CommandEventArgs e) { bool existeLinhas; bool b = ddlLinhas1.Items.Count > 0 ? existeLinhas = true : existeLinhas = false;//checa se existe linhas para gerenciar switch (e.CommandName) { case "Abrir": { if (existeLinhas) { if (!string.IsNullOrEmpty(e.CommandArgument.ToString()))//caso tenha sido passado a id da linha por argumento { ddlLinhas1.SelectedValue = e.CommandArgument.ToString(); } RenderEnderecosLinhaGelinhas(); } boxGerFrnLinha.Visible = existeLinhas; gelinhasNull.Visible = !existeLinhas; } break; case "Sair": { if (existeLinhas) { ddlLinhas1.SelectedIndex = 0; } ttbFornecedor.Text = ""; fornecedorIdglinhas.Value = "0"; alertaEndsFornecedor.Visible = false; rEnderecosFornecedor.Visible = false; CarregarRepeaterLinhasColetaPrincipal(); } break; case "Remover": { var fornecedorLinha = new FornecedorLinha(Convert.ToInt32(e.CommandArgument), new Linha(Convert.ToInt32(ddlLinhas1.SelectedValue))); if (new Controller.coleta.FornecedorLinhaCtrl().Remover(fornecedorLinha)) { if (fornecedorIdglinhas.Value == "0") { LimparFornecedor(); } else { RenderFrnEnderecosGelinhas();//recarrega tabela enderecos fornecedor } RenderEnderecosLinhaGelinhas();//recarrega tabela enderecos linha } } break; case "Adicionar": { var endSelecionado = new Endereco(Convert.ToInt32(e.CommandArgument), new Pessoa(Convert.ToInt32(fornecedorIdglinhas.Value))); if (new Controller.coleta.FornecedorLinhaCtrl().Adicionar(new FornecedorLinha(endSelecionado, new Linha(Convert.ToInt32(ddlLinhas1.SelectedValue))))) { if (fornecedorIdglinhas.Value == "0") { LimparFornecedor(); } else { RenderFrnEnderecosGelinhas();//recarrega tabela enderecos fornecedor } RenderEnderecosLinhaGelinhas();//recarrega tabela enderecos linha } } break; } }
//ultima modificacao/checagem em 28/01/2014 funcionando! by GM public bool Adicionar(FornecedorLinha fornecedor) { return new DataBase.coleta.FornecedorLinhaBd().Inserir(fornecedor); }
//ultima modificacao/checagem em 28/01/2014 funcionando! by GM public bool Remover(FornecedorLinha fornecedor) { _bd = new Persistencia(); try { _bd.Cmd.CommandText = @"DELETE FROM enderecosLinha where linha_id = @linhaId and sequencia = @seq"; _bd.Cmd.Parameters.AddWithValue("@linhaId", fornecedor.Linha.Id); _bd.Cmd.Parameters.AddWithValue("@seq", fornecedor.Sequencia);//sequencia de visita na rota da linha _bd.ExecuteNonQuery(); } catch (Exception) { return false; } return true; }