public SimularAcessoEscopo() { PortalUsuariosSet = new PortalUsuariosSet(UnitOfWork); UnidadeEscolarSet = new UnidadeEscolarSet(UnitOfWork); PortalGruposSet = new PortalGruposSet(UnitOfWork); PessoaSet = new PessoaSet(UnitOfWork); SimularAcessoNegocio = new SimularAcessoNegocio(); }
public void ManterDadosPortalUsuario(int GeoEstruturaUE, int UsuarioId, string NomeUsuario, string Email, string LoginAd, string NomeDominio, int GrupoId, string NomeGrupo) { using (var ts = new TransactionScope(TransactionScopeOption.Required, new TransactionOptions { IsolationLevel = IsolationLevel.ReadCommitted })) { try { var unidadeEscolar = SimularAcessoNegocio.ObterUnidadeEscolarPorGeoEstruturaId(UnidadeEscolarSet, GeoEstruturaUE); var usuario = SimularAcessoNegocio.ObterPortalUsuarioPorLoginAdNomeDominio(PortalUsuariosSet, LoginAd, NomeDominio); var grupo = SimularAcessoNegocio.ObterGrupoPorId(PortalGruposSet, GrupoId); #region Mantêm Grupo if (grupo == null) { grupo = new PortalGrupos { GrupoId = GrupoId, Descricao = NomeGrupo, Status = true }; PortalGruposSet.Incluir(grupo); } else { grupo.Descricao = NomeGrupo; PortalGruposSet.Atualizar(grupo); } #endregion #region Mantêm Usuário if (usuario == null) //Incluir { usuario = new PortalUsuarios { GSIUsuarioId = UsuarioId, GeoEstruturaId = GeoEstruturaUE, Login = LoginAd, NomeUsuario = NomeUsuario, Dominio = NomeDominio, Email = Email, Status = EStatus.A.ToString() }; if (unidadeEscolar != null) { usuario.UnidadeEscolarId = unidadeEscolar.UnidadeEscolarId; } PortalUsuariosSet.Incluir(usuario); } else//Atualizar { usuario.GSIUsuarioId = UsuarioId; usuario.GeoEstruturaId = GeoEstruturaUE; if (unidadeEscolar != null) { usuario.UnidadeEscolarId = unidadeEscolar.UnidadeEscolarId; } usuario.Login = LoginAd; usuario.NomeUsuario = NomeUsuario; usuario.Dominio = NomeDominio; usuario.Email = Email; usuario.Status = EStatus.A.ToString(); PortalUsuariosSet.Atualizar(usuario); } #endregion UnitOfWork.SalvarAlteracoes(); ts.Complete(); } catch (Exception) { ts.Dispose(); throw; } } }