ReceiverInfoServiceImpl.java 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. package com.fdkankan.ucenter.service.impl;
  2. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  3. import com.fdkankan.common.constant.ErrorCode;
  4. import com.fdkankan.common.exception.BusinessException;
  5. import com.fdkankan.ucenter.entity.ReceiverInfo;
  6. import com.fdkankan.ucenter.mapper.IReceiverInfoMapper;
  7. import com.fdkankan.ucenter.service.IReceiverInfoService;
  8. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  9. import com.fdkankan.ucenter.vo.request.ShipAddressParam;
  10. import org.springframework.stereotype.Service;
  11. import java.util.List;
  12. /**
  13. * <p>
  14. * 收货人信息表 服务实现类
  15. * </p>
  16. *
  17. * @author
  18. * @since 2022-07-04
  19. */
  20. @Service
  21. public class ReceiverInfoServiceImpl extends ServiceImpl<IReceiverInfoMapper, ReceiverInfo> implements IReceiverInfoService {
  22. @Override
  23. public ReceiverInfo getDefaultByUserId(Long userId){
  24. QueryWrapper<ReceiverInfo> queryWrapper = new QueryWrapper<>();
  25. queryWrapper.lambda().eq(ReceiverInfo::getUserId,userId);
  26. queryWrapper.lambda().eq(ReceiverInfo::getSetDefault,1);
  27. List<ReceiverInfo> list = this.list(queryWrapper);
  28. if(list == null || list.size()<=0){
  29. return null;
  30. }
  31. return list.get(0);
  32. }
  33. @Override
  34. public void saveByParam(ShipAddressParam param, Long userId) {
  35. ReceiverInfo defaultEntity = getDefaultByUserId(userId);
  36. ReceiverInfo receiverInfoEntity = new ReceiverInfo();
  37. receiverInfoEntity.setSetDefault(0);
  38. if(defaultEntity == null){
  39. receiverInfoEntity.setSetDefault(1);
  40. }
  41. receiverInfoEntity.setUserId(userId);
  42. receiverInfoEntity.setShipAreaPath(param.getShipAreaPath());
  43. receiverInfoEntity.setShipAddress(param.getShipAddress());
  44. receiverInfoEntity.setShipName(param.getShipName());
  45. receiverInfoEntity.setShipMobile(param.getShipMobile());
  46. this.save(receiverInfoEntity);
  47. }
  48. @Override
  49. public void updateDefaultAddress(ShipAddressParam param, Long userId) {
  50. if(param.getSetDefault() != null && param.getSetDefault() == 1){
  51. ReceiverInfo defaultEntity = this.getDefaultByUserId(userId);
  52. if(defaultEntity != null && defaultEntity.getId().intValue() != param.getId().intValue()){
  53. defaultEntity.setSetDefault(0);
  54. if(!this.updateById(defaultEntity)){
  55. throw new BusinessException(ErrorCode.ERROR_MSG);
  56. }
  57. }
  58. }
  59. ReceiverInfo receiverInfoEntity = this.getById(param.getId());
  60. if(param.getSetDefault() != null){
  61. receiverInfoEntity.setSetDefault(param.getSetDefault());
  62. }
  63. receiverInfoEntity.setShipAreaPath(param.getShipAreaPath());
  64. receiverInfoEntity.setShipAddress(param.getShipAddress());
  65. receiverInfoEntity.setShipName(param.getShipName());
  66. receiverInfoEntity.setShipMobile(param.getShipMobile());
  67. this.updateById(receiverInfoEntity);
  68. }
  69. @Override
  70. public List<ReceiverInfo> getListByUserId(Long userId) {
  71. QueryWrapper<ReceiverInfo> queryWrapper = new QueryWrapper<>();
  72. queryWrapper.lambda().eq(ReceiverInfo::getUserId,userId);
  73. return this.list(queryWrapper);
  74. }
  75. }