|
@@ -692,10 +692,10 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
|
|
|
|
|
|
|
|
List<SysUserAccountHistory> sysUserAccountHistories = sysUserAccountHistoryMapper.selectList(new LambdaQueryWrapper<SysUserAccountHistory>()
|
|
List<SysUserAccountHistory> sysUserAccountHistories = sysUserAccountHistoryMapper.selectList(new LambdaQueryWrapper<SysUserAccountHistory>()
|
|
|
.in(SysUserAccountHistory::getUserId, userIdList).eq(SysUserAccountHistory::getProperty, 3));
|
|
.in(SysUserAccountHistory::getUserId, userIdList).eq(SysUserAccountHistory::getProperty, 3));
|
|
|
- if ( CollectionUtil.isNotEmpty(sysUserAccountHistories)) {
|
|
|
|
|
|
|
+ if (CollectionUtil.isNotEmpty(sysUserAccountHistories)) {
|
|
|
BigDecimal extractFee = sysUserAccountHistories.stream().map(SysUserAccountHistory::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
BigDecimal extractFee = sysUserAccountHistories.stream().map(SysUserAccountHistory::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
appPartnerInfo.setExtractFee(extractFee);
|
|
appPartnerInfo.setExtractFee(extractFee);
|
|
|
- }else {
|
|
|
|
|
|
|
+ } else {
|
|
|
appPartnerInfo.setExtractFee(BigDecimal.ZERO);
|
|
appPartnerInfo.setExtractFee(BigDecimal.ZERO);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -723,7 +723,7 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
|
|
|
if (CollectionUtil.isNotEmpty(sysUserAccountHistories)) {
|
|
if (CollectionUtil.isNotEmpty(sysUserAccountHistories)) {
|
|
|
BigDecimal extractFee = sysUserAccountHistories.stream().map(SysUserAccountHistory::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
BigDecimal extractFee = sysUserAccountHistories.stream().map(SysUserAccountHistory::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
appPartnerInfoFreeVo.setExtractFee(extractFee);
|
|
appPartnerInfoFreeVo.setExtractFee(extractFee);
|
|
|
- }else {
|
|
|
|
|
|
|
+ } else {
|
|
|
appPartnerInfoFreeVo.setExtractFee(BigDecimal.ZERO);
|
|
appPartnerInfoFreeVo.setExtractFee(BigDecimal.ZERO);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -957,11 +957,11 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
|
|
|
int type = sysPartner.getType();
|
|
int type = sysPartner.getType();
|
|
|
if (type == 1) {
|
|
if (type == 1) {
|
|
|
start = start + 2;
|
|
start = start + 2;
|
|
|
- }else if (type == 2) {
|
|
|
|
|
|
|
+ } else if (type == 2) {
|
|
|
start = start + 3;
|
|
start = start + 3;
|
|
|
- }else if (type == 3) {
|
|
|
|
|
|
|
+ } else if (type == 3) {
|
|
|
start = start + 4;
|
|
start = start + 4;
|
|
|
- }else if (type == 4) {
|
|
|
|
|
|
|
+ } else if (type == 4) {
|
|
|
start = start + 5;
|
|
start = start + 5;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -1077,7 +1077,7 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
|
|
|
extracted(partnerInfoDto, appSysPartnerVo, BigDecimal.ZERO, BigDecimal.ZERO, 0, list);
|
|
extracted(partnerInfoDto, appSysPartnerVo, BigDecimal.ZERO, BigDecimal.ZERO, 0, list);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
- }else if (type == 2) {
|
|
|
|
|
|
|
+ } else if (type == 2) {
|
|
|
if (i == 3) {
|
|
if (i == 3) {
|
|
|
//一级获取登陆人的之际工作室
|
|
//一级获取登陆人的之际工作室
|
|
|
list.add(userId);
|
|
list.add(userId);
|
|
@@ -1092,7 +1092,7 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
|
|
|
extracted(partnerInfoDto, appSysPartnerVo, BigDecimal.ZERO, BigDecimal.ZERO, 0, list);
|
|
extracted(partnerInfoDto, appSysPartnerVo, BigDecimal.ZERO, BigDecimal.ZERO, 0, list);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
- }else if (type == 3) {
|
|
|
|
|
|
|
+ } else if (type == 3) {
|
|
|
if (i == 4) {
|
|
if (i == 4) {
|
|
|
//一级获取登陆人的之际工作室
|
|
//一级获取登陆人的之际工作室
|
|
|
list.add(userId);
|
|
list.add(userId);
|
|
@@ -1107,7 +1107,7 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
|
|
|
extracted(partnerInfoDto, appSysPartnerVo, BigDecimal.ZERO, BigDecimal.ZERO, 0, list);
|
|
extracted(partnerInfoDto, appSysPartnerVo, BigDecimal.ZERO, BigDecimal.ZERO, 0, list);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
- }else if (type == 4) {
|
|
|
|
|
|
|
+ } else if (type == 4) {
|
|
|
if (i == 5) {
|
|
if (i == 5) {
|
|
|
//一级获取登陆人的之际工作室
|
|
//一级获取登陆人的之际工作室
|
|
|
list.add(userId);
|
|
list.add(userId);
|
|
@@ -1426,7 +1426,7 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
|
|
|
if (CollectionUtil.isNotEmpty(sysUserAccountHistories)) {
|
|
if (CollectionUtil.isNotEmpty(sysUserAccountHistories)) {
|
|
|
BigDecimal extractFee = sysUserAccountHistories.stream().map(SysUserAccountHistory::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
BigDecimal extractFee = sysUserAccountHistories.stream().map(SysUserAccountHistory::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
teamUserInfosFreeVo.setExtractFee(extractFee);
|
|
teamUserInfosFreeVo.setExtractFee(extractFee);
|
|
|
- }else {
|
|
|
|
|
|
|
+ } else {
|
|
|
teamUserInfosFreeVo.setExtractFee(BigDecimal.ZERO);
|
|
teamUserInfosFreeVo.setExtractFee(BigDecimal.ZERO);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -1458,7 +1458,7 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
|
|
|
if (CollectionUtil.isNotEmpty(sysUserAccountHistorie)) {
|
|
if (CollectionUtil.isNotEmpty(sysUserAccountHistorie)) {
|
|
|
BigDecimal extractFee1 = sysUserAccountHistorie.stream().map(SysUserAccountHistory::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
BigDecimal extractFee1 = sysUserAccountHistorie.stream().map(SysUserAccountHistory::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
teamUserInfosVo.setExtractFee(extractFee1);
|
|
teamUserInfosVo.setExtractFee(extractFee1);
|
|
|
- }else {
|
|
|
|
|
|
|
+ } else {
|
|
|
teamUserInfosVo.setExtractFee(BigDecimal.ZERO);
|
|
teamUserInfosVo.setExtractFee(BigDecimal.ZERO);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -1750,53 +1750,285 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
|
|
|
String startTime1 = countUserDto.getBeginTime();
|
|
String startTime1 = countUserDto.getBeginTime();
|
|
|
String endTime1 = countUserDto.getEndTime();
|
|
String endTime1 = countUserDto.getEndTime();
|
|
|
|
|
|
|
|
- List<SysUser> sysUsers = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
|
|
|
|
|
- .eq(SysUser::getReferrerId, userId)
|
|
|
|
|
- .eq(SysUser::getType, 3)
|
|
|
|
|
- .in(SysUser::getStatus, Arrays.asList(1, 4, 5, 6, 7))
|
|
|
|
|
- .between(StringUtils.isNotEmpty(countUserDto.getBeginTime()) && StringUtils.isNotEmpty(countUserDto.getEndTime())
|
|
|
|
|
- , SysUser::getCreateTime, countUserDto.getBeginTime(), countUserDto.getEndTime()));
|
|
|
|
|
- if (sysUsers == null) return countUserVo;
|
|
|
|
|
- countUserVo.setDeptSum(sysUsers.size());
|
|
|
|
|
-
|
|
|
|
|
- List<String> deptIds = sysUsers.stream().map(SysUser::getDeptId).collect(Collectors.toList());
|
|
|
|
|
- int deptManNum = 0;
|
|
|
|
|
- for (String deptId : deptIds) {
|
|
|
|
|
- List<SysUser> sysUserList = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
|
|
|
|
|
- .likeRight(SysUser::getId, deptId)
|
|
|
|
|
- .in(SysUser::getStatus, Arrays.asList(1, 4, 5, 6, 7)));
|
|
|
|
|
- deptManNum = deptManNum + sysUserList.size();
|
|
|
|
|
|
|
+ int deptSum=0;
|
|
|
|
|
+ int deptManSum=0;
|
|
|
|
|
+ List<String> deptIds =new ArrayList<>();
|
|
|
|
|
+ //查工作室下的团队
|
|
|
|
|
+ SysAgencyLeader sysAgencyLeader = sysAgencyLeaderMapper.selectOne(new LambdaQueryWrapper<SysAgencyLeader>()
|
|
|
|
|
+ .eq(SysAgencyLeader::getDelFlag, 1).in(SysAgencyLeader::getUserId, userId));
|
|
|
|
|
|
|
|
|
|
+ //根据机构id查下面团队
|
|
|
|
|
+ List<SysDept> sysDeptList = sysDeptMapper.selectList(new LambdaQueryWrapper<SysDept>()
|
|
|
|
|
+ .likeRight(SysDept::getId, sysAgencyLeader.getDeptId())
|
|
|
|
|
+ .isNull(SysDept::getComlevel).eq(SysDept::getDelFlag, 0)
|
|
|
|
|
+ .eq(SysDept::getManagementSource, sysAgencyLeader.getSource()));
|
|
|
|
|
+ deptSum = deptSum + sysDeptList.size();
|
|
|
|
|
+ if (sysDeptList.size() > 0) {
|
|
|
|
|
+ for (SysDept sysDept : sysDeptList) {
|
|
|
|
|
+ deptIds.add(sysDept.getId());
|
|
|
|
|
+ //团队下的人数
|
|
|
|
|
+ List<SysUser> sysUserList = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
|
|
|
|
|
+ .likeRight(SysUser::getId, sysDept.getId())
|
|
|
|
|
+ .in(SysUser::getStatus, Arrays.asList(1, 4, 5, 6, 7)));
|
|
|
|
|
+ deptManSum = deptManSum + sysUserList.size();
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ countUserVo.setDeptSum(deptSum);
|
|
|
|
|
+ countUserVo.setDeptManSum(deptManSum);
|
|
|
|
|
+
|
|
|
|
|
+ countUserVo.setCountSum(deptSum + deptManSum);
|
|
|
|
|
+
|
|
|
|
|
+ //曲线图
|
|
|
|
|
+ List<CountUserNumVo> countUserNumVoList = null;
|
|
|
|
|
+ int type = countUserDto.getType();
|
|
|
|
|
+
|
|
|
|
|
+ //类型:1:团队 2:代理人
|
|
|
|
|
+ if (type == 1) {
|
|
|
|
|
+ if (StringUtils.isNotEmpty(startTime1)) {
|
|
|
|
|
+ String s = startTime1.split(" ")[0];
|
|
|
|
|
+ String s1 = endTime1.split(" ")[0];
|
|
|
|
|
+ if (s.equals(s1)) {
|
|
|
|
|
+ //查一天的数据
|
|
|
|
|
+ countUserNumVoList = sysPartnerMapper.queryDeptByTimes(deptIds, countUserDto);
|
|
|
|
|
+ }else {
|
|
|
|
|
+ countUserNumVoList = sysPartnerMapper.queryDeptByTime(deptIds, countUserDto);
|
|
|
|
|
+ }
|
|
|
|
|
+ }else {
|
|
|
|
|
+ countUserNumVoList = sysPartnerMapper.queryDeptByTime(deptIds, countUserDto);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ } else {
|
|
|
|
|
+ if (StringUtils.isNotEmpty(startTime1)) {
|
|
|
|
|
+ String s = startTime1.split(" ")[0];
|
|
|
|
|
+ String s1 = endTime1.split(" ")[0];
|
|
|
|
|
+ if (s.equals(s1)) {
|
|
|
|
|
+ countUserNumVoList = sysPartnerMapper.queryUserByTimes(deptIds, countUserDto);
|
|
|
|
|
+ }else {
|
|
|
|
|
+ countUserNumVoList = sysPartnerMapper.queryUserByTime(deptIds, countUserDto);
|
|
|
|
|
+ }
|
|
|
|
|
+ }else {
|
|
|
|
|
+ countUserNumVoList = sysPartnerMapper.queryUserByTime(deptIds, countUserDto);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+ countUserVo.setCountUserNumVoList(countUserNumVoList);
|
|
|
}
|
|
}
|
|
|
- countUserVo.setDeptLeaderSum(deptManNum);
|
|
|
|
|
|
|
|
|
|
- countUserVo.setCountSum(countUserVo.getDeptSum() + deptManNum);
|
|
|
|
|
|
|
|
|
|
- //曲线图
|
|
|
|
|
- List<CountUserNumVo> countUserNumVoList = null;
|
|
|
|
|
- int type = countUserDto.getType();
|
|
|
|
|
- String s = startTime1.split(" ")[0];
|
|
|
|
|
- String s1 = endTime1.split(" ")[0];
|
|
|
|
|
|
|
+ return countUserVo;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public PartnerCountVo getPartnerCount(PartnerCountDto partnerCountDto) {
|
|
|
|
|
+ PartnerCountVo partnerCountVo = new PartnerCountVo();
|
|
|
|
|
+ String userId = BaseController.getUserId();
|
|
|
|
|
+ SysPartner sysPartner = sysPartnerMapper.selectOne(new LambdaQueryWrapper<SysPartner>()
|
|
|
|
|
+ .eq(SysPartner::getUserId, userId).eq(SysPartner::getDelFlag, 1));
|
|
|
|
|
+ int type = sysPartner.getType();
|
|
|
|
|
+ partnerCountDto.setType(type+partnerCountDto.getType());
|
|
|
|
|
+ //查询登陆人下所有合伙人
|
|
|
|
|
+ List<SysPartner> sysPartnerList = sysPartnerMapper.queryPartnerById(userId, partnerCountDto);
|
|
|
|
|
+ if (CollectionUtil.isEmpty(sysPartnerList)) return partnerCountVo;
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ //统计每一个等级的合伙人数
|
|
|
if (type == 1) {
|
|
if (type == 1) {
|
|
|
- if (StringUtils.isNotEmpty(s) && s.equals(s1)) {
|
|
|
|
|
|
|
+ //1
|
|
|
|
|
+ List<SysPartner> onePartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 1).collect(Collectors.toList());
|
|
|
|
|
+ partnerCountVo.setOnePartnerNum(onePartners.size());
|
|
|
|
|
+ //2
|
|
|
|
|
+ List<SysPartner> twoPartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 2).collect(Collectors.toList());
|
|
|
|
|
+ partnerCountVo.setTwoPartnerNum(twoPartners.size());
|
|
|
|
|
+ //3
|
|
|
|
|
+ List<SysPartner> threePartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 3).collect(Collectors.toList());
|
|
|
|
|
+ partnerCountVo.setThreePartnerNum(threePartners.size());
|
|
|
|
|
+ //4
|
|
|
|
|
+ List<SysPartner> fourPartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 4).collect(Collectors.toList());
|
|
|
|
|
+ partnerCountVo.setFourPartnerNum(fourPartners.size());
|
|
|
|
|
|
|
|
- countUserNumVoList = sysPartnerMapper.queryDeptByTimes(userId, countUserDto);
|
|
|
|
|
- } else {
|
|
|
|
|
- countUserNumVoList = sysPartnerMapper.queryDeptByTime(userId, countUserDto);
|
|
|
|
|
|
|
+ }else if (type == 2) {
|
|
|
|
|
+ //1
|
|
|
|
|
+ List<SysPartner> onePartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 1).collect(Collectors.toList());
|
|
|
|
|
+ partnerCountVo.setOnePartnerNum(onePartners.size());
|
|
|
|
|
+ //2
|
|
|
|
|
+ List<SysPartner> twoPartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 2).collect(Collectors.toList());
|
|
|
|
|
+ partnerCountVo.setTwoPartnerNum(twoPartners.size());
|
|
|
|
|
+ //3
|
|
|
|
|
+ List<SysPartner> threePartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 3).collect(Collectors.toList());
|
|
|
|
|
+ partnerCountVo.setThreePartnerNum(threePartners.size());
|
|
|
|
|
+
|
|
|
|
|
+ }else if (type == 3) {
|
|
|
|
|
+ //1
|
|
|
|
|
+ List<SysPartner> onePartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 1).collect(Collectors.toList());
|
|
|
|
|
+ partnerCountVo.setOnePartnerNum(onePartners.size());
|
|
|
|
|
+ //2
|
|
|
|
|
+ List<SysPartner> twoPartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 2).collect(Collectors.toList());
|
|
|
|
|
+ partnerCountVo.setTwoPartnerNum(twoPartners.size());
|
|
|
|
|
+
|
|
|
|
|
+ }else if (type == 4) {
|
|
|
|
|
+ //1
|
|
|
|
|
+ List<SysPartner> onePartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 1).collect(Collectors.toList());
|
|
|
|
|
+ partnerCountVo.setOnePartnerNum(onePartners.size());
|
|
|
|
|
+ }
|
|
|
|
|
+ //工作室
|
|
|
|
|
+ List<SysRelationPerson> sysRelationPersonList = sysRelationPersonMapper.selectList(new LambdaQueryWrapper<SysRelationPerson>()
|
|
|
|
|
+ .eq(SysRelationPerson::getSuggestId, userId)
|
|
|
|
|
+ .eq(SysRelationPerson::getDelFlag, 1)
|
|
|
|
|
+ .eq(SysRelationPerson::getType, 1));
|
|
|
|
|
+ partnerCountVo.setWorkSum(sysRelationPersonList.size());
|
|
|
|
|
+ if (CollectionUtil.isNotEmpty(sysRelationPersonList)) {
|
|
|
|
|
+ List<String> collect = sysRelationPersonList.stream().map(SysRelationPerson::getAgencyLeaderId).collect(Collectors.toList());
|
|
|
|
|
+ //查工作室下的团队
|
|
|
|
|
+ List<SysAgencyLeader> leaderList = sysAgencyLeaderMapper.selectList(new LambdaQueryWrapper<SysAgencyLeader>()
|
|
|
|
|
+ .eq(SysAgencyLeader::getDelFlag,1).in(SysAgencyLeader::getUserId,collect));
|
|
|
|
|
+ int deptSum=0;
|
|
|
|
|
+ int deptManSum=0;
|
|
|
|
|
+
|
|
|
|
|
+ for (SysAgencyLeader sysAgencyLeader : leaderList) {
|
|
|
|
|
+ //根据机构id查下面团队
|
|
|
|
|
+ List<SysDept> sysDeptList = sysDeptMapper.selectList(new LambdaQueryWrapper<SysDept>()
|
|
|
|
|
+ .likeRight(SysDept::getId, sysAgencyLeader.getDeptId())
|
|
|
|
|
+ .isNull(SysDept::getComlevel).eq(SysDept::getDelFlag, 0)
|
|
|
|
|
+ .eq(SysDept::getManagementSource, sysAgencyLeader.getSource()));
|
|
|
|
|
+ deptSum = deptSum + sysDeptList.size();
|
|
|
|
|
+ if (sysDeptList.size() > 0) {
|
|
|
|
|
+ for (SysDept sysDept : sysDeptList) {
|
|
|
|
|
+ //团队下的人数
|
|
|
|
|
+ List<SysUser> sysUserList = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
|
|
|
|
|
+ .likeRight(SysUser::getId, sysDept.getId())
|
|
|
|
|
+ .in(SysUser::getStatus, Arrays.asList(1, 4, 5, 6, 7)));
|
|
|
|
|
+ deptManSum = deptManSum + sysUserList.size();
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ partnerCountVo.setDeptSum(deptSum);
|
|
|
|
|
+ partnerCountVo.setDeptManSum(deptManSum);
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+ //曲线图
|
|
|
|
|
+ List<CountUserNumVo> countUserNumVoList;
|
|
|
|
|
+ String beginTime = partnerCountDto.getBeginTime();
|
|
|
|
|
+ String s = "";
|
|
|
|
|
+ String s1 = "";
|
|
|
|
|
+ if (StringUtils.isNotEmpty(beginTime)) {
|
|
|
|
|
+ s = partnerCountDto.getBeginTime().split(" ")[0];
|
|
|
|
|
+ s1 = partnerCountDto.getEndTime().split(" ")[0];
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ if (StringUtils.isNotEmpty(s)) {
|
|
|
|
|
+ if (s.equals(s1)) {
|
|
|
|
|
+ //查一天的数据
|
|
|
|
|
+ countUserNumVoList = sysPartnerMapper.queryPartnerByTimes(userId, partnerCountDto);
|
|
|
|
|
+ }else {
|
|
|
|
|
+ countUserNumVoList = sysPartnerMapper.queryPartnerByTime(userId, partnerCountDto);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
} else {
|
|
} else {
|
|
|
-// List<String> deptIds = sysUsers.stream().map(SysUser::getDeptId).collect(Collectors.toList());
|
|
|
|
|
- if (StringUtils.isNotEmpty(s) && s.equals(s1)) {
|
|
|
|
|
|
|
+ countUserNumVoList = sysPartnerMapper.queryPartnerByTime(userId, partnerCountDto);
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
- countUserNumVoList = sysPartnerMapper.queryUserByTimes(deptIds, countUserDto);
|
|
|
|
|
- } else {
|
|
|
|
|
- countUserNumVoList = sysPartnerMapper.queryUserByTime(deptIds, countUserDto);
|
|
|
|
|
|
|
+ partnerCountVo.setCountUserNumVoList(countUserNumVoList);
|
|
|
|
|
+
|
|
|
|
|
+ return partnerCountVo;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public PartnerProportionVo getPartnerProportion(PartnerCountDto partnerCountDto) {
|
|
|
|
|
+ PartnerProportionVo partnerProportionVo = new PartnerProportionVo();
|
|
|
|
|
+ String userId = BaseController.getUserId();
|
|
|
|
|
+ SysPartner sysPartner = sysPartnerMapper.selectOne(new LambdaQueryWrapper<SysPartner>()
|
|
|
|
|
+ .eq(SysPartner::getUserId, userId).eq(SysPartner::getDelFlag, 1));
|
|
|
|
|
+ int level = sysPartner.getType() + partnerCountDto.getType();
|
|
|
|
|
+ List<SysPartner> sysPartnerList = sysPartnerMapper.queryByLoginId(userId);
|
|
|
|
|
+
|
|
|
|
|
+ List<SysPartner> collectNum = sysPartnerList.stream().filter(SysPartner -> SysPartner.getCreateTime().after(new Date(partnerCountDto.getBeginTime()))
|
|
|
|
|
+ && SysPartner.getCreateTime().before(new Date(partnerCountDto.getEndTime())) && SysPartner.getType()==level)
|
|
|
|
|
+ .collect(Collectors.toList());
|
|
|
|
|
+
|
|
|
|
|
+ List<SysPartner> collectSum = sysPartnerList.stream().filter(SysPartner ->SysPartner.getType()==level)
|
|
|
|
|
+ .collect(Collectors.toList());
|
|
|
|
|
+
|
|
|
|
|
+ partnerProportionVo.setNewNum(collectNum.size());
|
|
|
|
|
+ partnerProportionVo.setNumber(collectSum.size());
|
|
|
|
|
+ if (CollectionUtil.isNotEmpty(collectSum)) {
|
|
|
|
|
+ int i = collectSum.size() - collectNum.size();
|
|
|
|
|
+ partnerProportionVo.setOldNum(i);
|
|
|
|
|
+ }
|
|
|
|
|
+ if (CollectionUtil.isNotEmpty(collectNum)) {
|
|
|
|
|
+ double v = (float)collectNum.size() / (float) collectSum.size() * 100;
|
|
|
|
|
+ partnerProportionVo.setNewProportion(v);
|
|
|
|
|
+ }
|
|
|
|
|
+ int oldNum = partnerProportionVo.getOldNum();
|
|
|
|
|
+ if (oldNum != 0) {
|
|
|
|
|
+ double v = (float)oldNum / (float) collectSum.size() * 100;
|
|
|
|
|
+ partnerProportionVo.setOldProportion(v);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ return partnerProportionVo;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public List<LevelPartnerVo> getLevelPartner(Integer type) {
|
|
|
|
|
+ List<LevelPartnerVo> partnerVoList = new ArrayList<>();
|
|
|
|
|
+ String userId = BaseController.getUserId();
|
|
|
|
|
+ SysPartner sysPartner = sysPartnerMapper.selectOne(new LambdaQueryWrapper<SysPartner>()
|
|
|
|
|
+ .eq(SysPartner::getUserId, userId).eq(SysPartner::getDelFlag, 1));
|
|
|
|
|
+ int level = sysPartner.getType() +type;
|
|
|
|
|
+
|
|
|
|
|
+ List<SysPartner> sysPartnerList = sysPartnerMapper.queryByLoginId(userId);
|
|
|
|
|
+
|
|
|
|
|
+ List<SysPartner> collect = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType()==level)
|
|
|
|
|
+ .collect(Collectors.toList());
|
|
|
|
|
+ if (CollectionUtil.isEmpty(collect)) return partnerVoList;
|
|
|
|
|
+
|
|
|
|
|
+ for (SysPartner partner : collect) {
|
|
|
|
|
+ LevelPartnerVo levelPartnerVo = new LevelPartnerVo();
|
|
|
|
|
+
|
|
|
|
|
+ levelPartnerVo.setId(partner.getId());
|
|
|
|
|
+ SysUser sysUser = sysUserMapper.selectById(partner.getUserId());
|
|
|
|
|
+ levelPartnerVo.setUserName(sysUser.getName());
|
|
|
|
|
+ //查合伙人下的工作室下团队的所有人
|
|
|
|
|
+ List<SysRelationPerson> sysRelationPersonList = sysRelationPersonMapper.selectList(new LambdaQueryWrapper<SysRelationPerson>()
|
|
|
|
|
+ .eq(SysRelationPerson::getSuggestId, partner.getUserId())
|
|
|
|
|
+ .eq(SysRelationPerson::getDelFlag, 1)
|
|
|
|
|
+ .eq(SysRelationPerson::getType, 1));
|
|
|
|
|
+ if (CollectionUtil.isNotEmpty(sysRelationPersonList)) {
|
|
|
|
|
+ List<String> collects = sysRelationPersonList.stream().map(SysRelationPerson::getAgencyLeaderId).collect(Collectors.toList());
|
|
|
|
|
+ //查工作室下的团队
|
|
|
|
|
+ List<SysAgencyLeader> leaderList = sysAgencyLeaderMapper.selectList(new LambdaQueryWrapper<SysAgencyLeader>()
|
|
|
|
|
+ .eq(SysAgencyLeader::getDelFlag,1).in(SysAgencyLeader::getUserId,collects));
|
|
|
|
|
+ int deptSum=0;
|
|
|
|
|
+ int deptManSum=0;
|
|
|
|
|
+ for (SysAgencyLeader sysAgencyLeader : leaderList) {
|
|
|
|
|
+ //根据机构id查下面团队
|
|
|
|
|
+ List<SysDept> sysDeptList = sysDeptMapper.selectList(new LambdaQueryWrapper<SysDept>()
|
|
|
|
|
+ .likeRight(SysDept::getId, sysAgencyLeader.getDeptId())
|
|
|
|
|
+ .isNull(SysDept::getComlevel).eq(SysDept::getDelFlag, 0)
|
|
|
|
|
+ .eq(SysDept::getManagementSource, sysAgencyLeader.getSource()));
|
|
|
|
|
+ deptSum = deptSum + sysDeptList.size();
|
|
|
|
|
+ if (sysDeptList.size() > 0) {
|
|
|
|
|
+ for (SysDept sysDept : sysDeptList) {
|
|
|
|
|
+ //团队下的人数
|
|
|
|
|
+ List<SysUser> sysUserList = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
|
|
|
|
|
+ .likeRight(SysUser::getId, sysDept.getId())
|
|
|
|
|
+ .in(SysUser::getStatus, Arrays.asList(1, 4, 5, 6, 7)));
|
|
|
|
|
+ deptManSum = deptManSum + sysUserList.size();
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ levelPartnerVo.setDeptManNum(deptManSum);
|
|
|
|
|
+
|
|
|
|
|
+ }else {
|
|
|
|
|
+ levelPartnerVo.setDeptManNum(0);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ partnerVoList.add(levelPartnerVo);
|
|
|
}
|
|
}
|
|
|
- countUserVo.setCountUserNumVoList(countUserNumVoList);
|
|
|
|
|
|
|
|
|
|
- return countUserVo;
|
|
|
|
|
|
|
+
|
|
|
|
|
+ return partnerVoList.stream().sorted(Comparator.comparingInt(LevelPartnerVo::getDeptManNum).reversed()).collect(Collectors.toList());
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|