Exemple #1
0
        public void SetRoleMenus(int RoleId, int[] menuId)
        {
            var rolemenus = _db.RoleMenus.Where(d => d.RoleId == RoleId).ToList();

            //_unitOfWork.GetRepository<RoleMenu>().GetMany(d => d.RoleId == RoleId);
            //vRole.RoleMenus.Clear();
            _db.RemoveRange(rolemenus);
            _db.SaveChanges();
            //_unitOfWork.GetRepository<RoleMenu>().Delete(rolemenus);
            //_unitOfWork.SaveChanges();
            if (menuId != null)
            {
                foreach (var mid in menuId)
                {
                    _db.RoleMenus.Add(new RoleMenu {
                        RoleId = RoleId, MenuId = mid
                    });
                    //_unitOfWork.GetRepository<RoleMenu>().Insert(new RoleMenu { RoleId = RoleId, MenuId = mid });
                }
            }
            _db.SaveChanges();

            //var key = $"{EntityNames.Menu}s";
            //_cacheService.Invalidate(key); //取消缓存
        }
Exemple #2
0
        public JsonResult SetRole(Guid userId, int[] roleId)
        {
            try
            {
                var list = _context.UserRoles.Where(d => d.UserId == userId).ToList();
                _context.RemoveRange(list);

                foreach (var item in roleId)
                {
                    _context.UserRoles.Add(new UserRole {
                        UserId = userId, RoleId = item
                    });
                }
                _context.SaveChanges();


                AR.Id = userId;
                //  AR.Data = RenderPartialViewToString("_UserItem", user);
                AR.SetSuccess(Messages.AlertActionSuccess);
                return(Json(AR));
            }
            catch (Exception ex)
            {
                AR.Setfailure(ex.Message);
                return(Json(AR));
            }
        }
Exemple #3
0
        /// <summary>
        /// 按分类重设排序
        /// </summary>
        /// <param name="categoryId"></param>
        public void ResetSort(int categoryId)
        {
            var menuList = _db.Menus.Include(d => d.InverseParent).Where(d => d.CategoryId == categoryId);
            //_unitOfWork.GetRepository<Menu>().GetMany(predicate: d => d.CategoryId == categoryId, include: d => d.Include(m => m.InverseParent));
            var list = menuList.Where(m => m.ParentId == null).OrderBy(m => m.Importance)
                       .SelectDeep <Menu>(m => m.InverseParent.OrderBy(g => g.Importance));

            int i = 0;

            foreach (var item in list)
            {
                var menu = GetById(item.Id);
                menu.Importance = i;
                _db.Update(menu);
                i++;
            }
            _db.SaveChanges();
        }
Exemple #4
0
        //public User SignIn(string username, string password)
        //{
        //    var user = _unitOfWork.GetRepository<User>().GetFirstOrDefault(predicate:u=>u.UserName == username || u.Mobile == username);
        //    if (user == null) return null;

        //    var salt = Convert.FromBase64String(user.SecurityStamp);
        //    var pwdHash = Hash.HashPasswordWithSalt(password, salt);

        //    return user.PasswordHash == pwdHash ? user : null;

        //}
        public int CreateUser(string userName, string email, string password, string realName, string mobile)
        {
            if (IsExistEmail(email))
            {
                return(1); //1 邮箱已存在
            }

            if (IsExistUserName(userName))
            {
                return(2); //1 用户名已存在
            }
            if (IsExistMobile(mobile))
            {
                return(3); //1 手机号已存在
            }


            var securityStamp = Hash.GenerateSalt();
            var passwordHash  = Hash.HashPasswordWithSalt(password, securityStamp);

            var newUser = new User()
            {
                Id            = IdentityGenerator.SequentialGuid(),
                UserName      = userName,
                RealName      = realName,
                Email         = email,
                SecurityStamp = Convert.ToBase64String(securityStamp),
                PasswordHash  = passwordHash,
                CreateDate    = DateTime.Now,
                IsActive      = true,
                Mobile        = mobile
            };

            //_logger.LogInformation(string.Format(Logs.CreateMessage, EntityNames.User, userName));
            _db.Add(newUser);
            _db.SaveChanges();

            //_unitOfWork.GetRepository<User>().Insert(newUser);
            //_unitOfWork.SaveChanges();
            // SetUserCookies(false, newUser);

            return(0);
        }