From a51fec951af43fdbca207ae6cf68455f9f0ed725 Mon Sep 17 00:00:00 2001 From: tanglong <842690096@qq.com> Date: Fri, 16 Jan 2026 10:06:22 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=AC=E5=B8=88=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Services/HomeWork/S_HomeWorkService.cs | 9 +- .../Training/I_TrainingDataService.cs | 21 ++- .../HomeWork/Request/HomeWorkPageListParam.cs | 5 + .../Training/Request/ClassReportListParam.cs | 5 + .../GetStudentClassReportDetailsModel.cs | 1 + .../JingShiTiJiao/JingShiTiJiaoController.cs | 123 ++++++++++++++++++ VOL.WebApi/Startup.cs | 24 ++-- 7 files changed, 171 insertions(+), 17 deletions(-) create mode 100644 VOL.WebApi/Controllers/JingShiTiJiao/JingShiTiJiaoController.cs diff --git a/VOL.Business/Services/HomeWork/S_HomeWorkService.cs b/VOL.Business/Services/HomeWork/S_HomeWorkService.cs index 6cd5f15..843654c 100644 --- a/VOL.Business/Services/HomeWork/S_HomeWorkService.cs +++ b/VOL.Business/Services/HomeWork/S_HomeWorkService.cs @@ -54,7 +54,14 @@ namespace VOL.Business.Services.Norm var res = new PageDataDto(); var currentTime = DateTime.Now; - var query = from s in _homeWorkRepository.FindAsIQueryable(x => x.SchoolCode == UserContext.Current.TenantId) + string school = ""; + + if (string.IsNullOrWhiteSpace(paramDto.SchoolCode)) + { + school = UserContext.Current.TenantId; + } + + var query = from s in _homeWorkRepository.FindAsIQueryable(x => x.SchoolCode == school) select new HomeWorkListModel() { WorkId = s.Id, diff --git a/VOL.Business/Services/Training/I_TrainingDataService.cs b/VOL.Business/Services/Training/I_TrainingDataService.cs index 952c0a6..7027d10 100644 --- a/VOL.Business/Services/Training/I_TrainingDataService.cs +++ b/VOL.Business/Services/Training/I_TrainingDataService.cs @@ -1996,8 +1996,15 @@ namespace VOL.Business.Services.Training { var res = new PageDataDto(); + string school = ""; + + if (string.IsNullOrWhiteSpace(paramDto.SchoolCode)) + { + school = UserContext.Current.TenantId; + } + var query = from td in _teacherRepository.DbContext.Set() - where td.SchoolCode.Equals(UserContext.Current.TenantId) + where td.SchoolCode.Equals(school) select new ClassReportModel() { Id = td.Id, @@ -2040,8 +2047,8 @@ namespace VOL.Business.Services.Training var schoolCode = UserContext.Current.TenantId; var query = from hrd in _teacherRepository.DbContext.Set() - //where hrd.SchoolCode.Equals(UserContext.Current.TenantId) && hrd.ClassRoomRecordId.Equals(id) && hrd.Strength > 0 - where hrd.SchoolCode.Equals(schoolCode) && hrd.ClassRoomRecordId == id + where (string.IsNullOrWhiteSpace(schoolCode) || hrd.SchoolCode == schoolCode) + && hrd.ClassRoomRecordId == id select hrd; var heartRateDataList = await query.ToListAsync(); @@ -2121,7 +2128,13 @@ namespace VOL.Business.Services.Training { var res = new GetStudentClassReportDetailsModel(); - var schoolCode = UserContext.Current.TenantId; + string schoolCode = ""; + + if (string.IsNullOrWhiteSpace(paramDto.SchoolCode)) + { + schoolCode = UserContext.Current.TenantId; + } + var query = from hrd in _teacherRepository.DbContext.Set() where hrd.SchoolCode == schoolCode && diff --git a/VOL.Model/HomeWork/Request/HomeWorkPageListParam.cs b/VOL.Model/HomeWork/Request/HomeWorkPageListParam.cs index eee941d..5c2c9c2 100644 --- a/VOL.Model/HomeWork/Request/HomeWorkPageListParam.cs +++ b/VOL.Model/HomeWork/Request/HomeWorkPageListParam.cs @@ -15,6 +15,11 @@ namespace VOL.Model.HomeWork /// public class HomeWorkPageListParam : PageDto { + /// + /// 学校编号 + /// + public string? SchoolCode { get; set; } + /// /// 作业类型 /// diff --git a/VOL.Model/Training/Request/ClassReportListParam.cs b/VOL.Model/Training/Request/ClassReportListParam.cs index 25f6465..15e80dc 100644 --- a/VOL.Model/Training/Request/ClassReportListParam.cs +++ b/VOL.Model/Training/Request/ClassReportListParam.cs @@ -11,6 +11,11 @@ namespace VOL.Model /// public class ClassReportListParam : PageDto { + /// + /// 学校编号 + /// + public string? SchoolCode { get; set; } + /// /// 年级Id /// diff --git a/VOL.Model/Training/Response/GetStudentClassReportDetailsModel.cs b/VOL.Model/Training/Response/GetStudentClassReportDetailsModel.cs index cbec8a6..8f815e8 100644 --- a/VOL.Model/Training/Response/GetStudentClassReportDetailsModel.cs +++ b/VOL.Model/Training/Response/GetStudentClassReportDetailsModel.cs @@ -29,6 +29,7 @@ namespace VOL.Model.Training.Response /// public class GetStudentClassReportDetailsDto { + public string? SchoolCode { get; set; } /// /// 课堂Id /// diff --git a/VOL.WebApi/Controllers/JingShiTiJiao/JingShiTiJiaoController.cs b/VOL.WebApi/Controllers/JingShiTiJiao/JingShiTiJiaoController.cs new file mode 100644 index 0000000..a55bf66 --- /dev/null +++ b/VOL.WebApi/Controllers/JingShiTiJiao/JingShiTiJiaoController.cs @@ -0,0 +1,123 @@ +using Microsoft.AspNetCore.Authorization; +using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Mvc; +using Microsoft.EntityFrameworkCore; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using VOL.Business.IServices; +using VOL.Business.IServices.Training; +using VOL.Core.Filters; +using VOL.Core.Utilities; +using VOL.Entity.Enum; +using VOL.Model; +using VOL.Model.HomeWork; +using VOL.Model.Training.Response; +using VOL.System.IRepositories; +using VOL.System.Repositories; + +namespace VOL.WebApi.Controllers.JingShiTiJiao +{ + [Route("api/[controller]")] + [ApiController] + [ApiExplorerSettings(GroupName = "v3")] + [TypeFilter(typeof(CustomApiResponseFilter))] + [AllowAnonymous] + public class JingShiTiJiaoController : ControllerBase + { + #region 初始化 + + private readonly IS_HomeWorkService _homeWorkService; + private readonly II_TrainingDataService _trainingDataService; + public JingShiTiJiaoController( + IS_HomeWorkService homeWorkService, II_TrainingDataService trainingDataService) + { + _homeWorkService = homeWorkService; + _trainingDataService = trainingDataService; + } + + #endregion + + + #region 作业 + + /// + /// 作业列表 + /// + /// + [HttpGet(nameof(GetHomeWorkPageList))] + public async Task> GetHomeWorkPageList(HomeWorkPageListParam paramDto) + { + return await _homeWorkService.GetHomeWorkPageList(paramDto); + } + + /// + /// 作业下学生列表 + /// + /// + [HttpGet(nameof(GetHomeWorkStudents))] + public async Task> GetHomeWorkStudents(HomeWorkStudentsParam paramDto) + { + return await _homeWorkService.GetHomeWorkStudents(paramDto); + } + + /// + /// 作业详情 + /// + /// + [HttpGet(nameof(GetSubmittedAssignments))] + public async Task> GetSubmittedAssignments(int homeWorkId, string studentNo) + { + return await _homeWorkService.GetSubmittedAssignments(homeWorkId, studentNo); + } + #endregion + + + #region 课堂报告 + + /// + /// 课堂报告列表 + /// + /// + [HttpGet(nameof(GetClassReportList))] + public async Task> GetClassReportList(ClassReportListParam paramDto) + { + return await _trainingDataService.GetClassReportList(paramDto); + } + + /// + /// 课堂报告详情 + /// + /// + [HttpGet(nameof(GetClassReportDetails))] + public async Task GetClassReportDetails(int id) + { + return await _trainingDataService.GetClassReportDetails(id); + } + + /// + /// 学生课堂报告详情 + /// + /// + [HttpGet(nameof(GetStudentClassReportDetails))] + public async Task GetStudentClassReportDetails(GetStudentClassReportDetailsDto paramDto) + { + return await _trainingDataService.GetStudentClassReportDetails(paramDto); + } + + #endregion + + + + /// + /// 获取所有年级名称 + /// + /// + [HttpGet(nameof(GetGradeNames))] + public async Task> GetGradeNames() + { + + } + } +} diff --git a/VOL.WebApi/Startup.cs b/VOL.WebApi/Startup.cs index d99fb76..31b827e 100644 --- a/VOL.WebApi/Startup.cs +++ b/VOL.WebApi/Startup.cs @@ -318,18 +318,18 @@ namespace VOL.WebApi //配置HttpContext app.UseStaticHttpContext(); - //app.UseSwagger(); - //app.UseSwaggerUI(c => - //{ - // //2个下拉框选项 选择对应的文档 - // //c.SwaggerEndpoint("/swagger/v1/swagger.json", "VOL.Core后台Api"); - // //c.SwaggerEndpoint("/swagger/v2/swagger.json", "测试第三方Api"); - // //c.SwaggerEndpoint("/swagger/v3/swagger.json", "SmartSportsServer-Api"); - // //c.SwaggerEndpoint("/swagger/v4/swagger.json", "物联网-Api"); - // //c.SwaggerEndpoint("/swagger/v5/swagger.json", "Ai-Api"); - // c.SwaggerEndpoint("/swagger/v6/swagger.json", "AiApp-Api"); - // c.RoutePrefix = ""; - //}); + app.UseSwagger(); + app.UseSwaggerUI(c => + { + //2个下拉框选项 选择对应的文档 + //c.SwaggerEndpoint("/swagger/v1/swagger.json", "VOL.Core后台Api"); + //c.SwaggerEndpoint("/swagger/v2/swagger.json", "测试第三方Api"); + c.SwaggerEndpoint("/swagger/v3/swagger.json", "SmartSportsServer-Api"); + //c.SwaggerEndpoint("/swagger/v4/swagger.json", "物联网-Api"); + //c.SwaggerEndpoint("/swagger/v5/swagger.json", "Ai-Api"); + c.SwaggerEndpoint("/swagger/v6/swagger.json", "AiApp-Api"); + c.RoutePrefix = ""; + }); app.UseRouting(); app.UseCors();