public IActionResult UpdateClassById([FromRoute] long classId, [FromBody] ClassWithProportions updated)
 {
     try
     {
         var userlogin = _userService.GetUserByUserId(User.Id());
         if (userlogin.Type != Shared.Models.Type.Teacher)
         {
             return(StatusCode(403, new { msg = "权限不足" }));
         }
         _classService.UpdateClassByClassId(classId, new ClassInfo
         {
             Id                     = classId,
             Name                   = updated.Name,
             ClassTime              = updated.Time,
             Site                   = updated.Site,
             ThreePointPercentage   = updated.Proportions.C,
             FourPointPercentage    = updated.Proportions.B,
             FivePointPercentage    = updated.Proportions.A,
             ReportPercentage       = updated.Proportions.Report,
             PresentationPercentage = updated.Proportions.Presentation
         });
         return(NoContent());
     }
     catch (ClassNotFoundException)
     {
         return(StatusCode(404, new { msg = "班级不存在" }));
     }
     catch (ArgumentException)
     {
         return(StatusCode(400, new { msg = "班级ID输入格式有误" }));
     }
 }
Example #2
0
        public IActionResult CreateClassByCourseId([FromRoute] long courseId, [FromBody] ClassWithProportions newClass)
        {
            var userlogin = _userService.GetUserByUserId(User.Id());

            if (userlogin.Type != Type.Teacher)
            {
                return(StatusCode(403, new { msg = "权限不足" }));
            }

            var classId = _courseService.InsertClassById(courseId, new ClassInfo
            {
                Name                   = newClass.Name,
                ClassTime              = newClass.Time,
                Site                   = newClass.Site,
                ThreePointPercentage   = newClass.Proportions.C,
                FourPointPercentage    = newClass.Proportions.B,
                FivePointPercentage    = newClass.Proportions.A,
                ReportPercentage       = newClass.Proportions.Report,
                PresentationPercentage = newClass.Proportions.Presentation
            });

            return(Created($"/class/{classId}", new { id = classId }));
        }