using Edu.Model.Entity.Course; using Edu.Model.ViewModel.Course; using System.Text; using System.Linq; using Edu.Model.Entity.Grade; using Edu.Model.ViewModel.Grade; namespace Edu.Repository.Grade { /// <summary> /// 班级基础配置仓储层 /// </summary> public class RB_Class_ConfigRepository : BaseRepository<RB_Class_Config> { /// <summary> /// 班级仓储层对象 /// </summary> private readonly RB_ClassRepository classRepository = new RB_ClassRepository(); /// <summary> /// 获取班级基础配置实体 /// </summary> /// <param name="query"></param> /// <returns></returns> public RB_Class_Config_ViewModel GetClassConfigRepository(RB_Class_Config_ViewModel query) { StringBuilder builder = new StringBuilder(); builder.Append(@" SELECT * FROM RB_Class_Config WHERE 1=1 "); if (query != null) { if (query.Group_Id > 0) { builder.AppendFormat(@" AND {0}={1} ", nameof(RB_Class_Config_ViewModel.Group_Id), query.Group_Id); } if (query.ConfigId > 0) { builder.AppendFormat(@" AND {0}={1} ", nameof(RB_Class_Config_ViewModel.ConfigId), query.ConfigId); } } return Get<RB_Class_Config_ViewModel>(builder.ToString()).FirstOrDefault(); } /// <summary> /// 获取基础课时分钟数 /// </summary> /// <param name="Group_Id"></param> /// <returns></returns> public int GetBasicMinutesRepository(int Group_Id) { var BasicMinutes = GetClassConfigRepository(new RB_Class_Config_ViewModel() { Group_Id = Group_Id })?.BasicMinutes ?? 45; return BasicMinutes; } /// <summary> /// 获取班级基础课时分钟数 /// </summary> /// <param name="classId"></param> /// <returns></returns> public int GetClassMinutesRepository(int classId) { var classMinutes= classRepository.GetEntity(classId)?.ClassHourMinute ?? 0; if (classMinutes <= 0) { classMinutes = 45; } return classMinutes; } } }