using AutoMapper; using Microsoft.EntityFrameworkCore; using System.Collections.Generic; using YD_XinWei.Api.Context; using YD_XinWei.Api.Services.Interface; using YD_XinWei.Api.SmartSportsEntitys; using YD_XinWei.Api.Utilities; using YD_XinWei.Commons.Dto.Common; using YD_XinWei.Commons.Dto.HomeWork; using YD_XinWei.Commons.Dto.Open; using YD_XinWei.Commons.Dto.School; namespace YD_XinWei.Api.Services.Impl { /// /// 服务 /// public class XinWeiService : IXinWeiService { public SmartSportsContext _sportsContext; private readonly IMapper _mapper; /// /// 构造 /// /// /// public XinWeiService(SmartSportsContext sportsContext, IMapper mapper) { _sportsContext = sportsContext; _mapper = mapper; } /// /// 项目模式 /// /// public async Task> SportsModelTypeList() { var res = await _sportsContext.XW_ProjectMode.Select(x => new ProjectModeDto() { Id = x.Id, ProjectKind = x.ProjectKind, Name = x.Name }).ToListAsync(); return res; } /// /// 体育项目 /// /// 学校Id /// public async Task> OrgSportsProjectList(int orgId) { var res = await _sportsContext.XW_TestingProject.Where(x => x.OrgId == orgId).Select(x => new TestingProjectDto() { ProjectId = x.ProjectId, IsOpen = x.IsOpen, IsShow = x.IsShow, ProjectName = x.ProjectName }).ToListAsync(); return res; } /// /// 获取学生信息 /// /// 学校Id /// public async Task> MinimumOfStudentInfoList(int orgId) { string schoolCode = await _sportsContext.School.Where(x => x.Id == orgId).Select(x => x.SchoolCode).FirstAsync(); var res = await (from s in _sportsContext.Student join c in _sportsContext.Class on s.ClassId equals c.Id join g in _sportsContext.Grade on c.GradeId equals g.Id where s.SchoolCode == schoolCode select new StudentInfoDto() { Id = s.Id, OrgId = orgId, UserId = 1, StudentNo = s.StudentNo, Name = s.StudentName, Sex = s.Sex == 1 ? "男" : "女", ClassId = c.Id, GradeId = g.Id, RuleGradeId = g.Id, ClassName = c.ClassName, GradeName = g.GradeName, CardNo = new object() }).ToListAsync(); return res; } } }