UserController.java 3.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. package com.zhongzheng.controller.user;
  2. import com.zhongzheng.common.annotation.Log;
  3. import com.zhongzheng.common.core.controller.BaseController;
  4. import com.zhongzheng.common.core.domain.AjaxResult;
  5. import com.zhongzheng.common.core.page.TableDataInfo;
  6. import com.zhongzheng.common.enums.BusinessType;
  7. import com.zhongzheng.common.utils.ServletUtils;
  8. import com.zhongzheng.common.utils.poi.ExcelUtil;
  9. import com.zhongzheng.framework.web.service.WxTokenService;
  10. import com.zhongzheng.modules.course.vo.CourseVo;
  11. import com.zhongzheng.modules.user.bo.RanKingUserQuery;
  12. import com.zhongzheng.modules.user.bo.UserAddBo;
  13. import com.zhongzheng.modules.user.bo.UserEditBo;
  14. import com.zhongzheng.modules.user.bo.UserQueryBo;
  15. import com.zhongzheng.modules.user.entity.ClientLoginUser;
  16. import com.zhongzheng.modules.user.service.IUserService;
  17. import com.zhongzheng.modules.user.vo.RanKingUser;
  18. import com.zhongzheng.modules.user.vo.UserBankRecordVo;
  19. import com.zhongzheng.modules.user.vo.UserStudyRecordVo;
  20. import com.zhongzheng.modules.user.vo.UserVo;
  21. import io.swagger.annotations.Api;
  22. import io.swagger.annotations.ApiOperation;
  23. import lombok.RequiredArgsConstructor;
  24. import org.springframework.beans.factory.annotation.Autowired;
  25. import org.springframework.security.access.prepost.PreAuthorize;
  26. import org.springframework.web.bind.annotation.*;
  27. import java.util.Arrays;
  28. import java.util.HashMap;
  29. import java.util.List;
  30. import java.util.Map;
  31. /**
  32. * 客户端用户Controller
  33. *
  34. * @author ruoyi
  35. * @date 2021-06-08
  36. */
  37. @Api(value = "用户控制器", tags = {"客户端用户管理"})
  38. @RequiredArgsConstructor(onConstructor_ = @Autowired)
  39. @RestController
  40. @RequestMapping("/app/user")
  41. public class UserController extends BaseController {
  42. private final IUserService iUserService;
  43. private final WxTokenService wxTokenService;
  44. /**
  45. * 修改客户端用户
  46. */
  47. @ApiOperation("修改客户端用户")
  48. @Log(title = "客户端用户", businessType = BusinessType.UPDATE)
  49. @PostMapping("/edit")
  50. public AjaxResult<Void> edit(@RequestBody UserEditBo bo) {
  51. ClientLoginUser loginUser = wxTokenService.getLoginUser(ServletUtils.getRequest());
  52. if(loginUser.getUser().getUserId()!=bo.getUserId()){
  53. return AjaxResult.error("无权限修改");
  54. }
  55. bo.setNull();
  56. return toAjax(iUserService.updateByEditBo(bo) ? 1 : 0);
  57. }
  58. /**
  59. * 收藏数等数据
  60. */
  61. @ApiOperation("收藏数等数据")
  62. @GetMapping("/infoAttached")
  63. public AjaxResult infoAttached() {
  64. ClientLoginUser loginUser = wxTokenService.getLoginUser(ServletUtils.getRequest());
  65. int collectTotal = iUserService.getCollectTotal(loginUser.getUser().getUserId());
  66. Integer rank = iUserService.getRank(loginUser.getUser().getUserId());
  67. Map<String,Object> map = new HashMap<>();
  68. map.put("collectTotal",collectTotal);
  69. map.put("rank",rank);
  70. return AjaxResult.success(map);
  71. }
  72. /**
  73. * 排行榜
  74. */
  75. @ApiOperation("排行榜")
  76. @GetMapping("/rankingList")
  77. public AjaxResult<RanKingUser> rankingList(RanKingUserQuery bo) {
  78. ClientLoginUser loginUser = wxTokenService.getLoginUser(ServletUtils.getRequest());
  79. bo.setUserId(loginUser.getUser().getUserId());
  80. RanKingUser list = iUserService.rankingList(bo);
  81. return AjaxResult.success(list);
  82. }
  83. }