/// <summary> /// 描述:老师代课信息保存 /// <para>作者:瞿琦</para> /// <para>创建时间:2019-3-8</para> /// </summary> /// <param name="iRequest">要保存的代课老师信息</param> public override void Adjust(IAdjustLessonRequest iRequest) { AdjustTeacherRequest request = iRequest as AdjustTeacherRequest; using (var unitOfWork = new UnitOfWork()) { try { unitOfWork.BeginTransaction(); var lessonRepository = unitOfWork.GetCustomRepository <TblTimLessonRepository, TblTimLesson>(); LessonService lessonService = new LessonService(unitOfWork); //1.要更换老师的课次 var changeLessonList = lessonRepository.GetTimLessonByClassIdList(request.LessonInfoList.Select(x => x.ClassId), request.LessonInfoList.Select(x => x.ClassDate), LessonUltimateStatus.Normal); //2.向调整课次业务表添加数据 var adjustLessonList = AddAdjustLessonInfo(request.TeacherId, changeLessonList, unitOfWork); //3.提供要销毁的课次对象 var lessonTeacherFinisher = new AdjustLessonTeacherFinisher(adjustLessonList, changeLessonList); lessonService.Finish(lessonTeacherFinisher); //4.提供要更新的课次 var lessonCreator = new AdjustLessonTeacherCreator(request.TeacherId, adjustLessonList, changeLessonList); if (lessonCreator.IsLessonData) //正常课次有数据则创建 { lessonService.Create(lessonCreator); //正常课次 } var replenishLessonService = new ReplenishLessonService(unitOfWork); if (lessonCreator.IsReplenishLessonData) //补课调课有数据则创建 { replenishLessonService.Create(lessonCreator); //补课调课 } unitOfWork.CommitTransaction(); } catch (Exception ex) { unitOfWork.RollbackTransaction(); throw ex; } } }
public void AdjustTeacher([FromBody] AdjustTeacherRequest request) { var service = new AdjustLessonTeacherService(base.SchoolId); service.Adjust(request); }