ltx f741d95a52 feat: 接入体质评估报告生成与学员查询接口
教练提交学生体质数据前校验任教班级关系,调用评估服务生成报告并复用现有报告持久化逻辑。

新增当前登录学员或家长的最新报告查询接口,按令牌中的学校与学号限定查询范围;补充请求 DTO 与服务接口。

验证:dotnet build WeChatApplet/YD_WeChatApplet.Api.csproj --no-restore --nologo -clp:ErrorsOnly(0 错误)。
2026-10-23 16:48:14 +08:00

94 lines
2.9 KiB
C#

using Microsoft.AspNetCore.Mvc;
using YD_WeChatApplet.Api.Dto.Teacher;
using YD_WeChatApplet.Api.Services.Impl;
using YD_WeChatApplet.Commons.Dto;
using YD_WeChatApplet.Commons.Dto.HomeWork;
using YD_WeChatApplet.Commons.Dto.Patriarch;
using YD_WeChatApplet.Services;
namespace YD_WeChatApplet.Api.Controllers
{
/// <summary>
/// 家长端
/// </summary>
[ApiController]
[ApiExplorerSettings(GroupName = "v1")]
[Route("[controller]")]
public class PatriarchController : ControllerBase
{
private readonly IPatriarchService _patriarchService;
public PatriarchController(IPatriarchService patriarchService)
{
_patriarchService = patriarchService;
}
/// <summary>
/// 新增训练
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
[HttpPost("AddExerciseData")]
public async Task<IActionResult> AddExerciseData([FromBody] AddExerciseDataDto dto)
{
await _patriarchService.AddExerciseData(dto);
return Ok("新增训练成功");
}
/// <summary>
/// 作业记录
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
[HttpGet("HomeWorkRecordByTeacher")]
public async Task<PageDataDto<HomeWorkRecordByPatriarchDto>> HomeWorkRecordByTeacher(PatriarchHomeWorkHistoryDto dto)
{
var res = await _patriarchService.HomeWorkRecordByPatriarch(dto);
return res;
}
/// <summary>
/// 作业详情
/// </summary>
/// <param name="homeWorkId"></param>
/// <returns></returns>
[HttpGet("HomeWorkDetailsByPatriarch")]
public async Task<PatriarchHomeWorkDetailsDto> HomeWorkDetailsByPatriarch(int homeWorkId)
{
var res = await _patriarchService.HomeWorkDetailsByPatriarch(homeWorkId);
return res;
}
/// <summary>
/// 学生报告
/// </summary>
/// <returns></returns>
[HttpGet("StudentReport")]
public async Task<StudentReportDto> StudentReport(string? studentNo)
{
var res = await _patriarchService.StudentReport(studentNo);
return res;
}
/// <summary>
/// 当前登录学员或家长查看最新体质报告
/// </summary>
[HttpGet("GetPostureReport")]
public async Task<PostureReportContentDto> GetPostureReport()
{
return await _patriarchService.GetPostureReport();
}
/// <summary>
/// 训练记录
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
[HttpGet("ExerciseRecord")]
public async Task<PageDataDto<ExerciseRecordDto>> ExerciseRecord(PageDto dto)
{
var res = await _patriarchService.ExerciseRecord(dto);
return res;
}
}
}