开始考试接口

master
xiaochanghai 11 months ago
parent b1d2ff941a
commit 44ed47e709
  1. 11
      Tiobon.Core.Api/Controllers/Ghre/Ghre_ExamRecordController.cs
  2. 7
      Tiobon.Core.Api/Tiobon.Core.xml
  3. 2
      Tiobon.Core.IServices/Ghre/IGhre_ExamRecordServices.cs
  4. 2
      Tiobon.Core.Model/ViewModels/Extend/Ghre_ExamRecordExtend.cs
  5. 26
      Tiobon.Core.Services/Ghre/Ghre_ExamRecordServices.cs
  6. 7
      Tiobon.Core/Tiobon.Core.xml

@ -68,4 +68,15 @@ public class Ghre_ExamRecordController : BaseController<IGhre_ExamRecordServices
{
return await _service.QueryExamAsync(id);
}
/// <summary>
/// 开始考试
/// </summary>
/// <param name="examRecordId"></param>
/// <returns></returns>
[HttpPost("StartExam/{examRecordId}")]
public async Task<ServiceResult> StartExamAsync(long examRecordId)
{
return await _service.StartExamAsync(examRecordId);
}
}

@ -848,6 +848,13 @@
<param name="id">学习记录ID/考试记录ID</param>
<returns></returns>
</member>
<member name="M:Tiobon.Core.Api.Controllers.Ghre_ExamRecordController.StartExamAsync(System.Int64)">
<summary>
开始考试
</summary>
<param name="examRecordId"></param>
<returns></returns>
</member>
<member name="T:Tiobon.Core.Api.Controllers.Ghre_ExamRecordDetailController">
<summary>
Ghre_ExamRecordDetail(Controller)

@ -19,5 +19,7 @@ namespace Tiobon.Core.IServices
Task<ServiceResult> CommentAsync(Ghre_ExamRecordExtend extend, long examRecordId);
Task<ServiceResult<QueryExam>> QueryExamAsync(long id);
Task<ServiceResult> StartExamAsync(long examRecordId);
}
}

@ -44,7 +44,7 @@ public class QueryExam : DefaultGhre_ExamPaperPageData
/// <summary>
/// 剩余时间
/// </summary>
public string RemainingSecond { get; set; }
public int RemainingSecond { get; set; }
/// <summary>
/// 头像

@ -554,6 +554,32 @@ public class Ghre_ExamRecordServices : BaseServices<Ghre_ExamRecord, Ghre_ExamRe
extend.ExamStatus = record.Status;
extend.TotalScore = record.TotalScore;
extend.Id = record.Id;
TimeSpan timeDifference = record.EndTime.Value - DateTime.Now;
extend.RemainingSecond = Convert.ToInt32(timeDifference.TotalSeconds);
if (extend.RemainingSecond < 0) extend.RemainingSecond = 0;
return ServiceResult<QueryExam>.OprateSuccess("查询成功!", extend);
}
public async Task<ServiceResult> StartExamAsync(long examRecordId)
{
var entity = await base.QuerySingle(examRecordId);
if (entity is null)
return ServiceResult.OprateFailed("无效的考试ID!");
if (entity.ActualBeginTime is null)
entity.ActualBeginTime = DateTime.Now;
if (entity.Status == "Wait")
entity.Status = "Examing";
await Update(entity, new List<string>()
{
"ActualBeginTime",
"Status"
});
return ServiceResult.OprateSuccess("成功!");
}
}

@ -848,6 +848,13 @@
<param name="id">学习记录ID/考试记录ID</param>
<returns></returns>
</member>
<member name="M:Tiobon.Core.Api.Controllers.Ghre_ExamRecordController.StartExamAsync(System.Int64)">
<summary>
开始考试
</summary>
<param name="examRecordId"></param>
<returns></returns>
</member>
<member name="T:Tiobon.Core.Api.Controllers.Ghre_ExamRecordDetailController">
<summary>
Ghre_ExamRecordDetail(Controller)

Loading…
Cancel
Save