/// <summary> /// 数据校验 /// <para>作 者:郭伟佳</para> /// <para>创建时间:2018-11-10</para> /// </summary> /// <param name="source">数据源</param> /// <param name="where">表达式</param> /// <param name="exceptionId">异常Id</param> /// <exception cref="AMS.Core.BusinessException"> /// 异常ID:exceptionId /// </exception> private void CheckData(LifeClassAddRequest source, Func <LifeClassAddRequest, bool> where, ushort exceptionId) { if (source == null) { return; } if (where (source)) { throw new BussinessException((byte)ModelType.Timetable, exceptionId); } }
/// <summary> /// 修改一个写生课 /// <para>作 者:郭伟佳</para> /// <para>创建时间:2018-11-10</para> /// </summary> /// <param name="lifeClassId">写生课Id</param> /// <param name="request">写生课实体信息</param> public void Modify(long lifeClassId, LifeClassAddRequest request) { TblTimLifeClass entity = _tblTimLifeClassRepository.Value.GetLifeClassInfo(lifeClassId); //1、数据校验 Verification(request, entity); //2、准备数据 entity.Title = request.Title; entity.Place = request.Place; entity.ClassBeginTime = request.ClassBeginTime; entity.ClassEndTime = request.ClassEndTime; entity.TeacherId = request.TeacherId; //3、写入数据库 _tblTimLifeClassRepository.Value.Update(entity); }
/// <summary> /// 数据校验 /// <para>作 者:郭伟佳</para> /// <para>创建时间:2018-11-10</para> /// </summary> /// <param name="request">写生课实体信息</param> /// <param name="source">对象为NULL表示新增,反之表示修改</param> /// <exception cref="AMS.Core.BusinessException"> /// 异常ID: /// 20. 消耗课次未选择,不可保存 /// 21. 上课开始时间不能小于今天,不可保存 /// 22. 上课结束日期不能小于上课开始日期,不可保存 /// 24. 学期不可修改 /// 25. 消耗课次不可修改 /// </exception> private void Verification(LifeClassAddRequest request, TblTimLifeClass source = null) { //写生课修改的数据检查 if (source == null) { //检查耗用课次 CheckData(request, x => (!x.UseLessonCount.HasValue || x.UseLessonCount == 0), 20); //检查上课开始时间不能小于今天 CheckData(request, x => x.ClassBeginTime.HasValue && x.ClassBeginTime.Value < DateTime.Now, 21); //检查上课结束日期不能小于上课开始日期 CheckData(request, x => x.ClassEndTime.HasValue && x.ClassEndTime.Value < x.ClassBeginTime.Value, 22); } else { //学期不允许修改 CheckData(request, x => x.TermId != source.TermId, 24); //消耗课次不允许修改 CheckData(request, x => x.UseLessonCount != source.UseLessonCount, 25); //如果改变上课开始时间,检查上课开始时间不能小于今天 CheckData(request, x => x.ClassBeginTime != source.ClassBeginTime && x.ClassBeginTime.Value < DateTime.Now, 21); //如果改变上课结束时间,检查上课结束日期不能小于上课开始日期 CheckData(request, x => x.ClassEndTime != source.ClassEndTime && x.ClassEndTime.Value < x.ClassBeginTime.Value, 22); } }
/// <summary> /// 添加一个写生课 /// <para>作 者:郭伟佳</para> /// <para>创建时间:2018-11-22</para> /// </summary> /// <param name="request">写生课实体信息</param> public void Add(LifeClassAddRequest request) { //1、数据校验 Verification(request); //2、准备数据 TblTimLifeClass entity = new TblTimLifeClass { LifeClassId = IdGenerator.NextId(), SchoolId = this._schoolId, TermId = request.TermId.Value, Title = request.Title, Place = request.Place, ClassBeginTime = request.ClassBeginTime, ClassEndTime = request.ClassEndTime, LifeClassCode = _tblTimLifeClassRepository.Value.GenerateLifeClassCode(request.ClassBeginTime.Value), TeacherId = request.TeacherId, UseLessonCount = request.UseLessonCount.Value, CreateTime = DateTime.Now }; //3、写入数据库 _tblTimLifeClassRepository.Value.Add(entity); }
public void Put(long lifeClassId, LifeClassAddRequest request) { new LifeClassService(base.SchoolId).Modify(lifeClassId, request); }
public void Post(LifeClassAddRequest request) { new LifeClassService(base.SchoolId).Add(request); }