package cc.mrbird.febs.mall.service.impl;
|
|
import cc.mrbird.febs.common.entity.FebsResponse;
|
import cc.mrbird.febs.common.exception.FebsException;
|
import cc.mrbird.febs.common.utils.LoginUserUtil;
|
import cc.mrbird.febs.common.utils.RedisUtils;
|
import cc.mrbird.febs.mall.conversion.MallAddressInfoConversion;
|
import cc.mrbird.febs.mall.dto.AddressInfoDto;
|
import cc.mrbird.febs.mall.dto.ApiIdentifyAddressDto;
|
import cc.mrbird.febs.mall.entity.MallAddressInfo;
|
import cc.mrbird.febs.mall.entity.MallAddressWorld;
|
import cc.mrbird.febs.mall.entity.MallMember;
|
import cc.mrbird.febs.mall.mapper.MallAddressInfoMapper;
|
import cc.mrbird.febs.mall.mapper.MallAddressWorldMapper;
|
import cc.mrbird.febs.mall.service.IApiMallAddressInfoService;
|
import cc.mrbird.febs.mall.vo.AddressInfoVo;
|
import cc.mrbird.febs.pay.util.WechatConfigure;
|
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.json.JSONObject;
|
import cn.hutool.json.JSONUtil;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import lombok.RequiredArgsConstructor;
|
import lombok.extern.slf4j.Slf4j;
|
import okhttp3.*;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
|
import java.io.IOException;
|
import java.util.Date;
|
import java.util.List;
|
|
/**
|
* @author wzy
|
* @date 2021-09-18
|
**/
|
@Slf4j
|
@Service
|
@RequiredArgsConstructor
|
public class ApiMallAddressInfoServiceImpl extends ServiceImpl<MallAddressInfoMapper, MallAddressInfo> implements IApiMallAddressInfoService {
|
|
@Autowired
|
private RedisUtils redisUtils;
|
@Autowired
|
private MallAddressWorldMapper mallAddressWorldMapper;
|
|
@Override
|
public FebsResponse findAddressInfo() {
|
|
|
Long id = LoginUserUtil.getLoginUser().getId();
|
|
AddressInfoVo addressInfoVo = new AddressInfoVo();
|
|
|
List<MallAddressInfo> mallAddressInfos = this.baseMapper.selectList(
|
Wrappers.lambdaQuery(MallAddressInfo.class)
|
.eq(MallAddressInfo::getMemberId, id)
|
);
|
if (CollUtil.isNotEmpty(mallAddressInfos)){
|
MallAddressInfo mallAddressInfo = mallAddressInfos.get(0);
|
addressInfoVo.setId(mallAddressInfo.getId());
|
addressInfoVo.setName(mallAddressInfo.getName());
|
addressInfoVo.setFirstName(mallAddressInfo.getFristName());
|
addressInfoVo.setAddress(mallAddressInfo.getAddress());
|
addressInfoVo.setArea(mallAddressInfo.getArea());
|
addressInfoVo.setPostcode(mallAddressInfo.getPostcode());
|
addressInfoVo.setPhone(mallAddressInfo.getPhone());
|
addressInfoVo.setCity(mallAddressInfo.getCity());
|
addressInfoVo.setProvince(mallAddressInfo.getProvince());
|
addressInfoVo.setCountry(mallAddressInfo.getCountry());
|
addressInfoVo.setCountryName(mallAddressInfo.getCountryName());
|
}
|
return new FebsResponse().success().data(addressInfoVo);
|
}
|
|
|
|
@Override
|
public FebsResponse modifyAddress(AddressInfoDto addressInfoDto) {
|
|
Long memberId = LoginUserUtil.getLoginUser().getId();
|
this.baseMapper.update(
|
null,
|
Wrappers.lambdaUpdate(MallAddressInfo.class)
|
.set(MallAddressInfo::getName, addressInfoDto.getName())
|
.set(MallAddressInfo::getFristName, addressInfoDto.getFirstName())
|
.set(MallAddressInfo::getAddress, addressInfoDto.getAddress())
|
.set(MallAddressInfo::getArea, addressInfoDto.getArea())
|
.set(MallAddressInfo::getPostcode, addressInfoDto.getPostcode())
|
.set(MallAddressInfo::getPhone, addressInfoDto.getPhone())
|
.set(MallAddressInfo::getCity, addressInfoDto.getCity())
|
.set(MallAddressInfo::getProvince, addressInfoDto.getProvince())
|
.set(MallAddressInfo::getCountry, addressInfoDto.getCountry())
|
.set(MallAddressInfo::getCountryName, addressInfoDto.getCountryName())
|
.eq(MallAddressInfo::getMemberId, memberId)
|
);
|
|
return new FebsResponse().success();
|
}
|
|
|
}
|