WeSensitiveActController.java 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. package com.linkwechat.controller;
  2. import com.linkwechat.common.annotation.Log;
  3. import com.linkwechat.common.constant.HttpStatus;
  4. import com.linkwechat.common.core.controller.BaseController;
  5. import com.linkwechat.common.core.domain.AjaxResult;
  6. import com.linkwechat.common.core.page.TableDataInfo;
  7. import com.linkwechat.common.enums.BusinessType;
  8. import com.linkwechat.common.utils.poi.ExcelUtil;
  9. import com.linkwechat.domain.WeSensitiveAct;
  10. import com.linkwechat.domain.WeSensitiveActHit;
  11. import com.linkwechat.service.IWeSensitiveActHitService;
  12. import com.linkwechat.service.IWeSensitiveActService;
  13. import io.swagger.annotations.Api;
  14. import io.swagger.annotations.ApiOperation;
  15. import org.springframework.beans.factory.annotation.Autowired;
  16. import org.springframework.web.bind.annotation.*;
  17. import javax.validation.Valid;
  18. import java.util.Arrays;
  19. import java.util.List;
  20. import java.util.stream.Collectors;
  21. /**
  22. * 敏感行为管理接口
  23. *
  24. * @author leejoker <1056650571@qq.com>
  25. * @version 1.0
  26. * @date 2021/1/12 18:07
  27. */
  28. @Api(tags = "敏感行为管理接口")
  29. @RestController
  30. @RequestMapping("/sensitive/act")
  31. public class WeSensitiveActController extends BaseController {
  32. @Autowired
  33. private IWeSensitiveActService weSensitiveActService;
  34. @Autowired
  35. private IWeSensitiveActHitService weSensitiveActHitService;
  36. /**
  37. * 查询敏感行为列表
  38. */
  39. @ApiOperation(value = "查询敏感行为列表",httpMethod = "GET")
  40. @GetMapping("/list")
  41. public TableDataInfo<List<WeSensitiveAct>> list(WeSensitiveAct weSensitiveAct) {
  42. startPage();
  43. List<WeSensitiveAct> list = weSensitiveActService.selectWeSensitiveActList(weSensitiveAct);
  44. return getDataTable(list);
  45. }
  46. /**
  47. * 获取敏感行为详细信息
  48. */
  49. @ApiOperation(value = "获取敏感行为详细信息",httpMethod = "GET")
  50. @GetMapping(value = "/{id}")
  51. public AjaxResult<WeSensitiveAct> getInfo(@PathVariable("id") Long id) {
  52. return AjaxResult.success(weSensitiveActService.selectWeSensitiveActById(id));
  53. }
  54. /**
  55. * 新增敏感行为设置
  56. */
  57. @ApiOperation(value = "新增敏感行为设置",httpMethod = "POST")
  58. @Log(title = "新增敏感行为", businessType = BusinessType.INSERT)
  59. @PostMapping
  60. public AjaxResult add(@Valid @RequestBody WeSensitiveAct weSensitiveAct) {
  61. return weSensitiveActService.insertWeSensitiveAct(weSensitiveAct) ? AjaxResult.success() : AjaxResult.error();
  62. }
  63. /**
  64. * 修改敏感行为
  65. */
  66. @ApiOperation(value = "修改敏感行为",httpMethod = "PUT")
  67. @Log(title = "修改敏感行为", businessType = BusinessType.UPDATE)
  68. @PutMapping
  69. public AjaxResult edit(@RequestBody WeSensitiveAct weSensitiveAct) {
  70. Long id = weSensitiveAct.getId();
  71. WeSensitiveAct originData = weSensitiveActService.selectWeSensitiveActById(id);
  72. if (originData == null) {
  73. return AjaxResult.error(HttpStatus.NOT_FOUND, "数据不存在");
  74. }
  75. return weSensitiveActService.updateWeSensitiveAct(weSensitiveAct) ? AjaxResult.success() : AjaxResult.error();
  76. }
  77. /**
  78. * 删除敏感行为
  79. */
  80. @ApiOperation(value = "删除敏感行为",httpMethod = "DELETE")
  81. @Log(title = "删除敏感行为", businessType = BusinessType.DELETE)
  82. @DeleteMapping("/{ids}")
  83. public AjaxResult remove(@PathVariable("ids") String ids) {
  84. String[] id = ids.split(",");
  85. Long[] idArray = new Long[id.length];
  86. Arrays.stream(id).map(Long::parseLong).collect(Collectors.toList()).toArray(idArray);
  87. return weSensitiveActService.deleteWeSensitiveActByIds(idArray) ? AjaxResult.success() : AjaxResult.error();
  88. }
  89. /**
  90. * 敏感行为命中查询
  91. */
  92. @ApiOperation(value = "敏感行为命中查询(这个接口有问题)",httpMethod = "GET")
  93. @GetMapping("/hit/list")
  94. public TableDataInfo<List<WeSensitiveActHit>> hitList() {
  95. startPage();
  96. List<WeSensitiveActHit> list = weSensitiveActHitService.list();
  97. return getDataTable(list);
  98. }
  99. /**
  100. * 导出敏感行为记录
  101. */
  102. @ApiOperation(value = "导出敏感行为记录",httpMethod = "POST")
  103. @PostMapping("/hit/export")
  104. public AjaxResult export() {
  105. List<WeSensitiveActHit> list = weSensitiveActHitService.list();
  106. ExcelUtil<WeSensitiveActHit> util = new ExcelUtil<>(WeSensitiveActHit.class);
  107. return util.exportExcel(list, "敏感行为记录");
  108. }
  109. }