/// <summary> /// 保存 /// </summary> /// <param name="theData">保存的数据</param> public ActionResult SaveData(Base_User theData, string Pwd, string RoleIdList) { if (!Pwd.IsNullOrEmpty()) { theData.Password = Pwd.ToMD5String(); } var roleIdList = RoleIdList.ToList <string>(); if (theData.Id.IsNullOrEmpty()) { theData.Id = Guid.NewGuid().ToSequentialGuid(); theData.UserId = Guid.NewGuid().ToSequentialGuid(); _baseUserRepository.AddData(theData); } else { _baseUserRepository.UpdateData(theData); } _baseUserRepository.SetUserRole(theData.UserId, roleIdList); PermissionManage.UpdateUserPermissionCache(theData.UserId); return(Success()); }
public void SetUserRole(string userId, List <string> roleIds) { Service.Delete <Base_UserRoleMap>(x => x.UserId == userId); var insertList = roleIds.Select(x => new Base_UserRoleMap { Id = GuidHelper.GenerateKey(), UserId = userId, RoleId = x }).ToList(); Service.Insert(insertList); _cache.UpdateCache(userId); _userRoleCache.UpdateCache(userId); PermissionManage.UpdateUserPermissionCache(userId); }