public async Task <dynamic> OnAddCoursewareAsync([FromForm] Courseware courseware, [FromForm] List <int> fileList, [FromForm] string token) { try { var t = await tokenService.GetTokenAsync(token); if (t == null) { throw new Exception("请先登录"); } if (t.Role != UserRole.Admin) { if (t.Role == UserRole.Student) { throw new Exception("权限不足"); } var uc = await courseService.GetUserCourseAsync(t.UserID, courseware.CourseId); if (uc == null) { throw new Exception("权限不足"); } } await courseService.AddCoursewareAsync(courseware); foreach (var fileID in fileList) { await courseService.AddFileToCourseware(courseware.Id, fileID); } await eventService.AddCWUploadedEventAsync(courseware.Id, courseware.Title, t.UserID, courseware.CourseId); return(new { Res = true }); } catch (Exception e) { return(new { Res = false, Error = e.Message }); } }