AlarmSettingController.java 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  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.dto.AlarmSettingDto;
  5. import com.huaxu.entity.AlarmSetting;
  6. import com.huaxu.entity.GisSetting;
  7. import com.huaxu.model.AjaxMessage;
  8. import com.huaxu.model.LoginUser;
  9. import com.huaxu.model.Pagination;
  10. import com.huaxu.model.ResultStatus;
  11. import com.huaxu.service.AlarmSettingService;
  12. import com.huaxu.util.UserUtil;
  13. import io.swagger.annotations.Api;
  14. import io.swagger.annotations.ApiOperation;
  15. import io.swagger.annotations.ApiParam;
  16. import org.springframework.beans.factory.annotation.Autowired;
  17. import org.springframework.web.bind.annotation.*;
  18. import java.util.List;
  19. /**
  20. * 报警设置控制层
  21. *
  22. * @author yjy
  23. * @since 2020-11-17
  24. */
  25. @RestController
  26. @RequestMapping("/alarmSetting")
  27. @Api(tags = "报警管理")
  28. public class AlarmSettingController {
  29. /**
  30. * 服务对象
  31. */
  32. @Autowired
  33. private AlarmSettingService alarmSettingService;
  34. /**
  35. * 删除多条数据
  36. *
  37. * @param ids
  38. * @return Response对象
  39. */
  40. @RequestMapping(value = "deleteByAlarmIds", method = RequestMethod.POST)
  41. @ApiOperation(value = "删除报警配置信息")
  42. public AjaxMessage<Boolean> deleteByAlarmIds(@ApiParam(value = "报警配置ids", required = true) @RequestBody Long[] ids) {
  43. boolean result = alarmSettingService.deleteByAlarmIds(ids);
  44. return new AjaxMessage<>(ResultStatus.OK, result);
  45. }
  46. /**
  47. * 修改数据
  48. *
  49. * @param
  50. * @return Response对象
  51. */
  52. @RequestMapping(value = "updateByAlarmId", method = RequestMethod.POST)
  53. @ApiOperation(value = "修改报警配置信息")
  54. public AjaxMessage<Boolean> updateByAlarmId(@ApiParam(value = "报警配置信息", required = true) @RequestBody AlarmSetting alarmSetting) {
  55. if(alarmSetting.getId()==null) {
  56. return new AjaxMessage<>(ResultStatus.PARAM_ERROR);
  57. }
  58. LoginUser currentUser = UserUtil.getCurrentUser();
  59. alarmSetting.setUpdateBy(currentUser.getUsername());
  60. boolean result = alarmSettingService.updateByAlarmId(alarmSetting);
  61. return new AjaxMessage<>(ResultStatus.OK, result);
  62. }
  63. /**
  64. * 增加数据
  65. *
  66. * @param
  67. * @return Response对象
  68. */
  69. @RequestMapping(value = "insertBatch", method = RequestMethod.POST)
  70. @ApiOperation(value = "批量增加报警配置信息")
  71. public AjaxMessage<Boolean> insertBatch(@ApiParam(value = "报警配置ids", required = true) @RequestBody List<AlarmSetting> listAlarmSetting) {
  72. LoginUser currentUser = UserUtil.getCurrentUser();
  73. for (AlarmSetting alarm:listAlarmSetting) {
  74. alarm.setCreateBy(currentUser.getUsername());
  75. alarm.setTenantId(currentUser.getTenantId());
  76. alarm.setStatus(1);
  77. }
  78. boolean result = alarmSettingService.insertBatch(listAlarmSetting);
  79. return new AjaxMessage<>(ResultStatus.OK, result);
  80. }
  81. /**
  82. * 分页查询报警设置数据
  83. *
  84. * @param attributeName 报警参数
  85. * @param sceneId 场景id
  86. * @return
  87. */
  88. @RequestMapping(value = "selectPage", method = RequestMethod.GET)
  89. @ApiOperation(value = "分页查询报警设置数据")
  90. public AjaxMessage<Pagination<AlarmSettingDto>> selectPage(
  91. @ApiParam(value = "页数", required = true)@RequestParam Integer pageNum,
  92. @ApiParam(value = "条数", required = true)@RequestParam Integer pageSize,
  93. @ApiParam(value = "id", required = false) @RequestParam(required = false) Integer id,
  94. @ApiParam(value = "报警参数", required = false) @RequestParam(required = false) String attributeName,
  95. @ApiParam(value = "场景id", required = false) @RequestParam(required = false) Integer sceneId) {
  96. AlarmSettingDto alarmSettingDto=new AlarmSettingDto();
  97. alarmSettingDto.setId(id);
  98. alarmSettingDto.setAttributeName(attributeName);
  99. alarmSettingDto.setSceneId(sceneId);
  100. IPage<AlarmSettingDto> iPage = new Page<>(pageNum, pageSize);
  101. iPage = alarmSettingService.selectPage(iPage, alarmSettingDto);
  102. Pagination<AlarmSettingDto> pages = new Pagination<>(iPage);
  103. return new AjaxMessage<>(ResultStatus.OK, pages);
  104. }
  105. /**
  106. * 根据设备id查询属性信息
  107. *
  108. * @param deviceId
  109. * @return
  110. */
  111. @RequestMapping(value = "selectAttributes", method = RequestMethod.GET)
  112. @ApiOperation(value = "根据设备id查询属性信息")
  113. public AjaxMessage<List<AlarmSettingDto>> selectAttributes(@RequestParam Integer deviceId) {
  114. if(deviceId==null) {
  115. return new AjaxMessage<>(ResultStatus.PARAM_ERROR);
  116. }
  117. List<AlarmSettingDto> result = alarmSettingService.selectAttributes(deviceId);
  118. return new AjaxMessage<>(ResultStatus.OK, result);
  119. }
  120. }