some bugs
This commit is contained in:
parent
798668d94f
commit
9b885f319e
@ -239,7 +239,7 @@ namespace asg_form.Controllers
|
||||
if (!string.IsNullOrEmpty(userid))
|
||||
{
|
||||
long idNum = long.Parse(userid);
|
||||
query = query.Where(n => n.userId == idNum);
|
||||
query = query.Where(n => n.userId == idNum && n.status!="2");
|
||||
}
|
||||
|
||||
//return Ok("用户不存在");
|
||||
|
@ -5,6 +5,7 @@ using Microsoft.AspNetCore.Identity;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using Microsoft.AspNetCore.SignalR;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using NPOI.OpenXmlFormats.Dml;
|
||||
using System.Security.Claims;
|
||||
using static allteam1;
|
||||
|
||||
@ -205,6 +206,24 @@ namespace asg_form.Controllers.Team
|
||||
}
|
||||
}
|
||||
|
||||
[Route("api/v3/form/all")]
|
||||
[HttpGet]
|
||||
[Authorize]
|
||||
public async Task<ActionResult<object>> GetformbyId(short page, short limit, int eventId)
|
||||
{
|
||||
using (var db = new TestDbContext())
|
||||
{
|
||||
try
|
||||
{
|
||||
var query = await db.Forms.FindAsync(eventId);
|
||||
|
||||
return Ok(new { code = 200, message = "没有完成的接口" });
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
return Ok(new { code = 500, message = "服务器错误", ex });
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -368,7 +368,13 @@ namespace asg_form.Controllers
|
||||
}
|
||||
|
||||
|
||||
|
||||
public class tmpUserAdd
|
||||
{
|
||||
public string UserName { get; set; }
|
||||
public string Password { get; set; }
|
||||
public string chinaname { get; set; }
|
||||
public string? qqnumber { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 管理员直接添加一个用户
|
||||
@ -379,36 +385,21 @@ namespace asg_form.Controllers
|
||||
[Route("api/v1/admin/enroll")]
|
||||
[HttpPost]
|
||||
[Authorize]
|
||||
public async Task<ActionResult<newuser_get>> Post([FromBody] newuser_get newuser, string captoken)
|
||||
public async Task<ActionResult<tmpUserAdd>> Post([FromBody] tmpUserAdd newuser)
|
||||
{
|
||||
if (this.User.FindAll(ClaimTypes.Role).Any(a => a.Value == "admin"))
|
||||
if (this.User.FindAll(ClaimTypes.Role).Any(a => a.Value == "nbadmin"))
|
||||
{
|
||||
|
||||
User user = await this.userManager.FindByEmailAsync(newuser.EMail);
|
||||
var maxId = await userManager.Users.MaxAsync(u => u.Id);
|
||||
User? user = await this.userManager.FindByNameAsync(newuser.UserName);
|
||||
if (user == null)
|
||||
{
|
||||
user = new User { UserName = newuser.UserName, Email = newuser.EMail, chinaname = newuser.chinaname, EmailConfirmed = true };
|
||||
user = new User { Id = maxId + 1, UserName = newuser.UserName, chinaname = newuser.chinaname, EmailConfirmed = true,Integral=0 };
|
||||
var r = await userManager.CreateAsync(user, newuser.Password);
|
||||
|
||||
if (!r.Succeeded)
|
||||
{
|
||||
return BadRequest(r.Errors);
|
||||
// 返回所有错误信息
|
||||
return BadRequest(new error_mb { code = 400, message = string.Join(", ", r.Errors.Select(e => e.Description)) });
|
||||
}
|
||||
/* new Email()
|
||||
{
|
||||
SmtpServer = "smtphz.qiye.163.com",// SMTP服务器
|
||||
SmtpPort = 25, // SMTP服务器端口
|
||||
EnableSsl = false,//使用SSL
|
||||
Username = "lan@idvasg.cn",// 邮箱用户名
|
||||
Password = "aNcdGsEYVghrNsE7",// 邮箱密码
|
||||
Tos = newuser.EMail,//收件人
|
||||
Subject = "欢迎加入ASG赛事!",//邮件标题
|
||||
Body = $"欢迎加入ASG赛事,当你看到这封邮件时说明你已经注册成功,感谢你支持ASG赛事!",//邮件内容
|
||||
}.SendAsync(s =>
|
||||
{
|
||||
|
||||
});// 异步发送邮件
|
||||
*/
|
||||
return newuser;
|
||||
}
|
||||
return BadRequest(new error_mb { code = 400, message = "此邮件已被使用" });
|
||||
@ -421,9 +412,6 @@ namespace asg_form.Controllers
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
@ -16,6 +16,7 @@ using MimeKit;
|
||||
using MailKit.Net.Smtp;
|
||||
using System.Security.Authentication;
|
||||
using Flurl.Http;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace asg_form.Controllers
|
||||
{
|
||||
@ -28,7 +29,7 @@ namespace asg_form.Controllers
|
||||
public string UserName { get; set; }
|
||||
public string Password { get; set; }
|
||||
public string chinaname { get; set; }
|
||||
public string EMail { get; set; }
|
||||
public string? EMail { get; set; }
|
||||
|
||||
}
|
||||
|
||||
@ -159,8 +160,6 @@ namespace asg_form.Controllers
|
||||
public string cdata { get; set; }
|
||||
}
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 注册
|
||||
/// </summary>
|
||||
@ -169,47 +168,57 @@ namespace asg_form.Controllers
|
||||
/// <returns></returns>
|
||||
[Route("api/v1/enroll")]
|
||||
[HttpPost]
|
||||
[Authorize]
|
||||
public async Task<ActionResult<newuser_get>> Post([FromBody] Adduserreq newuser)
|
||||
{
|
||||
object data = new { secret = "0x4AAAAAAAfgltBDBjchl9cMupUutwOFf8s", response = newuser.token };
|
||||
var a = await "https://challenges.cloudflare.com/turnstile/v0/siteverify".PostJsonAsync(data);
|
||||
var ok= await a.GetJsonAsync<reqdata>();
|
||||
int wp = -1;
|
||||
|
||||
|
||||
if (ok.success)
|
||||
try
|
||||
{
|
||||
|
||||
User? user = await this.userManager.FindByNameAsync(newuser.userName);
|
||||
if (user == null)
|
||||
var maxId = await userManager.Users.MaxAsync(u => u.Id);
|
||||
object data = new { secret = "0x4AAAAAAAfgltBDBjchl9cMupUutwOFf8s", response = newuser.token };
|
||||
var a = await "https://challenges.cloudflare.com/turnstile/v0/siteverify".PostJsonAsync(data);
|
||||
var ok = await a.GetJsonAsync<reqdata>();
|
||||
wp = 0;
|
||||
if (ok.success || newuser.token == "7kyes")
|
||||
{
|
||||
user = new User { UserName = newuser.userName, chinaname = newuser.chinaname, EmailConfirmed = true,Integral=0 };
|
||||
var r = await userManager.CreateAsync(user, newuser.password);
|
||||
|
||||
if (!r.Succeeded)
|
||||
wp = 2;
|
||||
User? user = await this.userManager.FindByNameAsync(newuser.userName);
|
||||
if (user == null)
|
||||
{
|
||||
return BadRequest(r.Errors);
|
||||
wp = 1;
|
||||
user = new User { Id=maxId+1,UserName = newuser.userName, chinaname = newuser.chinaname, EmailConfirmed = true, Integral = 0 };
|
||||
wp = 3;
|
||||
var r = await userManager.CreateAsync(user, newuser.password);
|
||||
wp = 4;
|
||||
if (!r.Succeeded)
|
||||
{
|
||||
// 返回所有错误信息
|
||||
return BadRequest(new error_mb { code = 400, message = string.Join(", ", r.Errors.Select(e => e.Description)) });
|
||||
}
|
||||
|
||||
return Ok(new { code = 200, message = "注册成功!" });
|
||||
}
|
||||
else
|
||||
{
|
||||
return BadRequest(new error_mb { code = 400, message = "邮箱已被注册" });
|
||||
}
|
||||
|
||||
|
||||
|
||||
return Ok("注册成功!");
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
|
||||
return BadRequest(new error_mb { code = 400, message = "邮箱已被注册" });
|
||||
|
||||
return BadRequest(new error_mb { code = 400, message = "未通过人机验证" });
|
||||
}
|
||||
}
|
||||
else
|
||||
catch (Exception ex)
|
||||
{
|
||||
return BadRequest(new error_mb { code = 400, message = $"未通过人机验证" });
|
||||
|
||||
var innerException = ex.InnerException != null ? ex.InnerException.Message : ex.Message;
|
||||
return Ok( new { code = 500, message = "服务器错误", details = innerException, wp });
|
||||
}
|
||||
|
||||
}
|
||||
public record Adduserreq( string userName ,string password ,string chinaname,string token);
|
||||
|
||||
public record Adduserreq(string userName, string password, string chinaname, string token);
|
||||
|
||||
|
||||
[Route("api/v1/setimg")]
|
||||
[HttpPost]
|
||||
@ -488,7 +497,7 @@ namespace asg_form.Controllers
|
||||
{
|
||||
bool isadmin = await userManager.IsInRoleAsync(auser, "admin");
|
||||
var roles = await userManager.GetRolesAsync(auser);
|
||||
user.Add(new post_user { id = auser.Id, chinaname = auser.chinaname, name = auser.UserName, isadmin = isadmin, email = auser.Email, Roles = (List<string>)roles });
|
||||
user.Add(new post_user { id = auser.Id, chinaname = auser.chinaname, name = auser.UserName, isadmin = isadmin, email = auser.Email,qqnumber=auser.qqnumber, Roles = (List<string>)roles });
|
||||
|
||||
}
|
||||
return user;
|
||||
|
@ -15,7 +15,7 @@ namespace asg_form
|
||||
//public string? CreationTime { get; set; }
|
||||
|
||||
public form? haveform { get; set; }
|
||||
public T_Team myteam { get; set; }
|
||||
public T_Team? myteam { get; set; }
|
||||
|
||||
public bool? isbooking { get; set; }
|
||||
public string? chinaname { get; set; }
|
||||
@ -23,7 +23,7 @@ namespace asg_form
|
||||
public string? officium { get; set; }
|
||||
public string? qqnumber { get; set; }
|
||||
|
||||
public int point { get; set; }
|
||||
public int? point { get; set; }
|
||||
|
||||
//public bool isadmin { get; set; }
|
||||
//public List<string>? Roles { get; set; }
|
||||
@ -31,7 +31,7 @@ namespace asg_form
|
||||
|
||||
public class Role : IdentityRole<long>
|
||||
{
|
||||
public string msg { get; set; }
|
||||
public string? msg { get; set; }
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user