feat: complete review workflow support
This commit is contained in:
@@ -2,11 +2,17 @@ package com.guo.learningprogresstracker.controller;
|
||||
|
||||
import com.guo.learningprogresstracker.dto.ReviewFeedItem;
|
||||
import com.guo.learningprogresstracker.dto.ReviewTaskStats;
|
||||
import com.guo.learningprogresstracker.dto.request.CreateReviewApplicationRequest;
|
||||
import com.guo.learningprogresstracker.dto.request.UpdateReviewApplicationRequest;
|
||||
import com.guo.learningprogresstracker.dto.request.UpsertReviewMindMapRequest;
|
||||
import com.guo.learningprogresstracker.entity.CommonResult;
|
||||
import com.guo.learningprogresstracker.entity.ReviewApplicationEntity;
|
||||
import com.guo.learningprogresstracker.entity.ReviewMindMapEntity;
|
||||
import com.guo.learningprogresstracker.entity.StudyReportFragmentsEntity;
|
||||
import com.guo.learningprogresstracker.entity.StudyReportsEntity;
|
||||
import com.guo.learningprogresstracker.exception.NotFindEntitiesException;
|
||||
import com.guo.learningprogresstracker.service.impl.ReviewServiceImpl;
|
||||
import com.guo.learningprogresstracker.service.ReviewService;
|
||||
import jakarta.validation.Valid;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
@@ -22,15 +28,16 @@ import java.util.List;
|
||||
@RequiredArgsConstructor
|
||||
public class ReviewController {
|
||||
|
||||
private final ReviewServiceImpl reviewService;
|
||||
private final ReviewService reviewService;
|
||||
|
||||
/**
|
||||
* 获取复习 feed,合并报告和残片按时间倒序
|
||||
*/
|
||||
@GetMapping("/feed")
|
||||
public CommonResult<List<ReviewFeedItem>> getReviewFeed(
|
||||
@RequestParam(defaultValue = "30") int limit) {
|
||||
return CommonResult.success(reviewService.getReviewFeed(limit));
|
||||
@RequestParam(defaultValue = "30") int limit,
|
||||
@RequestParam(defaultValue = "recent") String mode) {
|
||||
return CommonResult.success(reviewService.getReviewFeed(limit, mode));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -72,4 +79,58 @@ public class ReviewController {
|
||||
public CommonResult<StudyReportFragmentsEntity> getFragmentDetail(@PathVariable int id) throws NotFindEntitiesException {
|
||||
return CommonResult.success(reviewService.getFragmentDetail(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取指定任务的应用场景列表
|
||||
*/
|
||||
@GetMapping("/applications/{taskNum}")
|
||||
public CommonResult<List<ReviewApplicationEntity>> getApplications(@PathVariable String taskNum) throws NotFindEntitiesException {
|
||||
return CommonResult.success(reviewService.getApplications(taskNum));
|
||||
}
|
||||
|
||||
/**
|
||||
* 创建应用场景
|
||||
*/
|
||||
@PostMapping("/applications")
|
||||
public CommonResult<ReviewApplicationEntity> createApplication(
|
||||
@Valid @RequestBody CreateReviewApplicationRequest request) throws NotFindEntitiesException {
|
||||
return CommonResult.success(reviewService.createApplication(request));
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新应用场景
|
||||
*/
|
||||
@PutMapping("/applications/{id}")
|
||||
public CommonResult<ReviewApplicationEntity> updateApplication(
|
||||
@PathVariable Integer id,
|
||||
@Valid @RequestBody UpdateReviewApplicationRequest request) throws NotFindEntitiesException {
|
||||
return CommonResult.success(reviewService.updateApplication(id, request));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除应用场景
|
||||
*/
|
||||
@DeleteMapping("/applications/{id}")
|
||||
public CommonResult<Void> deleteApplication(@PathVariable Integer id) throws NotFindEntitiesException {
|
||||
reviewService.deleteApplication(id);
|
||||
return CommonResult.success();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取指定任务的思维导图
|
||||
*/
|
||||
@GetMapping("/mind-map/{taskNum}")
|
||||
public CommonResult<ReviewMindMapEntity> getMindMap(@PathVariable String taskNum) throws NotFindEntitiesException {
|
||||
return CommonResult.success(reviewService.getMindMap(taskNum));
|
||||
}
|
||||
|
||||
/**
|
||||
* 创建或更新指定任务的思维导图
|
||||
*/
|
||||
@PutMapping("/mind-map/{taskNum}")
|
||||
public CommonResult<ReviewMindMapEntity> upsertMindMap(
|
||||
@PathVariable String taskNum,
|
||||
@Valid @RequestBody UpsertReviewMindMapRequest request) throws NotFindEntitiesException {
|
||||
return CommonResult.success(reviewService.upsertMindMap(taskNum, request));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user