xiaoyong931011
2022-08-12 77a12468215a8a8a5b3a22544bdcc239efddf287
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
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.conversion.MallTeamLeaderConversion;
import cc.mrbird.febs.mall.dto.AdminLeaderUpdateDto;
import cc.mrbird.febs.mall.entity.MallGoodsCategory;
import cc.mrbird.febs.mall.entity.MallLeaderStock;
import cc.mrbird.febs.mall.entity.MallTeamLeader;
import cc.mrbird.febs.mall.mapper.MallGoodsMapper;
import cc.mrbird.febs.mall.mapper.MallLeaderStockMapper;
import cc.mrbird.febs.mall.mapper.MallMemberMapper;
import cc.mrbird.febs.mall.mapper.MallTeamLeaderMapper;
import cc.mrbird.febs.mall.service.IAdminMallTeamLeaderService;
import cc.mrbird.febs.mall.vo.AdminMallActSetVo;
import cc.mrbird.febs.mall.vo.AdminMallTeamLeaderVo;
import cc.mrbird.febs.mall.vo.AdminSelectListLeaderVo;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
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;
 
import java.util.ArrayList;
import java.util.List;
 
@Slf4j
@Service
@RequiredArgsConstructor
@Transactional
public class AdminMallTeamLeaderServiceImpl extends ServiceImpl<MallTeamLeaderMapper, MallTeamLeader> implements IAdminMallTeamLeaderService {
 
    private final MallLeaderStockMapper mallLeaderStockMapper;
    private final MallGoodsMapper mallGoodsMapper;
 
    @Override
    public IPage<AdminMallTeamLeaderVo> getLeaderListInPage(MallTeamLeader mallTeamLeader, QueryRequest request) {
        Page<AdminMallTeamLeaderVo> page = new Page<>(request.getPageNum(), request.getPageSize());
        IPage<AdminMallTeamLeaderVo> adminMallActSetVos = this.baseMapper.selectLeaderListInPage(page, mallTeamLeader);
        return adminMallActSetVos;
    }
 
    @Override
    public AdminMallTeamLeaderVo getMallTeamLederInfoById(long id) {
        MallTeamLeader mallTeamLeader = this.baseMapper.selectById(id);
        AdminMallTeamLeaderVo adminMallTeamLeaderVo = MallTeamLeaderConversion.INSTANCE.entityToVo(mallTeamLeader);
        return adminMallTeamLeaderVo;
    }
 
    @Override
    public FebsResponse leaderUpdate(AdminLeaderUpdateDto adminLeaderUpdateDto) {
        Long id = adminLeaderUpdateDto.getId();
        MallTeamLeader mallTeamLeader = this.baseMapper.selectById(id);
        Integer state = mallTeamLeader.getState();
        if(MallTeamLeader.STATE_ING != state){
            return new FebsResponse().fail().message("只有【待审核】状态才能提交!");
        }
        int isOk = adminLeaderUpdateDto.getIsOk();
        if(MallTeamLeader.STATE_YES == isOk){
            mallTeamLeader.setState(MallTeamLeader.STATE_YES);
            this.baseMapper.updateById(mallTeamLeader);
        }
        if(MallTeamLeader.STATE_NO == isOk){
            mallTeamLeader.setState(MallTeamLeader.STATE_NO);
            this.baseMapper.updateById(mallTeamLeader);
        }
        return new FebsResponse().success().message("审核成功");
    }
 
    @Override
    public List<AdminSelectListLeaderVo> selectList(MallTeamLeader mallTeamLeader) {
        List<AdminSelectListLeaderVo> list = new ArrayList<>();
        List<MallTeamLeader> mallTeamLeaders = this.baseMapper.getMallTeamLeaderList();
        if(CollUtil.isNotEmpty(mallTeamLeaders)){
            for(MallTeamLeader teamLeader : mallTeamLeaders){
                AdminSelectListLeaderVo adminSelectListLeaderVo = new AdminSelectListLeaderVo();
                adminSelectListLeaderVo.setUniqueCode(teamLeader.getUniqueCode());
                adminSelectListLeaderVo.setName(teamLeader.getName());
                list.add(adminSelectListLeaderVo);
            }
        }
        return list;
    }
 
    @Override
    public FebsResponse leaderCancel(Long id) {
        MallTeamLeader mallTeamLeader = this.baseMapper.selectById(id);
        if(ObjectUtil.isEmpty(mallTeamLeader)){
            return new FebsResponse().fail().message("团长信息不存在");
        }
        Integer state = mallTeamLeader.getState();
        if(MallTeamLeader.STATE_YES != state){
            return new FebsResponse().fail().message("团长的状态不是审核通过");
        }
        mallTeamLeader.setState(MallTeamLeader.STATE_CANCEL);
        this.baseMapper.updateById(mallTeamLeader);
        return new FebsResponse().success().message("已取消");
    }
 
    @Override
    public IPage<MallLeaderStock> leaderGoodsUpdate(QueryRequest request, MallLeaderStock mallLeaderStock) {
 
        Integer goodsNumber = mallGoodsMapper.selectCount(new QueryWrapper<>());
        Page<MallLeaderStock> page = new Page<>(request.getPageNum(), goodsNumber);
        IPage<MallLeaderStock> mallTeamLeaders = this.baseMapper.selectleaderGoodsStockListInPage(page, mallLeaderStock);
        return mallTeamLeaders;
    }
}