UserSubscribeController.java 3.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. package com.zhongzheng.controller.user;
  2. import cn.hutool.core.bean.BeanUtil;
  3. import cn.hutool.core.lang.Validator;
  4. import com.zhongzheng.common.annotation.Log;
  5. import com.zhongzheng.common.core.controller.BaseController;
  6. import com.zhongzheng.common.core.domain.AjaxResult;
  7. import com.zhongzheng.common.core.page.TableDataInfo;
  8. import com.zhongzheng.common.enums.BusinessType;
  9. import com.zhongzheng.common.utils.DateUtils;
  10. import com.zhongzheng.common.utils.ServletUtils;
  11. import com.zhongzheng.common.utils.poi.ExcelUtil;
  12. import com.zhongzheng.framework.web.service.WxTokenService;
  13. import com.zhongzheng.modules.exam.bo.ExamApplyGoodsQueryBo;
  14. import com.zhongzheng.modules.exam.service.IExamApplyGoodsService;
  15. import com.zhongzheng.modules.exam.vo.ExamApplyGoodsVo;
  16. import com.zhongzheng.modules.user.bo.*;
  17. import com.zhongzheng.modules.user.entity.ClientLoginUser;
  18. import com.zhongzheng.modules.user.service.IUserExamGoodsService;
  19. import com.zhongzheng.modules.user.service.IUserSubscribeService;
  20. import com.zhongzheng.modules.user.vo.*;
  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 org.springframework.web.multipart.MultipartFile;
  28. import java.time.LocalDateTime;
  29. import java.time.format.DateTimeFormatter;
  30. import java.util.ArrayList;
  31. import java.util.HashMap;
  32. import java.util.List;
  33. import java.util.Map;
  34. /**
  35. * 用户预约考试Controller
  36. *
  37. * @author ruoyi
  38. * @date 2021-12-07
  39. */
  40. @Api(value = "报考数据控制器", tags = {"报考数据控制器"})
  41. @RequiredArgsConstructor(onConstructor_ = @Autowired)
  42. @RestController
  43. @RequestMapping("/user/subscribe")
  44. public class UserSubscribeController extends BaseController {
  45. private final IUserSubscribeService iUserSubscribeService;
  46. private final WxTokenService wxTokenService;
  47. /**
  48. * 查询用户预约考试列表
  49. */
  50. @ApiOperation("查询最近的考试时间")
  51. @PreAuthorize("@ss.hasPermi('system:subscribe:list')")
  52. @GetMapping("/recentExam")
  53. public AjaxResult<UserSubscribeVo> listSubscribe(UserSubscribeQueryBo bo) {
  54. ClientLoginUser loginUser = wxTokenService.getLoginUser(ServletUtils.getRequest());
  55. bo.setUserId(loginUser.getUser().getUserId());
  56. UserSubscribeVo userExamGoodsVo = iUserSubscribeService.getRecentExam(bo);
  57. return AjaxResult.success(userExamGoodsVo);
  58. }
  59. /**
  60. * 查询用户预约考试列表
  61. */
  62. @ApiOperation("查询预约列表")
  63. @PreAuthorize("@ss.hasPermi('system:subscribe:list')")
  64. @GetMapping("/listSubscribe")
  65. public AjaxResult<List<UserSubscribeVo>> listSubscribeList(UserSubscribeQueryBo bo) {
  66. ClientLoginUser loginUser = wxTokenService.getLoginUser(ServletUtils.getRequest());
  67. bo.setUserId(loginUser.getUser().getUserId());
  68. List<UserSubscribeVo> list = iUserSubscribeService.listSubscribe(bo);
  69. return AjaxResult.success(list);
  70. }
  71. /**
  72. * 新增用戶線下約考次數
  73. */
  74. @ApiOperation("新增用戶線下約考次數")
  75. @PostMapping("/save/offline")
  76. public AjaxResult<Void> saveSubscribeOffline(@RequestBody SubscribeOfflineBo bo) {
  77. ClientLoginUser loginUser = wxTokenService.getLoginUser(ServletUtils.getRequest());
  78. bo.setUserId(loginUser.getUser().getUserId());
  79. return toAjax(iUserSubscribeService.saveSubscribeOffline(bo) ? 1 : 0);
  80. }
  81. }