GatewayController.java 3.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. package com.huimv.env.admin.controller;
  2. import cn.hutool.core.util.ObjectUtil;
  3. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  4. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  5. import com.huimv.env.admin.common.utils.Result;
  6. import com.huimv.env.admin.common.utils.ResultCode;
  7. import com.huimv.env.admin.entity.Terminal;
  8. import com.huimv.env.admin.entity.vo.*;
  9. import com.huimv.env.admin.entity.Gateway;
  10. import com.huimv.env.admin.service.IGatewayService;
  11. import com.huimv.env.admin.service.ITerminalService;
  12. import org.springframework.beans.factory.annotation.Autowired;
  13. import org.springframework.web.bind.annotation.*;
  14. import java.util.List;
  15. /**
  16. * <p>
  17. * 采集网关 前端控制器
  18. * </p>
  19. *
  20. * @author newspaper
  21. * @since 2024-05-07
  22. */
  23. @RestController
  24. @CrossOrigin
  25. @RequestMapping("/gateway")
  26. public class GatewayController {
  27. @Autowired
  28. private IGatewayService gatewayService;
  29. @Autowired
  30. private ITerminalService terminalService;
  31. @PostMapping("/add")
  32. public Result add(@RequestBody GateWayAddParam gateWayAddParam){
  33. List<Gateway> gatewayList = gatewayService.list(new QueryWrapper<Gateway>().lambda().eq(Gateway::getDeviceCode, gateWayAddParam.getDeviceCode()));
  34. if (ObjectUtil.isEmpty(gatewayList)){
  35. return new Result(10001,"网关编号已存在",false);
  36. }
  37. Gateway gateway = new Gateway();
  38. gateway.setDeviceCode(gateWayAddParam.getDeviceCode());
  39. gateway.setLocationId(gateWayAddParam.getLocationId());
  40. gateway.setType(gateWayAddParam.getType());
  41. gateway.setFarmId(gateWayAddParam.getFarmId());
  42. gatewayService.save(gateway);
  43. return Result.SUCCESS();
  44. }
  45. @PostMapping("/page")
  46. public Result page(@RequestBody GateWayPageParam gateWayPageParam){
  47. Page<Gateway> page = new Page<>(gateWayPageParam.getPageNum(),gateWayPageParam.getPageSize());
  48. Page<Gateway> gatewayPage = gatewayService.page(page,new QueryWrapper<Gateway>().lambda()
  49. .eq(Gateway::getFarmId,gateWayPageParam.getFarmId())
  50. .like(ObjectUtil.isNotEmpty(gateWayPageParam.getDeviceCode()),Gateway::getDeviceCode,gateWayPageParam.getDeviceCode()));
  51. return new Result(ResultCode.SUCCESS,gatewayPage);
  52. }
  53. @PostMapping("/list")
  54. public Result list(@RequestBody GateWayListParam gateWayListParam){
  55. List<Gateway> gatewayList = gatewayService.list(new QueryWrapper<Gateway>().lambda().eq(ObjectUtil.isNotEmpty(gateWayListParam.getFarmId()), Gateway::getFarmId, gateWayListParam.getFarmId()));
  56. return new Result(ResultCode.SUCCESS,gatewayList);
  57. }
  58. @PostMapping("/update")
  59. public Result update(@RequestBody GateWayUpdateParam gateWayUpdateParam){
  60. Gateway gateway = gatewayService.getById(gateWayUpdateParam.getId());
  61. List<Gateway> gatewayList = gatewayService.list(new QueryWrapper<Gateway>().lambda().eq(Gateway::getDeviceCode, gateWayUpdateParam.getDeviceCode()).ne(Gateway::getId,gateWayUpdateParam.getId()));
  62. if (ObjectUtil.isEmpty(gatewayList)){
  63. return new Result(10001,"网关编号已存在",false);
  64. }
  65. gateway.setDeviceCode(gateWayUpdateParam.getDeviceCode());
  66. gateway.setLocationId(gateWayUpdateParam.getLocationId());
  67. gateway.setType(gateWayUpdateParam.getType());
  68. gateway.setFarmId(gateWayUpdateParam.getFarmId());
  69. gatewayService.updateById(gateway);
  70. return Result.SUCCESS();
  71. }
  72. @PostMapping("/delete")
  73. public Result delete(@RequestBody GateWayDeleteParam gateWayDeleteParam){
  74. List<Terminal> terminalList = terminalService.list(new QueryWrapper<Terminal>().lambda().eq(Terminal::getGatewayId, gateWayDeleteParam.getId()));
  75. if (ObjectUtil.isEmpty(terminalList)){
  76. return new Result(10001,"网关存在下属终端",false);
  77. }
  78. gatewayService.removeById(gateWayDeleteParam.getId());
  79. return Result.SUCCESS();
  80. }
  81. }