xiaoyong931011
2021-09-25 f8d201010acbb9c530a38e64201d6b2a205fe394
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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
package cc.mrbird.febs.mall.service.impl;
 
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.common.entity.QueryRequest;
import cc.mrbird.febs.mall.dto.MoneyChargeListDto;
import cc.mrbird.febs.mall.dto.MoneyFlowListDto;
import cc.mrbird.febs.mall.entity.MallMember;
import cc.mrbird.febs.mall.entity.MallMoneyFlow;
import cc.mrbird.febs.mall.mapper.MallMemberMapper;
import cc.mrbird.febs.mall.mapper.MallMemberPaymentMapper;
import cc.mrbird.febs.mall.mapper.MallMoneyFlowMapper;
import cc.mrbird.febs.mall.service.IAdminMallMemberService;
import cc.mrbird.febs.mall.vo.*;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
 
/**
 * @author wzy
 * @date 2021-09-16
 **/
@Slf4j
@Service
@RequiredArgsConstructor
public class AdminMallMemberServiceImpl extends ServiceImpl<MallMemberMapper, MallMember> implements IAdminMallMemberService {
 
    private final MallMemberMapper mallMemberMapper;
 
    private final MallMoneyFlowMapper mallMoneyFlowMapper;
 
    private final MallMemberPaymentMapper mallMemberPaymentMapper;
 
    @Override
    public IPage<MallMember> getMallMemberList(MallMember mallMember, QueryRequest request) {
        Page<MallMember> page = new Page<>(request.getPageNum(), request.getPageSize());
        IPage<MallMember> mallMembers = this.baseMapper.selectMallMemberListInPage(page, mallMember);
        return mallMembers;
    }
 
    @Override
    @Transactional
    public FebsResponse closeAccount(Long id) {
        MallMember mallMember = mallMemberMapper.selectById(id);
        if(ObjectUtil.isEmpty(mallMember)) {
            return new FebsResponse().fail().message("会员信息不存在");
        }
        mallMember.setAccountStatus(MallMember.ACCOUNT_STATUS_DISABLED);
        mallMemberMapper.updateById(mallMember);
        return new FebsResponse().success();
    }
 
    @Override
    @Transactional
    public FebsResponse openAccount(Long id) {
        MallMember mallMember = mallMemberMapper.selectById(id);
        if(ObjectUtil.isEmpty(mallMember)) {
            return new FebsResponse().fail().message("会员信息不存在");
        }
        mallMember.setAccountStatus(MallMember.ACCOUNT_STATUS_ENABLE);
        mallMemberMapper.updateById(mallMember);
        return new FebsResponse().success();
    }
 
    @Override
    public MallMemberVo getMallMemberInfoById(long id) {
        MallMemberVo mallMemberVo = mallMemberMapper.getMallMemberInfoById(id);
        return mallMemberVo;
    }
 
    @Override
    public IPage<AdminMallMoneyFlowVo> moneyFlow(QueryRequest request, MallMember mallMember) {
        Page<AdminMallMoneyFlowVo> page = new Page<>(request.getPageNum(), request.getPageSize());
        IPage<AdminMallMoneyFlowVo> adminMallMoneyFlowVos = mallMoneyFlowMapper.selectMoneyFlowInPage(page, mallMember);
        return adminMallMoneyFlowVos;
    }
 
    @Override
    public IPage<AdminMoneyFlowListVo> getMoneyFlowListInPage(MoneyFlowListDto moneyFlowListDto, QueryRequest request) {
        Page<AdminMoneyFlowListVo> page = new Page<>(request.getPageNum(), request.getPageSize());
        IPage<AdminMoneyFlowListVo> adminMoneyFlowListVos = mallMoneyFlowMapper.getMoneyFlowListInPage(page, moneyFlowListDto);
        return adminMoneyFlowListVos;
    }
 
    @Override
    public IPage<AdminMoneyChargeListVo> getMoneyChargeListInPage(MoneyChargeListDto moneyChargeListDto, QueryRequest request) {
        Page<AdminMoneyChargeListVo> page = new Page<>(request.getPageNum(), request.getPageSize());
        IPage<AdminMoneyChargeListVo> adminMoneyChargeListVos = mallMoneyFlowMapper.getMoneyChargeListInPage(page, moneyChargeListDto);
        return adminMoneyChargeListVos;
    }
 
    @Override
    @Transactional
    public FebsResponse chargeAgree(Long id) {
        MallMoneyFlow mallMoneyFlow = mallMoneyFlowMapper.selectById(id);
        if(ObjectUtil.isEmpty(mallMoneyFlow)){
            return new FebsResponse().fail().message("系统繁忙,请刷新后重试");
        }
        mallMoneyFlow.setStatus(2);
        mallMoneyFlowMapper.insert(mallMoneyFlow);
        return new FebsResponse().success();
    }
 
    @Override
    @Transactional
    public FebsResponse chargeDisagree(Long id) {
        MallMoneyFlow mallMoneyFlow = mallMoneyFlowMapper.selectById(id);
        if(ObjectUtil.isEmpty(mallMoneyFlow)){
            return new FebsResponse().fail().message("系统繁忙,请刷新后重试");
        }
        mallMoneyFlow.setStatus(3);
        mallMoneyFlowMapper.insert(mallMoneyFlow);
        return new FebsResponse().success();
    }
 
    @Override
    public AdminMallMemberPaymentVo getMallMemberPaymentInfoByFlowId(long id) {
        MallMoneyFlow mallMoneyFlow = mallMoneyFlowMapper.selectById(id);
        AdminMallMemberPaymentVo adminMallMemberPaymentVo = mallMemberPaymentMapper.getMallMemberPaymentInfoByMemberId(mallMoneyFlow.getMemberId());
        return adminMallMemberPaymentVo;
    }
 
}