using Edu.Common.Enum; using Edu.Model.ViewModel.Course; using Edu.Model.ViewModel.Grade; using Edu.Repository.Course; using Edu.Repository.Grade; using System; using System.Collections.Generic; using System.Linq; using System.Text; using VT.FW.DB; namespace Edu.Module.Public { /// /// 基础配置相关 /// public class ClassConfigModule { /// /// 课程相关设置仓储层对象 /// private readonly RB_Class_ConfigRepository class_ConfigRepository = new RB_Class_ConfigRepository(); /// /// 班级类型仓储层对象 /// private readonly RB_Class_TypeRepository class_TypeRepository = new RB_Class_TypeRepository(); /// /// 班级仓储层对象 /// private readonly RB_ClassRepository classRepository = new RB_ClassRepository(); /// /// 账号 /// private readonly Repository.User.RB_AccountRepository accountRepository = new Repository.User.RB_AccountRepository(); #region 班级基础设置 /// /// 获取班级配置实体类 /// /// /// public RB_Class_Config_ViewModel GetClassConfigModule(RB_Class_Config_ViewModel query) { var model = class_ConfigRepository.GetClassConfigRepository(query); List AdminiIds = Common.ConvertHelper.StringToList(model.AdminiIds); if (AdminiIds!=null&& AdminiIds.Count>0)//查询管理员 { var empList = accountRepository.GetEmployeeListRepository(new Edu.Model.ViewModel.User.Employee_ViewModel() { Group_Id = query.Group_Id, QIds = string.Join(",", AdminiIds) }); if (empList != null && empList.Any()) { model.AdminiIdList = new List(); foreach (var item in empList) { model.AdminiIdList.Add(new { item.Id, item.EmployeeName, item.UserIcon }); } } } return model; } /// /// 添加修改班级基础设置 /// /// /// public bool SetClassConfigModule(RB_Class_Config_ViewModel extModel) { var oldModel = GetClassConfigModule(extModel); bool flag; if (oldModel != null && oldModel.ConfigId > 0) { Dictionary fileds = new Dictionary() { {nameof(RB_Class_Config_ViewModel.BasicHourFee),extModel.BasicHourFee }, {nameof(RB_Class_Config_ViewModel.BasicClassNum),extModel.BasicClassNum }, {nameof(RB_Class_Config_ViewModel.BasicMinutes),extModel.BasicMinutes }, {nameof(RB_Class_Config_ViewModel.UpdateBy),extModel.UpdateBy }, {nameof(RB_Class_Config_ViewModel.UpdateTime),extModel.UpdateTime }, {nameof(RB_Class_Config_ViewModel.BasicHours),extModel.BasicHours }, {nameof(RB_Class_Config_ViewModel.AdminiIds),extModel.AdminiIds }, }; flag = class_ConfigRepository.Update(fileds, new WhereHelper(nameof(RB_Class_Config_ViewModel.ConfigId), oldModel.ConfigId)); } else { var newId = class_ConfigRepository.Insert(extModel); flag = newId > 0; extModel.ConfigId = newId; } return flag; } #endregion #region 班级类型设置 /// /// 获取班级类型费用分页列表 /// /// /// /// /// /// public List GetClassTypePageListModule(int pageIndex, int pageSize, out long rowsCount, RB_Class_Type_ViewModel query) { var list = class_TypeRepository.GetClassTypePageListRepository(pageIndex, pageSize, out rowsCount, query); if (list != null && list.Count > 0) { List staticList = new List(); var ids = string.Join(",", list.Select(qitem => qitem.CTypeId)); if (!string.IsNullOrEmpty(ids)) { staticList = classRepository.GetClassTypeStaticListRepository(ids); } foreach (var item in list) { var fModel = staticList?.Where(qitem => qitem.ClassType == item.CTypeId)?.FirstOrDefault(); item.TotalClassNum = fModel?.TotalClassNum ?? 0; item.CompleteClassNum = fModel?.CompleteClassNum ?? 0; } } return list; } /// /// 获取班级类型列表 /// /// /// public List GetClassTypeListModule(RB_Class_Type_ViewModel query) { return class_TypeRepository.GetClassTypeListRepository(query); } /// /// 新增修改班级类型 /// /// /// public bool SetClassTypeModule(RB_Class_Type_ViewModel extModel) { bool flag; if (extModel.CTypeId > 0) { Dictionary fileds = new Dictionary() { {nameof(RB_Class_Type_ViewModel.CTypeName),extModel.CTypeName}, {nameof(RB_Class_Type_ViewModel.AddHourFee),extModel.AddHourFee}, {nameof(RB_Class_Type_ViewModel.DefaultClassNum),extModel.DefaultClassNum}, {nameof(RB_Class_Type_ViewModel.ClassNoPrefix),extModel.ClassNoPrefix}, {nameof(RB_Class_Type_ViewModel.UpdateBy),extModel.UpdateBy}, {nameof(RB_Class_Type_ViewModel.UpdateTime),extModel.UpdateTime}, }; flag = class_TypeRepository.Update(fileds, new WhereHelper(nameof(RB_Class_Type_ViewModel.CTypeId), extModel.CTypeId)); } else { var newId = class_TypeRepository.Insert(extModel); extModel.CTypeId = newId; flag = newId > 0; } return flag; } /// /// 获取班级类型实体类 /// /// /// public RB_Class_Type_ViewModel GetClassTypeModule(object CTypeId) { return class_TypeRepository.GetEntity(CTypeId); } /// /// 删除班级类型 /// /// /// public bool RemoveClassTypeModule(int CTypeId) { Dictionary fileds = new Dictionary() { {nameof(RB_Class_Type_ViewModel.Status),(int) DateStateEnum.Delete} }; bool flag = class_TypeRepository.Update(fileds, new WhereHelper(nameof(RB_Class_Type_ViewModel.CTypeId), CTypeId)); return flag; } #endregion } }