rentaiming
2024-05-24 c9e904c9533944c491d348e2a35c78bddc28db4b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
package com.ruoyi.member.service.impl;
 
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.core.utils.page.PageDTO;
import com.ruoyi.member.dto.MemberAddressDTO;
import com.ruoyi.member.mapper.MemberAddressMapper;
import com.ruoyi.member.service.IMemberAddressService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.system.api.domain.MemberAddress;
import org.springframework.stereotype.Service;
 
import javax.annotation.Resource;
 
/**
 * <p>
 * 会员地址表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class MemberAddressServiceImpl extends ServiceImpl<MemberAddressMapper, MemberAddress> implements IMemberAddressService {
    @Resource
    private  IMemberAddressService iMemberAddressService;
    @Override
    public PageDTO<MemberAddress> getMemberAddressList(MemberAddressDTO memberAddressDTO) {
        Page<MemberAddress> page = new Page<>(memberAddressDTO.getPageCurr(), memberAddressDTO.getPageSize());
        LambdaQueryWrapper<MemberAddress> wrapper= Wrappers.lambdaQuery();
        wrapper.eq(MemberAddress::getMemberId,memberAddressDTO.getMemberId());
        wrapper.eq(MemberAddress::getDelFlag,0);
        wrapper.orderByDesc(MemberAddress::getIsDefault);
        Page<MemberAddress> page1 = iMemberAddressService.page(page, wrapper);
        return PageDTO.of(page1);
    }
 
    @Override
    public void addMemberAddress(MemberAddressDTO memberAddressDTO) {
        MemberAddress memberAddress=new MemberAddress();
        if (memberAddressDTO.getId()!=null){
            memberAddress=iMemberAddressService.getById(memberAddressDTO.getId());
        }
       if(memberAddressDTO.getIsDefault()==2){
           LambdaQueryWrapper<MemberAddress> wrapper= Wrappers.lambdaQuery();
           wrapper.eq(MemberAddress::getMemberId,memberAddressDTO.getMemberId());
           wrapper.eq(MemberAddress::getDelFlag,0);
           wrapper.eq(MemberAddress::getIsDefault,2);
           MemberAddress memberAddress1=iMemberAddressService.getOne(wrapper);
           if (memberAddress1!=null){
               memberAddress1.setIsDefault(1);
               iMemberAddressService.updateById(memberAddress1);
           }
       }
       memberAddress.setMemberId(memberAddressDTO.getMemberId());
       memberAddress.setReceiverCity(memberAddressDTO.getReceiverCity());
       memberAddress.setReceiverProvince(memberAddressDTO.getReceiverProvince());
       memberAddress.setReceiverRegion(memberAddressDTO.getReceiverRegion());
       memberAddress.setCity(memberAddressDTO.getReceiverProvince()+memberAddressDTO.getReceiverCity()+memberAddressDTO.getReceiverRegion());
       memberAddress.setRecipientName(memberAddressDTO.getRecipientName());
       memberAddress.setRecipientPhone(memberAddressDTO.getRecipientPhone());
       memberAddress.setDetailedAddress(memberAddressDTO.getDetailedAddress());
       memberAddress.setIsDefault(memberAddressDTO.getIsDefault());
       iMemberAddressService.saveOrUpdate(memberAddress);
 
    }
 
    @Override
    public void delMemberAddress(MemberAddressDTO memberAddressDTO) {
        iMemberAddressService.removeById(memberAddressDTO.getId());
    }
}