EvaluateResultController.java 4.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. package com.xjrsoft.module.evaluate.controller;
  2. import cn.dev33.satoken.annotation.SaCheckPermission;
  3. import com.alibaba.excel.EasyExcel;
  4. import com.alibaba.excel.support.ExcelTypeEnum;
  5. import com.baomidou.mybatisplus.core.metadata.IPage;
  6. import com.xjrsoft.common.model.result.RT;
  7. import com.xjrsoft.common.page.ConventPage;
  8. import com.xjrsoft.common.page.PageOutput;
  9. import com.xjrsoft.module.evaluate.dto.EvaluateResultDetailPageDetailDto;
  10. import com.xjrsoft.module.evaluate.dto.EvaluateResultDetailPageDto;
  11. import com.xjrsoft.module.evaluate.dto.EvaluateResultIndexPageDto;
  12. import com.xjrsoft.module.evaluate.dto.ResultViewingPageDto;
  13. import com.xjrsoft.module.evaluate.service.IEvaluateResultService;
  14. import com.xjrsoft.module.evaluate.vo.*;
  15. import com.xjrsoft.module.textbook.vo.TextbookIssueRecordExcelVo;
  16. import io.swagger.annotations.Api;
  17. import io.swagger.annotations.ApiOperation;
  18. import lombok.AllArgsConstructor;
  19. import org.springframework.http.ResponseEntity;
  20. import org.springframework.web.bind.annotation.GetMapping;
  21. import org.springframework.web.bind.annotation.RequestMapping;
  22. import org.springframework.web.bind.annotation.RestController;
  23. import javax.validation.Valid;
  24. import java.io.ByteArrayOutputStream;
  25. import java.util.ArrayList;
  26. import java.util.List;
  27. /**
  28. * @title: 评价结果
  29. * @Author szs
  30. * @Date: 2024-01-16
  31. * @Version 1.0
  32. */
  33. @RestController
  34. @RequestMapping("/evaluate" + "/evaluateResult")
  35. @Api(value = "/evaluate" + "/evaluateResult",tags = "评价结果代码")
  36. @AllArgsConstructor
  37. public class EvaluateResultController {
  38. private final IEvaluateResultService evaluateResultService;
  39. @GetMapping(value = "/index-page")
  40. @ApiOperation(value="评价结果首页列表(分页)")
  41. @SaCheckPermission("evaluateresult:detail")
  42. public RT<PageOutput<EvaluateResultIndexPageVo>> indexPage(@Valid EvaluateResultIndexPageDto dto){
  43. IPage<EvaluateResultIndexPageVo> page = evaluateResultService.getIndexPage(dto);
  44. PageOutput<EvaluateResultIndexPageVo> pageOutput = ConventPage.getPageOutput(page, EvaluateResultIndexPageVo.class);
  45. return RT.ok(pageOutput);
  46. }
  47. @GetMapping(value = "/detail-page")
  48. @ApiOperation(value="评价结果详情查看列表(分页)")
  49. @SaCheckPermission("evaluateresult:detail")
  50. public RT<PageOutput<EvaluateResultDetailPageVo>> detailPage(@Valid EvaluateResultDetailPageDto dto){
  51. IPage<EvaluateResultDetailPageVo> page = evaluateResultService.getDetailPage(dto);
  52. PageOutput<EvaluateResultDetailPageVo> pageOutput = ConventPage.getPageOutput(page, EvaluateResultDetailPageVo.class);
  53. return RT.ok(pageOutput);
  54. }
  55. @GetMapping(value = "/detail-page-detail")
  56. @ApiOperation(value="评价结果详情查看列表的详情")
  57. @SaCheckPermission("evaluateresult:detail")
  58. public RT<EvaluateResultDetailPageDetailVo> detailPageDetail(@Valid EvaluateResultDetailPageDetailDto dto){
  59. EvaluateResultDetailPageDetailVo evaluateResultDetailPageDetailVo = evaluateResultService.getDetailPageDetail(dto);
  60. return RT.ok(evaluateResultDetailPageDetailVo);
  61. }
  62. @GetMapping(value = "/result-viewing-page")
  63. @ApiOperation(value="结果查看(分页)")
  64. @SaCheckPermission("evaluateresult:detail")
  65. public RT<PageOutput<ResultViewingPageVo>> pageResultViewing(@Valid ResultViewingPageDto dto){
  66. IPage<ResultViewingPageVo> page = evaluateResultService.pageResultViewing(dto);
  67. PageOutput<ResultViewingPageVo> pageOutput = ConventPage.getPageOutput(page, ResultViewingPageVo.class);
  68. return RT.ok(pageOutput);
  69. }
  70. @GetMapping("/export")
  71. @ApiOperation(value = "导出")
  72. public ResponseEntity<byte[]> exportData() {
  73. List<ResultViewingExportVo> customerList = evaluateResultService.getList();
  74. List<TextbookIssueRecordExcelVo> dataList = new ArrayList<>();
  75. // SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
  76. // for (TextbookIssueRecordPageVo textbookIssueRecordPageVo : customerList) {
  77. // if(textbookIssueRecordPageVo.getCreateDate() == null){
  78. // continue;
  79. // }
  80. // textbookIssueRecordPageVo.setCreateDateStr(sdf.format(textbookIssueRecordPageVo.getCreateDate()));
  81. // dataList.add(BeanUtil.toBean(textbookIssueRecordPageVo, TextbookIssueRecordExcelVo.class));
  82. // }
  83. ByteArrayOutputStream bot = new ByteArrayOutputStream();
  84. EasyExcel.write(bot, TextbookIssueRecordExcelVo.class).automaticMergeHead(false).excelType(ExcelTypeEnum.XLSX).sheet().doWrite(dataList);
  85. return RT.fileStream(bot.toByteArray(), "TextbookIssueRecord" + ExcelTypeEnum.XLSX.getValue());
  86. }
  87. }