fix
Helius
2021-09-28 31c11e345297f4f9938c7ea32d3864ed3ab26697
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java
@@ -2,19 +2,18 @@
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.common.entity.QueryRequest;
import cc.mrbird.febs.mall.dto.AgentDto;
import cc.mrbird.febs.mall.dto.MoneyChargeListDto;
import cc.mrbird.febs.mall.dto.MoneyFlowListDto;
import cc.mrbird.febs.mall.dto.*;
import cc.mrbird.febs.mall.entity.AppVersion;
import cc.mrbird.febs.mall.entity.DataDictionaryCustom;
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.mapper.*;
import cc.mrbird.febs.mall.service.IAdminMallMemberService;
import cc.mrbird.febs.mall.service.IApiMallMemberWalletService;
import cc.mrbird.febs.mall.vo.*;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -23,6 +22,8 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
@@ -40,7 +41,11 @@
    private final MallMemberPaymentMapper mallMemberPaymentMapper;
    private final DataDictionaryCustomMapper dataDictionaryCustomMapper;
    private final IApiMallMemberWalletService iApiMallMemberWalletService;
    private final AppVersionMapper appVersionMapper;
    @Override
    public IPage<MallMember> getMallMemberList(MallMember mallMember, QueryRequest request) {
@@ -164,4 +169,128 @@
        return adminAgentVos;
    }
    @Override
    public IPage<AdminAgentLevelVo> getAgentLevelList(AgentLevelDto agentLevelDto, QueryRequest request) {
        Page<AdminAgentLevelVo> page = new Page<>(request.getPageNum(), request.getPageSize());
        IPage<AdminAgentLevelVo> adminAgentVos = this.baseMapper.getAgentLevelListInPage(page, agentLevelDto);
        return adminAgentVos;
    }
    @Override
    public AdminAgentLevelUpdateInfoVo getAgentLevelUpdateInfoById(long id) {
        AdminAgentLevelUpdateInfoVo adminAgentLevelUpdateInfoVo = new AdminAgentLevelUpdateInfoVo();
        DataDictionaryCustom dataDictionaryCustom = dataDictionaryCustomMapper.selectById(id);
        String value = dataDictionaryCustom.getValue();
        //{"directIncome":36,"lastCnt":3,"orderCnt":500,"orderType":2,"teamIncome":6,"teamIncomeType":2}
        JSONObject jsonObject = JSONObject.parseObject(value);
        adminAgentLevelUpdateInfoVo.setDirectIncome(new BigDecimal((jsonObject.get("directIncome")==null?0:jsonObject.get("directIncome")).toString()));
        adminAgentLevelUpdateInfoVo.setLastCnt(Integer.parseInt((jsonObject.get("lastCnt")==null?0:jsonObject.get("lastCnt")).toString()));
        adminAgentLevelUpdateInfoVo.setOrderCnt(Integer.parseInt((jsonObject.get("orderCnt")==null?0:jsonObject.get("orderCnt")).toString()));
        adminAgentLevelUpdateInfoVo.setOrderType(Integer.parseInt(jsonObject.get("orderType").toString()));
        adminAgentLevelUpdateInfoVo.setTeamIncome(new BigDecimal((jsonObject.get("teamIncome")==null?0:jsonObject.get("teamIncome")).toString()));
        adminAgentLevelUpdateInfoVo.setTeamIncomeType(Integer.parseInt(jsonObject.get("orderType").toString()));
        adminAgentLevelUpdateInfoVo.setId(id);
        return adminAgentLevelUpdateInfoVo;
    }
    @Override
    public FebsResponse agentLevelUpdate(AgentLevelUpdateDto agentLevelUpdateDto) {
        DataDictionaryCustom dataDictionaryCustom = dataDictionaryCustomMapper.selectById(agentLevelUpdateDto.getId());
        AgentLevelUpdateDto agentLevelUpdateDtoJson = new AgentLevelUpdateDto();
        agentLevelUpdateDtoJson.setDirectIncome(agentLevelUpdateDto.getDirectIncome());
        agentLevelUpdateDtoJson.setLastCnt(agentLevelUpdateDto.getLastCnt());
        agentLevelUpdateDtoJson.setOrderCnt(agentLevelUpdateDto.getOrderCnt());
        agentLevelUpdateDtoJson.setTeamIncome(agentLevelUpdateDto.getTeamIncome());
        agentLevelUpdateDtoJson.setOrderType(agentLevelUpdateDto.getOrderType());
        agentLevelUpdateDtoJson.setTeamIncomeType(agentLevelUpdateDto.getTeamIncomeType());
        JSONObject jsonObject = (JSONObject)JSONObject.toJSON(agentLevelUpdateDtoJson);
        dataDictionaryCustom.setValue(jsonObject.toString());
        dataDictionaryCustomMapper.updateById(dataDictionaryCustom);
        return new FebsResponse().success();
    }
    @Override
    public List<AdminAgentLevelOptionTreeVo> getAgentLevelOption() {
        return dataDictionaryCustomMapper.getAgentLevelOption();
    }
    @Override
    public IPage<AdminAgentMemberVo> agentChild(QueryRequest request, MallMember mallMember) {
        Long memberId = mallMember.getId();
        mallMember = mallMemberMapper.selectById(memberId);
        Page<AdminAgentMemberVo> page = new Page<>(request.getPageNum(), request.getPageSize());
        IPage<AdminAgentMemberVo> adminAgentMemberVos = this.baseMapper.getAgentChildInPage(page, mallMember);
        List<AdminAgentMemberVo> records = adminAgentMemberVos.getRecords();
        if(CollUtil.isNotEmpty(records)){
            for(AdminAgentMemberVo agentMemberVo : records){
                String inviteId = agentMemberVo.getInviteId();
                BigDecimal amount = mallMemberMapper.getAgentTeamAmountByInviteId(inviteId);
                agentMemberVo.setAmount(amount);
            }
        }
        return adminAgentMemberVos;
    }
    @Override
    public IPage<AdminRankAwardVo> getRankAwardList(RankAwardDto rankAwardDto, QueryRequest request) {
        Page<AdminRankAwardVo> page = new Page<>(request.getPageNum(), request.getPageSize());
        IPage<AdminRankAwardVo> adminRankAwardVos = this.baseMapper.getRankAwardListInPage(page, rankAwardDto);
        return adminRankAwardVos;
    }
    @Override
    public AdminRankAwardUpdateInfoVo getRankAwardUpdateInfoById(long id) {
        AdminRankAwardUpdateInfoVo adminRankAwardUpdateInfoVo = dataDictionaryCustomMapper.getRankAwardUpdateInfoById(id);
        return adminRankAwardUpdateInfoVo;
    }
    @Override
    public FebsResponse rankAwardUpdate(RankAwardUpdateDto rankAwardUpdateDto) {
        DataDictionaryCustom dataDictionaryCustom = dataDictionaryCustomMapper.selectById(rankAwardUpdateDto.getId());
        dataDictionaryCustom.setValue(rankAwardUpdateDto.getValue());
        dataDictionaryCustom.setDescription(rankAwardUpdateDto.getDescription());
        dataDictionaryCustomMapper.updateById(dataDictionaryCustom);
        return new FebsResponse().success();
    }
    @Override
    public IPage<AppVersion> getAppVersionList(AppVersion appVersion, QueryRequest request) {
        Page<AppVersion> page = new Page<>(request.getPageNum(), request.getPageSize());
        IPage<AppVersion> appVersions = this.baseMapper.getAppVersionListInPage(page, appVersion);
        return appVersions;
    }
    @Override
    public FebsResponse delCategary(Long id) {
        AppVersion appVersion = appVersionMapper.selectById(id);
        if(ObjectUtil.isEmpty(appVersion)){
            return new FebsResponse().fail().message("系统繁忙,请刷新页面重试");
        }
        appVersionMapper.deleteById(id);
        return new FebsResponse().success();
    }
    @Override
    public FebsResponse addAppVersion(AppVersion appVersion) {
        appVersion.setCreatetime(new Date());
        appVersionMapper.insert(appVersion);
        return new FebsResponse().success();
    }
    @Override
    public AppVersion getAppVersionInfoById(long id) {
        return appVersionMapper.selectById(id);
    }
    @Override
    public FebsResponse updateAppVersion(AppVersion appVersion) {
        AppVersion appVersionBefore = appVersionMapper.selectById(appVersion.getId());
        if(ObjectUtil.isEmpty(appVersionBefore)){
            return new FebsResponse().fail().message("系统繁忙,请刷新页面重试");
        }
        appVersion.setCreatetime(new Date());
        appVersionMapper.updateById(appVersion);
        return new FebsResponse().success();
    }
}