IotDataController.java 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. package com.usky.cdi.controller;
  2. import com.alibaba.fastjson.JSONObject;
  3. import com.usky.cdi.service.impl.IotDataTransferService;
  4. import com.usky.cdi.service.vo.base.*;
  5. import lombok.extern.slf4j.Slf4j;
  6. import org.springframework.beans.factory.annotation.Autowired;
  7. import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
  8. import org.springframework.web.bind.annotation.PostMapping;
  9. import org.springframework.web.bind.annotation.RequestBody;
  10. import org.springframework.web.bind.annotation.RequestMapping;
  11. import org.springframework.web.bind.annotation.RestController;
  12. /**
  13. *
  14. * @author fyc
  15. * @email yuchuan.fu@chinausky.com
  16. * @date 2025/11/20
  17. */
  18. @Slf4j
  19. @RestController
  20. @RequestMapping("/api/iotInfo")
  21. @ConditionalOnProperty(prefix = "mqtt", value = {"enabled"}, havingValue = "true")
  22. public class IotDataController {
  23. @Autowired
  24. private IotDataTransferService iotDataTransferService;
  25. /**
  26. * 上报水浸状态
  27. */
  28. @PostMapping("/flooded")
  29. public String sendWaterLeak(@RequestBody JSONObject jsonObject) {
  30. boolean success = iotDataTransferService.sendWaterLeak(jsonObject);
  31. return success ? "上报成功" : "上报失败";
  32. }
  33. /**
  34. * 上报温度、湿度、氧气、一氧化碳、二氧化碳
  35. */
  36. @PostMapping("/envData")
  37. public String sendEnvData(@RequestBody JSONObject jsonObject) {
  38. boolean success = iotDataTransferService.sendEnvData(jsonObject);
  39. return success ? "上报成功" : "上报失败";
  40. }
  41. /**
  42. * 上报人员闯入
  43. */
  44. @PostMapping("/personPresence")
  45. public String sendPerson(@RequestBody JSONObject jsonObject) {
  46. boolean success = iotDataTransferService.sendPersonPresence(jsonObject);
  47. return success ? "上报成功" : "上报失败";
  48. }
  49. /**
  50. * 上报用电负荷
  51. */
  52. @PostMapping("/electricityLoad")
  53. public String sendElectricityLoad(@RequestBody JSONObject jsonObject) {
  54. boolean success = iotDataTransferService.sendElectricityLoad(jsonObject);
  55. return success ? "上报成功" : "上报失败";
  56. }
  57. }