MqttUserServiceImpl.java 3.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. package com.xy.service;
  2. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  3. import com.baomidou.mybatisplus.core.metadata.IPage;
  4. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  5. import com.xy.dto.MqttUserDto;
  6. import com.xy.entity.MqttUser;
  7. import com.xy.entity.SysDictRedis;
  8. import com.xy.mapper.MqttUserMapper;
  9. import com.xy.utils.*;
  10. import com.xy.utils.enums.DictsEnum;
  11. import io.swagger.annotations.Api;
  12. import io.swagger.annotations.ApiOperation;
  13. import lombok.AllArgsConstructor;
  14. import lombok.extern.slf4j.Slf4j;
  15. import org.springframework.stereotype.Service;
  16. import org.springframework.validation.annotation.Validated;
  17. import org.springframework.web.bind.annotation.PostMapping;
  18. import org.springframework.web.bind.annotation.RequestBody;
  19. import java.util.List;
  20. import java.util.Map;
  21. import static com.xy.utils.Beans.copy;
  22. import static com.xy.utils.PlusBeans.toIPage;
  23. import static com.xy.utils.PlusBeans.toPageBean;
  24. /**
  25. * <p>
  26. * 服务实现类
  27. * </p>
  28. *
  29. * @author lijin
  30. * @since 2023-02-17
  31. */
  32. @Slf4j
  33. @Service
  34. @AllArgsConstructor
  35. @Api(tags = "mqtt认证")
  36. public class MqttUserServiceImpl extends ServiceImpl<MqttUserMapper, MqttUser> implements MqttUserService {
  37. @PostMapping("obj")
  38. @ApiOperation("对象查询")
  39. public R<MqttUserDto.Vo> obj(@RequestBody MqttUserDto.Obj obj) {
  40. log.info("mqtt认证查询,sn:{}", obj.getSn());
  41. MqttUserDto.SelectList selectList = copy(MqttUserDto.SelectList.class, obj);
  42. List<MqttUserDto.Vo> list = list(selectList).getData();
  43. if (!Emptys.check(list)) {
  44. return R.ok();
  45. }
  46. MqttUserDto.Vo mqttUser = list.get(0);
  47. Map<String, SysDictRedis> map = SysDictUtils.get(DictsEnum.ENV_PARAMS.getKey());
  48. SysDictRedis mqttUrl = map.get("mqtt_url");
  49. SysDictRedis serverUrl = map.get("server_url");
  50. mqttUser.setServerTime(System.currentTimeMillis())
  51. .setIpAddress(mqttUrl.getValue())
  52. .setServerUrl(serverUrl.getValue());
  53. return R.ok(mqttUser);
  54. }
  55. @PostMapping("list")
  56. @ApiOperation("集合查询")
  57. public R<List<MqttUserDto.Vo>> list(@RequestBody MqttUserDto.SelectList selectList) {
  58. LambdaQueryWrapper<MqttUser> lambdaQueryWrapper = new MybatisPlusQuery().eqWrapper(selectList, MqttUser.class).build();
  59. List<MqttUser> list = list(lambdaQueryWrapper);
  60. return R.ok(copy(MqttUserDto.Vo.class, list));
  61. }
  62. @PostMapping("page")
  63. @ApiOperation("分页查询")
  64. public R<PageBean<MqttUserDto.Vo>> page(@RequestBody MqttUserDto.Page page) {
  65. PageBean pageBean = page.getPage();
  66. LambdaQueryWrapper<MqttUser> lambdaQueryWrapper = new MybatisPlusQuery().eqWrapper(page, MqttUser.class).build();
  67. IPage<MqttUser> iPage = page(toIPage(pageBean), lambdaQueryWrapper);
  68. return R.ok(toPageBean(MqttUserDto.Vo.class, iPage));
  69. }
  70. @PostMapping("save")
  71. @ApiOperation("添加")
  72. public R save(@RequestBody @Validated MqttUserDto.Save save) {
  73. MqttUser saveInfo = copy(MqttUser.class, save);
  74. save(saveInfo);
  75. return R.ok();
  76. }
  77. }