From 1f7383c5e295f11a66fdfa9b75e596f72b35b4a8 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Thu, 15 Sep 2022 16:38:51 +0800
Subject: [PATCH] 20220902
---
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java | 78 ++++++++++++++++++++++++++++++++++----
1 files changed, 69 insertions(+), 9 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java
index 7a01f3a..52a049b 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java
@@ -6,6 +6,7 @@
import cc.mrbird.febs.common.utils.LoginUserUtil;
import cc.mrbird.febs.common.utils.ShareCodeUtil;
import cc.mrbird.febs.common.utils.SpringContextHolder;
+import cc.mrbird.febs.mall.conversion.MallLeaderAchieveConversion;
import cc.mrbird.febs.mall.conversion.MallOrderInfoConversion;
import cc.mrbird.febs.mall.conversion.MallTeamLeaderConversion;
import cc.mrbird.febs.mall.dto.*;
@@ -61,6 +62,8 @@
private final IApiMallMemberWalletService memberWalletService;
private final MallLeaderAchieveMapper mallLeaderAchieveMapper;
private final MallMoneyFlowMapper mallMoneyFlowMapper;
+ private final MallGoodsMapper mallGoodsMapper;
+ private final MallGoodsSkuMapper mallGoodsSkuMapper;
@Override
@Transactional
@@ -79,6 +82,9 @@
mallTeamLeader.setMemberId(memberId);
mallTeamLeader.setState(MallTeamLeader.STATE_ING);
mallTeamLeader.setUniqueCode(member.getInviteId());
+ //申请团长默认关闭返利,返利比例为0
+ mallTeamLeader.setProfitSwitch(2);
+ mallTeamLeader.setBonusPercent("0");
this.baseMapper.insert(mallTeamLeader);
return new FebsResponse().success().message("申请成功");
}
@@ -165,11 +171,12 @@
orderStateDto.setOrderNo(mallOrderInfo.getOrderNo());
String productNames = getProductNames(mallOrderInfo.getMemberId(), mallOrderInfo.getId());
orderStateDto.setGoodsName(StrUtil.sub(productNames,0,10)+"...");
- orderStateDto.setOrderState("已送达");
+ orderStateDto.setOrderState("待自提");
orderStateDto.setTakeCode(mallOrderInfo.getTakeCode());
String takeUniqueCode = mallOrderInfo.getTakeUniqueCode();
MallTeamLeader mallTeamLeader = mallTeamLeaderMapper.selectLeaderByUniqueCode(takeUniqueCode);
orderStateDto.setAddressArea(StrUtil.sub(mallTeamLeader.getAddressArea(),0,10)+"...");
+ orderStateDto.setDetailAddress(StrUtil.sub(mallTeamLeader.getDetailAddress(),0,10)+"...");
orderStateDto.setOpenId(mallMemberMapper.selectById(mallOrderInfo.getMemberId()).getOpenId());
DataDictionaryCustom dataDictionaryCustom = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.WX_TEMPLATE_ID_ONE.getType(), DataDictionaryEnum.WX_TEMPLATE_ID_ONE.getCode());
orderStateDto.setTemplateId(dataDictionaryCustom.getValue());
@@ -258,7 +265,9 @@
MallMember loginUser = LoginUserUtil.getLoginUser();
Long memberId = loginUser.getId();
MallMember mallMember = mallMemberMapper.selectById(memberId);
-
+ if(ObjectUtil.isEmpty(mallMember)){
+ return new FebsResponse().success();
+ }
log.info(mallMember.getInviteId());
MallTeamLeader mallTeamLeader = this.baseMapper.selectLeaderByUniqueCode(mallMember.getInviteId());
if(ObjectUtil.isEmpty(mallTeamLeader)){
@@ -321,6 +330,16 @@
//更新订单详情
mallOrderItem.setState(3);
mallOrderItemMapper.updateById(mallOrderItem);
+ //更新库存信息
+ MallGoods mallGoods = mallGoodsMapper.selectById(mallOrderItem.getGoodsId());
+ mallGoods.setStock(mallGoods.getStock() + mallOrderItem.getCnt());
+ mallGoods.setVolume(mallGoods.getVolume() - mallOrderItem.getCnt());
+ mallGoodsMapper.updateById(mallGoods);
+
+ MallGoodsSku mallGoodsSku = mallGoodsSkuMapper.selectById(mallOrderItem.getSkuId());
+ mallGoodsSku.setStock(mallGoodsSku.getStock() + mallOrderItem.getCnt());
+ mallGoodsSku.setSkuVolume(mallGoodsSku.getSkuVolume() - mallOrderItem.getCnt());
+ mallGoodsSkuMapper.updateById(mallGoodsSku);
//更新退款订单
mallRefundEntity.setState(1);
mallRefundEntity.setUpdatedTime(DateUtil.date());
@@ -352,6 +371,17 @@
//更新订单详情
mallOrderItem.setState(3);
mallOrderItemMapper.updateById(mallOrderItem);
+ //更新库存信息
+ MallGoods mallGoods = mallGoodsMapper.selectById(mallOrderItem.getGoodsId());
+ mallGoods.setStock(mallGoods.getStock() + mallOrderItem.getCnt());
+ mallGoods.setVolume(mallGoods.getVolume() - mallOrderItem.getCnt());
+ mallGoodsMapper.updateById(mallGoods);
+
+ MallGoodsSku mallGoodsSku = mallGoodsSkuMapper.selectById(mallOrderItem.getSkuId());
+ mallGoodsSku.setStock(mallGoodsSku.getStock() + mallOrderItem.getCnt());
+ mallGoodsSku.setSkuVolume(mallGoodsSku.getSkuVolume() - mallOrderItem.getCnt());
+ mallGoodsSkuMapper.updateById(mallGoodsSku);
+
//更新退款订单
mallRefundEntity.setState(1);
mallRefundEntity.setUpdatedTime(DateUtil.date());
@@ -365,6 +395,11 @@
mallOrderInfoMapper.updateById(mallOrderRefund);
}
}else{
+
+ //更新订单详情
+ mallOrderItem.setState(1);
+ mallOrderItemMapper.updateById(mallOrderItem);
+
mallRefundEntity.setState(2);
mallRefundMapper.updateById(mallRefundEntity);
return new FebsResponse().fail().message("退款失败,请联系客服人员");
@@ -389,15 +424,40 @@
public FebsResponse leaderProfit() {
MallMember loginUser = LoginUserUtil.getLoginUser();
ApiLeaderProfitVo apiLeaderProfitVo = new ApiLeaderProfitVo();
-// BigDecimal TotalProfit = mallLeaderAchieveMapper.selectProfitByStateAndDateTimeAndUniqueCode(null,null,loginUser.getInviteId()).setScale(2,BigDecimal.ROUND_DOWN);
-// apiLeaderProfitVo.setTotalProfit(TotalProfit);
- BigDecimal todayProfit = mallLeaderAchieveMapper.selectProfitByStateAndDateTimeAndUniqueCode(2,DateUtil.date(),loginUser.getInviteId()).setScale(2,BigDecimal.ROUND_DOWN);
- apiLeaderProfitVo.setTodayProfit(todayProfit);
- BigDecimal waitProfit = mallLeaderAchieveMapper.selectProfitByStateAndDateTimeAndUniqueCode(1,null,loginUser.getInviteId()).setScale(2,BigDecimal.ROUND_DOWN);
- apiLeaderProfitVo.setWaitProfit(waitProfit);
- BigDecimal totalProfit = mallMoneyFlowMapper.selectAmountByFlowtypeAndType(loginUser.getId(),FlowTypeEnum.BALANCE.getValue(),MoneyFlowTypeEnum.LEADERACHIEVE.getValue(),null);
+
+ BigDecimal totalProfit = mallMoneyFlowMapper.selectAmountByFlowtypeAndType(loginUser.getId(),FlowTypeEnum.BALANCE.getValue(),MoneyFlowTypeEnum.LEADERACHIEVE.getValue(),null,null,null);
apiLeaderProfitVo.setTotalProfit(totalProfit);
+ BigDecimal todayProfit = mallMoneyFlowMapper.selectAmountByFlowtypeAndType(loginUser.getId(),FlowTypeEnum.BALANCE.getValue(),
+ MoneyFlowTypeEnum.LEADERACHIEVE.getValue(),
+ null,DateUtil.date(),
+ null);
+ apiLeaderProfitVo.setTodayProfit(todayProfit);
+
+ BigDecimal monthProfit = mallMoneyFlowMapper.selectAmountByFlowtypeAndType(loginUser.getId(),FlowTypeEnum.BALANCE.getValue(),
+ MoneyFlowTypeEnum.LEADERACHIEVE.getValue(),
+ null,null,
+ DateUtil.date());
+ apiLeaderProfitVo.setMonthProfit(monthProfit);
+ String inviteId = loginUser.getInviteId();
+ MallTeamLeader mallTeamLeader = mallTeamLeaderMapper.selectLeaderByUniqueCode(inviteId);
+ Integer profitSwitch = mallTeamLeader.getProfitSwitch() == null ? 2:mallTeamLeader.getProfitSwitch();
+ if(2 == profitSwitch){
+ apiLeaderProfitVo.setWaitProfit(BigDecimal.ZERO);
+ }else{
+ BigDecimal waitProfit = mallLeaderAchieveMapper.selectProfitByStateAndDateTimeAndUniqueCode(1,null,loginUser.getInviteId()).setScale(2,BigDecimal.ROUND_DOWN);
+ apiLeaderProfitVo.setWaitProfit(waitProfit);
+ }
+
return new FebsResponse().success().data(apiLeaderProfitVo);
}
+ @Override
+ public List<ApiOrderProfitVo> findLeaderProfitListInPage(ApiOrderProfitDto apiOrderProfitDto) {
+ MallMember member = LoginUserUtil.getLoginUser();
+ IPage<MallLeaderAchieve> page = new Page<>(apiOrderProfitDto.getPageNum(), apiOrderProfitDto.getPageSize());
+ apiOrderProfitDto.setInvitedId(member.getInviteId());
+ IPage<MallLeaderAchieve> mallLeaderAchieves = mallLeaderAchieveMapper.selectApiLeaderProfitListInPage(page, apiOrderProfitDto);
+ return MallLeaderAchieveConversion.INSTANCE.entitysToVos(mallLeaderAchieves.getRecords());
+ }
+
}
--
Gitblit v1.9.1