This commit is contained in:
王炜翔 2024-11-05 23:00:30 +08:00
parent 7f85b4dac7
commit 2cdb8f60ae

View File

@ -272,7 +272,7 @@ namespace asg_form.Controllers.Team
4 => query.OrderByDescending(m => m.time), 4 => query.OrderByDescending(m => m.time),
_ => query _ => query
}; };
if (this.User.FindAll(ClaimTypes.Role).Any(a => a.Value == "nbadmin")) if (this.User.FindAll(ClaimTypes.Role).Any(a => a.Value == "nbadmin")|| this.User.FindAll(ClaimTypes.Role).Any(a => a.Value == "admin"))
{ {
try try
{ {
@ -299,11 +299,14 @@ namespace asg_form.Controllers.Team
var results = await query var results = await query
.Skip((page - 1) * limit) .Skip((page - 1) * limit)
.Take(limit) .Take(limit)
.Select(f => new .Select(f => new AdminTeamFind
{ {
formId = f.Id, form = new form
teamName = f.team_name, {
voteOfLikes = f.piaoshu, Id = f.Id,
team_name = f.team_name,
piaoshu = f.piaoshu,
},
roles = findRolesByFormId(f.Id) roles = findRolesByFormId(f.Id)
}) })
.ToListAsync(); .ToListAsync();
@ -318,7 +321,45 @@ namespace asg_form.Controllers.Team
} }
} }
} }
/// <summary>
/// 新的删除战队口
/// </summary>
[Route("api/v2/form/delete")]
[HttpDelete]
[Authorize]
public async Task<ActionResult<object>> DeleteFormById(long formId)
{
if (!this.User.FindAll(ClaimTypes.Role).Any(a => a.Value == "nbadmin")|| !this.User.FindAll(ClaimTypes.Role).Any(a => a.Value == "admin"))
{
return BadRequest(new error_mb { code = 400, message = "无权访问" });
}
using (var db = new TestDbContext())
{
try
{
var rolesToDelete = db.Roles.Where(r => r.form.Id == formId).ToList();
if (rolesToDelete.Any())
{
db.Roles.RemoveRange(rolesToDelete);
}
var formToDelete = await db.Forms.FindAsync(formId);
if (formToDelete == null)
{
return NotFound(new { code = 404, message = "表单未找到" });
}
db.Forms.Remove(formToDelete);
await db.SaveChangesAsync();
return Ok(new { code = 200, message = "删除成功" });
}
catch (Exception ex)
{
return StatusCode(500, new { code = 500, message = "服务器错误", error = ex.Message });
}
}
}
} }