From 5282681f84634f83639f240bf5d5ee2a9eb649c0 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Tue, 13 Sep 2022 15:48:31 +0800
Subject: [PATCH] 20220902
---
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallTeamLeaderServiceImpl.java | 121 +++++++++++++++++++++++++++++++++++++--
1 files changed, 113 insertions(+), 8 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallTeamLeaderServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallTeamLeaderServiceImpl.java
index 31e930d..954aabd 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallTeamLeaderServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallTeamLeaderServiceImpl.java
@@ -2,25 +2,34 @@
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.common.entity.QueryRequest;
+import cc.mrbird.febs.common.enumerates.FlowTypeEnum;
+import cc.mrbird.febs.common.enumerates.MoneyFlowTypeEnum;
import cc.mrbird.febs.mall.conversion.MallTeamLeaderConversion;
+import cc.mrbird.febs.mall.dto.AdminLeaderAddDto;
import cc.mrbird.febs.mall.dto.AdminLeaderUpdateDto;
+import cc.mrbird.febs.mall.dto.ApiApplayLeaderDto;
import cc.mrbird.febs.mall.entity.MallGoodsCategory;
+import cc.mrbird.febs.mall.entity.MallLeaderStock;
+import cc.mrbird.febs.mall.entity.MallMember;
import cc.mrbird.febs.mall.entity.MallTeamLeader;
-import cc.mrbird.febs.mall.mapper.MallTeamLeaderMapper;
+import cc.mrbird.febs.mall.mapper.*;
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.apache.poi.ss.formula.functions.T;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
@@ -29,10 +38,28 @@
@RequiredArgsConstructor
@Transactional
public class AdminMallTeamLeaderServiceImpl extends ServiceImpl<MallTeamLeaderMapper, MallTeamLeader> implements IAdminMallTeamLeaderService {
+
+ private final MallLeaderStockMapper mallLeaderStockMapper;
+ private final MallGoodsMapper mallGoodsMapper;
+ private final MallMemberMapper mallMemberMapper;
+ private final MallMoneyFlowMapper mallMoneyFlowMapper;
+
@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);
+
+ List<AdminMallTeamLeaderVo> records = adminMallActSetVos.getRecords();
+ if(CollUtil.isNotEmpty(adminMallActSetVos.getRecords())){
+ for(AdminMallTeamLeaderVo adminMallTeamLeaderVo : records){
+ BigDecimal totalProfit = mallMoneyFlowMapper.selectAmountByFlowtypeAndType(adminMallTeamLeaderVo.getMemberId(),
+ FlowTypeEnum.BALANCE.getValue(), MoneyFlowTypeEnum.LEADERACHIEVE.getValue(),
+ null,null,null).setScale(2,BigDecimal.ROUND_DOWN);
+ adminMallTeamLeaderVo.setTotalProfit(totalProfit);
+ }
+ }
+
+
return adminMallActSetVos;
}
@@ -44,20 +71,30 @@
}
@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("只有【待审核】状态才能提交!");
+ public FebsResponse leaderUpdate(MallTeamLeader mallTeamLeader) {
+ Long id = mallTeamLeader.getId();
+ MallTeamLeader mallTeamLeaders = this.baseMapper.selectById(id);
+ if(ObjectUtil.isEmpty(mallTeamLeaders)){
+ return new FebsResponse().fail().message("团长信息不存在,刷新重试");
}
- int isOk = adminLeaderUpdateDto.getIsOk();
+// Integer state = mallTeamLeader.getState();
+// if(MallTeamLeader.STATE_ING != state){
+// return new FebsResponse().fail().message("只有【待审核】状态才能提交!");
+// }
+
+ Double bonusPercent = Double.parseDouble(mallTeamLeader.getBonusPercent());
+ if(1 <= bonusPercent || 0 > bonusPercent){
+ return new FebsResponse().fail().message("请输入合适的百分比小数");
+ }
+ int isOk = mallTeamLeader.getIsOk();
if(MallTeamLeader.STATE_YES == isOk){
mallTeamLeader.setState(MallTeamLeader.STATE_YES);
+ mallTeamLeader.setProfitSwitch(2);
this.baseMapper.updateById(mallTeamLeader);
}
if(MallTeamLeader.STATE_NO == isOk){
mallTeamLeader.setState(MallTeamLeader.STATE_NO);
+ mallTeamLeader.setProfitSwitch(2);
this.baseMapper.updateById(mallTeamLeader);
}
return new FebsResponse().success().message("审核成功");
@@ -93,4 +130,72 @@
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;
+ }
+
+ @Override
+ public FebsResponse addLeader(AdminLeaderAddDto adminLeaderAddDto) {
+
+ Long memberId = adminLeaderAddDto.getMemberId();
+ MallMember mallMember = mallMemberMapper.selectById(memberId);
+ if(ObjectUtil.isEmpty(mallMember)){
+ return new FebsResponse().fail().message("刷新页面重试");
+ }
+ List<MallTeamLeader> mallTeamLeaders = this.baseMapper.selectListByMemberIdAndState(memberId, MallTeamLeader.STATE_ING);
+ if(CollUtil.isNotEmpty(mallTeamLeaders)){
+ return new FebsResponse().fail().message("正在申请中");
+ }
+ List<MallTeamLeader> mallTeamLeaderCancel = this.baseMapper.selectListByMemberIdAndState(memberId, MallTeamLeader.STATE_CANCEL);
+ if(CollUtil.isNotEmpty(mallTeamLeaderCancel)){
+ return new FebsResponse().fail().message("当前用户无法申请");
+ }
+ Double bonusPercent = Double.parseDouble(adminLeaderAddDto.getBonusPercent());
+ if(1 <= bonusPercent || 0 > bonusPercent){
+ return new FebsResponse().fail().message("请输入合适的百分比小数");
+ }
+ MallTeamLeader mallTeamLeader = MallTeamLeaderConversion.INSTANCE.adminDtoToEntity(adminLeaderAddDto);
+ mallTeamLeader.setUniqueCode(mallMember.getInviteId());
+ mallTeamLeader.setMemberId(memberId);
+ mallTeamLeader.setPhone(mallMember.getPhone());
+ mallTeamLeader.setName(mallMember.getName());
+ mallTeamLeader.setState(MallTeamLeader.STATE_YES);
+ this.baseMapper.insert(mallTeamLeader);
+ return new FebsResponse().success();
+ }
+
+ @Override
+ public FebsResponse startProfit(Long id) {
+ MallTeamLeader mallTeamLeader = this.baseMapper.selectById(id);
+ if(ObjectUtil.isEmpty(mallTeamLeader)){
+ return new FebsResponse().fail().message("团长信息不存在,刷新重试");
+ }
+ Integer state = mallTeamLeader.getState();
+ if(1!=state){
+ return new FebsResponse().fail().message("目前还不是团长,无法操作");
+ }
+ mallTeamLeader.setProfitSwitch(1);
+ this.baseMapper.updateById(mallTeamLeader);
+ return new FebsResponse().success();
+ }
+
+ @Override
+ public FebsResponse closeProfit(Long id) {
+ MallTeamLeader mallTeamLeader = this.baseMapper.selectById(id);
+ if(ObjectUtil.isEmpty(mallTeamLeader)){
+ return new FebsResponse().fail().message("团长信息不存在,刷新重试");
+ }
+ Integer state = mallTeamLeader.getState();
+ if(1!=state){
+ return new FebsResponse().fail().message("目前还不是团长,无法操作");
+ }
+ mallTeamLeader.setProfitSwitch(2);
+ this.baseMapper.updateById(mallTeamLeader);
+ return new FebsResponse().success();
+ }
}
--
Gitblit v1.9.1