diff --git a/src/admin/Bootstrap.DataAccess.MongoDB/Group.cs b/src/admin/Bootstrap.DataAccess.MongoDB/Group.cs index e6d98d11..f43c960b 100644 --- a/src/admin/Bootstrap.DataAccess.MongoDB/Group.cs +++ b/src/admin/Bootstrap.DataAccess.MongoDB/Group.cs @@ -75,7 +75,8 @@ namespace Bootstrap.DataAccess.MongoDB { var groups = GroupHelper.Retrieves(); var user = UserHelper.Retrieves().Cast().FirstOrDefault(u => u.Id == userId); - groups.ToList().ForEach(g => g.Checked = user.Groups.Any(id => id == g.Id) ? "checked" : ""); + if (user != null) + groups.ToList().ForEach(g => g.Checked = user.Groups.Any(id => id == g.Id) ? "checked" : ""); return groups; } @@ -140,10 +141,10 @@ namespace Bootstrap.DataAccess.MongoDB public override IEnumerable RetrievesByUserName(string userName) { var groups = new List(); - var user = UserHelper.Retrieves().Cast().FirstOrDefault(u => u.UserName == userName); var group = GroupHelper.Retrieves(); - - groups.AddRange(group.Where(g => user.Groups.Any(ug => ug == g.Id))); + var user = UserHelper.Retrieves().Cast().FirstOrDefault(u => u.UserName == userName); + if (user != null) + groups.AddRange(group.Where(g => user.Groups.Any(ug => ug == g.Id))); return groups; } } diff --git a/src/admin/Bootstrap.DataAccess.MongoDB/Role.cs b/src/admin/Bootstrap.DataAccess.MongoDB/Role.cs index dd6b10dc..a1e0f49d 100644 --- a/src/admin/Bootstrap.DataAccess.MongoDB/Role.cs +++ b/src/admin/Bootstrap.DataAccess.MongoDB/Role.cs @@ -104,7 +104,8 @@ namespace Bootstrap.DataAccess.MongoDB { var roles = RoleHelper.Retrieves(); var user = UserHelper.Retrieves().Cast().FirstOrDefault(u => u.Id == userId); - roles.ToList().ForEach(r => r.Checked = user.Roles.Any(id => id == r.Id) ? "checked" : ""); + if (user != null) + roles.ToList().ForEach(r => r.Checked = user.Roles.Any(id => id == r.Id) ? "checked" : ""); return roles; } @@ -188,7 +189,8 @@ namespace Bootstrap.DataAccess.MongoDB { var roles = RoleHelper.Retrieves(); var group = GroupHelper.Retrieves().Cast().FirstOrDefault(u => u.Id == groupId); - roles.ToList().ForEach(r => r.Checked = group.Roles.Any(id => id == r.Id) ? "checked" : ""); + if (group != null) + roles.ToList().ForEach(r => r.Checked = group.Roles.Any(id => id == r.Id) ? "checked" : ""); return roles; } diff --git a/src/admin/Bootstrap.DataAccess.MongoDB/User.cs b/src/admin/Bootstrap.DataAccess.MongoDB/User.cs index 0d931cd7..b6d7e4f1 100644 --- a/src/admin/Bootstrap.DataAccess.MongoDB/User.cs +++ b/src/admin/Bootstrap.DataAccess.MongoDB/User.cs @@ -336,16 +336,19 @@ namespace Bootstrap.DataAccess.MongoDB public override bool Reject(string id, string rejectBy) { var user = UserHelper.RetrieveNewUsers().FirstOrDefault(u => u.Id == id); - DbManager.RejectUsers.InsertOne(new RejectUser() + if (user != null) { - DisplayName = user.DisplayName, - RegisterTime = user.RegisterTime, - RejectedBy = rejectBy, - RejectedReason = "", - RejectedTime = DateTime.Now, - UserName = user.UserName - }); - DbManager.Users.DeleteOne(User => User.Id == id); + DbManager.RejectUsers.InsertOne(new RejectUser() + { + DisplayName = user.DisplayName, + RegisterTime = user.RegisterTime, + RejectedBy = rejectBy, + RejectedReason = "", + RejectedTime = DateTime.Now, + UserName = user.UserName + }); + DbManager.Users.DeleteOne(User => User.Id == id); + } return true; } }