From 2ed6444f45d227e2acc6de65c3e8b582440fb83a Mon Sep 17 00:00:00 2001 From: luofl <1442745593@qq.com> Date: 星期四, 06 三月 2025 09:20:40 +0800 Subject: [PATCH] 迭代版本:2.28 --- ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/ShopPointServiceImpl.java | 62 ++++++++++++++++++++----------- 1 files changed, 40 insertions(+), 22 deletions(-) diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/ShopPointServiceImpl.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/ShopPointServiceImpl.java index 85e2d86..31f1e1d 100644 --- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/ShopPointServiceImpl.java +++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/ShopPointServiceImpl.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.security.service.TokenService; import com.ruoyi.other.api.domain.Shop; import com.ruoyi.other.api.domain.ShopPoint; @@ -14,6 +15,7 @@ import com.ruoyi.other.vo.ShopPointStatistics; import com.ruoyi.system.api.domain.SysUser; import com.ruoyi.system.api.feignClient.SysUserClient; +import io.swagger.models.auth.In; import org.springframework.stereotype.Service; import javax.annotation.Resource; @@ -50,23 +52,39 @@ public ShopPointStatistics statistics(IPage<ShopPoint> page, ShopPoint shopPoint) { Long userid = tokenService.getLoginUser().getUserid(); SysUser sysUser = sysUserClient.getSysUser(userid).getData(); - Integer sPoint = 0; - Integer shopCommissionPoint = 0; - Integer subShopCommissionPoint = 0; if (sysUser.getRoleType()==1){ - List<Shop> shopIds = shopService.lambdaQuery().eq(Shop::getDelFlag, 0).list(); - for (Shop shop : shopIds) { - sPoint += shop.getServerPoint(); - shopCommissionPoint += shop.getSharePoint(); - subShopCommissionPoint += shop.getLowerLevelSharePoint(); - } + ShopPointStatistics shopPointStatistics = new ShopPointStatistics(); - shopPointStatistics.setTotalPoint(sPoint + shopCommissionPoint + subShopCommissionPoint); - shopPointStatistics.setShopPoint(sPoint); - shopPointStatistics.setShopCommissionPoint(shopCommissionPoint); - shopPointStatistics.setSubShopCommissionPoint(subShopCommissionPoint); IPage<ShopPoint> shopPointIPage = this.baseMapper.queryShpointPage(page, shopPoint); shopPointStatistics.setShopPointIPage(shopPointIPage); + + + List<ShopPoint> shopPointList = list(); + Map<Integer, List<ShopPoint>> shopPointByTypeMap = shopPointList.stream().collect(Collectors.groupingBy(ShopPoint::getType)); + shopPointByTypeMap.forEach((type, shopPoints) -> { + shopPoints.stream().map(ShopPoint::getVariablePoint).reduce(Integer::sum).ifPresent(sum -> { + switch (type) { + case 1: + shopPointStatistics.setShopPoint(sum); + break; + case 2: + shopPointStatistics.setShopCommissionPoint(sum); + break; + case 3: + shopPointStatistics.setSubShopCommissionPoint(sum); + break; + default: + break; + } + }); + }); + + Integer point = shopPointStatistics.getShopPoint() == null ? 0 : shopPointStatistics.getShopPoint(); + Integer shopCommissionPoint = shopPointStatistics.getShopCommissionPoint() == null ? 0 : shopPointStatistics.getShopCommissionPoint(); + Integer setSubShopCommissionPoint = shopPointStatistics.getSubShopCommissionPoint() == null ? 0 : shopPointStatistics.getSubShopCommissionPoint(); + Integer totalPoint = point + shopCommissionPoint + setSubShopCommissionPoint; + shopPointStatistics.setTotalPoint(totalPoint); + LocalDateTime startTime = shopPoint.getStartTime(); LocalDateTime endTime = shopPoint.getEndTime(); @@ -91,7 +109,7 @@ //服务积分 List<ShopPoint> collect1 = list.stream().filter(s -> s.getCreateTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) - .equals(finalStartTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))) && s.getType() == 4).collect(Collectors.toList()); + .equals(finalStartTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))) && s.getType() == 1).collect(Collectors.toList()); map.put("fwjf", collect1.stream().mapToInt(ShopPoint::getVariablePoint).sum()); //绑定下级门店返佣积分 List<ShopPoint> collect2 = list.stream().filter(s -> s.getCreateTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) @@ -108,14 +126,14 @@ return shopPointStatistics; }else{ Shop shop = shopService.getById(sysUser.getObjectId()); - sPoint += shop.getServerPoint(); - shopCommissionPoint += shop.getSharePoint(); - subShopCommissionPoint += shop.getLowerLevelSharePoint(); + Integer serverPoint = shop.getServerPoint(); + Integer sharePoint = shop.getSharePoint(); + Integer lowerLevelSharePoint = shop.getLowerLevelSharePoint(); ShopPointStatistics shopPointStatistics = new ShopPointStatistics(); - shopPointStatistics.setTotalPoint(sPoint + shopCommissionPoint + subShopCommissionPoint); - shopPointStatistics.setShopPoint(sPoint); - shopPointStatistics.setShopCommissionPoint(shopCommissionPoint); - shopPointStatistics.setSubShopCommissionPoint(subShopCommissionPoint); + shopPointStatistics.setTotalPoint(serverPoint + sharePoint + lowerLevelSharePoint); + shopPointStatistics.setShopPoint(serverPoint); + shopPointStatistics.setShopCommissionPoint(sharePoint); + shopPointStatistics.setSubShopCommissionPoint(lowerLevelSharePoint); IPage<ShopPoint> shopPointIPage = this.baseMapper.queryShpointPage(page, shopPoint); shopPointStatistics.setShopPointIPage(shopPointIPage); @@ -143,7 +161,7 @@ //服务积分 List<ShopPoint> collect1 = list.stream().filter(s -> s.getCreateTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) - .equals(finalStartTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))) && s.getType() == 4).collect(Collectors.toList()); + .equals(finalStartTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))) && s.getType() == 1).collect(Collectors.toList()); map.put("fwjf", collect1.stream().mapToInt(ShopPoint::getVariablePoint).sum()); //绑定下级门店返佣积分 List<ShopPoint> collect2 = list.stream().filter(s -> s.getCreateTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) -- Gitblit v1.7.1