Exemple #1
0
        public override void Validate()
        {
            base.Validate();

            if (!AssignedRoles.Any())
            {
                throw new NullReferenceException($"Member {Name} must have at least one Role.");
            }

            if (!UserPrincipalHelper.IsUserExisted(Name))
            {
                throw new InstanceNotFoundException(Name);
            }
        }
Exemple #2
0
        public bool AssignManager(AssignRolesModel AssignRolesModel)
        {
            bool result = false;

            using (var _context = new DatabaseContext())
            {
                try
                {
                    var role = _context.AssignedRoles.Where(x => x.RegistrationID == AssignRolesModel.RegistrationID).FirstOrDefault();
                    if (role != null)
                    {
                        role.AssignToAdmin         = AssignRolesModel.AssignToAdmin;
                        role.RegistrationID        = AssignRolesModel.RegistrationID;
                        role.Status                = "A";
                        _context.Entry(role).State = EntityState.Modified;
                        _context.SaveChanges();
                    }
                    else
                    {
                        AssignedRoles AssignedRoles = new AssignedRoles
                        {
                            AssignToAdmin   = AssignRolesModel.AssignToAdmin,
                            RegistrationID  = AssignRolesModel.RegistrationID,
                            Status          = "A",
                            CreatedOn       = DateTime.Now,
                            CreatedBy       = AssignRolesModel.CreatedBy,
                            AssignedRolesID = 0,
                        };
                        _context.AssignedRoles.Add(AssignedRoles);
                        _context.SaveChanges();
                    }
                    result = true;
                }
                catch (Exception)
                {
                    throw;
                }
                return(result);
            }
        }
Exemple #3
0
        protected override void OnSaving()
        {
            //Update Assignments
            var scope = Scope;

            Guard.ValueIsNotNull(scope, nameof(Scope));

            var currents = AssignRoles;
            var lastest  = AssignedRoles.Select(o => o.Name).ToList();

            //Get New Items
            foreach (var o in lastest.Where(o => !currents.Contains(o)))
            {
                Scope.GetOrCreateAzRoleAssignment(o).Members.Add(Name);
            }

            //Get Deleted Ones
            foreach (var o in currents.Where(o => !lastest.Contains(o)))
            {
                Scope.GetOrCreateAzRoleAssignment(o).Members.Remove(Name);
            }
        }
Exemple #4
0
        public bool SaveAssignedRoles(AssignRolesModel AssignRolesModel)
        {
            bool result = false;

            using (var _context = new DatabaseContext())
            {
                try
                {
                    for (int i = 0; i < AssignRolesModel.ListofUser.Count(); i++)
                    {
                        if (AssignRolesModel.ListofUser[i].selectedUsers)
                        {
                            AssignedRoles AssignedRoles = new AssignedRoles
                            {
                                AssignedRolesID = 0,
                                AssignToAdmin   = AssignRolesModel.RoleID,
                                CreatedOn       = DateTime.Now,
                                CreatedBy       = AssignRolesModel.CreatedBy,
                                Status          = "A",
                                RegistrationID  = AssignRolesModel.ListofUser[i].RegistrationID
                            };

                            _context.AssignedRoles.Add(AssignedRoles);
                            _context.SaveChanges();
                        }
                    }

                    result = true;
                }
                catch (Exception)
                {
                    throw;
                }

                return(result);
            }
        }
 public void Update(AssignedRoles assignedRoles)
 {
     _frapperDbContext.Entry(assignedRoles).State = EntityState.Modified;
 }
 public void Add(AssignedRoles assignedRoles)
 {
     _frapperDbContext.AssignedRoles.Add(assignedRoles);
 }
Exemple #7
0
        public IActionResult Create(CreateUserViewModel createModel)
        {
            createModel.ListRole = _roleQueries.ListofRoles();

            if (!ModelState.IsValid)
            {
                return(View(createModel));
            }

            if (_userMasterQueries.CheckUserExists(createModel.UserName))
            {
                ModelState.AddModelError("", "Entered Username Already Exists");
                return(View(createModel));
            }

            if (_userMasterQueries.CheckEmailExists(createModel.EmailId))
            {
                ModelState.AddModelError("", "Entered EmailId Already Exists");
                return(View(createModel));
            }

            if (_userMasterQueries.CheckMobileNoExists(createModel.MobileNo))
            {
                ModelState.AddModelError("", "Entered MobileNo Already Exists");
                return(View(createModel));
            }

            if (!string.Equals(createModel.Password, createModel.ConfirmPassword,
                               StringComparison.Ordinal))
            {
                TempData["Registered_Error_Message"] = "Password Does not Match";
                return(View(createModel));
            }

            var salt           = GenerateRandomNumbers.GenerateRandomDigitCode(20);
            var saltedpassword = HashHelper.CreateHashSHA512(createModel.Password, salt);

            var userMappedobject = _mapper.Map <UserMaster>(createModel);

            userMappedobject.Status       = true;
            userMappedobject.CreatedOn    = DateTime.Now;
            userMappedobject.CreatedBy    = Convert.ToInt32(HttpContext.Session.GetString(AllSessionKeys.UserId));
            userMappedobject.PasswordHash = saltedpassword;

            AssignedRoles assignedRoles = new AssignedRoles()
            {
                AssignedRoleId = 0,
                CreateDate     = DateTime.Now,
                Status         = true,
                RoleId         = createModel.RoleId,
                UserMaster     = userMappedobject
            };

            UserTokens userTokens = new UserTokens()
            {
                UserMaster   = userMappedobject,
                CreatedOn    = DateTime.Now,
                HashId       = 0,
                PasswordSalt = salt
            };

            _unitOfWorkEntityFramework.UserMasterCommand.Add(userMappedobject);
            _unitOfWorkEntityFramework.AssignedRolesCommand.Add(assignedRoles);
            _unitOfWorkEntityFramework.UserTokensCommand.Add(userTokens);
            var result = _unitOfWorkEntityFramework.Commit();

            if (result)
            {
                _notificationService.SuccessNotification("Message", "User Registered Successfully !");
                return(RedirectToAction("Index"));
            }
            else
            {
                _notificationService.DangerNotification("Message", "Something went wrong Please Try Once Again !");
                return(View(createModel));
            }
        }
        public IActionResult Create([FromBody] CreateUserRequest createUserRequest)
        {
            if (_userMasterQueries.CheckUserExists(createUserRequest.UserName))
            {
                return(BadRequest(new BadRequestResponse("Entered Username Already Exists")));
            }

            if (_userMasterQueries.CheckEmailExists(createUserRequest.EmailId))
            {
                return(BadRequest(new BadRequestResponse("Entered EmailId Already Exists")));
            }

            if (_userMasterQueries.CheckMobileNoExists(createUserRequest.MobileNo))
            {
                return(BadRequest(new BadRequestResponse("Entered MobileNo Already Exists")));
            }

            if (!string.Equals(createUserRequest.Password, createUserRequest.ConfirmPassword,
                               StringComparison.Ordinal))
            {
                return(BadRequest(new BadRequestResponse("Password Does not Match")));
            }

            var generatepasswordhash = HashHelper.CreateHashSHA512(createUserRequest.Password).ToLower();

            var salt           = GenerateRandomNumbers.GenerateRandomDigitCode(20);
            var saltedpassword = HashHelper.CreateHashSHA512(generatepasswordhash, salt);

            var userMappedobject = new UserMaster()
            {
                UserId       = 0,
                Status       = true,
                CreatedOn    = DateTime.Now,
                CreatedBy    = Convert.ToInt32(1),
                PasswordHash = saltedpassword,
                FirstName    = createUserRequest.FirstName,
                EmailId      = createUserRequest.EmailId,
                Gender       = createUserRequest.Gender,
                MobileNo     = createUserRequest.MobileNo,
                IsFirstLogin = false,
                LastName     = createUserRequest.LastName,
                UserName     = createUserRequest.UserName
            };


            AssignedRoles assignedRoles = new AssignedRoles()
            {
                AssignedRoleId = 0,
                CreateDate     = DateTime.Now,
                Status         = true,
                RoleId         = Convert.ToInt32(RolesHelper.Roles.User),
                UserMaster     = userMappedobject
            };

            UserTokens userTokens = new UserTokens()
            {
                UserMaster   = userMappedobject,
                CreatedOn    = DateTime.Now,
                HashId       = 0,
                PasswordSalt = salt
            };

            _unitOfWorkEntityFramework.UserMasterCommand.Add(userMappedobject);
            _unitOfWorkEntityFramework.AssignedRolesCommand.Add(assignedRoles);
            _unitOfWorkEntityFramework.UserTokensCommand.Add(userTokens);
            var result = _unitOfWorkEntityFramework.Commit();

            if (result)
            {
                return(Ok(new OkResponse("User Registered Successfully !")));
            }
            else
            {
                return(StatusCode(StatusCodes.Status500InternalServerError, "Something Went Wrong"));
            }
        }
        public IActionResult Form(RegistrationViewModel registerViewModel)
        {
            if (ModelState.IsValid)
            {
                if (_userMasterQueries.CheckUserExists(registerViewModel.UserName))
                {
                    ModelState.AddModelError("", "Entered Username Already Exists");
                    return(View(registerViewModel));
                }

                if (_userMasterQueries.CheckUserExists(registerViewModel.EmailId))
                {
                    ModelState.AddModelError("", "Entered EmailId Already Exists");
                    return(View(registerViewModel));
                }

                if (_userMasterQueries.CheckUserExists(registerViewModel.MobileNo))
                {
                    ModelState.AddModelError("", "Entered Phoneno Already Exists");
                    return(View(registerViewModel));
                }

                if (!string.Equals(registerViewModel.Password, registerViewModel.ConfirmPassword,
                                   StringComparison.Ordinal))
                {
                    TempData["Registered_Error_Message"] = "Password Does not Match";
                    return(View(registerViewModel));
                }

                var salt           = GenerateRandomNumbers.GenerateRandomDigitCode(20);
                var saltedpassword = HashHelper.CreateHashSHA512(registerViewModel.Password, salt);


                var userMappedobject = _mapper.Map <UserMaster>(registerViewModel);
                userMappedobject.Status       = true;
                userMappedobject.CreatedOn    = DateTime.Now;
                userMappedobject.CreatedBy    = Convert.ToInt32(HttpContext.Session.GetString(AllSessionKeys.UserId));
                userMappedobject.PasswordHash = saltedpassword;

                AssignedRoles assignedRoles = new AssignedRoles()
                {
                    AssignedRoleId = 0,
                    CreateDate     = DateTime.Now,
                    Status         = true,
                    RoleId         = Convert.ToInt32(RolesHelper.Roles.User),
                    UserMaster     = userMappedobject
                };

                UserTokens userTokens = new UserTokens()
                {
                    UserMaster   = userMappedobject,
                    CreatedOn    = DateTime.Now,
                    HashId       = 0,
                    PasswordSalt = salt
                };

                _unitOfWorkEntityFramework.UserMasterCommand.Add(userMappedobject);
                _unitOfWorkEntityFramework.AssignedRolesCommand.Add(assignedRoles);
                _unitOfWorkEntityFramework.UserTokensCommand.Add(userTokens);
                var result = _unitOfWorkEntityFramework.Commit();

                if (result)
                {
                    var userdetails = _userMasterQueries.GetUserbyUserName(registerViewModel.UserName);
                    var token       = HashHelper.CreateHashSHA256((GenerateRandomNumbers.GenerateRandomDigitCode(6)));
                    var body        = _emailSender.CreateRegistrationVerificationEmail(userdetails, token);

                    _unitOfWorkEntityFramework.VerificationCommand.SendRegistrationVerificationToken(userdetails.UserId, token);
                    _unitOfWorkEntityFramework.Commit();
                    MessageTemplate messageTemplate = new MessageTemplate()
                    {
                        ToAddress = userdetails.EmailId,
                        Subject   = "Welcome to Frapper",
                        Body      = body
                    };

                    _emailSender.SendMailusingSmtp(messageTemplate);

                    TempData["Registered_Success_Message"] = "User Registered Successfully";
                }
                else
                {
                    TempData["Registered_Error_Message"] = "Error While Registrating User Successfully";
                }
            }

            return(RedirectToAction("Form", "Registration"));
        }