WarningController.java 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. package com.ruoyi.web.controller.system;
  2. import cn.hutool.core.bean.BeanUtil;
  3. import com.ruoyi.common.core.domain.AjaxResult;
  4. import com.ruoyi.web.domain.dto.warning.WarningReleaseRequest;
  5. import com.ruoyi.web.domain.dto.warning.drowningWarning.DrowningWarningAddRequest;
  6. import com.ruoyi.web.domain.dto.warning.earthquakeWarning.EarthquakeWarningAddRequest;
  7. import com.ruoyi.web.domain.dto.warning.environmentWarning.EnvironmentWarningAddRequest;
  8. import com.ruoyi.web.service.DrowningWarningService;
  9. import com.ruoyi.web.service.EarthquakeWarningService;
  10. import com.ruoyi.web.service.EnvironmentWarningService;
  11. import io.swagger.annotations.Api;
  12. import io.swagger.annotations.ApiOperation;
  13. import org.springframework.beans.factory.annotation.Autowired;
  14. import org.springframework.web.bind.annotation.PostMapping;
  15. import org.springframework.web.bind.annotation.RequestBody;
  16. import org.springframework.web.bind.annotation.RequestMapping;
  17. import org.springframework.web.bind.annotation.RestController;
  18. import static com.ruoyi.common.core.domain.AjaxResult.error;
  19. import static com.ruoyi.common.core.domain.AjaxResult.success;
  20. @Api(tags = "预警信息发布")
  21. @RestController
  22. @RequestMapping("/system/warning")
  23. public class WarningController {
  24. @Autowired
  25. private EarthquakeWarningService earthquakeWarningService;
  26. @Autowired
  27. private EnvironmentWarningService environmentWarningService;
  28. @Autowired
  29. private DrowningWarningService drowningWarningService;
  30. /**
  31. * 发布预警信息
  32. *
  33. * @param warningReleaseRequest
  34. * @return
  35. */
  36. @ApiOperation("发布预警信息")
  37. @PostMapping("/release")
  38. public AjaxResult addDrowningWarning(@RequestBody WarningReleaseRequest warningReleaseRequest) {
  39. if (warningReleaseRequest == null) {
  40. return error("请求参数为空");
  41. }
  42. String type = warningReleaseRequest.getType();
  43. if (type == null) {
  44. return error("类别为空");
  45. }
  46. //类别 0-地震预警、1-人居环境预警、2-防溺水预警
  47. switch (type) {
  48. case "0":
  49. EarthquakeWarningAddRequest earthquakeWarningAddRequest = new EarthquakeWarningAddRequest();
  50. BeanUtil.copyProperties(warningReleaseRequest, earthquakeWarningAddRequest);
  51. earthquakeWarningService.addEarthquakeWarning(earthquakeWarningAddRequest);
  52. break;
  53. case "1":
  54. EnvironmentWarningAddRequest environmentWarningAddRequest = new EnvironmentWarningAddRequest();
  55. BeanUtil.copyProperties(warningReleaseRequest, environmentWarningAddRequest);
  56. environmentWarningService.addEnvironmentWarning(environmentWarningAddRequest);
  57. break;
  58. case "2":
  59. DrowningWarningAddRequest drowningWarningAddRequest = new DrowningWarningAddRequest();
  60. BeanUtil.copyProperties(warningReleaseRequest, drowningWarningAddRequest);
  61. drowningWarningService.addDrowningWarning(drowningWarningAddRequest);
  62. break;
  63. default:
  64. return error("发布失败");
  65. }
  66. return success("发布成功");
  67. }
  68. }