public Guid ObterPerfilPrioritario(bool possuiTurmaAtiva, bool possuiTurmaInfantilAtiva, Guid perfilCJPrioritario) { if (Perfis == null || !Perfis.Any()) { throw new NegocioException(MENSAGEM_ERRO_USUARIO_SEM_ACESSO); } if (perfilCJPrioritario != Guid.Empty) { VerificarOrdenacaoPerfilInfantil(perfilCJPrioritario); return(perfilCJPrioritario); } var possuiPerfilPrioritario = Perfis.Any(c => c.CodigoPerfil == Dominio.Perfis.PERFIL_PROFESSOR_INFANTIL && possuiTurmaInfantilAtiva); if (possuiPerfilPrioritario) { return(Dominio.Perfis.PERFIL_PROFESSOR_INFANTIL); } possuiPerfilPrioritario = Perfis.Any(c => c.CodigoPerfil == Dominio.Perfis.PERFIL_PROFESSOR && possuiTurmaAtiva); if (possuiPerfilPrioritario) { return(Dominio.Perfis.PERFIL_PROFESSOR); } possuiPerfilPrioritario = Perfis.Any(c => c.CodigoPerfil == Dominio.Perfis.PERFIL_PROFESSOR_INFANTIL && possuiTurmaAtiva); if (possuiPerfilPrioritario) { return(Dominio.Perfis.PERFIL_PROFESSOR_INFANTIL); } return(Perfis.FirstOrDefault().CodigoPerfil); }
public bool PossuiPerfilCJPrioritario() { return(Perfis != null && PossuiPerfilCJ() && PossuiPerfilProfessor() && !Perfis.Any(c => c.CodigoPerfil == Dominio.Perfis.PERFIL_DIRETOR || c.CodigoPerfil == Dominio.Perfis.PERFIL_CP || c.CodigoPerfil == Dominio.Perfis.PERFIL_AD)); }
public bool PossuiPerfilSmeOuDre() { if (Perfis == null || !Perfis.Any()) { throw new NegocioException(MENSAGEM_ERRO_USUARIO_SEM_ACESSO); } return(PossuiPerfilSme() || PossuiPerfilDre()); }
private void VerificarOrdenacaoPerfilInfantil(Guid perfil) { if (perfil == Dominio.Perfis.PERFIL_CJ_INFANTIL || perfil == Dominio.Perfis.PERFIL_PROFESSOR_INFANTIL) { Perfis = Perfis.OrderByDescending(o => o.EhPerfilInfantil()); } }
public bool PossuiPerfilCJInfantilPrioritario() { if (Perfis != null && PossuiPerfilCJInfantil() && PossuiPerfilProfessorInfantil()) { var perfilCjInfantil = Perfis.FirstOrDefault(x => x.CodigoPerfil == Dominio.Perfis.PERFIL_CJ_INFANTIL); return(!Perfis.Any(x => x.Ordem < perfilCjInfantil.Ordem)); } return(false); }
public bool PossuiPerfilCJPrioritario() { if (Perfis != null && PossuiPerfilCJ() && PossuiPerfilProfessor()) { var perfilCj = Perfis.FirstOrDefault(x => x.CodigoPerfil == Dominio.Perfis.PERFIL_CJ); return(!Perfis.Any(x => x.Ordem < perfilCj.Ordem)); } return(false); }
public bool PodeVisualizarEventosOcorrenciaDre() { var perfilAtual = Perfis.FirstOrDefault(a => a.CodigoPerfil == PerfilAtual); if (perfilAtual != null && perfilAtual.Tipo == TipoPerfil.UE) { return(PerfilAtual == Dominio.Perfis.PERFIL_DIRETOR || PerfilAtual == Dominio.Perfis.PERFIL_AD || PerfilAtual == Dominio.Perfis.PERFIL_CP || PerfilAtual == Dominio.Perfis.PERFIL_SECRETARIO); } else { return(true); } }
public void DefinirEmail(string novoEmail) { if (Perfis == null || !Perfis.Any()) { throw new NegocioException(MENSAGEM_ERRO_USUARIO_SEM_ACESSO); } if ((PossuiPerfilDre() || PossuiPerfilSme()) && !novoEmail.Contains("@sme.prefeitura.sp.gov.br")) { throw new NegocioException("Usuários da SME ou DRE devem utilizar e-mail profissional. Ex: [email protected]"); } Email = novoEmail; }
public Guid ObterPerfilPrioritario() { if (Perfis == null || !Perfis.Any()) { throw new NegocioException(MENSAGEM_ERRO_USUARIO_SEM_ACESSO); } var possuiPerfilPrioritario = Perfis.Any(c => c.CodigoPerfil == PERFIL_PROFESSOR); if (possuiPerfilPrioritario) { return(PERFIL_PROFESSOR); } return(Perfis.FirstOrDefault().CodigoPerfil); }
public Guid ObterPerfilPrioritario(bool possuiTurmaAtiva, bool ehProfCJSemTurmaTitular) { if (Perfis == null || !Perfis.Any()) { throw new NegocioException(MENSAGEM_ERRO_USUARIO_SEM_ACESSO); } if (ehProfCJSemTurmaTitular) { return(Dominio.Perfis.PERFIL_CJ); } var possuiPerfilPrioritario = Perfis.Any(c => c.CodigoPerfil == Dominio.Perfis.PERFIL_PROFESSOR && possuiTurmaAtiva); if (possuiPerfilPrioritario) { return(Dominio.Perfis.PERFIL_PROFESSOR); } return(Perfis.FirstOrDefault().CodigoPerfil); }
public bool PodeVisualizarEventosOcorrenciaDre() { if (!Perfis.Any()) { throw new NegocioException("Não foram econtrados perfis para este usuário."); } var perfilAtual = Perfis.FirstOrDefault(a => a.CodigoPerfil == PerfilAtual); if (perfilAtual == null) { throw new NegocioException("Não foi encontrado perfil para este usuário."); } if (perfilAtual.Tipo == TipoPerfil.UE) { return(PerfilAtual == Dominio.Perfis.PERFIL_DIRETOR || PerfilAtual == Dominio.Perfis.PERFIL_AD || PerfilAtual == Dominio.Perfis.PERFIL_CP || PerfilAtual == Dominio.Perfis.PERFIL_SECRETARIO); } else { return(true); } }
public bool PossuiPerfilCJInfantil() => Perfis != null && Perfis.Any(c => c.CodigoPerfil == Dominio.Perfis.PERFIL_CJ_INFANTIL);
public bool EhPerfilUE() { return(Perfis.Any(c => c.Tipo == TipoPerfil.UE && c.CodigoPerfil == PerfilAtual)); }
public bool PossuiPerfilUe() { return(Perfis != null && Perfis.Any(c => c.Tipo == TipoPerfil.UE)); }
public TipoPerfil?ObterTipoPerfilAtual() { return(Perfis.FirstOrDefault(a => a.CodigoPerfil == PerfilAtual).Tipo); }
public bool PossuiPerfilCJ() => Perfis != null && Perfis.Any(c => c.CodigoPerfil == Dominio.Perfis.PERFIL_CJ);
public bool PossuiPerfilProfessorInfantil() => Perfis != null && Perfis.Any(c => c.CodigoPerfil == Dominio.Perfis.PERFIL_PROFESSOR_INFANTIL);
public bool PossuiPerfilProfessor() => Perfis != null && Perfis.Any(c => c.CodigoPerfil == Dominio.Perfis.PERFIL_PROFESSOR);