OperateLogController.java 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. package com.huaxu.controller;
  2. import com.baomidou.mybatisplus.core.metadata.IPage;
  3. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  4. import com.huaxu.common.EasyExcelUtil;
  5. import com.huaxu.dto.LoginLogDto;
  6. import com.huaxu.dto.OperateLogDto;
  7. import com.huaxu.entity.OperateLogEntity;
  8. import com.huaxu.model.AjaxMessage;
  9. import com.huaxu.model.Pagination;
  10. import com.huaxu.model.ResultStatus;
  11. import com.huaxu.service.OperateLogService;
  12. import io.swagger.annotations.Api;
  13. import io.swagger.annotations.ApiOperation;
  14. import io.swagger.annotations.ApiParam;
  15. import org.springframework.beans.factory.annotation.Autowired;
  16. import org.springframework.beans.factory.annotation.Value;
  17. import org.springframework.web.bind.annotation.*;
  18. import java.util.List;
  19. /**
  20. * @description
  21. * @auto wangli
  22. * @data 2020-10-27 9:19
  23. */
  24. @RestController
  25. @RequestMapping("/operateLog")
  26. @Api(tags = "操作日志管理")
  27. public class OperateLogController {
  28. @Autowired
  29. private OperateLogService operateLogService;
  30. @Value("${UMIS.sys_excel_path}")
  31. private String baseDir;
  32. /**
  33. * 通过主键查询单条数据
  34. *
  35. * @param id
  36. * @return 单条数据
  37. */
  38. @RequestMapping(value = "get", method = RequestMethod.POST)
  39. @ApiOperation(value = "根据id查询操作日志")
  40. public AjaxMessage<OperateLogDto> selectOne(
  41. @ApiParam(value = "操作日志信息", required = true) @RequestParam Integer id) {
  42. OperateLogDto result = operateLogService.selectById(id);
  43. return new AjaxMessage<>(ResultStatus.OK, result);
  44. }
  45. /**
  46. * 查询操作日志信息
  47. *
  48. * @param operateLogDto 参数对象
  49. * @return 多条数据
  50. */
  51. @RequestMapping(value = "selectList", method = RequestMethod.POST)
  52. @ApiOperation(value = "查询操作日志信息")
  53. public AjaxMessage<List<OperateLogDto>> selectList(
  54. @ApiParam(value = "操作日志信息", required = true) @RequestBody OperateLogDto operateLogDto) {
  55. List<OperateLogDto> result = operateLogService.selectList(operateLogDto);
  56. return new AjaxMessage<>(ResultStatus.OK, result);
  57. }
  58. /**
  59. * 新增一条数据
  60. *
  61. * @param operateLogEntity 实体类
  62. * @return Response对象
  63. */
  64. @RequestMapping(value = "insert", method = RequestMethod.POST)
  65. @ApiOperation(value = "插入操作日志信息")
  66. public AjaxMessage<Integer> insert(@ApiParam(value = "操作日志信息", required = true) @RequestBody OperateLogEntity operateLogEntity) {
  67. int result = operateLogService.insert(operateLogEntity);
  68. return new AjaxMessage<>(ResultStatus.OK, result);
  69. }
  70. /**
  71. * 修改一条数据
  72. *
  73. * @param operateLogEntity 实体类
  74. * @return Response对象
  75. */
  76. @RequestMapping(value = "update", method = RequestMethod.POST)
  77. @ApiOperation(value = "修改操作日志信息")
  78. public AjaxMessage<Integer> update(@ApiParam(value = "操作日志信息", required = true) @RequestBody OperateLogEntity operateLogEntity) {
  79. int result = operateLogService.update(operateLogEntity);
  80. return new AjaxMessage<>(ResultStatus.OK, result);
  81. }
  82. /**
  83. * 单条删除数据
  84. *
  85. * @param id
  86. * @return Response对象
  87. */
  88. @RequestMapping(value = "delete", method = RequestMethod.POST)
  89. @ApiOperation(value = "删除操作日志信息")
  90. public AjaxMessage<Integer> delete(@ApiParam(value = "操作日志信息", required = true) @RequestParam Integer id) {
  91. int result = operateLogService.deleteById(id);
  92. return new AjaxMessage<>(ResultStatus.OK, result);
  93. }
  94. /**
  95. * 分页查询
  96. *
  97. * @param pageNum 偏移
  98. * @param pageSize 条数
  99. * @return Response对象
  100. */
  101. @RequestMapping(value = "selectPage", method = RequestMethod.POST)
  102. @ApiOperation(value = "查询操作日志信息列表")
  103. public AjaxMessage<Pagination<OperateLogDto>> selectPage(
  104. @ApiParam(value = "操作日志信息", required = true) @RequestBody OperateLogDto operateLogDto,
  105. @ApiParam(value = "页数,非必传,默认第一页", defaultValue = "1") int pageNum,
  106. @ApiParam(value = "条数,非必传,默认15条", defaultValue = "30") int pageSize
  107. ) {
  108. IPage<OperateLogDto> iPage = new Page<>(pageNum, pageSize);
  109. iPage = operateLogService.selectPage(iPage, operateLogDto);
  110. Pagination<OperateLogDto> pages = new Pagination<>(iPage);
  111. return new AjaxMessage<>(ResultStatus.OK, pages);
  112. }
  113. @RequestMapping(value = "/exportExcel", method = RequestMethod.POST)
  114. @ApiOperation(value = "操作日志导出")
  115. public AjaxMessage<String> exportExcel(@ApiParam(value = "日志IDS", required = true) @RequestParam Long[] ids) {
  116. List<OperateLogDto> result = operateLogService.selectListByIds(ids);
  117. String filePath = EasyExcelUtil.excelWrite(baseDir, OperateLogDto.class, "操作日志", result);
  118. return new AjaxMessage<>(ResultStatus.OK, filePath);
  119. }
  120. }