FolderController.java 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. package com.fdkankan.ucenter.controller;
  2. import com.fdkankan.common.exception.BusinessException;
  3. import com.fdkankan.common.util.JwtUtil;
  4. import com.fdkankan.ucenter.common.BaseController;
  5. import com.fdkankan.ucenter.common.Result;
  6. import com.fdkankan.ucenter.constant.LoginConstant;
  7. import com.fdkankan.ucenter.entity.Folder;
  8. import com.fdkankan.ucenter.entity.User;
  9. import com.fdkankan.ucenter.service.IFolderService;
  10. import com.fdkankan.ucenter.service.IUserService;
  11. import com.fdkankan.ucenter.vo.request.FolderParam;
  12. import com.fdkankan.ucenter.vo.request.RequestFolder;
  13. import org.apache.ibatis.annotations.Param;
  14. import org.springframework.beans.factory.annotation.Autowired;
  15. import org.springframework.web.bind.annotation.*;
  16. import java.util.List;
  17. /**
  18. * <p>
  19. * 文件夹表 前端控制器
  20. * </p>
  21. *
  22. * @author
  23. * @since 2022-07-07
  24. */
  25. @RestController
  26. @RequestMapping("/ucenter/user/folder")
  27. public class FolderController extends BaseController {
  28. @Autowired
  29. IFolderService folderService;
  30. @Autowired
  31. IUserService userService;
  32. /**
  33. * 新增文件夹
  34. * name 文件夹名称
  35. * type 文件夹类型,0我的场景,1协作场景
  36. * parentId 上层文件夹id
  37. */
  38. @PostMapping("/save")
  39. public Result save(@RequestBody FolderParam param){
  40. String username = JwtUtil.getUsername(getToken());
  41. param.setUserName(username);
  42. folderService.add(param);
  43. return Result.success();
  44. }
  45. /**
  46. * 修改文件夹
  47. */
  48. @PostMapping("/update")
  49. public Result update(@RequestBody FolderParam param){
  50. String username = JwtUtil.getUsername(getToken());
  51. param.setUserName(username);
  52. folderService.updateByParam(param,username);
  53. return Result.success();
  54. }
  55. /**
  56. * 删除文件夹
  57. */
  58. @PostMapping("/delete")
  59. public Result delete(@RequestBody FolderParam param){
  60. String username = JwtUtil.getUsername(getToken());
  61. folderService.delete(param.getId(),username);
  62. return Result.success();
  63. }
  64. /**
  65. * 获取该用户所有文件夹树结构
  66. * type 文件夹类型,0我的场景,1协作场景
  67. */
  68. @PostMapping("/findListTree")
  69. public Result findListTree(@RequestBody FolderParam param){
  70. String username = JwtUtil.getUsername(getToken());
  71. return Result.success(folderService.findListTree(param.getFolderIds(),param.getType(),username));
  72. }
  73. /**
  74. * 移动文件夹或场景
  75. */
  76. @PostMapping("/move")
  77. public Result move(@RequestBody FolderParam param){
  78. String username = JwtUtil.getUsername(getToken());
  79. folderService.move(param,username);
  80. return Result.success();
  81. }
  82. /**
  83. * 根据文件夹名字获取该用户所有文件
  84. */
  85. @RequestMapping(value = "/findListByName", method = RequestMethod.POST)
  86. public Result findListByName(@RequestBody RequestFolder param){
  87. User user = userService.getByToken(getToken());
  88. if(user == null){
  89. throw new BusinessException(LoginConstant.FAILURE_CODE_3004, LoginConstant.FAILURE_MSG_3004);
  90. }
  91. if(param.getType() == null){
  92. throw new BusinessException(LoginConstant.FAILURE_CODE_3001, LoginConstant.FAILURE_MSG_3001);
  93. }
  94. List<Folder> list = folderService.findByUserIdAndType(user.getId(), param.getType(), param.getName(),param.getFolderId());
  95. return Result.success(list);
  96. }
  97. }