| | |
| | | |
| | | import com.tcm.training.admin.common.ApiResponse; |
| | | import com.tcm.training.admin.common.PageResponse; |
| | | import cn.dev33.satoken.annotation.SaCheckPermission; |
| | | import com.tcm.training.admin.live.dto.LiveCourseStatusRequest; |
| | | import com.tcm.training.admin.live.dto.LiveCourseUpsertRequest; |
| | | import com.tcm.training.admin.live.dto.LiveCoursePasswordRequest; |
| | | import com.tcm.training.admin.live.dto.LiveCoursePasswordVerifyRequest; |
| | | import com.tcm.training.admin.live.service.LiveCourseAppService; |
| | | import com.tcm.training.admin.live.vo.LiveCourseDetailVO; |
| | | import com.tcm.training.admin.live.vo.LiveCourseListItemVO; |
| | |
| | | } |
| | | |
| | | @GetMapping("/live-courses") |
| | | @SaCheckPermission("live:course:view") |
| | | public ApiResponse<PageResponse<LiveCourseListItemVO>> page(@RequestParam(required = false, defaultValue = "1") int page, |
| | | @RequestParam(required = false, defaultValue = "10") int pageSize, |
| | | @RequestParam(required = false) String keyword, |
| | |
| | | } |
| | | |
| | | @PostMapping("/live-courses") |
| | | @SaCheckPermission("live:course:edit") |
| | | public ApiResponse<LiveCourseDetailVO> create(@Valid @RequestBody LiveCourseUpsertRequest req) { |
| | | return ApiResponse.ok(liveCourseAppService.create(req)); |
| | | } |
| | | |
| | | @GetMapping("/live-courses/{id}") |
| | | @SaCheckPermission("live:course:detail") |
| | | public ApiResponse<LiveCourseDetailVO> detail(@PathVariable("id") Long id) { |
| | | return ApiResponse.ok(liveCourseAppService.detail(id)); |
| | | } |
| | | |
| | | @PutMapping("/live-courses/{id}") |
| | | @SaCheckPermission("live:course:edit") |
| | | public ApiResponse<LiveCourseDetailVO> update(@PathVariable("id") Long id, @Valid @RequestBody LiveCourseUpsertRequest req) { |
| | | return ApiResponse.ok(liveCourseAppService.update(id, req)); |
| | | } |
| | | |
| | | @PatchMapping("/live-courses/{id}/status") |
| | | @SaCheckPermission("live:course:status") |
| | | public ApiResponse<LiveCourseStatusVO> patchStatus(@PathVariable("id") Long id, @Valid @RequestBody LiveCourseStatusRequest req) { |
| | | return ApiResponse.ok(liveCourseAppService.patchStatus(id, req)); |
| | | } |
| | | |
| | | @PutMapping("/live-courses/{id}/password") |
| | | public ApiResponse<Void> updatePassword(@PathVariable("id") Long id, @Valid @RequestBody LiveCoursePasswordRequest req) { |
| | | @SaCheckPermission("live:course:password") |
| | | public ApiResponse<Void> updatePassword(@PathVariable("id") Long id, @RequestBody LiveCoursePasswordRequest req) { |
| | | liveCourseAppService.updatePassword(id, req); |
| | | return ApiResponse.ok(null); |
| | | } |
| | | |
| | | @PostMapping("/live-courses/password/verify") |
| | | public ApiResponse<Boolean> verifyPassword(@Valid @RequestBody LiveCoursePasswordVerifyRequest req) { |
| | | return ApiResponse.ok(liveCourseAppService.verifyPassword(req)); |
| | | } |
| | | |
| | | @DeleteMapping("/live-courses/{id}") |
| | | @SaCheckPermission("live:course:edit") |
| | | public ApiResponse<Void> delete(@PathVariable("id") Long id) { |
| | | liveCourseAppService.delete(id); |
| | | return ApiResponse.ok(null); |