|
|
package com.example.controller;
|
|
|
|
|
|
import com.example.common.Result;
|
|
|
import com.example.entity.Collect;
|
|
|
import com.example.service.CollectService;
|
|
|
import com.github.pagehelper.PageInfo;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
import java.util.List;
|
|
|
|
|
|
/**
|
|
|
* CollectController类负责处理与收藏功能相关的前端请求。
|
|
|
* 它使用CollectService来执行具体的业务逻辑操作。
|
|
|
*/
|
|
|
@RestController
|
|
|
@RequestMapping("/collect")
|
|
|
public class CollectController {
|
|
|
|
|
|
@Resource
|
|
|
private CollectService collectService;
|
|
|
|
|
|
/**
|
|
|
* 新增收藏项。
|
|
|
*
|
|
|
* @param collect 待添加的收藏项信息,包含用户ID和被收藏项的ID等信息。
|
|
|
* @return 返回操作结果,成功则返回成功信息。
|
|
|
*/
|
|
|
@PostMapping("/add")
|
|
|
public Result add(@RequestBody Collect collect) {
|
|
|
collectService.add(collect);
|
|
|
return Result.success();
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 根据ID删除收藏项。
|
|
|
*
|
|
|
* @param id 要删除的收藏项的ID。
|
|
|
* @return 返回操作结果,成功则返回成功信息。
|
|
|
*/
|
|
|
@DeleteMapping("/delete/{id}")
|
|
|
public Result deleteById(@PathVariable Integer id) {
|
|
|
collectService.deleteById(id);
|
|
|
return Result.success();
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 批量删除收藏项。
|
|
|
*
|
|
|
* @param ids 要删除的收藏项的ID列表。
|
|
|
* @return 返回操作结果,成功则返回成功信息。
|
|
|
*/
|
|
|
@DeleteMapping("/delete/batch")
|
|
|
public Result deleteBatch(@RequestBody List<Integer> ids) {
|
|
|
collectService.deleteBatch(ids);
|
|
|
return Result.success();
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 修改收藏项信息。
|
|
|
*
|
|
|
* @param collect 包含要修改的收藏项的新信息。
|
|
|
* @return 返回操作结果,成功则返回成功信息。
|
|
|
*/
|
|
|
@PutMapping("/update")
|
|
|
public Result updateById(@RequestBody Collect collect) {
|
|
|
collectService.updateById(collect);
|
|
|
return Result.success();
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 根据ID查询收藏项信息。
|
|
|
*
|
|
|
* @param id 要查询的收藏项的ID。
|
|
|
* @return 返回查询结果,包括收藏项的详细信息。
|
|
|
*/
|
|
|
@GetMapping("/selectById/{id}")
|
|
|
public Result selectById(@PathVariable Integer id) {
|
|
|
Collect collect = collectService.selectById(id);
|
|
|
return Result.success(collect);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 查询所有收藏项。
|
|
|
*
|
|
|
* @param collect 可选参数,用于指定查询条件,如用户ID。
|
|
|
* @return 返回所有符合条件的收藏项列表。
|
|
|
*/
|
|
|
@GetMapping("/selectAll")
|
|
|
public Result selectAll(Collect collect ) {
|
|
|
List<Collect> list = collectService.selectAll(collect);
|
|
|
return Result.success(list);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 分页查询收藏项。
|
|
|
*
|
|
|
* @param collect 可选参数,用于指定查询条件,如用户ID。
|
|
|
* @param pageNum 当前页码,默认为1。
|
|
|
* @param pageSize 每页大小,默认为10。
|
|
|
* @return 返回分页查询结果,包括总页数、总记录数及当前页的收藏项列表。
|
|
|
*/
|
|
|
@GetMapping("/selectPage")
|
|
|
public Result selectPage(Collect collect,
|
|
|
@RequestParam(defaultValue = "1") Integer pageNum,
|
|
|
@RequestParam(defaultValue = "10") Integer pageSize) {
|
|
|
PageInfo<Collect> page = collectService.selectPage(collect, pageNum, pageSize);
|
|
|
return Result.success(page);
|
|
|
}
|
|
|
|
|
|
}
|