| | |
| | | package com.tcm.training.admin.app.notice.controller; |
| | | |
| | | import com.tcm.training.admin.app.notice.service.AppNoticeService; |
| | | import com.tcm.training.admin.app.notice.vo.AppActivityNoticeDetailVO; |
| | | import com.tcm.training.admin.app.notice.vo.AppActivityNoticeListItemVO; |
| | | import com.tcm.training.admin.app.notice.vo.AppNoticeDetailVO; |
| | | import com.tcm.training.admin.app.notice.vo.AppNoticeItemVO; |
| | | import com.tcm.training.admin.common.ApiResponse; |
| | | import com.tcm.training.admin.common.PageResponse; |
| | | import org.springframework.validation.annotation.Validated; |
| | | import org.springframework.web.bind.annotation.GetMapping; |
| | | import org.springframework.web.bind.annotation.PathVariable; |
| | |
| | | appNoticeService.markRead(noticeType); |
| | | return ApiResponse.ok(null); |
| | | } |
| | | |
| | | /** |
| | | * 获取指定类型通知详情。 |
| | | */ |
| | | @GetMapping("/{noticeType}/detail") |
| | | public ApiResponse<AppNoticeDetailVO> detail(@PathVariable("noticeType") String noticeType) { |
| | | return ApiResponse.ok(appNoticeService.getNoticeDetail(noticeType)); |
| | | } |
| | | |
| | | /** |
| | | * 获取当前登录用户的活动通知分页列表。 |
| | | */ |
| | | @GetMapping("/activity") |
| | | public ApiResponse<PageResponse<AppActivityNoticeListItemVO>> activityPage(@org.springframework.web.bind.annotation.RequestParam(defaultValue = "1") int page, |
| | | @org.springframework.web.bind.annotation.RequestParam(defaultValue = "10") int pageSize) { |
| | | return ApiResponse.ok(appNoticeService.pageActivityNotices(page, pageSize)); |
| | | } |
| | | |
| | | /** |
| | | * 获取当前登录用户的活动通知详情。 |
| | | */ |
| | | @GetMapping("/activity/{id}") |
| | | public ApiResponse<AppActivityNoticeDetailVO> activityDetail(@PathVariable("id") Long id) { |
| | | return ApiResponse.ok(appNoticeService.getActivityNoticeDetail(id)); |
| | | } |
| | | |
| | | /** |
| | | * 将当前登录用户的一条活动通知标记为已读。 |
| | | */ |
| | | @PostMapping("/activity/{id}/read") |
| | | public ApiResponse<Void> markActivityRead(@PathVariable("id") Long id) { |
| | | appNoticeService.markActivityRead(id); |
| | | return ApiResponse.ok(null); |
| | | } |
| | | } |