SceneMarkShapeController.java 3.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. package com.fdkankan.openApi.controller.www;
  2. import cn.dev33.satoken.annotation.SaIgnore;
  3. import com.fdkankan.openApi.aop.RedisLimit;
  4. import com.fdkankan.openApi.aop.ValidateApi;
  5. import com.fdkankan.openApi.controller.BaseController;
  6. import com.fdkankan.openApi.dto.SceneJsonDTO;
  7. import com.fdkankan.openApi.dto.SceneMarkShapesDTO;
  8. import com.fdkankan.openApi.entity.www.SceneMarkShapeBox;
  9. import com.fdkankan.openApi.service.www.ISceneMarkShapeBoxService;
  10. import com.fdkankan.openApi.service.www.ISceneMarkShapeService;
  11. import com.fdkankan.openApi.vo.www.SceneMarkShapeParamVO;
  12. import com.fdkankan.openApi.vo.www.SceneMarkShapeVO;
  13. import com.fdkankan.web.response.ResultData;
  14. import lombok.extern.slf4j.Slf4j;
  15. import org.springframework.beans.factory.annotation.Autowired;
  16. import org.springframework.validation.annotation.Validated;
  17. import org.springframework.web.bind.annotation.*;
  18. import javax.validation.Valid;
  19. /**
  20. * <p>
  21. * 标注信息前端控制器
  22. * </p>
  23. *
  24. * @author
  25. * @since 2023-02-15
  26. */
  27. @RestController
  28. @RequestMapping("/scene/sceneMarkShape")
  29. @Slf4j
  30. public class SceneMarkShapeController extends BaseController
  31. {
  32. @Autowired
  33. private ISceneMarkShapeService sceneMarkShapeService;
  34. @Autowired
  35. private ISceneMarkShapeBoxService sceneMarkShapeBoxService;
  36. /**
  37. * 根据场景码和图片名称获取数据
  38. */
  39. @SaIgnore
  40. @PostMapping("/getShapesInfo")
  41. @RedisLimit(limitCount = 100, period = 1)
  42. @ValidateApi(method = "scene:getShapesInfo")
  43. public ResultData getShapesInfo(@RequestBody @Validated SceneMarkShapeParamVO param) {
  44. this.checkScene(param.getNum());
  45. return sceneMarkShapeService.getShapesInfo(param);
  46. }
  47. /**
  48. * 保存或者修改JSON
  49. */
  50. @SaIgnore
  51. @PostMapping("/saveOrEdit")
  52. @RedisLimit(limitCount = 100, period = 1)
  53. @ValidateApi(method = "scene:saveOrEdit")
  54. public ResultData saveOrEdit(@RequestBody @Validated SceneMarkShapeVO param) {
  55. this.checkScene(param.getNum());
  56. return sceneMarkShapeService.saveOrEdit(param);
  57. }
  58. /**
  59. *
  60. */
  61. @SaIgnore
  62. @RedisLimit(limitCount = 100, period = 1)
  63. @PostMapping("/planeCovert")
  64. @ValidateApi(method = "scene:planeCovert")
  65. public ResultData planeCovert(@RequestBody @Valid SceneMarkShapesDTO param) {
  66. this.checkScene(param.getNum());
  67. sceneMarkShapeService.saveOrEditBatch(param);
  68. SceneMarkShapeBox sceneMarkShapeBox = sceneMarkShapeBoxService.planeCovert(param.getNum());
  69. return ResultData.ok(sceneMarkShapeBox);
  70. }
  71. @SaIgnore
  72. @RedisLimit(limitCount = 100, period = 1)
  73. @PostMapping("/saveExternalBoxes")
  74. @ValidateApi(method = "scene:saveExternalBoxes")
  75. public ResultData saveExternalBoxes(@RequestBody @Valid SceneJsonDTO param) {
  76. this.checkScene(param.getNum());
  77. sceneMarkShapeBoxService.saveExternalBox(param);
  78. return ResultData.ok();
  79. }
  80. @SaIgnore
  81. @GetMapping("/getShapBox")
  82. @ValidateApi(method = "scene:getShapBox")
  83. public ResultData getShapBox(@RequestParam("num") String num, @RequestParam("showOrig") Integer showOrig) {
  84. this.checkScene(num);
  85. return ResultData.ok(sceneMarkShapeBoxService.getShapBox(num));
  86. }
  87. }