TAddressServiceImpl.java 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. package com.ylx.massage.service.impl;
  2. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  3. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  4. import com.ylx.common.utils.StringUtils;
  5. import com.ylx.massage.mapper.TAddressMapper;
  6. import com.ylx.massage.domain.TAddress;
  7. import com.ylx.massage.service.TAddressService;
  8. import org.springframework.stereotype.Service;
  9. import org.springframework.transaction.annotation.Transactional;
  10. import java.util.Objects;
  11. /**
  12. * 轮播图(TAddress)表服务实现类
  13. *
  14. * @author makejava
  15. * @since 2024-04-11 17:18:53
  16. */
  17. @Service("tAddressService")
  18. public class TAddressServiceImpl extends ServiceImpl<TAddressMapper, TAddress> implements TAddressService {
  19. @Override
  20. public TAddress getByOpenId(String openId) {
  21. LambdaQueryWrapper<TAddress> objectLambdaQueryWrapper = new LambdaQueryWrapper<>();
  22. objectLambdaQueryWrapper.eq(TAddress::getOpenid, openId).eq(TAddress::getType, 1);
  23. return this.getOne(objectLambdaQueryWrapper);
  24. }
  25. @Override
  26. @Transactional(rollbackFor = Exception.class)
  27. public Boolean defaultAddress(TAddress tAddress) {
  28. if (StringUtils.isBlank(tAddress.getOpenid())) {
  29. throw new RuntimeException("openid不能为空");
  30. }
  31. // 查询默认地址
  32. TAddress oldAddress = this.getByOpenId(tAddress.getOpenid());
  33. if (oldAddress != null) {
  34. oldAddress.setType(0);
  35. this.updateById(oldAddress);
  36. }
  37. tAddress.setType(1);
  38. return this.updateById(tAddress);
  39. }
  40. @Override
  41. public Object insertAddress(TAddress tAddress) {
  42. if (StringUtils.isBlank(tAddress.getOpenid())) {
  43. throw new RuntimeException("openid不能为空");
  44. }
  45. //查询默认地址
  46. TAddress oldAddress = this.getByOpenId(tAddress.getOpenid());
  47. tAddress.setType(1);
  48. if (oldAddress != null) {
  49. tAddress.setType(0);
  50. }
  51. return this.save(tAddress);
  52. }
  53. @Override
  54. @Transactional(rollbackFor = Exception.class)
  55. public Object insertVirtualAddress(TAddress tAddress) {
  56. // if (StringUtils.isBlank(tAddress.getOpenid())) {
  57. // throw new RuntimeException("openid不能为空");
  58. // }
  59. //检查用户类型是否为空
  60. if (Objects.isNull(tAddress.getUserType())) {
  61. throw new RuntimeException("用户类型不能为空");
  62. }
  63. //检查用户类型是否为1或2
  64. if (tAddress.getUserType() != 1 && tAddress.getUserType() != 2) {
  65. throw new RuntimeException("用户类型只能为1或2");
  66. }
  67. //检查用户类型是否正确
  68. if (tAddress.getUserType() != 2) {
  69. throw new RuntimeException("用户类型错误,用户类型只能为2");
  70. }
  71. //检查地址类型是否为空
  72. if (Objects.isNull(tAddress.getType())) {
  73. throw new RuntimeException("地址类型不能为空");
  74. }
  75. // //检查地址类型是否为1或2
  76. // if (tAddress.getType() != 2) {
  77. // throw new RuntimeException("地址类型错误,地址类型只能为2");
  78. // }
  79. return this.save(tAddress);
  80. }
  81. @Override
  82. public Object updateAddress(TAddress tAddress) {
  83. if (StringUtils.isBlank(tAddress.getOpenid())) {
  84. throw new RuntimeException("openid不能为空");
  85. }
  86. if (StringUtils.isBlank(tAddress.getId())) {
  87. throw new RuntimeException("地址id不能为空");
  88. }
  89. //查询默认地址
  90. TAddress oldAddress = this.getByOpenId(tAddress.getOpenid());
  91. tAddress.setType(1);
  92. if (oldAddress != null && !oldAddress.getId().equals(tAddress.getId())) {
  93. tAddress.setType(0);
  94. }
  95. return this.updateById(tAddress);
  96. }
  97. }