protected void LoadSession(SYS_Usuario entityUsuario) { __SessionWEB.__UsuarioWEB.Usuario = entityUsuario; System.Web.Configuration.PagesSection pagesSection = System.Configuration.ConfigurationManager.GetSection("system.web/pages") as System.Web.Configuration.PagesSection; if ((pagesSection != null)) { __SessionWEB.TemaPadraoLogado = CFG_TemaPadraoBO.CarregarPorNome(pagesSection.Theme); } // Armazena o cid_id referente a entidade do usuário na Session Guid ene_id = SYS_EntidadeEnderecoBO.Select_ene_idBy_ent_id(__SessionWEB.__UsuarioWEB.Usuario.ent_id); SYS_EntidadeEndereco entityEntidadeEndereco = new SYS_EntidadeEndereco { ent_id = __SessionWEB.__UsuarioWEB.Usuario.ent_id, ene_id = ene_id }; SYS_EntidadeEnderecoBO.GetEntity(entityEntidadeEndereco); END_Endereco entityEndereco = new END_Endereco { end_id = entityEntidadeEndereco.end_id }; END_EnderecoBO.GetEntity(entityEndereco); __SessionWEB._cid_id = entityEndereco.cid_id; // Armazena o nome da pessoa ou o login do usuário na Session PES_Pessoa EntityPessoa = new PES_Pessoa { pes_id = __SessionWEB.__UsuarioWEB.Usuario.pes_id }; PES_PessoaBO.GetEntity(EntityPessoa); __SessionWEB.UsuarioLogado = string.IsNullOrEmpty(EntityPessoa.pes_nome) ? __SessionWEB.__UsuarioWEB.Usuario.usu_login : EntityPessoa.pes_nome; }
/// <summary> /// Carrega os dados do endereço nos controles caso seja alteração. /// </summary> private void _LoadFromEntity() { try { END_Endereco end = new END_Endereco { end_id = _VS_end_id }; END_EnderecoBO.GetEntity(end); END_Cidade cid = new END_Cidade { cid_id = end.cid_id }; END_CidadeBO.GetEntity(cid); _VS_cid_idAntigo = end.cid_id; txtCEP.Text = end.end_cep; txtLogradouro.Text = end.end_logradouro; txtDistrito.Text = !string.IsNullOrEmpty(end.end_distrito) ? end.end_distrito : string.Empty; UCComboZona1._Combo.SelectedValue = end.end_zona > 0 ? end.end_zona.ToString() : "-1"; txtBairro.Text = end.end_bairro; _VS_cid_id = end.cid_id; txtCidade.Text = cid.cid_nome; txtCEP.Enabled = false; } catch (Exception ex) { ApplicationWEB._GravaErro(ex); _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar carregar o endereço.", UtilBO.TipoMensagem.Erro); } }
/// <summary> /// Retorna a cidade pelo endereço da entidade do usuário logado. /// </summary> private Guid CarregarCidadeUsuarioLogado() { // Setar a cidade pelo endereço da Entidade do usuário logado. Guid ent_id = __SessionWEB.__UsuarioWEB.Usuario.ent_id; Guid ene_id = SYS_EntidadeEnderecoBO.Select_ene_idBy_ent_id(ent_id); SYS_EntidadeEndereco entEndereco = new SYS_EntidadeEndereco { ent_id = ent_id , ene_id = ene_id }; SYS_EntidadeEnderecoBO.GetEntity(entEndereco); // Recuperando entidade Endereço do usuário logado. END_Endereco endereco = new END_Endereco { end_id = entEndereco.end_id }; END_EnderecoBO.GetEntity(endereco); return(endereco.cid_id); }
/// <summary> /// Valida os dados da unidade administrativa de acordo com o padrão do censo escolar. /// </summary> /// <param name="entityEscola">Entidade ESC_Escola</param> /// <param name="entityEndereco">Entidade END_Endereco</param> /// <param name="entityPredioEndereco">Entidade ESC_PredioEndereco</param> public static void ValidaCensoEscolar(ESC_Escola entityEscola, END_Endereco entityEndereco, ESC_PredioEndereco entityPredioEndereco) { string numero = entityPredioEndereco != null ? entityPredioEndereco.ped_numero : string.Empty; string complemento = entityPredioEndereco != null ? entityPredioEndereco.ped_complemento : string.Empty; SYS_UnidadeAdministrativaBO.ValidaCensoEscolar(entityEscola.esc_nome, "Escola", entityEndereco, numero, complemento); }
/// <summary> /// Insere e altera uma entidade /// </summary> private void _Salvar() { try { //[Gabriel]: Antes o sistema buscava no banco alguma cidade com o cep passado pelo usuario e setava essa cidade sem nenhum aviso, desprezando a cidade passada no formulário //List<END_Endereco> end = END_EnderecoBO.GetSelectBy_end_cep_end_logradouro(txtCEP.Text, DBNull.Value.ToString()); END_Endereco entityEndereco = new END_Endereco { end_id = _VS_end_id , end_cep = txtCEP.Text , end_logradouro = txtLogradouro.Text , end_distrito = txtDistrito.Text , end_zona = UCComboZona1._Combo.SelectedValue == "-1" ? Convert.ToByte(0) : Convert.ToByte(UCComboZona1._Combo.SelectedValue) , end_bairro = txtBairro.Text , //cid_id = (end.Count > 0) ? end[0].cid_id : _VS_cid_id cid_id = _VS_cid_id , end_situacao = 1 , IsNew = (_VS_end_id != Guid.Empty) ? false : true }; if (END_EnderecoBO.Save(entityEndereco, _VS_cid_idAntigo, null) != Guid.Empty) { if (_VS_end_id == Guid.Empty) { ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Insert, "end_id: " + entityEndereco.end_id); __SessionWEB.PostMessages = UtilBO.GetErroMessage("Endereço incluído com sucesso.", UtilBO.TipoMensagem.Sucesso); } else { ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Update, "end_id: " + entityEndereco.end_id); __SessionWEB.PostMessages = UtilBO.GetErroMessage("Endereço alterado com sucesso.", UtilBO.TipoMensagem.Sucesso); } Response.Redirect(__SessionWEB._AreaAtual._Diretorio + "ManutencaoEndereco/Busca.aspx", false); } else { _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar o endereço.", UtilBO.TipoMensagem.Erro); } } catch (CoreLibrary.Validation.Exceptions.ValidationException ex) { _lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta); } catch (Exception ex) { ApplicationWEB._GravaErro(ex); _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar o endereço.", UtilBO.TipoMensagem.Erro); } }
protected void _grvEndereco_RowCommand(object sender, GridViewCommandEventArgs e) { if (e.CommandName == "Associar") { int index = int.Parse(e.CommandArgument.ToString()); Guid end_id = new Guid(_grvEndereco.DataKeys[index].Values[0].ToString()); Guid cid_id = new Guid(_grvEndereco.DataKeys[index].Values[1].ToString()); string end_zona = _grvEndereco.DataKeys[index].Values[2] == DBNull.Value ? "0" : _grvEndereco.DataKeys[index].Values[2].ToString(); string end_cep = Convert.ToString(_grvEndereco.Rows[index].Cells[0].Text); string end_logradouro = ((Label)_grvEndereco.Rows[index].FindControl("_lblLogradouro")).Text; string end_distrito = ((Label)_grvEndereco.Rows[index].FindControl("_lblDistrito")).Text; string end_bairro = ((Label)_grvEndereco.Rows[index].FindControl("_lblBairro")).Text; string cid_nome = ((Label)_grvEndereco.Rows[index].FindControl("_lblCidade")).Text.Substring(0, ((Label)_grvEndereco.Rows[index].FindControl("_lblCidade")).Text.Length - 5); string unf_sigla = ((Label)_grvEndereco.Rows[index].FindControl("_lblCidade")).Text.Substring(((Label)_grvEndereco.Rows[index].FindControl("_lblCidade")).Text.Length - 2, 2); _AssociarEndereco(end_id, end_cep, end_logradouro, end_distrito, end_zona, end_bairro, cid_id, cid_nome, unf_sigla); _CarregarGridAssociarEndereco(); } else if (e.CommandName == "Deletar") { try { int index = int.Parse(e.CommandArgument.ToString()); Guid end_id = new Guid(_grvEndereco.DataKeys[index].Values[0].ToString()); if (!_VerificaExistenciaEndereco(end_id)) { END_Endereco entityEndereco = new END_Endereco { end_id = end_id }; END_EnderecoBO.GetEntity(entityEndereco); if (END_EnderecoBO.Delete(entityEndereco)) { _grvEndereco.PageIndex = 0; _grvEndereco.DataBind(); ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Delete, "end_id: " + end_id); _lblMessage.Text = UtilBO.GetErroMessage("Endereço excluído com sucesso.", UtilBO.TipoMensagem.Sucesso); } else { _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar excluir o endereço.", UtilBO.TipoMensagem.Erro); } } else { _lblMessage.Text = UtilBO.GetErroMessage("Endereço não pode ser excluído, pois está preparado para associação. Remover endereço da associação.", UtilBO.TipoMensagem.Erro); } } catch (Exception ex) { ApplicationWEB._GravaErro(ex); _lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Erro); } } }
private void LoadSession(SYS_Usuario entityUsuario) { __SessionWEB.__UsuarioWEB.Usuario = entityUsuario; __SessionWEB.__UsuarioWEB.responsavel = RadioButtonList1.SelectedIndex == 1; if (__SessionWEB.__UsuarioWEB.responsavel) { SYS_Usuario entityUsuarioAluno = new SYS_Usuario { ent_id = UCComboEntidade1.Valor , usu_login = ACA_ParametroAcademicoBO.ParametroValorPorEntidade(eChaveAcademico.PREFIXO_LOGIN_ALUNO_AREA_ALUNO, __SessionWEB.__UsuarioWEB.Usuario.ent_id) + txtLogin.Text }; SYS_UsuarioBO.GetSelectBy_ent_id_usu_login(entityUsuarioAluno); __SessionWEB.__UsuarioWEB.pes_idAluno = entityUsuarioAluno.pes_id; } // Carrega grupos do usuário IList <SYS_Grupo> list = SYS_GrupoBO.GetSelectBySis_idAndUsu_id(__SessionWEB.__UsuarioWEB.Usuario.usu_id, ApplicationWEB.AreaAlunoSistemaID); // Verifica se foi carregado os grupos do usuário if (list.Count > 0) { __SessionWEB.__UsuarioWEB.Grupo = list[0]; } else { throw new ValidationException("Não foi possível atender a solicitação, nenhum grupo de usuário encontrado."); } // Armazena o cid_id referente a entidade do usuário na Session Guid ene_id = SYS_EntidadeEnderecoBO.Select_ene_idBy_ent_id(__SessionWEB.__UsuarioWEB.Usuario.ent_id); SYS_EntidadeEndereco entityEntidadeEndereco = new SYS_EntidadeEndereco { ent_id = __SessionWEB.__UsuarioWEB.Usuario.ent_id, ene_id = ene_id }; SYS_EntidadeEnderecoBO.GetEntity(entityEntidadeEndereco); END_Endereco entityEndereco = new END_Endereco { end_id = entityEntidadeEndereco.end_id }; END_EnderecoBO.GetEntity(entityEndereco); __SessionWEB._cid_id = entityEndereco.cid_id; // Armazena o nome da pessoa ou o login do usuário na Session PES_Pessoa EntityPessoa = new PES_Pessoa { pes_id = __SessionWEB.__UsuarioWEB.Usuario.pes_id }; PES_PessoaBO.GetEntity(EntityPessoa); __SessionWEB.UsuarioLogado = string.IsNullOrEmpty(EntityPessoa.pes_nome) ? __SessionWEB.__UsuarioWEB.Usuario.usu_login : EntityPessoa.pes_nome; }
/// <summary> /// Cria e retorna a entidade de Cadastro de Escola de Origem /// </summary> /// <returns>Estrutura ACA_AlunoEscolaOrigem_Cadastro</returns> public ACA_AlunoEscolaOrigem_Cadastro CriarEntityCadastroEscolaOrigem() { ACA_AlunoEscolaOrigem_Cadastro cad = new ACA_AlunoEscolaOrigem_Cadastro { entEscolaOrigem = new ACA_AlunoEscolaOrigem { eco_id = VS_eco_id }, entEndereco = new END_Endereco() }; try { if (VS_eco_id > 0) { // Carrega as escolas de origens cadastradas ACA_AlunoEscolaOrigemBO.GetEntity(cad.entEscolaOrigem); // Carrega o endereço da escola de origem cadastrada cad.entEndereco.end_id = cad.entEscolaOrigem.end_id; END_EnderecoBO.GetEntity(cad.entEndereco); } else { // Recupera os campos do UserControl de endereço END_Endereco entityEndereco = new END_Endereco(); string numero = string.Empty; string complemento = string.Empty; //string msg; //UCEnderecos1.RetornaEnderecoCadastrado(out entityEndereco, out numero, out complemento, out msg); entityEndereco.end_situacao = 1; // Armazena os dados da escola de origem informados pelo usuário cad.entEscolaOrigem.tre_id = VS_tre_id > 0 ? VS_tre_id : UCComboTipoRedeEnsino1.Valor; cad.entEscolaOrigem.eco_nome = !string.IsNullOrEmpty(VS_eco_nome) ? VS_eco_nome : txtNomeEscolaOrigemDestino.Text; cad.entEscolaOrigem.eco_codigoInep = !string.IsNullOrEmpty(VS_eco_codigoInep) ? VS_eco_codigoInep : txtCodigoInepEscolaOrigemDestino.Text; cad.entEscolaOrigem.cid_id = !string.IsNullOrEmpty(VS_cid_id.ToString()) ? VS_cid_id : (string.IsNullOrEmpty(txtCid_idMunicipio.Value) ? Guid.Empty : new Guid(txtCid_idMunicipio.Value)); cad.entEscolaOrigem.eco_numero = numero; cad.entEscolaOrigem.eco_complemento = complemento; cad.entEscolaOrigem.eco_situacao = 1; // Armazena os dados do endereço informados pelo usuário cad.entEndereco = entityEndereco; } return(cad); } catch (Exception) { return(cad); } }
/// <summary> /// Carrega um endereço com os dados passados por parâmetro - Utilizar quando for /// cadastro único. /// </summary> /// <param name="end_id"></param> /// <param name="numero"></param> /// <param name="complemento"></param> public void CarregarEndereco(Guid end_id, string numero, string complemento) { try { END_Endereco ent = new END_Endereco() { end_id = end_id }; END_EnderecoBO.GetEntity(ent); CarregarEndereco(ent, numero, complemento); } catch (Exception ex) { ApplicationWEB._GravaErro(ex); lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar carregar os endereços.", UtilBO.TipoMensagem.Erro); } }
/// <summary> /// Carrega um endereço com os dados passados por parâmetro - Utilizar quando for /// cadastro único. /// </summary> /// <param name="entEndereco"></param> /// <param name="numero"></param> /// <param name="complemento"></param> public void CarregarEndereco(END_Endereco entEndereco, string numero, string complemento, double latitude, double longitude, bool principal) { try { DataTable dt = CriaDataTable(true); dt.Rows[0]["end_id"] = entEndereco.end_id; // Se for endereço novo - não tem END_ID - setar novo ID. if (entEndereco.end_id == Guid.Empty) { dt.Rows[0]["end_id"] = Guid.NewGuid(); } dt.Rows[0]["end_cep"] = entEndereco.end_cep; dt.Rows[0]["end_logradouro"] = entEndereco.end_logradouro; dt.Rows[0]["end_distrito"] = entEndereco.end_distrito; dt.Rows[0]["end_zona"] = entEndereco.end_zona; dt.Rows[0]["end_bairro"] = entEndereco.end_bairro; dt.Rows[0]["cid_id"] = entEndereco.cid_id; // Carregar cidade. END_Cidade cid = new END_Cidade() { cid_id = entEndereco.cid_id }; END_CidadeBO.GetEntity(cid); dt.Rows[0]["cid_nome"] = cid.cid_nome; dt.Rows[0]["numero"] = numero; dt.Rows[0]["complemento"] = complemento; dt.Rows[0]["latitude"] = latitude; dt.Rows[0]["longitude"] = longitude; dt.Rows[0]["Enderecoprincipal"] = principal; dt.Rows[0]["novo"] = false; CarregarEnderecos(dt); } catch (Exception ex) { ApplicationWEB._GravaErro(ex); lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar carregar os endereços.", UtilBO.TipoMensagem.Erro); } }
public static void SaveEnderecosPessoa(TalkDBTransaction banco, PES_Pessoa entity, DataTable dtEndereco) { //Verifica se os dados da pessoa serão sempre salvos em maiúsculo. string sSalvarMaiusculo = SYS_ParametroBO.ParametroValor(SYS_ParametroBO.eChave.SALVAR_SEMPRE_MAIUSCULO); bool Salvar_Sempre_Maiusculo = !string.IsNullOrEmpty(sSalvarMaiusculo) && Convert.ToBoolean(sSalvarMaiusculo); PES_PessoaEndereco entityEndereco = new PES_PessoaEndereco { pes_id = entity.pes_id }; if (banco == null) { PES_PessoaEnderecoDAO dao = new PES_PessoaEnderecoDAO(); banco = dao._Banco.CopyThisInstance(); banco.Open(IsolationLevel.ReadCommitted); } for (int i = 0; i < dtEndereco.Rows.Count; i++) { // if (dtEndereco.Rows[i].RowState != DataRowState.Deleted) if (!Convert.ToBoolean(dtEndereco.Rows[i]["excluido"].ToString())) { string end_id = dtEndereco.Rows[i]["end_id"].ToString(); if ((String.IsNullOrEmpty(end_id)) || (end_id.Equals(Guid.Empty.ToString()))) { END_Endereco entityNovoEndereco = new END_Endereco { //[OLD]end_id = new Guid(dtEndereco.Rows[i]["end_id"].ToString()) end_cep = dtEndereco.Rows[i]["end_cep"].ToString() , end_logradouro = Salvar_Sempre_Maiusculo ? dtEndereco.Rows[i]["end_logradouro"].ToString().ToUpper() : dtEndereco.Rows[i]["end_logradouro"].ToString() , end_distrito = Salvar_Sempre_Maiusculo ? dtEndereco.Rows[i]["end_distrito"].ToString().ToUpper() : dtEndereco.Rows[i]["end_distrito"].ToString() , end_zona = dtEndereco.Rows[i]["end_zona"].ToString() == "0" || string.IsNullOrEmpty(dtEndereco.Rows[i]["end_zona"].ToString()) ? Convert.ToByte(0) : Convert.ToByte(dtEndereco.Rows[i]["end_zona"].ToString()) , end_bairro = Salvar_Sempre_Maiusculo ? dtEndereco.Rows[i]["end_bairro"].ToString().ToUpper() : dtEndereco.Rows[i]["end_bairro"].ToString() , cid_id = new Guid(dtEndereco.Rows[i]["cid_id"].ToString()) , end_situacao = Convert.ToByte(1) }; //Inclui dados na tabela END_Endereco (se necessário) if (entityNovoEndereco.end_id == Guid.Empty) { entityEndereco.end_id = END_EnderecoBO.Save(entityNovoEndereco, Guid.Empty, banco); entityNovoEndereco.end_id = entityEndereco.end_id; } dtEndereco.Rows[i]["end_id"] = entityNovoEndereco.end_id; } string endRel_id = dtEndereco.Rows[i]["endRel_id"].ToString(); if (dtEndereco.Rows[i].RowState == DataRowState.Added || string.IsNullOrEmpty(endRel_id)) { //TRATA DECIMAL decimal latitude = string.IsNullOrEmpty(dtEndereco.Rows[i]["latitude"].ToString()) ? 0 : decimal.Parse(dtEndereco.Rows[i]["latitude"].ToString()); decimal longitude = string.IsNullOrEmpty(dtEndereco.Rows[i]["longitude"].ToString()) ? 0 : decimal.Parse(dtEndereco.Rows[i]["longitude"].ToString()); //ATRIBUI VALORES entityEndereco.end_id = new Guid(dtEndereco.Rows[i]["end_id"].ToString()); entityEndereco.pse_numero = Salvar_Sempre_Maiusculo ? dtEndereco.Rows[i]["numero"].ToString().ToUpper() : dtEndereco.Rows[i]["numero"].ToString(); entityEndereco.pse_complemento = Salvar_Sempre_Maiusculo ? dtEndereco.Rows[i]["complemento"].ToString().ToUpper() : dtEndereco.Rows[i]["complemento"].ToString(); entityEndereco.pse_situacao = Convert.ToByte(1); entityEndereco.pse_id = new Guid(dtEndereco.Rows[i]["id"].ToString()); entityEndereco.IsNew = true; entityEndereco.pse_enderecoPrincipal = string.IsNullOrEmpty(dtEndereco.Rows[i]["enderecoprincipal"].ToString()) ? false : Convert.ToBoolean(dtEndereco.Rows[i]["enderecoprincipal"]); entityEndereco.pse_latitude = latitude; entityEndereco.pse_longitude = longitude; Save(entityEndereco, banco); //Incrementa um na integridade do endereço END_EnderecoDAO endDAL = new END_EnderecoDAO { _Banco = banco }; endDAL.Update_IncrementaIntegridade(entityEndereco.end_id); } else if (dtEndereco.Rows[i].RowState == DataRowState.Modified && !string.IsNullOrEmpty(endRel_id)) { //TRATA DECIMAL decimal latitude = string.IsNullOrEmpty(dtEndereco.Rows[i]["latitude"].ToString()) ? 0 : decimal.Parse(dtEndereco.Rows[i]["latitude"].ToString()); decimal longitude = string.IsNullOrEmpty(dtEndereco.Rows[i]["longitude"].ToString()) ? 0 : decimal.Parse(dtEndereco.Rows[i]["longitude"].ToString()); //ATRIBUI VALORES entityEndereco.end_id = new Guid(dtEndereco.Rows[i]["end_id"].ToString()); entityEndereco.pse_numero = Salvar_Sempre_Maiusculo ? dtEndereco.Rows[i]["numero"].ToString().ToUpper() : dtEndereco.Rows[i]["numero"].ToString(); entityEndereco.pse_complemento = Salvar_Sempre_Maiusculo ? dtEndereco.Rows[i]["complemento"].ToString().ToUpper() : dtEndereco.Rows[i]["complemento"].ToString(); bool excluido = Convert.ToBoolean(dtEndereco.Rows[i]["excluido"]); if (excluido) { entityEndereco.pse_situacao = Convert.ToByte(3); } else { entityEndereco.pse_situacao = Convert.ToByte(1); } entityEndereco.pse_id = new Guid(dtEndereco.Rows[i]["endRel_id"].ToString()); entityEndereco.IsNew = false; entityEndereco.pse_enderecoPrincipal = string.IsNullOrEmpty(dtEndereco.Rows[i]["enderecoprincipal"].ToString()) ? false : Convert.ToBoolean(dtEndereco.Rows[i]["enderecoprincipal"]); entityEndereco.pse_latitude = latitude; entityEndereco.pse_longitude = longitude; Save(entityEndereco, banco); } } else { entityEndereco.pse_id = new Guid(dtEndereco.Rows[i]["endRel_id", DataRowVersion.Original].ToString()); entityEndereco.end_id = new Guid(dtEndereco.Rows[i]["end_id", DataRowVersion.Original].ToString()); PES_PessoaEnderecoDAO pesendDAL = new PES_PessoaEnderecoDAO { _Banco = banco }; pesendDAL.Delete(entityEndereco); //Decrementa um na integridade do endereço END_EnderecoDAO endDAL = new END_EnderecoDAO { _Banco = banco }; endDAL.Update_DecrementaIntegridade(entityEndereco.end_id); } } }
/// <summary> /// Retorna um datatable contendo todos os endereços /// que não foram excluídos logicamente, filtrados por /// end_cep, end_logradouro /// </summary> /// <param name="end_cep">Campo end_cep da tabela END_Endereco do bd</param> /// <param name="end_logradouro">Campo end_logradouro da tabela END_Endereco do bd</param> /// <returns>Lista com os endereço</returns> public List <END_Endereco> SelectBy_end_id_end_logradouro ( string end_cep , string end_logradouro ) { List <END_Endereco> lt = new List <END_Endereco>(); QuerySelectStoredProcedure qs = new QuerySelectStoredProcedure("NEW_END_Endereco_SelectBy_end_cep_end_logradouro", this._Banco); try { #region PARAMETROS Param = qs.NewParameter(); Param.DbType = DbType.AnsiString; Param.ParameterName = "@end_cep"; Param.Size = 8; if (!string.IsNullOrEmpty(end_cep)) { Param.Value = end_cep; } else { Param.Value = DBNull.Value; } qs.Parameters.Add(Param); Param = qs.NewParameter(); Param.DbType = DbType.AnsiString; Param.ParameterName = "@end_logradouro"; Param.Size = 200; if (!string.IsNullOrEmpty(end_logradouro)) { Param.Value = end_logradouro; } else { Param.Value = DBNull.Value; } qs.Parameters.Add(Param); #endregion qs.Execute(); foreach (DataRow dr in qs.Return.Rows) { END_Endereco entity = new END_Endereco(); lt.Add(this.DataRowToEntity(dr, entity)); } return(lt); } catch { throw; } finally { qs.Parameters.Clear(); } }
/// <summary> /// Carrega a entidade do endereço cadastrado quando for cadastro único, seta o número /// e o complemento. /// Retorna true: /// - Se o endereço não é obrigatório e está completo /// (todos os campos obrigatórios estão preenchidos). /// - Se o endereço não é obrigatório e não foi preenchido nenhum campo. /// Retorna false: /// - Se o endereço é obrigatório e não foi preenchido todos os campos. /// - Se o endereço não é obrigatório e tem somente alguns campos preenchidos /// (começou tem que terminar). /// </summary> /// <param name="ent"></param> /// <param name="numero"></param> /// <param name="complemento"></param> /// <param name="msgErro"></param> /// <returns></returns> public bool RetornaEnderecoCadastrado(out DataTable dt, out string msgErro) { END_Endereco ent = new END_Endereco(); msgErro = ""; string numero = ""; string complemento = ""; double latitude = 0; double longitude = 0; //DataTable //dt = RetornaEnderecos(); dt = VS_Uae; bool ret = false; bool enderecoPrincipal = false; // if (dt.Rows.Count > 0) for (int i = 0; i < dt.Rows.Count; i++) { // Carregar dados do endereço. DataRow dr = dt.Rows[i]; if (Convert.ToBoolean(dr["enderecoprincipal"].ToString())) { enderecoPrincipal = Convert.ToBoolean(dr["enderecoprincipal"].ToString()); } string end_id = dr["end_id"].ToString(); // Preenche o ID do endereço. if ((String.IsNullOrEmpty(end_id)) || (end_id.Equals(Guid.Empty.ToString()))) { ent.end_id = new Guid(dr["id"].ToString()); ent.IsNew = true; } else { ent.end_id = new Guid(dr["end_id"].ToString()); ent.IsNew = false; END_EnderecoBO.GetEntity(ent); } ent.end_cep = dr["end_cep"].ToString(); ent.end_logradouro = dr["end_logradouro"].ToString(); ent.end_distrito = dr["end_distrito"].ToString(); if (!(string.IsNullOrEmpty(dr["end_zona"].ToString()))) { ent.end_zona = Convert.ToByte(dr["end_zona"]); } ent.end_bairro = dr["end_bairro"].ToString(); ent.cid_id = String.IsNullOrEmpty(dr["cid_id"].ToString()) ? Guid.Empty : new Guid(dr["cid_id"].ToString()); ent.cid_nome = dr["cid_nome"].ToString(); numero = dr["numero"].ToString(); complemento = dr["complemento"].ToString(); //} // Verificar se endereço está válido. if (_VS_Obrigatorio) { ret = ((ent.Validate()) && (ent.cid_id != Guid.Empty)); if (!ret) { msgErro = UtilBO.ErrosValidacao(ent); } if (!string.IsNullOrEmpty(dr["latitude"].ToString())) { if (double.TryParse(dr["latitude"].ToString(), out latitude)) { dr["latitude"] = dr["latitude"].ToString().Replace(".", ","); latitude = string.IsNullOrEmpty(dr["latitude"].ToString()) ? 0 : double.Parse(dr["latitude"].ToString()); } else { msgErro += "Latitude está incorreto.<br/>"; ret = false; } } if (!string.IsNullOrEmpty(dr["longitude"].ToString())) { if (double.TryParse(dr["longitude"].ToString(), out longitude)) { dr["longitude"] = dr["longitude"].ToString().Replace(".", ","); longitude = string.IsNullOrEmpty(dr["longitude"].ToString()) ? 0 : double.Parse(dr["longitude"].ToString()); } else { msgErro += "Longitude está incorreto.<br/>"; ret = false; } } if (ent.cid_id == Guid.Empty) { if (String.IsNullOrEmpty(ent.cid_nome)) { msgErro += "Endereço " + (i + 1) + " - Cidade é obrigatório.<br/>"; } else { msgErro += "Endereço " + (i + 1) + " - Cidade não encontrada.<br/>"; } } if (String.IsNullOrEmpty(numero)) { ret = false; msgErro += "Endereço " + (i + 1) + " - Número é obrigatório.<br/>"; } } else { if ((!String.IsNullOrEmpty(ent.end_cep)) || (!String.IsNullOrEmpty(ent.end_logradouro)) || (!String.IsNullOrEmpty(numero)) || (!String.IsNullOrEmpty(ent.end_distrito)) || (ent.end_zona > 0) || (!String.IsNullOrEmpty(ent.end_bairro)) || (ent.cid_id != Guid.Empty)) { // Se preencheu pelo menos 1 campo, tem que preencher todos. ret = ((ent.Validate()) && (ent.cid_id != Guid.Empty)); if (!ret) { msgErro += UtilBO.ErrosValidacao(ent); } if (ent.cid_id == Guid.Empty) { msgErro += "Endereço " + (i + 1) + " - Cidade é obrigatório.<br/>"; } if (String.IsNullOrEmpty(numero)) { ret = false; msgErro += "Endereço " + (i + 1) + " - Número é obrigatório.<br/>"; } if (!enderecoPrincipal) { ret = false; msgErro += "É necessário selecionar um endereço principal."; } if (!string.IsNullOrEmpty(dr["latitude"].ToString())) { if (double.TryParse(dr["latitude"].ToString(), out latitude)) { // dr["latitude"] = dr["latitude"].ToString().Replace(".", ","); latitude = string.IsNullOrEmpty(dr["latitude"].ToString()) ? 0 : double.Parse(dr["latitude"].ToString()); } else { msgErro += "Latitude está incorreto.<br/>"; ret = false; } } if (!string.IsNullOrEmpty(dr["longitude"].ToString())) { if (double.TryParse(dr["longitude"].ToString(), out longitude)) { // dr["longitude"] = dr["longitude"].ToString().Replace(".", ","); longitude = string.IsNullOrEmpty(dr["longitude"].ToString()) ? 0 : double.Parse(dr["longitude"].ToString()); } else { msgErro += "Longitude está incorreto.<br/>"; ret = false; } } } else { ret = true; } } } if (!_VS_Obrigatorio && dt.Rows.Count == 0) { ret = true; } if (_VS_Obrigatorio && !enderecoPrincipal) { ret = false; msgErro += "É necessário selecionar um endereço principal."; } return(ret); }
/// <summary> /// Insere e altera uma entidade /// </summary> private void _Salvar() { try { List <END_Endereco> ltEntityEndereco = new List <END_Endereco>(); List <SYS_UnidadeAdministrativaEndereco> ltEntityUAEndereco = new List <SYS_UnidadeAdministrativaEndereco>(); string numero; string complemento; string msg; decimal latitude; decimal longitude; DataTable dt; bool cadastraEndereco = UCEnderecos1.RetornaEnderecoCadastrado(out dt, out msg); if (ValidaCampos(dt)) { string msgErro = string.Empty; if (String.IsNullOrEmpty(_lblMessage.Text.Trim()) && !UCGridContato1.SalvaConteudoGrid(out msgErro)) { UCGridContato1._MensagemErro.Visible = false; _lblMessage.Text = msgErro; txtSelectedTab.Value = "2"; return; } // Cadastra Unidade Administrativa SYS_UnidadeAdministrativa entityUnidadeAdministrativa = new SYS_UnidadeAdministrativa { ent_id = _VS_ent_id , uad_id = _VS_uad_id , tua_id = new Guid(UCComboTipoUnidadeAdministrativa1._Combo.SelectedValue) , uad_nome = _txtNome.Text , uad_sigla = _txtSigla.Text , uad_codigo = _txtCodigo.Text , uad_codigoInep = _txtCodigoInep.Text , uad_idSuperior = UCUASuperior.VsUadId , uad_codigoIntegracao = _txtCodigoIntegracao.Text , uad_situacao = _chkBloqueado.Checked ? Convert.ToByte(2) : Convert.ToByte(1) , IsNew = (_VS_uad_id != Guid.Empty) ? false : true }; for (int i = 0; i < dt.Rows.Count; i++) { if (!cadastraEndereco) { throw new ValidationException(msg); } DataRow dr = dt.Rows[i]; string end_id = dr["end_id"].ToString(); Guid uae_id = string.IsNullOrEmpty(dr["endRel_id"].ToString()) ? Guid.NewGuid() : new Guid(dr["endRel_id"].ToString()); int zona = 0; if (!string.IsNullOrEmpty(dr["end_zona"].ToString())) { zona = Convert.ToInt16(dr["end_zona"].ToString()); } bool excluido = Convert.ToBoolean(dr["excluido"]); if ((String.IsNullOrEmpty(end_id)) || (end_id.Equals(Guid.Empty.ToString()))) { ltEntityEndereco.Add(new END_Endereco { end_id = new Guid(dr["id"].ToString()), IsNew = true, cid_nome = dr["cid_nome"].ToString(), end_logradouro = dr["end_logradouro"].ToString(), end_distrito = dr["end_distrito"].ToString(), end_zona = (zona != 0) ? Convert.ToByte(dr["end_zona"].ToString()) : Convert.ToByte(0), end_bairro = dr["end_bairro"].ToString(), cid_id = new Guid(dr["cid_id"].ToString()), end_cep = dr["end_cep"].ToString(), end_situacao = Convert.ToByte(1) }); } else { END_Endereco entityEndereco = new END_Endereco(); entityEndereco.end_id = new Guid(dr["end_id"].ToString()); entityEndereco.IsNew = false; END_EnderecoBO.GetEntity(entityEndereco); entityEndereco.cid_id = new Guid(dr["cid_id"].ToString()); entityEndereco.cid_nome = dr["cid_nome"].ToString(); entityEndereco.end_logradouro = dr["end_logradouro"].ToString(); entityEndereco.end_distrito = dr["end_distrito"].ToString(); entityEndereco.end_zona = (zona != 0) ? Convert.ToByte(dr["end_zona"].ToString()) : Convert.ToByte(0); entityEndereco.end_bairro = dr["end_bairro"].ToString(); entityEndereco.end_cep = dr["end_cep"].ToString(); entityEndereco.end_situacao = (excluido) ? Convert.ToByte(3) : Convert.ToByte(1); ltEntityEndereco.Add(entityEndereco); } numero = dr["numero"].ToString(); complemento = dr["complemento"].ToString(); latitude = string.IsNullOrEmpty(dr["latitude"].ToString()) ? 0 : decimal.Parse(dr["latitude"].ToString()); longitude = string.IsNullOrEmpty(dr["longitude"].ToString()) ? 0 : decimal.Parse(dr["longitude"].ToString()); bool excluirEndereco = String.IsNullOrEmpty(dr["end_cep"].ToString()) && !_VS_IsNew_end_id; if (!String.IsNullOrEmpty(ltEntityEndereco[i].end_cep)) { ltEntityUAEndereco.Add(new SYS_UnidadeAdministrativaEndereco() { ent_id = _VS_ent_id, uad_id = _VS_uad_id, end_id = ltEntityEndereco[i].end_id, uae_numero = numero, uae_complemento = complemento, uae_situacao = (excluido) ? Convert.ToByte(3) : Convert.ToByte(1), IsNew = (string.IsNullOrEmpty(dr["novo"].ToString()) ? false : Convert.ToBoolean(dr["novo"].ToString())), uae_latitude = latitude, uae_longitude = longitude, uae_id = uae_id, uae_enderecoPrincipal = (string.IsNullOrEmpty(dr["enderecoprincipal"].ToString()) ? false : Convert.ToBoolean(dr["enderecoprincipal"].ToString())), }); } } if (SYS_UnidadeAdministrativaBO.Save(entityUnidadeAdministrativa, ltEntityEndereco, ltEntityUAEndereco, UCGridContato1._VS_contatos, _VS_uad_idSuperiorAntigo, _VS_end_idAntigo, null)) { if (_VS_uad_id == Guid.Empty) { ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Insert, "ent_id: " + entityUnidadeAdministrativa.ent_id + "; uad_id: " + entityUnidadeAdministrativa.uad_id); __SessionWEB.PostMessages = UtilBO.GetErroMessage(String.Format("Unidade administrativa incluída com sucesso."), UtilBO.TipoMensagem.Sucesso); } else { ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Update, "ent_id: " + entityUnidadeAdministrativa.ent_id + "; uad_id: " + entityUnidadeAdministrativa.uad_id); __SessionWEB.PostMessages = UtilBO.GetErroMessage(String.Format("Unidade administrativa alterada com sucesso."), UtilBO.TipoMensagem.Sucesso); } Response.Redirect(__SessionWEB._AreaAtual._Diretorio + "UA/Busca.aspx", false); } else { _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar a unidade administrativa.", UtilBO.TipoMensagem.Erro); } } } catch (ValidationException ex) { _lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta); SetFocus(ValidationSummary1); } catch (ArgumentException ex) { _lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta); SetFocus(ValidationSummary1); } catch (DuplicateNameException ex) { _lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta); SetFocus(ValidationSummary1); } catch (Exception ex) { ApplicationWEB._GravaErro(ex); _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar a unidade administrativa.", UtilBO.TipoMensagem.Erro); SetFocus(ValidationSummary1); } }
/// <summary> /// Valida os dados da unidade administrativa de acordo com o padrão do censo escolar. /// </summary> /// <param name="entityUnidadeAdministrativa">Entidade SYS_UnidadeAdministrativa</param> /// <param name="entityEndereco">Entidade END_Endereco</param> /// <param name="entityUnidadeAdministrativaEndereco">Entidade SYS_UnidadeAdministrativaEndereco</param> public static void ValidaCensoEscolar(SYS_UnidadeAdministrativa entityUnidadeAdministrativa, END_Endereco entityEndereco, SYS_UnidadeAdministrativaEndereco entityUnidadeAdministrativaEndereco) { string numero = entityUnidadeAdministrativaEndereco != null ? entityUnidadeAdministrativaEndereco.uae_numero : string.Empty; string complemento = entityUnidadeAdministrativaEndereco != null ? entityUnidadeAdministrativaEndereco.uae_complemento : string.Empty; ValidaCensoEscolar(entityUnidadeAdministrativa.uad_nome, "Unidade administrativa", entityEndereco, numero, complemento); }
/// <summary> /// Valida os dados da unidade administrativa de acordo com o padrão do censo escolar. /// </summary> /// <param name="nomeUnidadeAdministrativa">Nome da unidade administrativa</param> /// <param name="termoUnidadeAdministrativa">Termo para referenciar a unidade administrativa</param> /// <param name="entityEndereco">Entidade END_Endereco</param> /// <param name="numero">Núemro do endereço</param> /// <param name="complemento">Complemento do endereço</param> public static void ValidaCensoEscolar(string nomeUnidadeAdministrativa, string termoUnidadeAdministrativa, END_Endereco entityEndereco, string numero, string complemento) { // Valida nome da unidade administrativa. Regex regex = new Regex(@"^[\sa-zA-Z0-9ÇÁÀÃÂÉÈÊÍÌÓÒÔÕÚÙçáàãâéèêíìóòôõúùªº°-]*$", RegexOptions.None); if (!regex.IsMatch(nomeUnidadeAdministrativa)) { throw new ValidationException(string.Format("Nome da {0} não está no padrão do censo escolar, permitido somente os caracteres especiais: ª, º, -.", termoUnidadeAdministrativa.ToLower())); } regex = new Regex(@".{4}", RegexOptions.None); if (!regex.IsMatch(nomeUnidadeAdministrativa)) { throw new ValidationException(string.Format("Nome da {0} não está no padrão do censo escolar, o nome deve ter no mínimo 4 caracteres.", termoUnidadeAdministrativa.ToLower())); } // Valida endereço. if (entityEndereco != null) { END_EnderecoBO.ValidaCensoEscolar(entityEndereco, numero, complemento); } }
private void _Associar() { try { END_Endereco entityEndereco = new END_Endereco { end_id = _VS_end_id , end_cep = txtCEP.Text , end_logradouro = txtLogradouro.Text , end_distrito = txtDistrito.Text , end_zona = UCComboZona1._Combo.SelectedValue == "-1" ? Convert.ToByte(0) : Convert.ToByte(UCComboZona1._Combo.SelectedValue) , end_bairro = txtBairro.Text , cid_id = _VS_cid_id , end_situacao = 1 , IsNew = (_VS_end_id != Guid.Empty) ? false : true }; XmlDocument xDoc = new XmlDocument(); XmlNode xElem = xDoc.CreateNode(XmlNodeType.Element, "Coluna", ""); XmlNode xNodeCoor = xDoc.CreateNode(XmlNodeType.Element, "ColunaValorAntigo", ""); XmlNode xNode; for (int i = 0; i < _VS_AssociarEnderecos.Rows.Count; i++) { if (_VS_AssociarEnderecos.Rows[i]["end_id"].ToString() != _VS_end_id.ToString()) { xNodeCoor = xDoc.CreateNode(XmlNodeType.Element, "ColunaValorAntigo", ""); xNode = xDoc.CreateNode(XmlNodeType.Element, "valor", ""); xNode.InnerText = _VS_AssociarEnderecos.Rows[i]["end_id"].ToString(); xNodeCoor.AppendChild(xNode); xElem.AppendChild(xNodeCoor); } } xDoc.AppendChild(xElem); if (END_EnderecoBO.AssociarEnderecos(entityEndereco, _VS_cid_idAntigo, xDoc)) { ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Update, "end_id: " + entityEndereco.end_id); __SessionWEB.PostMessages = UtilBO.GetErroMessage("Endereços associados com sucesso.", UtilBO.TipoMensagem.Sucesso); Response.Redirect(__SessionWEB._AreaAtual._Diretorio + "ManutencaoEndereco/Busca.aspx", false); } else { _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar associar os endereços.", UtilBO.TipoMensagem.Erro); } } catch (CoreLibrary.Validation.Exceptions.ValidationException ex) { _lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta); } catch (ArgumentException ex) { _lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta); } catch (DuplicateNameException ex) { _lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta); } catch (Exception ex) { ApplicationWEB._GravaErro(ex); _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar associar os endereços.", UtilBO.TipoMensagem.Erro); } finally { _updEnderecos.Update(); } }
/// <summary> /// Insere e altera uma pessoa /// </summary> private void _Salvar() { try { string msgErro; bool mensagemEmBranco = String.IsNullOrEmpty(_lblMessage.Text.Trim()); if (mensagemEmBranco && !UCGridContato1.SalvaConteudoGrid(out msgErro)) { UCGridContato1._MensagemErro.Visible = false; _lblMessage.Text = msgErro; txtSelectedTab.Value = "2"; return; } if (mensagemEmBranco && !UCGridCertidaoCivil1.AtualizaViewState(out msgErro)) { _lblMessage.Text = msgErro; txtSelectedTab.Value = "3"; return; } if (!UCGridDocumento1.ValidaConteudoGrid(out msgErro)) { UCGridDocumento1._MensagemErro.Visible = false; _lblMessage.Text = UtilBO.GetErroMessage(msgErro, UtilBO.TipoMensagem.Alerta); txtSelectedTab.Value = "3"; return; } //Adiciona valores na entidade de pessoa PES_Pessoa entityPessoa = new PES_Pessoa { pes_id = UCCadastroPessoa1._VS_pes_id , pes_nome = UCCadastroPessoa1._txtNome.Text , pes_nome_abreviado = UCCadastroPessoa1._txtNomeAbreviado.Text , pes_nomeSocial = UCCadastroPessoa1._txtNomeSocial.Text , pai_idNacionalidade = UCCadastroPessoa1._ComboNacionalidade.SelectedValue == "-1" ? Guid.Empty : new Guid(UCCadastroPessoa1._ComboNacionalidade.SelectedValue) , pes_naturalizado = UCCadastroPessoa1._chkNaturalizado.Checked , cid_idNaturalidade = UCCadastroPessoa1._VS_cid_id , pes_dataNascimento = (String.IsNullOrEmpty(UCCadastroPessoa1._txtDataNasc.Text.Trim()) ? new DateTime() : Convert.ToDateTime(UCCadastroPessoa1._txtDataNasc.Text.Trim())) , pes_racaCor = UCCadastroPessoa1._ComboRacaCor.SelectedValue == "-1" ? Convert.ToByte(null) : Convert.ToByte(UCCadastroPessoa1._ComboRacaCor.SelectedValue) , pes_sexo = UCCadastroPessoa1._ComboSexo.SelectedValue == "-1" ? Convert.ToByte(null) : Convert.ToByte(UCCadastroPessoa1._ComboSexo.SelectedValue) , pes_idFiliacaoPai = UCCadastroPessoa1._VS_pes_idFiliacaoPai , pes_idFiliacaoMae = UCCadastroPessoa1._VS_pes_idFiliacaoMae , tes_id = new Guid(UCCadastroPessoa1._ComboEscolaridade.SelectedValue) , pes_estadoCivil = UCCadastroPessoa1._ComboEstadoCivil.SelectedValue == "-1" ? Convert.ToByte(null) : Convert.ToByte(UCCadastroPessoa1._ComboEstadoCivil.SelectedValue) , pes_situacao = 1 , IsNew = (UCCadastroPessoa1._VS_pes_id != Guid.Empty) ? false : true }; PES_PessoaDeficiencia entityPessoaDeficiencia = new PES_PessoaDeficiencia { pes_id = _VS_pes_id , tde_id = new Guid(UCCadastroPessoa1._ComboTipoDeficiencia.SelectedValue) , IsNew = true }; CFG_Arquivo entArquivo = null; //armazema a imagem na entidade de pessoa if (!string.IsNullOrEmpty(UCCadastroPessoa1._iptFoto.PostedFile.FileName)) { string tam = SYS_ParametroBO.ParametroValor(SYS_ParametroBO.eChave.TAMANHO_MAX_FOTO_PESSOA); if (!string.IsNullOrEmpty(tam)) { if (UCCadastroPessoa1._iptFoto.PostedFile.ContentLength > Convert.ToInt32(tam) * 1000) { throw new ArgumentException("Foto é maior que o tamanho máximo permitido."); } } if (UCCadastroPessoa1._iptFoto.PostedFile.FileName.Substring(UCCadastroPessoa1._iptFoto.PostedFile.FileName.Length - 3, 3).ToUpper() != "JPG") { throw new ArgumentException("Foto tem que estar no formato \".jpg\"."); } entArquivo = CFG_ArquivoBO.CriarEntidadeArquivo(UCCadastroPessoa1._iptFoto.PostedFile); if (_VS_arq_idAntigo > 0) { // Se já existia foto e vai ser alterada, muda só o conteúdo. entArquivo.arq_id = _VS_arq_idAntigo; entArquivo.IsNew = false; } } if (_VS_arq_idAntigo > 0) { entityPessoa.arq_idFoto = _VS_arq_idAntigo; } //Chama método salvar da pessoa /* [OLD] if (PES_PessoaBO.Save(entityPessoa * , entityPessoaDeficiencia * , UCEnderecos1._VS_enderecos * , UCGridContato1._VS_contatos * , UCGridDocumento1.RetornaDocumentoSave() * , UCGridCertidaoCivil1._VS_certidoes * , _VS_pai_idAntigo * , _VS_cid_idAntigo * , _VS_pes_idPaiAntigo * , _VS_pes_idMaeAntigo * , _VS_tes_idAntigo * , _VS_tde_idAntigo * , ApplicationWEB.TipoImagensPermitidas * , ApplicationWEB.TamanhoMaximoArquivo * , entArquivo * , UCCadastroPessoa1._chbExcluirImagem.Checked * ) * )*/ END_Endereco entityEndereco = new END_Endereco(); string msg; DataTable dtEndereco; bool cadastraEndereco = UCEnderecos1.RetornaEnderecoCadastrado(out dtEndereco, out msg); if (PES_PessoaBO.Save(entityPessoa , entityPessoaDeficiencia , dtEndereco , UCGridContato1._VS_contatos , UCGridDocumento1.RetornaDocumentoSave() , UCGridCertidaoCivil1._VS_certidoes , _VS_pai_idAntigo , _VS_cid_idAntigo , _VS_pes_idPaiAntigo , _VS_pes_idMaeAntigo , _VS_tes_idAntigo , _VS_tde_idAntigo , ApplicationWEB.TipoImagensPermitidas , ApplicationWEB.TamanhoMaximoArquivo , entArquivo , UCCadastroPessoa1._chbExcluirImagem.Checked ) ) { if (_VS_pes_id == Guid.Empty) { ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Insert, "pes_id: " + entityPessoa.pes_id); __SessionWEB.PostMessages = UtilBO.GetErroMessage(String.Format("Pessoa incluída com sucesso."), UtilBO.TipoMensagem.Sucesso); } else { ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Update, "pes_id: " + entityPessoa.pes_id); __SessionWEB.PostMessages = UtilBO.GetErroMessage(String.Format("Pessoa alterada com sucesso."), UtilBO.TipoMensagem.Sucesso); } Response.Redirect(__SessionWEB._AreaAtual._Diretorio + "ManutencaoPessoa/Busca.aspx", false); } else { _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar a pessoa.", UtilBO.TipoMensagem.Erro); } } catch (CoreLibrary.Validation.Exceptions.ValidationException ex) { _lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta); } catch (ArgumentException ex) { _lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta); } catch (DuplicateNameException ex) { _lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta); } catch (Exception ex) { ApplicationWEB._GravaErro(ex); _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar a pessoa.", UtilBO.TipoMensagem.Erro); } }
public static bool Save ( SYS_Entidade entityEntidade , DataTable entityEntidadeEndereco , DataTable dtContatos , Guid ent_idSuperiorAntigo , Guid end_idAntigo , string caminho , string nomeLogoCliente , HttpPostedFile logoCliente , CoreLibrary.Data.Common.TalkDBTransaction banco ) /* public static bool Save * ( * SYS_Entidade entityEntidade * , END_Endereco entityEndereco * , SYS_EntidadeEndereco entityEntidadeEndereco * , DataTable dtContatos * , Guid ent_idSuperiorAntigo * , Guid end_idAntigo * , string caminho * , string nomeLogoCliente * , HttpPostedFile logoCliente * ,CoreLibrary.Data.Common.TalkDBTransaction banco * )*/ { SYS_EntidadeDAO entDAL = new SYS_EntidadeDAO(); if (banco == null) { entDAL._Banco.Open(IsolationLevel.ReadCommitted); } else { entDAL._Banco = banco; } try { //Salva dados na tabela SYS_Entidade if (entityEntidade.Validate()) { if (VerificaRazaoSocialExistente(entityEntidade)) { throw new DuplicateNameException("Já existe uma entidade cadastrada com esta razão social."); } if (!string.IsNullOrEmpty(entityEntidade.ent_cnpj.Trim())) { if (!UtilBO._ValidaCNPJ(entityEntidade.ent_cnpj)) { throw new ArgumentException("CNPJ inválido."); } if (VerificaCNPJExistente(entityEntidade)) { throw new DuplicateNameException("Já existe uma entidade cadastrada com este CNPJ."); } } if (!string.IsNullOrEmpty(entityEntidade.ent_urlAcesso)) { Regex reg = new Regex(@"^(http|https):\/\/([a-z]+)(\.[a-z]+)+$"); if (!reg.IsMatch(entityEntidade.ent_urlAcesso)) { throw new ArgumentException("URL de acesso inválido."); } } if (entDAL.Salvar(entityEntidade) && !string.IsNullOrEmpty(nomeLogoCliente) && logoCliente != null) { nomeLogoCliente = entityEntidade.ent_id + "_" + nomeLogoCliente; UtilBO.SaveThumbnailImage ( 1000 , caminho , nomeLogoCliente , logoCliente , 84 , 60 ); } } else { throw new CoreLibrary.Validation.Exceptions.ValidationException(entityEntidade.PropertiesErrorList[0].Message); } //TODO:[Gabriel] Multiplos endereços /* * * if (entityEntidadeEndereco != null) * { * //Salva dados na tabela SYS_EntidadeEndereco * if (entityEntidadeEndereco.Validate()) * { * SYS_EntidadeEnderecoDAO entendDAL = new SYS_EntidadeEnderecoDAO { _Banco = entDAL._Banco }; * entityEntidadeEndereco.ent_id = entityEntidade.ent_id; * entendDAL.Salvar(entityEntidadeEndereco); * } * else * { * throw new CoreLibrary.Validation.Exceptions.ValidationException(entityEntidadeEndereco.PropertiesErrorList[0].Message); * } * * if (entityEntidadeEndereco.IsNew) * { * if (entityEntidadeEndereco.end_id != Guid.Empty) * { * //Incrementa um na integridade do endereço * END_EnderecoDAO endDAL = new END_EnderecoDAO { _Banco = entDAL._Banco }; * endDAL.Update_IncrementaIntegridade(entityEntidadeEndereco.end_id); * } * } * else * { * if (end_idAntigo != entityEntidadeEndereco.end_id) * { * END_EnderecoDAO endDAL = new END_EnderecoDAO { _Banco = entDAL._Banco }; * * if (entityEntidadeEndereco.ene_situacao != 3) * { * //Decrementa um na integridade do endereço antigo (se existia) * if (end_idAntigo != Guid.Empty) * endDAL.Update_DecrementaIntegridade(end_idAntigo); * * //Incrementa um na integridade do endereço atual (se existir) * if (entityEntidadeEndereco.end_id != Guid.Empty) * endDAL.Update_IncrementaIntegridade(entityEntidadeEndereco.end_id); * } * } * else * { * if (entityEntidadeEndereco.ene_situacao == 3) * { * //Decrementa um na integridade do endereço atual * if (end_idAntigo != Guid.Empty) * { * END_EnderecoDAO endDAL = new END_EnderecoDAO { _Banco = entDAL._Banco }; * endDAL.Update_DecrementaIntegridade(entityEntidadeEndereco.end_id); * } * } * } * } * } */ //Salva dados na tabela SYS_EntidadeContato SYS_EntidadeContato entityContato = new SYS_EntidadeContato { ent_id = entityEntidade.ent_id }; for (int i = 0; i < dtContatos.Rows.Count; i++) { if (dtContatos.Rows[i].RowState != DataRowState.Deleted) { if (dtContatos.Rows[i].RowState == DataRowState.Added) { entityContato.tmc_id = new Guid(dtContatos.Rows[i]["tmc_id"].ToString()); entityContato.enc_contato = dtContatos.Rows[i]["contato"].ToString(); entityContato.enc_situacao = Convert.ToByte(1); entityContato.enc_id = new Guid(dtContatos.Rows[i]["id"].ToString()); entityContato.IsNew = true; SYS_EntidadeContatoBO.Save(entityContato, entDAL._Banco); //Incrementa um na integridade do tipo de contato SYS_TipoMeioContatoDAO tipoDAL = new SYS_TipoMeioContatoDAO { _Banco = entDAL._Banco }; tipoDAL.Update_IncrementaIntegridade(entityContato.tmc_id); } else if (dtContatos.Rows[i].RowState == DataRowState.Modified) { entityContato.tmc_id = new Guid(dtContatos.Rows[i]["tmc_id"].ToString()); entityContato.enc_contato = dtContatos.Rows[i]["contato"].ToString(); entityContato.enc_situacao = Convert.ToByte(1); entityContato.enc_id = new Guid(dtContatos.Rows[i]["id"].ToString()); entityContato.IsNew = false; SYS_EntidadeContatoBO.Save(entityContato, entDAL._Banco); } } else { entityContato.enc_id = (Guid)dtContatos.Rows[i]["id", DataRowVersion.Original]; entityContato.tmc_id = (Guid)dtContatos.Rows[i]["tmc_id", DataRowVersion.Original]; SYS_EntidadeContatoDAO entconDAL = new SYS_EntidadeContatoDAO { _Banco = entDAL._Banco }; entconDAL.Delete(entityContato); //Decrementa um na integridade do tipo de contato SYS_TipoMeioContatoDAO tipoDAL = new SYS_TipoMeioContatoDAO { _Banco = entDAL._Banco }; tipoDAL.Update_DecrementaIntegridade(entityContato.tmc_id); } } if (entityEntidade.IsNew) { //Incrementa um na integridade do tipo de entidade SYS_TipoEntidadeDAO tipoDAL = new SYS_TipoEntidadeDAO { _Banco = entDAL._Banco }; tipoDAL.Update_IncrementaIntegridade(entityEntidade.ten_id); //Incrementa um na integridade da entidade superior (se existir) if (entityEntidade.ent_idSuperior != Guid.Empty) { entDAL.Update_IncrementaIntegridade(entityEntidade.ent_idSuperior); } } else { if (ent_idSuperiorAntigo != entityEntidade.ent_idSuperior) { //Decrementa um na integridade da entidade superior anterior (se existia) if (ent_idSuperiorAntigo != Guid.Empty) { entDAL.Update_DecrementaIntegridade(ent_idSuperiorAntigo); } //Incrementa um na integridade da entidade superior atual (se existir) if (entityEntidade.ent_idSuperior != Guid.Empty) { entDAL.Update_IncrementaIntegridade(entityEntidade.ent_idSuperior); } } } // endereço SYS_EntidadeEndereco entityEndereco = new SYS_EntidadeEndereco { ent_id = entityEntidade.ent_id }; // ABRIR CONEXÃO SYS_EntidadeEnderecoDAO entidadeEnderecoDAO = new SYS_EntidadeEnderecoDAO(); entidadeEnderecoDAO._Banco = entDAL._Banco; for (int i = 0; i < entityEntidadeEndereco.Rows.Count; i++) { //if (entityEntidadeEndereco.Rows[i].RowState != DataRowState.Deleted) if (!Convert.ToBoolean(entityEntidadeEndereco.Rows[i]["excluido"].ToString())) { string end_id = entityEntidadeEndereco.Rows[i]["end_id"].ToString(); if ((String.IsNullOrEmpty(end_id)) || (end_id.Equals(Guid.Empty.ToString()))) { END_Endereco entityNovoEndereco = new END_Endereco { //[OLD]end_id = new Guid(dtEndereco.Rows[i]["end_id"].ToString()) end_cep = entityEntidadeEndereco.Rows[i]["end_cep"].ToString() , end_logradouro = entityEntidadeEndereco.Rows[i]["end_logradouro"].ToString() , end_distrito = entityEntidadeEndereco.Rows[i]["end_distrito"].ToString() , end_zona = entityEntidadeEndereco.Rows[i]["end_zona"].ToString() == "0" || string.IsNullOrEmpty(entityEntidadeEndereco.Rows[i]["end_zona"].ToString()) ? Convert.ToByte(0) : Convert.ToByte(entityEntidadeEndereco.Rows[i]["end_zona"].ToString()) , end_bairro = entityEntidadeEndereco.Rows[i]["end_bairro"].ToString() , cid_id = new Guid(entityEntidadeEndereco.Rows[i]["cid_id"].ToString()) , end_situacao = Convert.ToByte(1) }; //Inclui dados na tabela END_Endereco (se necessário) if (entityNovoEndereco.end_id == Guid.Empty) { entityEndereco.end_id = END_EnderecoBO.Save(entityNovoEndereco, Guid.Empty, entDAL._Banco); entityNovoEndereco.end_id = entityEndereco.end_id; } // entityEntidadeEndereco.Rows[i]["end_id"] = entityNovoEndereco.end_id; } string endRel_id = entityEntidadeEndereco.Rows[i]["endRel_id"].ToString(); if (entityEntidadeEndereco.Rows[i].RowState == DataRowState.Added || string.IsNullOrEmpty(endRel_id)) { //TRATA DECIMAL decimal latitude = string.IsNullOrEmpty(entityEntidadeEndereco.Rows[i]["latitude"].ToString()) ? 0 : decimal.Parse(entityEntidadeEndereco.Rows[i]["latitude"].ToString()); decimal longitude = string.IsNullOrEmpty(entityEntidadeEndereco.Rows[i]["longitude"].ToString()) ? 0 : decimal.Parse(entityEntidadeEndereco.Rows[i]["longitude"].ToString()); //ATRIBUI VALORES entityEndereco.ent_id = entityEntidade.ent_id; entityEndereco.end_id = new Guid(entityEntidadeEndereco.Rows[i]["end_id"].ToString()); entityEndereco.ene_numero = entityEntidadeEndereco.Rows[i]["numero"].ToString(); entityEndereco.ene_complemento = entityEntidadeEndereco.Rows[i]["complemento"].ToString(); entityEndereco.ene_situacao = Convert.ToByte(1); entityEndereco.ene_id = new Guid(entityEntidadeEndereco.Rows[i]["id"].ToString()); entityEndereco.IsNew = true; // entityEndereco.ene_enderecoPrincipal = string.IsNullOrEmpty(entityEntidadeEndereco.Rows[i]["enderecoprincipal"].ToString()) ? false : Convert.ToBoolean(entityEntidadeEndereco.Rows[i]["enderecoprincipal"]); entityEndereco.ene_latitude = latitude; entityEndereco.ene_longitude = longitude; // entidadeEnderecoDAO.Salvar(entityEndereco); } else if (entityEntidadeEndereco.Rows[i].RowState == DataRowState.Modified && !string.IsNullOrEmpty(endRel_id)) { //TRATA DECIMAL decimal latitude = string.IsNullOrEmpty(entityEntidadeEndereco.Rows[i]["latitude"].ToString()) ? 0 : decimal.Parse(entityEntidadeEndereco.Rows[i]["latitude"].ToString()); decimal longitude = string.IsNullOrEmpty(entityEntidadeEndereco.Rows[i]["longitude"].ToString()) ? 0 : decimal.Parse(entityEntidadeEndereco.Rows[i]["longitude"].ToString()); //ATRIBUI VALORES entityEndereco.ene_id = new Guid(entityEntidadeEndereco.Rows[i]["endRel_id"].ToString()); entityEndereco.ent_id = entityEntidade.ent_id; entityEndereco.end_id = new Guid(entityEntidadeEndereco.Rows[i]["end_id"].ToString()); // entityEndereco.ene_numero = entityEntidadeEndereco.Rows[i]["numero"].ToString(); entityEndereco.ene_complemento = entityEntidadeEndereco.Rows[i]["complemento"].ToString(); bool excluido = Convert.ToBoolean(entityEntidadeEndereco.Rows[i]["excluido"]); if (excluido) { entityEndereco.ene_situacao = Convert.ToByte(3); } else { entityEndereco.ene_situacao = Convert.ToByte(1); } entityEndereco.IsNew = false; // entityEndereco.ene_enderecoPrincipal = string.IsNullOrEmpty(entityEntidadeEndereco.Rows[i]["enderecoprincipal"].ToString()) ? false : Convert.ToBoolean(entityEntidadeEndereco.Rows[i]["enderecoprincipal"]); entityEndereco.ene_latitude = latitude; entityEndereco.ene_longitude = longitude; // entidadeEnderecoDAO.Salvar(entityEndereco); } } else { entityEndereco.ene_id = new Guid(entityEntidadeEndereco.Rows[i]["endRel_id", DataRowVersion.Original].ToString()); entityEndereco.end_id = new Guid(entityEntidadeEndereco.Rows[i]["end_id", DataRowVersion.Original].ToString()); entidadeEnderecoDAO.Delete(entityEndereco); } } return(true); } catch (Exception err) { if (banco == null) { entDAL._Banco.Close(err); } throw; } finally { if (banco == null) { entDAL._Banco.Close(); } } }
/// <summary> /// Carrega a entidade do endereço cadastrado quando for cadastro único, seta o número /// e o complemento. /// Retorna true: /// - Se o endereço não é obrigatório e está completo /// (todos os campos obrigatórios estão preenchidos). /// - Se o endereço não é obrigatório e não foi preenchido nenhum campo. /// Retorna false: /// - Se o endereço é obrigatório e não foi preenchido todos os campos. /// - Se o endereço não é obrigatório e tem somente alguns campos preenchidos /// (começou tem que terminar). /// </summary> /// <param name="ent"></param> /// <param name="numero"></param> /// <param name="complemento"></param> /// <param name="msgErro"></param> /// <returns></returns> public bool RetornaEnderecoCadastrado(out END_Endereco ent, out string numero, out string complemento, out string msgErro) { ent = new END_Endereco(); msgErro = ""; numero = ""; complemento = ""; DataTable dt = RetornaEnderecos(); if (dt.Rows.Count > 0) { // Carregar dados do endereço. DataRow dr = dt.Rows[0]; string end_id = dr["end_id"].ToString(); // Preenche o ID do endereço. if ((String.IsNullOrEmpty(end_id)) || (end_id.Equals(Guid.Empty.ToString()))) { ent.end_id = new Guid(dr["id"].ToString()); ent.IsNew = true; } else { ent.end_id = new Guid(dr["end_id"].ToString()); ent.IsNew = false; END_EnderecoBO.GetEntity(ent); } ent.end_cep = dr["end_cep"].ToString(); ent.end_logradouro = dr["end_logradouro"].ToString(); ent.end_distrito = dr["end_distrito"].ToString(); ent.end_zona = Convert.ToByte(dr["end_zona"]); ent.end_bairro = dr["end_bairro"].ToString(); ent.cid_id = String.IsNullOrEmpty(dr["cid_id"].ToString()) ? Guid.Empty : new Guid(dr["cid_id"].ToString()); ent.cid_nome = dr["cid_nome"].ToString(); numero = dr["numero"].ToString(); complemento = dr["complemento"].ToString(); } bool ret; // Verificar se endereço está válido. if (_VS_Obrigatorio) { ret = ((ent.Validate()) && (ent.cid_id != Guid.Empty)); if (!ret) { msgErro = UtilBO.ErrosValidacao(ent); } if (ent.cid_id == Guid.Empty) { if (String.IsNullOrEmpty(ent.cid_nome)) { msgErro += "Cidade é obrigatório.<br/>"; } else { msgErro += "Cidade não encontrada.<br/>"; } } if (String.IsNullOrEmpty(numero)) { ret = false; msgErro += "Número é obrigatório."; } } else { if ((!String.IsNullOrEmpty(ent.end_cep)) || (!String.IsNullOrEmpty(ent.end_logradouro)) || (!String.IsNullOrEmpty(numero)) || (!String.IsNullOrEmpty(ent.end_distrito)) || (ent.end_zona > 0) || (!String.IsNullOrEmpty(ent.end_bairro)) || (ent.cid_id != Guid.Empty)) { // Se preencheu pelo menos 1 campo, tem que preencher todos. ret = ((ent.Validate()) && (ent.cid_id != Guid.Empty)); if (!ret) { msgErro += UtilBO.ErrosValidacao(ent); } if (ent.cid_id == Guid.Empty) { msgErro += "Cidade é obrigatório.<br/>"; } if (String.IsNullOrEmpty(numero)) { ret = false; msgErro += "Número é obrigatório."; } } else { ret = true; } } return(ret); }
/// <summary> /// Verifica se a Session do usuário está nula, /// se estiver verifica o FormsIdentity e carrega a Session /// </summary> private void GetFormsIdentityLoadSession() { try { if (HttpContext.Current.User.Identity.IsAuthenticated) { //var identity = HttpContext.Current.User.Identity as FormsIdentity; //if (identity != null) //{ var identity = HttpContext.Current.User.Identity; var entityId = identity.GetEntityId(); var usuLogin = identity.GetUsuLogin(); if (identity != null && entityId != null && usuLogin != null) { // // Recupera Ticket de autenticação gravado em Cookie // FormsIdentity id = identity; //FormsAuthenticationTicket ticket = id.Ticket; // Carrega usuário na session através do ticket de authenticação __SessionWEB.__UsuarioWEB.Usuario = new SYS_Usuario { ent_id = new Guid(entityId), usu_login = usuLogin }; SYS_UsuarioBO.GetSelectBy_ent_id_usu_login(__SessionWEB.__UsuarioWEB.Usuario); // Carrega grupo na session através do ticket de autenticação var gru_id = identity.GetGrupoId(); if (!string.IsNullOrEmpty(gru_id)) { __SessionWEB.__UsuarioWEB.Grupo = SYS_GrupoBO.GetEntity(new SYS_Grupo { gru_id = new Guid(gru_id) }); } else { // Carrega grupos do usuário IList <SYS_Grupo> list = SYS_GrupoBO.GetSelectBySis_idAndUsu_id( __SessionWEB.__UsuarioWEB.Usuario.usu_id , ApplicationWEB.SistemaID); // Verifica se foi carregado os grupos do usuário if (list.Count > 0) { // Seleciona o primeiro grupo do usuário logado para carregar na Session __SessionWEB.__UsuarioWEB.Grupo = list[0]; DataTable dtUaPermissao = ESC_EscolaBO.RetornaUAPermissaoUsuarioGrupo(__SessionWEB.__UsuarioWEB.Usuario.usu_id, ApplicationWEB._EntidadeID, __SessionWEB.__UsuarioWEB.Grupo.gru_id); if (dtUaPermissao.Rows.Count > 0) { int esc_id; Int32.TryParse(dtUaPermissao.Rows[0]["esc_id"].ToString(), out esc_id); __SessionWEB.__UsuarioWEB.Esc_idPermissao = esc_id; //Caso não tenha escola, significa que o usuário possui permissão de Gestão if (esc_id == 0) { if (!string.IsNullOrEmpty(dtUaPermissao.Rows[0]["uad_idSuperior"].ToString())) { __SessionWEB.__UsuarioWEB.Uad_idSuperiorPermissao = new Guid(dtUaPermissao.Rows[0]["uad_idSuperior"].ToString()); } } } } } // Carrega o cid_id na session referente a entidade do usuário autenticado Guid ent_id = __SessionWEB.__UsuarioWEB.Usuario.ent_id; Guid ene_id = SYS_EntidadeEnderecoBO.Select_ene_idBy_ent_id(ent_id); SYS_EntidadeEndereco entityEntidadeEndereco = new SYS_EntidadeEndereco { ent_id = ent_id, ene_id = ene_id }; SYS_EntidadeEnderecoBO.GetEntity(entityEntidadeEndereco); END_Endereco entityEndereco = new END_Endereco { end_id = entityEntidadeEndereco.end_id }; END_EnderecoBO.GetEntity(entityEndereco); __SessionWEB._cid_id = entityEndereco.cid_id; // Carrega nome ou login na session do usuário autenticado PES_Pessoa entityPessoa = new PES_Pessoa { pes_id = __SessionWEB.__UsuarioWEB.Usuario.pes_id }; PES_PessoaBO.GetEntity(entityPessoa); __SessionWEB.UsuarioLogado = string.IsNullOrEmpty(entityPessoa.pes_nome) ? __SessionWEB.__UsuarioWEB.Usuario.usu_login : entityPessoa.pes_nome; LoadSessionSistema(); } } } catch (Exception ex) { ApplicationWEB._GravaErro(ex); } }