171 lines
5.6 KiB
C#
Raw Normal View History

2026-04-21 16:01:53 +08:00
using Microsoft.AspNetCore.Mvc;
using System.ComponentModel.Design;
2026-10-16 09:11:15 +08:00
using YD_WeChatApplet.Api.Dto.Teacher;
2025-06-06 14:57:20 +08:00
using YD_WeChatApplet.Api.Services.Impl;
2025-06-11 11:45:53 +08:00
using YD_WeChatApplet.Commons.Dto;
using YD_WeChatApplet.Commons.Dto.ClassRoomRecord;
2025-06-06 14:57:20 +08:00
using YD_WeChatApplet.Commons.Dto.HomeWork;
2026-04-21 16:01:53 +08:00
using YD_WeChatApplet.Commons.Dto.Patriarch;
2025-06-06 14:57:20 +08:00
using YD_WeChatApplet.Commons.Dto.Resource;
using YD_WeChatApplet.Commons.Dto.Teacher;
using YD_WeChatApplet.Services;
namespace YD_WeChatApplet.Api.Controllers
{
/// <summary>
/// 老师端
/// </summary>
[ApiController]
[ApiExplorerSettings(GroupName = "v1")]
[Route("[controller]")]
public class TeacherController : ControllerBase
{
private readonly ITeacherService _teacherService;
public TeacherController(ITeacherService teacherService)
{
_teacherService = teacherService;
}
/// <summary>
/// 老师个人信息
/// </summary>
/// <returns></returns>
[HttpGet("TeacherProfile")]
public async Task<TeacherProfileDto> TeacherProfile()
{
var res = await _teacherService.TeacherProfile();
return res;
}
/// <summary>
/// 修改个人信息
/// </summary>
/// <param name="paramDto"></param>
/// <returns></returns>
[HttpPost("ModifyTeacherProfile")]
public async Task<IActionResult> ModifyTeacherProfile([FromBody] TeacherProfileDto paramDto)
{
await _teacherService.ModifyTeacherProfile(paramDto);
return Ok("修改成功");
}
/// <summary>
/// 修改密码
/// </summary>
/// <param name="paramDto"></param>
/// <returns></returns>
[HttpPost("ModifyTeacherPwd")]
public async Task<IActionResult> ModifyTeacherPwd([FromBody] ModifyTeacherPwdDto paramDto)
{
await _teacherService.ModifyTeacherPwd(paramDto);
return Ok("修改成功");
}
/// <summary>
/// 项目列表
/// </summary>
/// <param name="gradeId"></param>
/// <returns></returns>
[HttpGet("CategoryList")]
public async Task<List<ComboBoxDto>> CategoryList(int gradeId)
{
var res = await _teacherService.CategoryList(gradeId);
return res;
}
/// <summary>
/// 数据统计接口
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
[HttpGet("DataStatistics")]
public async Task<DataStatisticsDto> DataStatistics([FromQuery] DataStatisticsFilterDto dto)
{
var res = await _teacherService.DataStatistics(dto);
return res;
}
/// <summary>
/// 统计接口详情
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
[HttpGet("DataStatisticsDetails")]
public async Task<DataStatisticsDetailsDto> DataStatisticsDetails([FromQuery] DataStatisticsDetailsFilterDto dto)
{
var res = await _teacherService.DataStatisticsDetails(dto);
return res;
}
2025-06-11 11:45:53 +08:00
/// <summary>
/// 课堂记录
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
[HttpGet("ClassRoomRecord")]
public async Task<PageDataDto<ClassRoomRecordPageDto>> ClassRoomRecord([FromQuery] ClassRoomRecordDto dto)
{
var res = await _teacherService.ClassRoomRecord(dto);
return res;
}
/// <summary>
/// 课堂详情
/// </summary>
/// <param name="classRoomId"></param>
/// <returns></returns>
[HttpGet("ClassRoomReportDetails")]
public async Task<ClassReportDetailsDto> ClassRoomReportDetails(int classRoomId)
{
var res = await _teacherService.ClassRoomReportDetails(classRoomId);
return res;
}
/// <summary>
/// 学员课堂报告
/// </summary>
2026-04-21 16:01:53 +08:00
/// <param name="dto"></param>
2025-06-11 11:45:53 +08:00
/// <returns></returns>
[HttpGet("StudentClassRoomReport")]
2026-04-21 16:01:53 +08:00
public async Task<StudentClassRoomReportDto> StudentClassRoomReport([FromQuery] StudentClassRoomReportRequestDto dto)
{
var res = await _teacherService.StudentClassRoomReport(dto);
return res;
}
/// <summary>
/// 班级报告
/// </summary>
/// <returns></returns>
[HttpGet("ClassReport")]
public async Task<ClassReportDto> ClassReport(int classId)
2025-06-11 11:45:53 +08:00
{
2026-04-21 16:01:53 +08:00
var res = await _teacherService.ClassReport(classId);
2025-06-11 11:45:53 +08:00
return res;
}
2026-10-16 09:11:15 +08:00
/// <summary>
/// 新增学生体态报告
/// </summary>
/// <param name="dto">学生学号及 fitcamp365 评价接口的完整成功响应</param>
/// <returns></returns>
[HttpPost("AddPostureReport")]
public async Task<IActionResult> AddPostureReport([FromBody] AddPostureReportDto dto)
{
var reportId = await _teacherService.AddPostureReport(dto);
return Ok(new { ReportId = reportId });
}
/// <summary>
/// 根据学生学号获取最新体态报告内容
/// </summary>
/// <param name="studentNo">学生学号</param>
/// <returns>报告内容对象</returns>
[HttpGet("GetPostureReport")]
public async Task<PostureReportContentDto> GetPostureReport([FromQuery] string studentNo)
{
return await _teacherService.GetPostureReport(studentNo);
}
2025-06-06 14:57:20 +08:00
}
}