This commit is contained in:
王炜翔 2024-08-18 21:47:33 +08:00
parent 8d6e40e67c
commit 42424a5b7f
2 changed files with 30 additions and 19 deletions

View File

@ -249,28 +249,39 @@ else{
[Authorize] [Authorize]
public async Task<ActionResult<post_user_v2>> getalladmin_v2(string? keyword, short pageindex=1, short pagesize = 10) public async Task<ActionResult<post_user_v2>> getalladmin_v2(string? keyword, short pageindex=1, short pagesize = 10)
{ {
string id = this.User.FindFirst(ClaimTypes.NameIdentifier)!.Value; if (this.User.FindAll(ClaimTypes.Role).Any(a => a.Value == "admin"))
var user = await userManager.FindByIdAsync(id);
var isadmin = await userManager.IsInRoleAsync(user, "admin");
List<string> roles = (List<string>)await userManager.GetRolesAsync(user);
if (isadmin)
{ {
var a = new all_record(); var users = userManager.Users;
var userList = new List<object>();
if (keyword == null) foreach (var user in users)
{ {
a.cout = userManager.Users.Count(); var isAdmin = await userManager.IsInRoleAsync(user, "admin");
a.msg = await userManager.Users.Paginate(pageindex, pagesize).Select(a => new {a.Id,a.Email,a.chinaname,a.UserName,a.Integral,a.officium}).ToListAsync(); var roles = await userManager.GetRolesAsync(user);
userList.Add(new
{
user.Id,
user.Email,
user.chinaname,
user.UserName,
user.Integral,
user.officium,
isAdmin,
roles
});
} }
else
var pagedUsers = userList.Skip((pageindex - 1) * pagesize).Take(pagesize).ToList();
var totalCount = userList.Count;
var result = new all_record
{ {
cout = totalCount,
msg = pagedUsers
};
a.cout = userManager.Users.Where(a=>a.chinaname==keyword||a.UserName==keyword||a.Email==keyword).Count(); return Ok(result);
a.msg = await userManager.Users.Where(a => a.chinaname == keyword || a.UserName == keyword || a.Email == keyword).Paginate(pageindex, pagesize).Select(a => new { a.Id, a.Email, a.chinaname, a.UserName, a.Integral, a.officium }).ToListAsync();
}
return Ok(new { data = a,isadmin, roles });
} }
else else
{ {

View File

@ -109,7 +109,7 @@ namespace asg_form.Controllers
if (a) if (a)
{ {
TestDbContext ctx = new TestDbContext(); TestDbContext ctx = new TestDbContext();
await ctx.news.AddAsync(new T_news { Title = req_News.Title, msg = req_News.msg, FormName = user.UserName ,time=DateTime.Now,Type=req_News.Type}); await ctx.news.AddAsync(new T_news { Title = req_News.Title, msg = req_News.msg,Type=req_News.Type, FormName = user.UserName ,time=DateTime.Now});
await ctx.SaveChangesAsync(); await ctx.SaveChangesAsync();
return "ok!"; return "ok!";
} }