ExamActivityController.java 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. package com.zhongzheng.controller.exam;
  2. import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
  3. import com.zhongzheng.common.annotation.Log;
  4. import com.zhongzheng.common.core.controller.BaseController;
  5. import com.zhongzheng.common.core.domain.AjaxResult;
  6. import com.zhongzheng.common.core.page.TableDataInfo;
  7. import com.zhongzheng.common.enums.BusinessType;
  8. import com.zhongzheng.common.utils.poi.ExcelUtil;
  9. import com.zhongzheng.modules.exam.bo.*;
  10. import com.zhongzheng.modules.exam.service.*;
  11. import com.zhongzheng.modules.exam.vo.*;
  12. import com.zhongzheng.modules.goods.vo.ExportLiveGoodsVo;
  13. import io.swagger.annotations.Api;
  14. import io.swagger.annotations.ApiOperation;
  15. import lombok.RequiredArgsConstructor;
  16. import org.springframework.beans.factory.annotation.Autowired;
  17. import org.springframework.security.access.prepost.PreAuthorize;
  18. import org.springframework.web.bind.annotation.*;
  19. import java.util.List;
  20. /**
  21. * 考试活动Controller
  22. *
  23. * @author ruoyi
  24. * @date 2021-12-07
  25. */
  26. @Api(value = "考试活动控制器", tags = {"考试活动管理"})
  27. @RequiredArgsConstructor(onConstructor_ = @Autowired)
  28. @RestController
  29. @RequestMapping("/system/exam/activity")
  30. public class ExamActivityController extends BaseController {
  31. private final IExamActivityService iExamActivityService;
  32. /**
  33. * 新增活动
  34. */
  35. @ApiOperation("新增新增活动")
  36. @PostMapping("/add")
  37. public AjaxResult<Void> add(@RequestBody ExamActivityAddBo bo) {
  38. return toAjax(iExamActivityService.insertByAddBo(bo) ? 1 : 0);
  39. }
  40. /**
  41. * 获取活动列表
  42. */
  43. @ApiOperation("获取活动列表")
  44. @GetMapping("/list")
  45. public TableDataInfo<ExamActivityVo> getActivityList(ExamActivityQueryBo bo) {
  46. startPage();
  47. List<ExamActivityVo> list = iExamActivityService.getActivityList(bo);
  48. return getDataTable(list);
  49. }
  50. /**
  51. * 修改活动
  52. */
  53. @ApiOperation("修改活动")
  54. @PostMapping("/update")
  55. public AjaxResult<Void> update(@RequestBody ExamActivityUpdateBo bo) {
  56. return toAjax(iExamActivityService.updateByAddBo(bo) ? 1 : 0);
  57. }
  58. /**
  59. * 获取活动用户列表
  60. */
  61. @ApiOperation("获取活动用户列表")
  62. @GetMapping("/user/list/{activityId}")
  63. public TableDataInfo<ExamActivityUserVo> getActivityUserList(@PathVariable("activityId" ) Long activityId) {
  64. startPage();
  65. List<ExamActivityUserVo> list = iExamActivityService.getActivityUserList(activityId);
  66. return getDataTable(list);
  67. }
  68. /**
  69. * 获取活动报名二维码
  70. */
  71. @ApiOperation("获取活动报名二维码")
  72. @GetMapping("/apply/code/{activityId}")
  73. public AjaxResult<String> getActivityApplyCode(@PathVariable("activityId" ) Long activityId) {
  74. String result = iExamActivityService.getActivityApplyCode(activityId);
  75. return AjaxResult.success("成功",result);
  76. }
  77. /**
  78. * 导出活动用户
  79. */
  80. @ApiOperation("导出活动用户")
  81. @GetMapping("/export/{activityId}")
  82. public AjaxResult<ExamActivityUserVo> exportActivityUserList(@PathVariable("activityId" ) Long activityId) {
  83. List<ExamActivityUserVo> list = iExamActivityService.getActivityUserList(activityId);
  84. list.forEach(item -> {
  85. item.setUserSexStr(ObjectUtils.isNotNull(item.getUserSex()) && item.getUserSex() == 2?"女":"男");
  86. });
  87. ExcelUtil<ExamActivityUserVo> util = new ExcelUtil<>(ExamActivityUserVo.class);
  88. return util.exportExcel(list,"模考活动用户");
  89. }
  90. }