예제 #1
0
        /// <summary>
        /// Continuous function: adds a new user to the specified role in the db.
        /// </summary>
        /// <param name="user"></param>
        /// <param name="db"></param>
        public void AddUser(user user, Enums.UserRoles role, JobyJobsDB2 db)
        {
            string roleGUID = ConstsEnumsTranslations.GetRoleGUID(role).ToString();
            var    roleObj  = db.roles.FirstOrDefault(item => item.Id == roleGUID);

            roleObj.users.Add(user);
        }
예제 #2
0
        public decimal CalculateFeedbackByUserRole(Enums.UserRoles userRoles)
        {
            decimal finalRatingValue = 0;

            if (userRoles == Enums.UserRoles.Landlord)
            {
                int index = 0;
                this.FeedbackQuestions[index++].QuestionWeight = 0.05M;
                this.FeedbackQuestions[index++].QuestionWeight = 0.25M;
                this.FeedbackQuestions[index++].QuestionWeight = 0.5M;
                this.FeedbackQuestions[index++].QuestionWeight = 0.05M;
                this.FeedbackQuestions[index++].QuestionWeight = 0.05M;
                this.FeedbackQuestions[index++].QuestionWeight = 0.1M;
                this.FeedbackQuestions[index++].QuestionWeight = Decimal.Zero;
                index = 0;

                foreach (FeedbackQuestion question in this.FeedbackQuestions)
                {
                    finalRatingValue += question.QuestionWeight * question.RatingValue;
                }
            }

            if (userRoles == Enums.UserRoles.Student)
            {
                int index = 0;
                this.FeedbackQuestions[index++].QuestionWeight = Decimal.Zero;
                this.FeedbackQuestions[index++].QuestionWeight = 0.2M;
                this.FeedbackQuestions[index++].QuestionWeight = 0.1M;
                this.FeedbackQuestions[index++].QuestionWeight = 0.1M;
                this.FeedbackQuestions[index++].QuestionWeight = 0.1M;
                this.FeedbackQuestions[index++].QuestionWeight = 0.2M;
                this.FeedbackQuestions[index++].QuestionWeight = 0.3M;
                index = 0;

                foreach (FeedbackQuestion question in this.FeedbackQuestions)
                {
                    finalRatingValue += question.QuestionWeight * question.RatingValue;
                }
            }

            return(finalRatingValue);
        }
예제 #3
0
        public async Task <User> Login(string username, string password, Enums.UserRoles userRole)
        {
            try
            {
                var user = await _context.UserRepository.Read(x => x.UserName == username && x.UserRole == userRole);

                if (user == null)
                {
                    return(null);
                }

                if (!VerifyPasswordHash(password, user.PassWordHash, user.PassWordsalt))
                {
                    return(null);
                }
                return(user);
            }
            catch (Exception ex)
            {
                throw;
            }
        }
예제 #4
0
        internal static List <CommonUser> GetAllUsers(Guid ownerId)
        {
            DatabaseEntities  entities = new DatabaseEntities();
            List <CommonUser> users    = new List <CommonUser>();
            List <User>       dbUsers  = entities.Users.Where(p => p.OwnerId == ownerId).ToList();

            foreach (User dbUser in dbUsers)
            {
                CommonUser user = new CommonUser();
                user.OwnerId      = dbUser.OwnerId;
                user.AssignedTo   = dbUser.AssignedTo;
                user.RegisteredAt = dbUser.RegisteredAt;
                user.Role         = dbUser.Role;
                user.UserId       = dbUser.UserId;
                user.Username     = dbUser.Username;
                Enums.UserRoles role = (Enums.UserRoles)dbUser.Role;
                user.RoleString  = role.ToString();
                user.Permissions = dbUser.Permissions;
                users.Add(user);
            }
            return(users);
        }
예제 #5
0
        public static Guid GetRoleGUID(Enums.UserRoles role)
        {
            switch (role)
            {
            case Enums.UserRoles.Seeker:
                return(Consts.SeekerRoleGUID);

                break;

            case Enums.UserRoles.Employer:
                return(Consts.EmployerRoleGUID);

                break;

            case Enums.UserRoles.Administrator:
                return(Consts.AdminRoleGUID);

                break;

            case Enums.UserRoles.Unspecified:
            default:
                throw new ArgumentOutOfRangeException(nameof(role), role, null);
            }
        }
예제 #6
0
 public User Create(string userName, Enums.UserRoles userRole)
 {
     UserName = userName;
     UserRole = userRole;
     return(this);
 }