diff --git a/src/main/java/com/zh/project0512/controller/ScheduleController.java b/src/main/java/com/zh/project0512/controller/ScheduleController.java index 60b56dc..9a1d5bd 100644 --- a/src/main/java/com/zh/project0512/controller/ScheduleController.java +++ b/src/main/java/com/zh/project0512/controller/ScheduleController.java @@ -65,9 +65,9 @@ public class ScheduleController { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.groupBy("u.id"); queryWrapper.orderByDesc("value"); - List rankList = qywxDepartmentUserLinkMapper.getUserRankList(queryWrapper); - if (rankList != null && rankList.size()>0){ - for (RankListVo rankListVo : rankList) { + List rankUserList = qywxDepartmentUserLinkMapper.getUserRankList(queryWrapper); + if (rankUserList != null && rankUserList.size()>0){ + for (RankListVo rankListVo : rankUserList) { //查询是否有上一月记录,如果有就减去上一月传播值,没有则直接添加 QueryWrapper queryWrapper2 = new QueryWrapper<>(); queryWrapper2.eq("linkId",rankListVo.getLinkId()); @@ -87,7 +87,29 @@ public class ScheduleController { } } //计算经销商排名进排名数据库 - - + QueryWrapper queryWrapper3 = new QueryWrapper<>(); + queryWrapper3.groupBy("qd.departmentId"); + queryWrapper3.orderByDesc("value"); + List rankDepartmentList = qywxDepartmentUserLinkMapper.getDepartmentRankList(queryWrapper3); + if (rankDepartmentList != null && rankDepartmentList.size()>0){ + for (RankListVo rankListVo : rankDepartmentList) { + //查询是否有上一月记录,如果有就减去上一月传播值,没有则直接添加 + QueryWrapper queryWrapper2 = new QueryWrapper<>(); + queryWrapper2.eq("linkId",rankListVo.getLinkId()); + queryWrapper2.eq("type",1);//1.经销商 + queryWrapper2.orderByDesc("dateStart"); + queryWrapper2.last("limit 1"); + Rank rank = rankMapper.selectOne(queryWrapper2); + if (rank != null){ + rankListVo.setValue(rankListVo.getValue() - rank.getValue()); + } + Rank rank2 = new Rank(); + PropertyUtils.copyProperties(rankListVo,rank2); + rank2.setDateStart(timeStart); + rank2.setDateEnd(timeEnd); + rank2.setCreateDate(new Date()); + rankMapper.insert(rank2); + } + } } } diff --git a/src/main/java/com/zh/project0512/mapper/QywxDepartmentUserLinkMapper.java b/src/main/java/com/zh/project0512/mapper/QywxDepartmentUserLinkMapper.java index 99a7005..216163c 100644 --- a/src/main/java/com/zh/project0512/mapper/QywxDepartmentUserLinkMapper.java +++ b/src/main/java/com/zh/project0512/mapper/QywxDepartmentUserLinkMapper.java @@ -1,6 +1,7 @@ package com.zh.project0512.mapper; import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.zh.project0512.model.QywxDepartmentUserLink; import com.zh.project0512.model.dto.RankListDTO; @@ -11,5 +12,7 @@ import java.util.List; public interface QywxDepartmentUserLinkMapper extends BaseMapper { - List getUserRankList( @Param("ew") Wrapper queryWrapper); + List getUserRankList(@Param("ew") Wrapper queryWrapper); + + List getDepartmentRankList(@Param("ew") QueryWrapper queryWrapper2); } diff --git a/src/main/resources/mapper/QywxDepartmentUserLinkMapper.xml b/src/main/resources/mapper/QywxDepartmentUserLinkMapper.xml index 40b3749..7b12a98 100644 --- a/src/main/resources/mapper/QywxDepartmentUserLinkMapper.xml +++ b/src/main/resources/mapper/QywxDepartmentUserLinkMapper.xml @@ -8,4 +8,11 @@ LEFT JOIN video as v ON u.id = v.userId ${ew.SqlSegment} +