exam_service

This commit is contained in:
SpecialX
2025-06-11 15:02:20 +08:00
parent 97843ab5fd
commit e26881ec2f
52 changed files with 3510 additions and 1174 deletions

View File

@@ -3,21 +3,47 @@
public class ApiResponse
{
public ApiResponse(string message, bool status = false)
{
this.Message = message;
this.Status = status;
}
: this(status, message, null) { }
public ApiResponse(bool status, object result)
: this(status, string.Empty, result) { }
/// <summary>
/// 创建一个表示成功响应的 ApiResponse 实例。
/// </summary>
/// <param name="message">成功消息。</param>
/// <param name="result">可选的返回数据。</param>
/// <returns>ApiResponse 实例。</returns>
public static ApiResponse Success(string message = "操作成功。", object? result = null)
{
this.Status = status;
this.Result = result;
return new ApiResponse(true, message, result);
}
/// <summary>
/// 创建一个表示失败响应的 ApiResponse 实例。
/// </summary>
/// <param name="message">错误消息。</param>
/// <param name="result">可选的错误详情或数据。</param>
/// <returns>ApiResponse 实例。</returns>
public static ApiResponse Error(string message = "操作失败。", object? result = null)
{
return new ApiResponse(false, message, result);
}
public ApiResponse()
{
}
private ApiResponse(bool status, string message, object? result)
{
Status = status;
Message = message;
Result = result;
}
public string Message { get; set; }
public bool Status { get; set; }

View File

@@ -3,31 +3,33 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml.Serialization;
namespace Entities.DTO
{
public class ExamDto
{
public Guid? AssignmentId { get; set; }
public string CreaterEmail { get; set; }
public string AssignmentTitle { get; set; } = string.Empty;
public string Description { get; set; }
public string SubjectArea { get; set; }
public List<QuestionGroupDto> QuestionGroups { get; set; } = new List<QuestionGroupDto>();
public QuestionGroupDto QuestionGroups { get; set; } = new QuestionGroupDto();
}
public class QuestionGroupDto
{
public int Index { get; set; }
public byte Index { get; set; }
public string Title { get; set; }
public string? Title { get; set; }
public int Score { get; set; }
public string QuestionReference { get; set; }
public float Score { get; set; }
public string? Descript { get; set; }
public List<SubQuestionDto> SubQuestions { get; set; } = new List<SubQuestionDto>();
public List<QuestionGroupDto> SubQuestionGroups { get; set; } = new List<QuestionGroupDto>();
public bool ValidQuestionGroup { get; set; } = false;
}
public class SubQuestionDto
@@ -35,16 +37,17 @@ namespace Entities.DTO
public byte Index { get; set; }
public string Stem { get; set; }
public string? Stem { get; set; }
public float Score { get; set; }
public List<OptionDto> Options { get; set; } = new List<OptionDto>();
public string SampleAnswer { get; set; }
public string? SampleAnswer { get; set; }
public string QuestionType { get; set; }
public string DifficultyLevel { get; set; }
public string? QuestionType { get; set; }
public string? DifficultyLevel { get; set; }
public bool ValidQuestion { get; set; } = false;
}