Example #1
0
        private static HashSet <int> GetFeaturesByUserId(string userId)
        {
            HashSet <int> result = new HashSet <int>();

            var listProfiles = DBUserProfiles.GetByUserId(userId);

            if (listProfiles != null && listProfiles.Count() > 0)
            {
                var listProfilesId = listProfiles.Select(s => s.IdPerfil).ToList();
                foreach (var profileId in listProfilesId)
                {
                    var listAccessProfile = DBAccessProfiles.GetByProfileModelId(profileId).ToList();
                    if (listAccessProfile != null && listAccessProfile.Count() > 0)
                    {
                        var listProfileFeatures = new HashSet <int>();
                        listProfileFeatures = listAccessProfile.Select(s => s.Funcionalidade).ToHashSet <int>();
                        result.UnionWith(listProfileFeatures);
                    }
                }
            }

            var listUserAccess = DBUserAccesses.GetByUserId(userId);

            if (listUserAccess != null && listUserAccess.Count() > 0)
            {
                var listFeatures = new HashSet <int>();
                listFeatures = listUserAccess.Select(s => s.Funcionalidade).ToHashSet <int>();
                result.UnionWith(listFeatures);
            }

            return(result);
        }
Example #2
0
        public static bool Delete(PerfisModelo ProfileModelToDelete)
        {
            try
            {
                using (var ctx = new SuchDBContext())
                {
                    DBUserProfiles.DeleteAllFromProfile(ProfileModelToDelete.Id);
                    ctx.Remove(ProfileModelToDelete);
                    ctx.SaveChanges();
                }

                return(true);
            }
            catch (Exception ex)
            {
                return(false);
            }
        }