Ejemplo n.º 1
0
 public CancelMakeLessonFinisher(long makeLessonId, UnitOfWork unitOfWork) : base(makeLessonId)
 {
     this._unitOfWork      = unitOfWork;
     _makeLessonRepository = new Lazy <TblTimMakeLessonRepository>(unitOfWork.GetCustomRepository <TblTimMakeLessonRepository, TblTimMakeLesson>());
     _lessonRepository     = new Lazy <TblTimLessonRepository>(unitOfWork.GetCustomRepository <TblTimLessonRepository, TblTimLesson>());
     _makeLesson           = _makeLessonRepository.Value.Load(makeLessonId);
 }
Ejemplo n.º 2
0
        /// <summary>
        /// 根据排课Id构建一个课次生产对象
        /// <para>作    者:zhiwei.Tang</para>
        /// <para>创建时间:2019-02-19</para>
        /// </summary>
        /// <param name="makeLessonId">排课Id</param>
        /// <param name="unitOfWork">工作单元</param>
        public MakeLessonCreator(long makeLessonId, UnitOfWork unitOfWork) : base(makeLessonId)
        {
            this._unitOfWork                = unitOfWork;
            _makeLessonRepository           = unitOfWork.GetCustomRepository <TblTimMakeLessonRepository, TblTimMakeLesson>();
            _enrollOrderRepository          = unitOfWork.GetCustomRepository <TblOdrEnrollOrderRepository, TblOdrEnrollOrder>();
            _enrollOrderItemRepository      = unitOfWork.GetCustomRepository <TblOdrEnrollOrderItemRepository, TblOdrEnrollOrderItem>();
            _viewClassTeacherDateRepository = unitOfWork.GetCustomRepository <ViewClassTeacherDateRepository, ViewClassTeacherDate>();
            _viewChangeClassTimeRepository  = unitOfWork.GetCustomRepository <ViewChangeClassTimeRepository, ViewChangeClassTime>();

            _makeLesson               = _makeLessonRepository.Load(makeLessonId);
            _classService             = new DefaultClassService(_makeLesson.ClassId);
            _viewClassTeacherDates    = _viewClassTeacherDateRepository.Get(_makeLesson.ClassId);
            _viewChangeClassTimeDates = _viewChangeClassTimeRepository.Get(_makeLesson.ClassId);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 获取班级上课时间课次调整要撤销的课次
        /// <para>作    者:Huang GaoLiang </para>
        /// <para>创建时间:2019-03-11</para>
        /// </summary>
        /// <returns>返回要撤销的课次信息</returns>
        public List <LessonFinisherInfo> GetLessonFinisherInfo()
        {
            // 1、根据课次ID查询课次基础信息
            var studentAttendance = _viewCompleteStudentAttendanceRepository.Value.GetLesson(this._lessonId);

            if (studentAttendance == null)
            {
                //未找到该学生的补课信息
                throw new BussinessException(ModelType.Timetable, 47);
            }

            if (studentAttendance.StudentId != this._studentId)
            {
                //未找到该学生的补课信息
                throw new BussinessException(ModelType.Timetable, 47);
            }

            _makelesson = new StudentTimetableService(this._schoolId, this._studentId).GetTimMakeLessonById(studentAttendance.BusinessId);
            if (_makelesson == null)
            {
                throw new ArgumentNullException(nameof(_makelesson));
            }

            _enrollOrderItem = new EnrollOrderService(this._schoolId).GetEnrollOrderItemById(studentAttendance.EnrollOrderItemId);

            // 2、获取一个班级学生的课次信息
            var stuDayAttendances = _viewCompleteStudentAttendanceRepository.Value.GetStudetnDayLessonList(studentAttendance.SchoolId, studentAttendance.ClassId, studentAttendance.ClassDate, this._studentId, LessonType.RegularCourse);

            // 3、获取父课次下面的所有课次信息
            var lessonIds = stuDayAttendances.Select(x => x.LessonId).ToList();
            List <ViewTimReplenishLessonStudent> stuLessons = _viewTimReplenishLessonStudentRepository.Value.GetLessonListByParentLessonId(lessonIds);

            if (stuLessons == null || !stuLessons.Any())
            {
                //未找到该学生的补课信息
                throw new BussinessException(ModelType.Timetable, 47);
            }

            List <LessonFinisherInfo> lessonList = stuLessons.Select(m => new LessonFinisherInfo
            {
                BusinessId   = m.BusinessId,
                BusinessType = m.BusinessType,
                LessonId     = m.LessonId,
                Remark       = LessonProcessConstants.Remark
            }).ToList();

            this._nums = stuLessons.Count;

            return(lessonList);
        }