|
@@ -1,6 +1,7 @@
|
|
|
package com.ydtech.modules.admin.service.impl;
|
|
package com.ydtech.modules.admin.service.impl;
|
|
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
|
|
|
+import cn.hutool.core.collection.CollectionUtil;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
|
@@ -9,10 +10,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.ydtech.aop.exception.DescribeException;
|
|
import com.ydtech.aop.exception.DescribeException;
|
|
|
import com.ydtech.modules.admin.dao.*;
|
|
import com.ydtech.modules.admin.dao.*;
|
|
|
import com.ydtech.modules.admin.model.*;
|
|
import com.ydtech.modules.admin.model.*;
|
|
|
-import com.ydtech.modules.admin.model.dto.SysAgencyLeaderDto;
|
|
|
|
|
-import com.ydtech.modules.admin.model.dto.SysAgencyLeaderPageDto;
|
|
|
|
|
-import com.ydtech.modules.admin.model.dto.TeamInformationDto;
|
|
|
|
|
-import com.ydtech.modules.admin.model.dto.TeamUserInfoDto;
|
|
|
|
|
|
|
+import com.ydtech.modules.admin.model.dto.*;
|
|
|
import com.ydtech.modules.admin.model.vo.*;
|
|
import com.ydtech.modules.admin.model.vo.*;
|
|
|
import com.ydtech.modules.admin.service.SysAgencyLeaderService;
|
|
import com.ydtech.modules.admin.service.SysAgencyLeaderService;
|
|
|
import com.ydtech.modules.admin.service.SysDeptService;
|
|
import com.ydtech.modules.admin.service.SysDeptService;
|
|
@@ -32,7 +30,6 @@ import org.springframework.transaction.annotation.Transactional;
|
|
|
import javax.annotation.Resource;
|
|
import javax.annotation.Resource;
|
|
|
import java.math.BigDecimal;
|
|
import java.math.BigDecimal;
|
|
|
import java.math.RoundingMode;
|
|
import java.math.RoundingMode;
|
|
|
-import java.text.DecimalFormat;
|
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.ArrayList;
|
|
|
import java.util.Arrays;
|
|
import java.util.Arrays;
|
|
|
import java.util.Date;
|
|
import java.util.Date;
|
|
@@ -103,20 +100,6 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
SysAgencyLeader sysAgencyLeader = BeanUtil.copyProperties(sysAgencyLeaderDto, SysAgencyLeader.class);
|
|
SysAgencyLeader sysAgencyLeader = BeanUtil.copyProperties(sysAgencyLeaderDto, SysAgencyLeader.class);
|
|
|
- String[] source = sysAgencyLeaderDto.getSource();
|
|
|
|
|
- StringBuilder stringBuilder = new StringBuilder();
|
|
|
|
|
- if (source != null) {
|
|
|
|
|
- int size = source.length;
|
|
|
|
|
- if (size == 3) {
|
|
|
|
|
- stringBuilder.append(source[0]).append(",").append(source[1]).append(",").append(source[2]);
|
|
|
|
|
-
|
|
|
|
|
- } else if (size == 2) {
|
|
|
|
|
- stringBuilder.append(source[0]).append(",").append(source[1]);
|
|
|
|
|
- } else {
|
|
|
|
|
- stringBuilder.append(source[0]);
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- sysAgencyLeader.setSource(stringBuilder.toString());
|
|
|
|
|
sysAgencyLeader.setCreateTime(new Date());
|
|
sysAgencyLeader.setCreateTime(new Date());
|
|
|
SysUser user = BaseController.getUser();
|
|
SysUser user = BaseController.getUser();
|
|
|
sysAgencyLeader.setCreateBy(user.getId());
|
|
sysAgencyLeader.setCreateBy(user.getId());
|
|
@@ -151,22 +134,42 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
|
|
|
return b;
|
|
return b;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- @Override
|
|
|
|
|
- public List<SysDept> getDeptInfo() {
|
|
|
|
|
- return sysDeptMapper.selectList(new QueryWrapper<SysDept>().lambda().eq(SysDept::getDelFlag, 0).isNotNull(SysDept::getComlevel));
|
|
|
|
|
- }
|
|
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
- public List<SysUser> getUserInfo() {
|
|
|
|
|
- List<SysUser> sysUsers = sysUserMapper.selectList(new QueryWrapper<SysUser>().lambda().eq(SysUser::getStatus, 1).notLike(SysUser::getId,"M"));
|
|
|
|
|
- String id = BaseController.getUser().getId();
|
|
|
|
|
|
|
+ public List<SysUser> getLevelUser(String id) {
|
|
|
|
|
+ SysDept sysDept = sysDeptMapper.selectById(id);
|
|
|
List<SysUser> sysUserList = null;
|
|
List<SysUser> sysUserList = null;
|
|
|
- if (sysUsers.size() > 0) {
|
|
|
|
|
- sysUserList = sysUsers.stream().filter(SysUser -> !SysUser.getId().equals(id)).collect(Collectors.toList());
|
|
|
|
|
|
|
+ if (sysDept.getComlevel().equals("5")) {
|
|
|
|
|
+ sysUserList = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
|
|
|
|
|
+ .eq(SysUser::getStatus, 1)
|
|
|
|
|
+ .likeRight(SysUser::getId, sysDept.getParentId())
|
|
|
|
|
+ .notLike(SysUser::getId, "M"));
|
|
|
|
|
+
|
|
|
|
|
+ } else {
|
|
|
|
|
+ sysUserList = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
|
|
|
|
|
+ .eq(SysUser::getStatus, 1)
|
|
|
|
|
+ .likeRight(SysUser::getId, id)
|
|
|
|
|
+ .notLike(SysUser::getId, "M"));
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ //工作室管理员: 已是管理员不能再成为管理员,已是合伙人的也不能设置为管理员
|
|
|
|
|
+ List<SysPartner> sysPartnerList = sysPartnerMapper.selectList(new LambdaQueryWrapper<SysPartner>().eq(SysPartner::getCreateTime, 1));
|
|
|
|
|
+ if (sysPartnerList == null) {
|
|
|
|
|
+ List<String> stringList = sysPartnerList.stream().map(SysPartner::getUserId).collect(Collectors.toList());
|
|
|
|
|
+ sysUserList = sysUserList.stream().filter(SysUser -> !stringList.contains(SysUser.getId())).collect(Collectors.toList());
|
|
|
|
|
+ }
|
|
|
|
|
+ List<SysAgencyLeader> sysAgencyLeaders = sysAgencyLeaderMapper.selectList(new LambdaQueryWrapper<SysAgencyLeader>().eq(SysAgencyLeader::getDelFlag, 1));
|
|
|
|
|
+ if (sysAgencyLeaders == null) {
|
|
|
|
|
+ List<String> stringList = sysAgencyLeaders.stream().map(SysAgencyLeader::getUserId).collect(Collectors.toList());
|
|
|
|
|
+ sysUserList = sysUserList.stream().filter(SysUser -> !stringList.contains(SysUser.getId())).collect(Collectors.toList());
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
return sysUserList;
|
|
return sysUserList;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+
|
|
|
@Override
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public boolean edit(SysAgencyLeaderDto sysAgencyLeaderDto) {
|
|
public boolean edit(SysAgencyLeaderDto sysAgencyLeaderDto) {
|
|
@@ -190,19 +193,6 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
|
|
|
|
|
|
|
|
}
|
|
}
|
|
|
SysAgencyLeader sysAgencyLeader = BeanUtil.copyProperties(sysAgencyLeaderDto, SysAgencyLeader.class);
|
|
SysAgencyLeader sysAgencyLeader = BeanUtil.copyProperties(sysAgencyLeaderDto, SysAgencyLeader.class);
|
|
|
- String[] source = sysAgencyLeaderDto.getSource();
|
|
|
|
|
- StringBuilder stringBuilder = new StringBuilder();
|
|
|
|
|
- if (source != null) {
|
|
|
|
|
- int size = source.length;
|
|
|
|
|
- if (size == 3) {
|
|
|
|
|
- stringBuilder.append(source[0]).append(",").append(source[1]).append(",").append(source[2]);
|
|
|
|
|
- } else if (size == 2) {
|
|
|
|
|
- stringBuilder.append(source[0]).append(",").append(source[1]);
|
|
|
|
|
- } else {
|
|
|
|
|
- stringBuilder.append(source[0]);
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- sysAgencyLeader.setSource(stringBuilder.toString());
|
|
|
|
|
sysAgencyLeader.setUpdateTime(new Date());
|
|
sysAgencyLeader.setUpdateTime(new Date());
|
|
|
SysUser user = BaseController.getUser();
|
|
SysUser user = BaseController.getUser();
|
|
|
sysAgencyLeader.setUpdateBy(user.getId());
|
|
sysAgencyLeader.setUpdateBy(user.getId());
|
|
@@ -228,23 +218,11 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
- public List<SysAgencyLeaderVo> queryInfo() {
|
|
|
|
|
- List<SysAgencyLeader> sysAgencyLeaders = sysAgencyLeaderMapper.selectList(new QueryWrapper<SysAgencyLeader>().lambda().eq(SysAgencyLeader::getDelFlag, 1));
|
|
|
|
|
- List<SysAgencyLeaderVo> sysAgencyLeaderVos = BeanUtil.copyToList(sysAgencyLeaders, SysAgencyLeaderVo.class);
|
|
|
|
|
- if (sysAgencyLeaders.size() > 0) {
|
|
|
|
|
- for (SysAgencyLeader record : sysAgencyLeaders) {
|
|
|
|
|
- for (SysAgencyLeaderVo sysAgencyLeaderVo : sysAgencyLeaderVos) {
|
|
|
|
|
- if (record.getId().equals(sysAgencyLeaderVo.getId())) {
|
|
|
|
|
- String source = record.getSource();
|
|
|
|
|
- if (!StringUtils.isNullOrEmpty(source)) {
|
|
|
|
|
- String[] split = source.split(",");
|
|
|
|
|
- sysAgencyLeaderVo.setSource(split);
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- return sysAgencyLeaderVos;
|
|
|
|
|
|
|
+ public List<SysAgencyLeaderVo> queryInfo(String id) {
|
|
|
|
|
+ List<SysAgencyLeader> sysAgencyLeaders = sysAgencyLeaderMapper.selectList(new LambdaQueryWrapper<SysAgencyLeader>()
|
|
|
|
|
+ .eq(SysAgencyLeader::getDelFlag, 1).likeRight(StringUtils.isNotEmpty(id),SysAgencyLeader::getDeptId,id));
|
|
|
|
|
+
|
|
|
|
|
+ return BeanUtil.copyToList(sysAgencyLeaders, SysAgencyLeaderVo.class);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -252,27 +230,21 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
|
|
|
Page<SysAgencyLeader> page = new Page<>(sysAgencyLeaderPageDto.getPageNum(), sysAgencyLeaderPageDto.getPageSize());
|
|
Page<SysAgencyLeader> page = new Page<>(sysAgencyLeaderPageDto.getPageNum(), sysAgencyLeaderPageDto.getPageSize());
|
|
|
LambdaQueryWrapper<SysAgencyLeader> wrapper = new LambdaQueryWrapper<>();
|
|
LambdaQueryWrapper<SysAgencyLeader> wrapper = new LambdaQueryWrapper<>();
|
|
|
wrapper.eq(SysAgencyLeader::getDelFlag, 1);
|
|
wrapper.eq(SysAgencyLeader::getDelFlag, 1);
|
|
|
- wrapper.eq(!StringUtils.isNullOrEmpty(sysAgencyLeaderPageDto.getDeptId()), SysAgencyLeader::getDeptId, sysAgencyLeaderPageDto.getDeptId());
|
|
|
|
|
- wrapper.eq(!StringUtils.isNullOrEmpty(sysAgencyLeaderPageDto.getUserId()), SysAgencyLeader::getUserId, sysAgencyLeaderPageDto.getUserId());
|
|
|
|
|
- wrapper.eq(!StringUtils.isNullOrEmpty(sysAgencyLeaderPageDto.getSuggestId()), SysAgencyLeader::getSuggestId, sysAgencyLeaderPageDto.getSuggestId());
|
|
|
|
|
|
|
+ wrapper.likeRight(!StringUtils.isNullOrEmpty(sysAgencyLeaderPageDto.getDeptId()), SysAgencyLeader::getDeptId, sysAgencyLeaderPageDto.getDeptId());
|
|
|
wrapper.orderByAsc(SysAgencyLeader::getId);
|
|
wrapper.orderByAsc(SysAgencyLeader::getId);
|
|
|
|
|
|
|
|
Page<SysAgencyLeader> insOrdersPage = page(page, wrapper);
|
|
Page<SysAgencyLeader> insOrdersPage = page(page, wrapper);
|
|
|
List<SysAgencyLeader> records = insOrdersPage.getRecords();
|
|
List<SysAgencyLeader> records = insOrdersPage.getRecords();
|
|
|
List<SysAgencyLeaderVo> sysAgencyLeaderVos = BeanUtil.copyToList(records, SysAgencyLeaderVo.class);
|
|
List<SysAgencyLeaderVo> sysAgencyLeaderVos = BeanUtil.copyToList(records, SysAgencyLeaderVo.class);
|
|
|
- if (records.size() > 0) {
|
|
|
|
|
- for (SysAgencyLeader record : records) {
|
|
|
|
|
- for (SysAgencyLeaderVo sysAgencyLeaderVo : sysAgencyLeaderVos) {
|
|
|
|
|
- if (record.getId().equals(sysAgencyLeaderVo.getId())) {
|
|
|
|
|
- String source = record.getSource();
|
|
|
|
|
- if (!StringUtils.isNullOrEmpty(source)) {
|
|
|
|
|
- String[] split = source.split(",");
|
|
|
|
|
- sysAgencyLeaderVo.setSource(split);
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ if (sysAgencyLeaderVos.size() > 0) {
|
|
|
|
|
+ for (SysAgencyLeaderVo sysAgencyLeaderVo : sysAgencyLeaderVos) {
|
|
|
|
|
+ SysDept sysDept = sysDeptMapper.selectOne(new LambdaQueryWrapper<SysDept>().eq(SysDept::getId, sysAgencyLeaderVo.getDeptId()).eq(SysDept::getDelFlag, 0));
|
|
|
|
|
+ if (sysDept != null) {
|
|
|
|
|
+ sysAgencyLeaderVo.setParentId(sysDept.getParentId());
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
return new BasePageResult<>(sysAgencyLeaderPageDto.getPageNum(), page.getSize(), insOrdersPage.getTotal(), page.getPages(),
|
|
return new BasePageResult<>(sysAgencyLeaderPageDto.getPageNum(), page.getSize(), insOrdersPage.getTotal(), page.getPages(),
|
|
|
sysAgencyLeaderVos);
|
|
sysAgencyLeaderVos);
|
|
|
}
|
|
}
|
|
@@ -283,11 +255,7 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
|
|
|
sysAgencyLeader.setId(id);
|
|
sysAgencyLeader.setId(id);
|
|
|
SysAgencyLeader sysAgencyLeader1 = sysAgencyLeaderMapper.selectById(sysAgencyLeader);
|
|
SysAgencyLeader sysAgencyLeader1 = sysAgencyLeaderMapper.selectById(sysAgencyLeader);
|
|
|
SysAgencyLeaderVo sysAgencyLeaderVo = BeanUtil.copyProperties(sysAgencyLeader1, SysAgencyLeaderVo.class);
|
|
SysAgencyLeaderVo sysAgencyLeaderVo = BeanUtil.copyProperties(sysAgencyLeader1, SysAgencyLeaderVo.class);
|
|
|
- String source = sysAgencyLeader1.getSource();
|
|
|
|
|
- if (!StringUtils.isNullOrEmpty(source)) {
|
|
|
|
|
- String[] split = source.split(",");
|
|
|
|
|
- sysAgencyLeaderVo.setSource(split);
|
|
|
|
|
- }
|
|
|
|
|
|
|
+
|
|
|
return sysAgencyLeaderVo;
|
|
return sysAgencyLeaderVo;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -353,24 +321,30 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
|
|
|
agencyExtractFee.setStartTime(updateTime);
|
|
agencyExtractFee.setStartTime(updateTime);
|
|
|
}
|
|
}
|
|
|
if (insOrderList.size() > 0) {
|
|
if (insOrderList.size() > 0) {
|
|
|
- for (InsOrders insOrders : insOrderList) {
|
|
|
|
|
- //查询订单下的所有子订单
|
|
|
|
|
- List<InsAreaCompany> insAreaCompanies = insAreaCompanyMapper.selectList(new LambdaQueryWrapper<InsAreaCompany>().eq(InsAreaCompany::getOrderno, insOrders.getOrderno())
|
|
|
|
|
- .eq(InsAreaCompany::getOrderstatus, 3));
|
|
|
|
|
- if (insAreaCompanies.size() > 0) {
|
|
|
|
|
- for (InsAreaCompany insAreaCompany : insAreaCompanies) {
|
|
|
|
|
- //累加每一个子订单的交强险费用+商业险费用+驾意险费用
|
|
|
|
|
- bigDecimal = bigDecimal.add(insAreaCompany.getJqpremium()).add(insAreaCompany.getSypremium()).add(insAreaCompany.getJypremium());
|
|
|
|
|
-
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ List<String> collect = insOrderList.stream().map(InsOrders::getOrderno).collect(Collectors.toList());
|
|
|
|
|
+ //查询订单下的所有子订单
|
|
|
|
|
+ List<InsAreaCompany> insAreaCompanies = insAreaCompanyMapper.selectList(new LambdaQueryWrapper<InsAreaCompany>()
|
|
|
|
|
+ .in(InsAreaCompany::getOrderno, collect)
|
|
|
|
|
+ .eq(InsAreaCompany::getOrderstatus, 3));
|
|
|
|
|
+ if (insAreaCompanies.size() > 0) {
|
|
|
|
|
+ BigDecimal jqpremium = insAreaCompanies.stream().map(InsAreaCompany::getJqpremium).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
|
|
+ BigDecimal sypremium = insAreaCompanies.stream().map(InsAreaCompany::getSypremium).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
|
|
+ BigDecimal jypremium = insAreaCompanies.stream().map(InsAreaCompany::getJypremium).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
|
|
+
|
|
|
|
|
+ bigDecimal = jqpremium.add(sypremium).add(jypremium);
|
|
|
|
|
+// for (InsAreaCompany insAreaCompany : insAreaCompanies) {
|
|
|
|
|
+// //累加每一个子订单的交强险费用+商业险费用+驾意险费用
|
|
|
|
|
+// bigDecimal = bigDecimal.add(insAreaCompany.getJqpremium()).add(insAreaCompany.getSypremium()).add(insAreaCompany.getJypremium());
|
|
|
|
|
+//
|
|
|
|
|
+// }
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
agencyExtractFee.setSumpremium(bigDecimal);
|
|
agencyExtractFee.setSumpremium(bigDecimal);
|
|
|
//总保费*比例/100 保留两位小数
|
|
//总保费*比例/100 保留两位小数
|
|
|
- BigDecimal multiply = bigDecimal.multiply(new BigDecimal(agencyExtractFee.getProportional()).divide(new BigDecimal("100"))).setScale(2, RoundingMode.HALF_UP);
|
|
|
|
|
|
|
+ BigDecimal multiply = bigDecimal.multiply(new BigDecimal(agencyExtractFee.getProportional())
|
|
|
|
|
+ .divide(new BigDecimal("100"))).setScale(2, RoundingMode.DOWN);
|
|
|
agencyExtractFee.setExtractFee(multiply);
|
|
agencyExtractFee.setExtractFee(multiply);
|
|
|
// 填充 已提现抽成费用和可提现抽成费用
|
|
// 填充 已提现抽成费用和可提现抽成费用
|
|
|
List<SysAgencyFeeApproval> sysAgencyFeeApprovals = sysAgencyFeeApprovalMapper.selectList(new LambdaQueryWrapper<SysAgencyFeeApproval>()
|
|
List<SysAgencyFeeApproval> sysAgencyFeeApprovals = sysAgencyFeeApprovalMapper.selectList(new LambdaQueryWrapper<SysAgencyFeeApproval>()
|
|
@@ -431,21 +405,22 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
|
|
|
agencyExtractFee.setStartTime(updateTime);
|
|
agencyExtractFee.setStartTime(updateTime);
|
|
|
}
|
|
}
|
|
|
if (insOrderList.size() > 0) {
|
|
if (insOrderList.size() > 0) {
|
|
|
- for (InsOrders insOrders : insOrderList) {
|
|
|
|
|
- //查询订单下的所有子订单
|
|
|
|
|
- List<InsAreaCompany> insAreaCompanies = insAreaCompanyMapper.selectList(new LambdaQueryWrapper<InsAreaCompany>().eq(InsAreaCompany::getOrderno, insOrders.getOrderno())
|
|
|
|
|
- .eq(InsAreaCompany::getOrderstatus, 3));
|
|
|
|
|
- if (insAreaCompanies.size() > 0) {
|
|
|
|
|
- for (InsAreaCompany insAreaCompany : insAreaCompanies) {
|
|
|
|
|
- //累加每一个子订单的交强险费用+商业险费用+驾意险费用
|
|
|
|
|
- bigDecimal = bigDecimal.add(insAreaCompany.getJqpremium()).add(insAreaCompany.getSypremium()).add(insAreaCompany.getJypremium());
|
|
|
|
|
-
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ List<String> collect = insOrderList.stream().map(InsOrders::getOrderno).collect(Collectors.toList());
|
|
|
|
|
+ //查询订单下的所有子订单
|
|
|
|
|
+ List<InsAreaCompany> insAreaCompanies = insAreaCompanyMapper.selectList(new LambdaQueryWrapper<InsAreaCompany>()
|
|
|
|
|
+ .in(InsAreaCompany::getOrderno, collect)
|
|
|
|
|
+ .eq(InsAreaCompany::getOrderstatus, 3));
|
|
|
|
|
+ if (insAreaCompanies.size() > 0) {
|
|
|
|
|
+ BigDecimal jqpremium = insAreaCompanies.stream().map(InsAreaCompany::getJqpremium).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
|
|
+ BigDecimal sypremium = insAreaCompanies.stream().map(InsAreaCompany::getSypremium).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
|
|
+ BigDecimal jypremium = insAreaCompanies.stream().map(InsAreaCompany::getJypremium).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
|
|
+
|
|
|
|
|
+ bigDecimal = jqpremium.add(sypremium).add(jypremium);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
agencyExtractFee.setSumpremium(bigDecimal);
|
|
agencyExtractFee.setSumpremium(bigDecimal);
|
|
|
- BigDecimal multiply = bigDecimal.multiply(new BigDecimal(agencyExtractFee.getProportional()).divide(new BigDecimal("100"))).setScale(2, RoundingMode.HALF_UP);
|
|
|
|
|
|
|
+ BigDecimal multiply = bigDecimal.multiply(new BigDecimal(agencyExtractFee.getProportional())
|
|
|
|
|
+ .divide(new BigDecimal("100"))).setScale(2, RoundingMode.DOWN);
|
|
|
agencyExtractFee.setExtractFee(multiply);
|
|
agencyExtractFee.setExtractFee(multiply);
|
|
|
// 填充 已提现抽成费用和可提现抽成费用
|
|
// 填充 已提现抽成费用和可提现抽成费用
|
|
|
List<SysAgencyFeeApproval> sysAgencyFeeApprovals = sysAgencyFeeApprovalMapper.selectList(new LambdaQueryWrapper<SysAgencyFeeApproval>()
|
|
List<SysAgencyFeeApproval> sysAgencyFeeApprovals = sysAgencyFeeApprovalMapper.selectList(new LambdaQueryWrapper<SysAgencyFeeApproval>()
|
|
@@ -480,6 +455,8 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
|
|
|
|
|
|
|
|
Page<SysAgencyLeader> page = new Page<>(sysAgencyLeaderPageDto.getPageNum(), sysAgencyLeaderPageDto.getPageSize());
|
|
Page<SysAgencyLeader> page = new Page<>(sysAgencyLeaderPageDto.getPageNum(), sysAgencyLeaderPageDto.getPageSize());
|
|
|
LambdaQueryWrapper<SysAgencyLeader> wrapper = new LambdaQueryWrapper<>();
|
|
LambdaQueryWrapper<SysAgencyLeader> wrapper = new LambdaQueryWrapper<>();
|
|
|
|
|
+ wrapper.like(StringUtils.isNotEmpty(sysAgencyLeaderPageDto.getUserId()), SysAgencyLeader::getUserId, sysAgencyLeaderPageDto.getUserId());
|
|
|
|
|
+ wrapper.like(StringUtils.isNotEmpty(sysAgencyLeaderPageDto.getUserName()), SysAgencyLeader::getUserName, sysAgencyLeaderPageDto.getUserName());
|
|
|
wrapper.eq(SysAgencyLeader::getDelFlag, 1);
|
|
wrapper.eq(SysAgencyLeader::getDelFlag, 1);
|
|
|
|
|
|
|
|
Page<SysAgencyLeader> insOrdersPage = page(page, wrapper);
|
|
Page<SysAgencyLeader> insOrdersPage = page(page, wrapper);
|
|
@@ -513,21 +490,22 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
|
|
|
agencyExtractFee.setStartTime(updateTime);
|
|
agencyExtractFee.setStartTime(updateTime);
|
|
|
}
|
|
}
|
|
|
if (insOrderList.size() > 0) {
|
|
if (insOrderList.size() > 0) {
|
|
|
- for (InsOrders insOrders : insOrderList) {
|
|
|
|
|
- //查询订单下的所有子订单
|
|
|
|
|
- List<InsAreaCompany> insAreaCompanies = insAreaCompanyMapper.selectList(new LambdaQueryWrapper<InsAreaCompany>().eq(InsAreaCompany::getOrderno, insOrders.getOrderno())
|
|
|
|
|
- .eq(InsAreaCompany::getOrderstatus, 3));
|
|
|
|
|
- if (insAreaCompanies.size() > 0) {
|
|
|
|
|
- for (InsAreaCompany insAreaCompany : insAreaCompanies) {
|
|
|
|
|
- //累加每一个子订单的交强险费用+商业险费用+驾意险费用
|
|
|
|
|
- bigDecimal = bigDecimal.add(insAreaCompany.getJqpremium()).add(insAreaCompany.getSypremium()).add(insAreaCompany.getJypremium());
|
|
|
|
|
-
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ List<String> collect = insOrderList.stream().map(InsOrders::getOrderno).collect(Collectors.toList());
|
|
|
|
|
+ //查询订单下的所有子订单
|
|
|
|
|
+ List<InsAreaCompany> insAreaCompanies = insAreaCompanyMapper.selectList(new LambdaQueryWrapper<InsAreaCompany>()
|
|
|
|
|
+ .in(InsAreaCompany::getOrderno, collect)
|
|
|
|
|
+ .eq(InsAreaCompany::getOrderstatus, 3));
|
|
|
|
|
+ if (insAreaCompanies.size() > 0) {
|
|
|
|
|
+ BigDecimal jqpremium = insAreaCompanies.stream().map(InsAreaCompany::getJqpremium).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
|
|
+ BigDecimal sypremium = insAreaCompanies.stream().map(InsAreaCompany::getSypremium).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
|
|
+ BigDecimal jypremium = insAreaCompanies.stream().map(InsAreaCompany::getJypremium).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
|
|
+
|
|
|
|
|
+ bigDecimal = jqpremium.add(sypremium).add(jypremium);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
agencyExtractFee.setSumpremium(bigDecimal);
|
|
agencyExtractFee.setSumpremium(bigDecimal);
|
|
|
- BigDecimal multiply = bigDecimal.multiply(new BigDecimal(agencyExtractFee.getProportional()).divide(new BigDecimal("100"))).setScale(2, RoundingMode.HALF_UP);
|
|
|
|
|
|
|
+ BigDecimal multiply = bigDecimal.multiply(new BigDecimal(agencyExtractFee.getProportional())
|
|
|
|
|
+ .divide(new BigDecimal("100"))).setScale(2, RoundingMode.DOWN);
|
|
|
agencyExtractFee.setExtractFee(multiply);
|
|
agencyExtractFee.setExtractFee(multiply);
|
|
|
// 填充 已提现抽成费用和可提现抽成费用
|
|
// 填充 已提现抽成费用和可提现抽成费用
|
|
|
List<SysAgencyFeeApproval> sysAgencyFeeApprovals = sysAgencyFeeApprovalMapper.selectList(new LambdaQueryWrapper<SysAgencyFeeApproval>()
|
|
List<SysAgencyFeeApproval> sysAgencyFeeApprovals = sysAgencyFeeApprovalMapper.selectList(new LambdaQueryWrapper<SysAgencyFeeApproval>()
|
|
@@ -558,223 +536,24 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
|
|
|
agencyExtractFeeList);
|
|
agencyExtractFeeList);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-// @Override
|
|
|
|
|
-// public List<TeamInformation> queryTeamInfo(TeamInformationDto teamInformationDto) {
|
|
|
|
|
-// String userId = BaseController.getUser().getId();
|
|
|
|
|
-// List<TeamInformation> informationList = new ArrayList<>();
|
|
|
|
|
-// //合伙人
|
|
|
|
|
-// boolean c = sysPartnerService.checkPartner(userId);
|
|
|
|
|
-// if (c) {
|
|
|
|
|
-// return extracted(userId, informationList, teamInformationDto);
|
|
|
|
|
-// }
|
|
|
|
|
-// //校验当前用户是否为机构负责人
|
|
|
|
|
-// boolean b = this.checkUserId(userId);
|
|
|
|
|
-// if (b) {
|
|
|
|
|
-// //机构负责人查询机构下的团队
|
|
|
|
|
-// SysAgencyLeader sysAgencyLeaders = sysAgencyLeaderMapper.selectOne(new LambdaQueryWrapper<SysAgencyLeader>().eq(SysAgencyLeader::getUserId, userId)
|
|
|
|
|
-// .eq(SysAgencyLeader::getDelFlag, 1));
|
|
|
|
|
-// String[] split = sysAgencyLeaders.getSource().split(",");
|
|
|
|
|
-// //根据当前机构id查询出下面的团队,条件:机构来源相同,机构等级为null的团队
|
|
|
|
|
-// List<SysDept> sysDeptList = sysDeptMapper.selectList(new LambdaQueryWrapper<SysDept>().likeRight(SysDept::getId, sysAgencyLeaders.getDeptId())
|
|
|
|
|
-// .isNull(SysDept::getComlevel).eq(SysDept::getDelFlag, 0).in(SysDept::getManagementSource, split)
|
|
|
|
|
-// .like(StringUtils.isNotEmpty(teamInformationDto.getDeptName()), SysDept::getName, teamInformationDto.getDeptName()));
|
|
|
|
|
-// if (sysDeptList.size() > 0) {
|
|
|
|
|
-// //总保费
|
|
|
|
|
-// BigDecimal bigDecimal = new BigDecimal("0.00");
|
|
|
|
|
-// for (SysDept sysDept : sysDeptList) {
|
|
|
|
|
-// TeamInformation teamInformation = new TeamInformation();
|
|
|
|
|
-// teamInformation.setDeptId(sysDept.getId());
|
|
|
|
|
-// teamInformation.setDeptName(sysDept.getName());
|
|
|
|
|
-// List<SysUser> sysUsers = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>().likeRight(SysUser::getId, sysDept.getId()).eq(SysUser::getStatus, 1));
|
|
|
|
|
-// teamInformation.setDeptManNum(sysUsers.size());
|
|
|
|
|
-// List<InsOrders> insOrderList;
|
|
|
|
|
-// //筛选订单,选择时间
|
|
|
|
|
-// Date updateTime = sysAgencyLeaders.getUpdateTime();
|
|
|
|
|
-// if (updateTime == null) {
|
|
|
|
|
-// //机构下所有订单
|
|
|
|
|
-// insOrderList = insOrdersMapper.selectList(new LambdaQueryWrapper<InsOrders>()
|
|
|
|
|
-// .likeRight(InsOrders::getDeptid, sysDept.getId())
|
|
|
|
|
-// .ge(InsOrders::getCreatetime, sysAgencyLeaders.getCreateTime())
|
|
|
|
|
-// .ge(StringUtils.isNotEmpty(teamInformationDto.getBeginTime()), InsOrders::getCreatetime, teamInformationDto.getBeginTime())
|
|
|
|
|
-// .le(StringUtils.isNotEmpty(teamInformationDto.getEndTime()), InsOrders::getCreatetime, teamInformationDto.getEndTime()));
|
|
|
|
|
-// teamInformation.setStartTime(sysAgencyLeaders.getCreateTime());
|
|
|
|
|
-//
|
|
|
|
|
-// } else {
|
|
|
|
|
-// insOrderList = insOrdersMapper.selectList(new LambdaQueryWrapper<InsOrders>()
|
|
|
|
|
-// .likeRight(InsOrders::getDeptid, sysDept.getId())
|
|
|
|
|
-// .ge(InsOrders::getCreatetime, updateTime)
|
|
|
|
|
-// .ge(StringUtils.isNotEmpty(teamInformationDto.getBeginTime()), InsOrders::getCreatetime, teamInformationDto.getBeginTime())
|
|
|
|
|
-// .le(StringUtils.isNotEmpty(teamInformationDto.getEndTime()), InsOrders::getCreatetime, teamInformationDto.getEndTime()));
|
|
|
|
|
-// teamInformation.setStartTime(updateTime);
|
|
|
|
|
-// }
|
|
|
|
|
-//
|
|
|
|
|
-// if (insOrderList.size() > 0) {
|
|
|
|
|
-// for (InsOrders insOrders : insOrderList) {
|
|
|
|
|
-// //查询订单下的所有子订单
|
|
|
|
|
-// List<InsAreaCompany> insAreaCompanies = insAreaCompanyMapper.selectList(new LambdaQueryWrapper<InsAreaCompany>().eq(InsAreaCompany::getOrderno, insOrders.getOrderno())
|
|
|
|
|
-// .eq(InsAreaCompany::getOrderstatus, 3));
|
|
|
|
|
-// if (insAreaCompanies.size() > 0) {
|
|
|
|
|
-// for (InsAreaCompany insAreaCompany : insAreaCompanies) {
|
|
|
|
|
-// //累加每一个子订单的交强险费用+商业险费用+驾意险费用
|
|
|
|
|
-// bigDecimal = bigDecimal.add(insAreaCompany.getJqpremium()).add(insAreaCompany.getSypremium()).add(insAreaCompany.getJypremium());
|
|
|
|
|
-//
|
|
|
|
|
-// }
|
|
|
|
|
-// }
|
|
|
|
|
-// }
|
|
|
|
|
-// }
|
|
|
|
|
-// teamInformation.setSumpremium(bigDecimal);
|
|
|
|
|
-// int num = 0;
|
|
|
|
|
-// // 查团队有几人出单 :订单表中userid相等同时在 子订单表中状态为3已承保才为出单
|
|
|
|
|
-// List<String> userIdList = sysUsers.stream().map(SysUser::getId).collect(Collectors.toList());
|
|
|
|
|
-// for (String s : userIdList) {
|
|
|
|
|
-// List<InsOrders> collect = insOrderList.stream().filter(InsOrders -> InsOrders.getUserid().equals(s)).collect(Collectors.toList());
|
|
|
|
|
-// if (collect.size() > 0) {
|
|
|
|
|
-// InsOrders insOrders = collect.get(0);
|
|
|
|
|
-// List<InsAreaCompany> insAreaCompanies1 = insAreaCompanyMapper.selectList(new LambdaQueryWrapper<InsAreaCompany>().eq(InsAreaCompany::getOrderno, insOrders.getOrderno())
|
|
|
|
|
-// .eq(InsAreaCompany::getOrderstatus, 3));
|
|
|
|
|
-// if (insAreaCompanies1.size() > 0) {
|
|
|
|
|
-// num++;
|
|
|
|
|
-// }
|
|
|
|
|
-//
|
|
|
|
|
-// }
|
|
|
|
|
-// }
|
|
|
|
|
-// teamInformation.setOrderManNum(num);
|
|
|
|
|
-// informationList.add(teamInformation);
|
|
|
|
|
-// Integer type = teamInformationDto.getType();
|
|
|
|
|
-// if (type == 1) {
|
|
|
|
|
-// int size = informationList.size();
|
|
|
|
|
-// if (size == 2) {
|
|
|
|
|
-// return informationList;
|
|
|
|
|
-// }
|
|
|
|
|
-// }
|
|
|
|
|
-// }
|
|
|
|
|
-//
|
|
|
|
|
-// }
|
|
|
|
|
-// return informationList;
|
|
|
|
|
-// }
|
|
|
|
|
-//
|
|
|
|
|
-//
|
|
|
|
|
-// return informationList;
|
|
|
|
|
-// }
|
|
|
|
|
-//
|
|
|
|
|
-// private List<TeamInformation> extracted(String userId, List<TeamInformation> informationList, TeamInformationDto teamInformationDto) {
|
|
|
|
|
-// //查询所有推荐的机构负责人核算总保费
|
|
|
|
|
-// List<SysRelationPerson> sysRelationPeople = sysRelationPersonMapper.selectList(new LambdaQueryWrapper<SysRelationPerson>()
|
|
|
|
|
-// .eq(SysRelationPerson::getSuggestId, userId).eq(SysRelationPerson::getType, 1));
|
|
|
|
|
-// if (sysRelationPeople.size() > 0) {
|
|
|
|
|
-// //总保费
|
|
|
|
|
-// BigDecimal bigDecimal = new BigDecimal("0.00");
|
|
|
|
|
-// //获取所有推荐的机构负责人id
|
|
|
|
|
-// List<String> agencyLeaderIds = sysRelationPeople.stream().map(SysRelationPerson::getAgencyLeaderId).collect(Collectors.toList());
|
|
|
|
|
-// for (String agencyLeaderId : agencyLeaderIds) {
|
|
|
|
|
-// //获取机构负责人信息
|
|
|
|
|
-// SysAgencyLeader sysAgencyLeaders = sysAgencyLeaderMapper.selectOne(new LambdaQueryWrapper<SysAgencyLeader>()
|
|
|
|
|
-// .eq(SysAgencyLeader::getUserId, agencyLeaderId)
|
|
|
|
|
-// .eq(SysAgencyLeader::getDelFlag, 1));
|
|
|
|
|
-// String[] split = sysAgencyLeaders.getSource().split(",");
|
|
|
|
|
-// //根据当前机构id查询出下面的团队,条件:机构来源相同,机构等级为null的团队
|
|
|
|
|
-// List<SysDept> sysDeptList = sysDeptMapper.selectList(new LambdaQueryWrapper<SysDept>()
|
|
|
|
|
-// .likeRight(SysDept::getId, sysAgencyLeaders.getDeptId())
|
|
|
|
|
-// .isNull(SysDept::getComlevel)
|
|
|
|
|
-// .eq(SysDept::getDelFlag, 0)
|
|
|
|
|
-// .in(SysDept::getManagementSource, split)
|
|
|
|
|
-// .like(StringUtils.isNotEmpty(teamInformationDto.getDeptName()), SysDept::getName, teamInformationDto.getDeptName()));
|
|
|
|
|
-// if (sysDeptList.size() > 0) {
|
|
|
|
|
-// for (SysDept sysDept : sysDeptList) {
|
|
|
|
|
-// TeamInformation teamInformation = new TeamInformation();
|
|
|
|
|
-// teamInformation.setDeptId(sysDept.getId());
|
|
|
|
|
-// teamInformation.setDeptName(sysDept.getName());
|
|
|
|
|
-// List<SysUser> sysUsers = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
|
|
|
|
|
-// .likeRight(SysUser::getId, sysDept.getId())
|
|
|
|
|
-// .eq(SysUser::getStatus, 1));
|
|
|
|
|
-// teamInformation.setDeptManNum(sysUsers.size());
|
|
|
|
|
-// List<InsOrders> insOrderList;
|
|
|
|
|
-// //筛选订单,选择时间
|
|
|
|
|
-// Date updateTime = sysAgencyLeaders.getUpdateTime();
|
|
|
|
|
-// if (updateTime == null) {
|
|
|
|
|
-// //机构下所有订单
|
|
|
|
|
-// insOrderList = insOrdersMapper.selectList(new LambdaQueryWrapper<InsOrders>()
|
|
|
|
|
-// .likeRight(InsOrders::getDeptid, sysDept.getId())
|
|
|
|
|
-// .ge(InsOrders::getCreatetime, sysAgencyLeaders.getCreateTime())
|
|
|
|
|
-// .ge(StringUtils.isNotEmpty(teamInformationDto.getBeginTime()), InsOrders::getCreatetime, teamInformationDto.getBeginTime())
|
|
|
|
|
-// .le(StringUtils.isNotEmpty(teamInformationDto.getEndTime()), InsOrders::getCreatetime, teamInformationDto.getEndTime()));
|
|
|
|
|
-// teamInformation.setStartTime(sysAgencyLeaders.getCreateTime());
|
|
|
|
|
-// } else {
|
|
|
|
|
-// insOrderList = insOrdersMapper.selectList(new LambdaQueryWrapper<InsOrders>()
|
|
|
|
|
-// .likeRight(InsOrders::getDeptid, sysDept.getId())
|
|
|
|
|
-// .ge(InsOrders::getCreatetime, updateTime)
|
|
|
|
|
-// .ge(StringUtils.isNotEmpty(teamInformationDto.getBeginTime()), InsOrders::getCreatetime, teamInformationDto.getBeginTime())
|
|
|
|
|
-// .le(StringUtils.isNotEmpty(teamInformationDto.getEndTime()), InsOrders::getCreatetime, teamInformationDto.getEndTime()));
|
|
|
|
|
-// teamInformation.setStartTime(updateTime);
|
|
|
|
|
-// }
|
|
|
|
|
-//
|
|
|
|
|
-// if (insOrderList.size() > 0) {
|
|
|
|
|
-// for (InsOrders insOrders : insOrderList) {
|
|
|
|
|
-// //查询订单下的所有子订单
|
|
|
|
|
-// List<InsAreaCompany> insAreaCompanies = insAreaCompanyMapper.selectList(new LambdaQueryWrapper<InsAreaCompany>()
|
|
|
|
|
-// .eq(InsAreaCompany::getOrderno, insOrders.getOrderno())
|
|
|
|
|
-// .eq(InsAreaCompany::getOrderstatus, 3));
|
|
|
|
|
-// if (insAreaCompanies.size() > 0) {
|
|
|
|
|
-// for (InsAreaCompany insAreaCompany : insAreaCompanies) {
|
|
|
|
|
-// //累加每一个子订单的交强险费用+商业险费用+驾意险费用
|
|
|
|
|
-// bigDecimal = bigDecimal.add(insAreaCompany.getJqpremium()).add(insAreaCompany.getSypremium()).add(insAreaCompany.getJypremium());
|
|
|
|
|
-//
|
|
|
|
|
-// }
|
|
|
|
|
-// }
|
|
|
|
|
-// }
|
|
|
|
|
-// }
|
|
|
|
|
-// teamInformation.setSumpremium(bigDecimal);
|
|
|
|
|
-// int num = 0;
|
|
|
|
|
-// // 查团队有几人出单 :子订单中userid相等同时在 子订单表中状态为3已承保才为出单
|
|
|
|
|
-// List<String> userIdList = sysUsers.stream().map(SysUser::getId).collect(Collectors.toList());
|
|
|
|
|
-// for (String s : userIdList) {
|
|
|
|
|
-// List<InsOrders> collect = insOrderList.stream().filter(InsOrders -> InsOrders.getUserid().equals(s)).collect(Collectors.toList());
|
|
|
|
|
-// if (collect.size() > 0) {
|
|
|
|
|
-// InsOrders insOrders = collect.get(0);
|
|
|
|
|
-// List<InsAreaCompany> insAreaCompanies1 = insAreaCompanyMapper.selectList(new LambdaQueryWrapper<InsAreaCompany>()
|
|
|
|
|
-// .eq(InsAreaCompany::getOrderno, insOrders.getOrderno())
|
|
|
|
|
-// .eq(InsAreaCompany::getOrderstatus, 3));
|
|
|
|
|
-// if (insAreaCompanies1.size() > 0) {
|
|
|
|
|
-// num++;
|
|
|
|
|
-// }
|
|
|
|
|
-//
|
|
|
|
|
-// }
|
|
|
|
|
-// }
|
|
|
|
|
-// teamInformation.setOrderManNum(num);
|
|
|
|
|
-// informationList.add(teamInformation);
|
|
|
|
|
-// Integer type = teamInformationDto.getType();
|
|
|
|
|
-// if (type == 1) {
|
|
|
|
|
-// int size = informationList.size();
|
|
|
|
|
-// if (size == 2) {
|
|
|
|
|
-// return informationList;
|
|
|
|
|
-// }
|
|
|
|
|
-// }
|
|
|
|
|
-// }
|
|
|
|
|
-// }
|
|
|
|
|
-// }
|
|
|
|
|
-// }
|
|
|
|
|
-// return informationList;
|
|
|
|
|
-// }
|
|
|
|
|
-
|
|
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
public BasePageResult<TeamInformation> queryTeamInfoPage(TeamInformationDto teamInformationDto) {
|
|
public BasePageResult<TeamInformation> queryTeamInfoPage(TeamInformationDto teamInformationDto) {
|
|
|
String userId = teamInformationDto.getUserId();
|
|
String userId = teamInformationDto.getUserId();
|
|
|
if (userId == null) {
|
|
if (userId == null) {
|
|
|
- userId=BaseController.getUserId();
|
|
|
|
|
|
|
+ userId = BaseController.getUserId();
|
|
|
}
|
|
}
|
|
|
List<TeamInformation> informationList = new ArrayList<>();
|
|
List<TeamInformation> informationList = new ArrayList<>();
|
|
|
//机构负责人查询机构下的团队
|
|
//机构负责人查询机构下的团队
|
|
|
SysAgencyLeader sysAgencyLeaders = sysAgencyLeaderMapper.selectOne(new LambdaQueryWrapper<SysAgencyLeader>().eq(SysAgencyLeader::getUserId, userId)
|
|
SysAgencyLeader sysAgencyLeaders = sysAgencyLeaderMapper.selectOne(new LambdaQueryWrapper<SysAgencyLeader>().eq(SysAgencyLeader::getUserId, userId)
|
|
|
.eq(SysAgencyLeader::getDelFlag, 1));
|
|
.eq(SysAgencyLeader::getDelFlag, 1));
|
|
|
if (sysAgencyLeaders == null) return null;
|
|
if (sysAgencyLeaders == null) return null;
|
|
|
- String[] split = sysAgencyLeaders.getSource().split(",");
|
|
|
|
|
|
|
|
|
|
Page<SysDept> page = new Page<>(teamInformationDto.getPageNum(), teamInformationDto.getPageSize());
|
|
Page<SysDept> page = new Page<>(teamInformationDto.getPageNum(), teamInformationDto.getPageSize());
|
|
|
|
|
|
|
|
LambdaQueryWrapper<SysDept> wrapper = new LambdaQueryWrapper<>();
|
|
LambdaQueryWrapper<SysDept> wrapper = new LambdaQueryWrapper<>();
|
|
|
wrapper.likeRight(SysDept::getId, sysAgencyLeaders.getDeptId())
|
|
wrapper.likeRight(SysDept::getId, sysAgencyLeaders.getDeptId())
|
|
|
- .isNull(SysDept::getComlevel).eq(SysDept::getDelFlag, 0).in(SysDept::getManagementSource, split)
|
|
|
|
|
|
|
+ .isNull(SysDept::getComlevel).eq(SysDept::getDelFlag, 0).eq(SysDept::getManagementSource, sysAgencyLeaders.getSource())
|
|
|
.like(StringUtils.isNotEmpty(teamInformationDto.getDeptName()), SysDept::getName, teamInformationDto.getDeptName());
|
|
.like(StringUtils.isNotEmpty(teamInformationDto.getDeptName()), SysDept::getName, teamInformationDto.getDeptName());
|
|
|
|
|
|
|
|
Page<SysDept> insOrdersPage = sysDeptService.page(page, wrapper);
|
|
Page<SysDept> insOrdersPage = sysDeptService.page(page, wrapper);
|
|
@@ -850,6 +629,114 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
|
|
|
informationList);
|
|
informationList);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public BasePageResult<AgencyTeamVo> queryWorkroomPage(AgencyTeamDto agencyTeamDto) {
|
|
|
|
|
+ List<AgencyTeamVo> agencyTeamVoList = new ArrayList<>();
|
|
|
|
|
+ String userId = BaseController.getUserId();
|
|
|
|
|
+ int source = agencyTeamDto.getSource();
|
|
|
|
|
+ List<SysRelationPerson> sysRelationPersonList = null;
|
|
|
|
|
+ //判断是0:直接推荐;1:间接推荐
|
|
|
|
|
+ if (source == 0) {
|
|
|
|
|
+ sysRelationPersonList = sysRelationPersonMapper.selectList(new LambdaQueryWrapper<SysRelationPerson>()
|
|
|
|
|
+ .eq(SysRelationPerson::getSuggestId, userId)
|
|
|
|
|
+ .eq(SysRelationPerson::getDelFlag, 1)
|
|
|
|
|
+ .eq(SysRelationPerson::getSource, 0)
|
|
|
|
|
+ .eq(SysRelationPerson::getType, 1));
|
|
|
|
|
+ } else {
|
|
|
|
|
+ sysRelationPersonList = sysRelationPersonMapper.selectList(new LambdaQueryWrapper<SysRelationPerson>()
|
|
|
|
|
+ .eq(SysRelationPerson::getSuggestId, userId)
|
|
|
|
|
+ .eq(SysRelationPerson::getDelFlag, 1)
|
|
|
|
|
+ .eq(SysRelationPerson::getSource, 1)
|
|
|
|
|
+ .eq(SysRelationPerson::getType, 1));
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+ List<String> ids = sysRelationPersonList.stream().map(SysRelationPerson::getAgencyLeaderId).collect(Collectors.toList());
|
|
|
|
|
+ if (CollectionUtil.isNotEmpty(ids)) {
|
|
|
|
|
+ //分页查询推荐的机构信息
|
|
|
|
|
+ Page<SysAgencyLeader> page = new Page<>(agencyTeamDto.getPageNum(), agencyTeamDto.getPageSize());
|
|
|
|
|
+
|
|
|
|
|
+ LambdaQueryWrapper<SysAgencyLeader> wrapper = new LambdaQueryWrapper<>();
|
|
|
|
|
+ wrapper.like(StringUtils.isNotEmpty(agencyTeamDto.getDeptName()), SysAgencyLeader::getDeptName, agencyTeamDto.getDeptName());
|
|
|
|
|
+ wrapper.in(SysAgencyLeader::getUserId, ids);
|
|
|
|
|
+
|
|
|
|
|
+ Page<SysAgencyLeader> insOrdersPage = page(page, wrapper);
|
|
|
|
|
+ List<SysAgencyLeader> leaderList = insOrdersPage.getRecords();
|
|
|
|
|
+ if (leaderList.size() > 0) {
|
|
|
|
|
+ for (SysAgencyLeader sysAgencyLeader : leaderList) {
|
|
|
|
|
+ //总保费
|
|
|
|
|
+ BigDecimal bigDecimal = new BigDecimal("0.00");
|
|
|
|
|
+ int deptManNum = 0;
|
|
|
|
|
+ AgencyTeamVo agencyTeamVo = new AgencyTeamVo();
|
|
|
|
|
+ agencyTeamVo.setDeptId(sysAgencyLeader.getDeptId());
|
|
|
|
|
+ agencyTeamVo.setDeptName(sysAgencyLeader.getDeptName());
|
|
|
|
|
+ //获取机构下的团队
|
|
|
|
|
+ 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()));
|
|
|
|
|
+
|
|
|
|
|
+ agencyTeamVo.setDeptNum(sysDeptList.size());
|
|
|
|
|
+ if (sysDeptList.size() > 0) {
|
|
|
|
|
+ for (SysDept sysDept : sysDeptList) {
|
|
|
|
|
+
|
|
|
|
|
+ List<SysUser> sysUsers = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
|
|
|
|
|
+ .likeRight(SysUser::getId, sysDept.getId()).eq(SysUser::getStatus, 1));
|
|
|
|
|
+ deptManNum = deptManNum + sysUsers.size();
|
|
|
|
|
+ List<InsOrders> insOrderList;
|
|
|
|
|
+ //筛选订单,选择时间
|
|
|
|
|
+ Date updateTime = sysAgencyLeader.getUpdateTime();
|
|
|
|
|
+ if (updateTime == null) {
|
|
|
|
|
+ //机构下所有订单
|
|
|
|
|
+ insOrderList = insOrdersMapper.selectList(new LambdaQueryWrapper<InsOrders>()
|
|
|
|
|
+ .likeRight(InsOrders::getDeptid, sysDept.getId())
|
|
|
|
|
+ .ge(InsOrders::getCreatetime, sysAgencyLeader.getCreateTime()));
|
|
|
|
|
+ agencyTeamVo.setStartTime(sysAgencyLeader.getCreateTime());
|
|
|
|
|
+
|
|
|
|
|
+ } else {
|
|
|
|
|
+ insOrderList = insOrdersMapper.selectList(new LambdaQueryWrapper<InsOrders>()
|
|
|
|
|
+ .likeRight(InsOrders::getDeptid, sysDept.getId())
|
|
|
|
|
+ .ge(InsOrders::getCreatetime, updateTime));
|
|
|
|
|
+ agencyTeamVo.setStartTime(updateTime);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ if (insOrderList.size() > 0) {
|
|
|
|
|
+ List<String> collect = insOrderList.stream().map(InsOrders::getOrderno).collect(Collectors.toList());
|
|
|
|
|
+ //查询订单下的所有子订单
|
|
|
|
|
+ List<InsAreaCompany> insAreaCompanies = insAreaCompanyMapper.selectList(new LambdaQueryWrapper<InsAreaCompany>()
|
|
|
|
|
+ .in(InsAreaCompany::getOrderno, collect)
|
|
|
|
|
+ .eq(InsAreaCompany::getOrderstatus, 3));
|
|
|
|
|
+ if (insAreaCompanies.size() > 0) {
|
|
|
|
|
+ BigDecimal jqpremium = insAreaCompanies.stream().map(InsAreaCompany::getJqpremium).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
|
|
+ BigDecimal sypremium = insAreaCompanies.stream().map(InsAreaCompany::getSypremium).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
|
|
+ BigDecimal jypremium = insAreaCompanies.stream().map(InsAreaCompany::getJypremium).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
|
|
+
|
|
|
|
|
+ bigDecimal = jqpremium.add(sypremium).add(jypremium);
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+ agencyTeamVo.setDeptManNum(deptManNum);
|
|
|
|
|
+ agencyTeamVo.setSumpremium(bigDecimal);
|
|
|
|
|
+ BigDecimal multiply = bigDecimal.multiply(new BigDecimal(sysAgencyLeader.getProportional())
|
|
|
|
|
+ .divide(new BigDecimal("100"))).setScale(2, RoundingMode.DOWN);
|
|
|
|
|
+ agencyTeamVo.setExtractFee(multiply);
|
|
|
|
|
+ agencyTeamVoList.add(agencyTeamVo);
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ return new BasePageResult<>(agencyTeamDto.getPageNum(), page.getSize(), insOrdersPage.getTotal(), page.getPages(),
|
|
|
|
|
+ agencyTeamVoList);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ return new BasePageResult<>(agencyTeamDto.getPageNum(), agencyTeamDto.getPageSize(), 0L, 0L,
|
|
|
|
|
+ agencyTeamVoList);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
@Override
|
|
@Override
|
|
|
public List<SysAgencyLeaderVo> queryAgencyLeader(String userId) {
|
|
public List<SysAgencyLeaderVo> queryAgencyLeader(String userId) {
|
|
|
List<SysRelationPerson> sysRelationPeople = sysRelationPersonMapper.selectList(new LambdaQueryWrapper<SysRelationPerson>()
|
|
List<SysRelationPerson> sysRelationPeople = sysRelationPersonMapper.selectList(new LambdaQueryWrapper<SysRelationPerson>()
|
|
@@ -880,11 +767,6 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
|
|
|
Page<SysUser> insOrdersPage = sysUserService.page(page, wrapper);
|
|
Page<SysUser> insOrdersPage = sysUserService.page(page, wrapper);
|
|
|
List<SysUser> sysUsers = insOrdersPage.getRecords();
|
|
List<SysUser> sysUsers = insOrdersPage.getRecords();
|
|
|
|
|
|
|
|
-
|
|
|
|
|
-// //团队下的人员 报价笔数 核保笔数 出单笔数 签单保费
|
|
|
|
|
-// List<SysUser> sysUsers = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
|
|
|
|
|
-// .likeRight(SysUser::getId, teamUserInfoDto.getDeptId())
|
|
|
|
|
-// .eq(SysUser::getStatus, 1));
|
|
|
|
|
//总保费
|
|
//总保费
|
|
|
for (SysUser sysUser : sysUsers) {
|
|
for (SysUser sysUser : sysUsers) {
|
|
|
List<InsOrders> insOrderList = insOrdersMapper.selectList(new LambdaQueryWrapper<InsOrders>()
|
|
List<InsOrders> insOrderList = insOrdersMapper.selectList(new LambdaQueryWrapper<InsOrders>()
|
|
@@ -904,12 +786,12 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
|
|
|
.in(InsAreaCompany::getOrderno, orderNoList)
|
|
.in(InsAreaCompany::getOrderno, orderNoList)
|
|
|
.eq(InsAreaCompany::getOrderstatus, 3));
|
|
.eq(InsAreaCompany::getOrderstatus, 3));
|
|
|
if (insAreaCompanies.size() > 0) {
|
|
if (insAreaCompanies.size() > 0) {
|
|
|
- //
|
|
|
|
|
- for (InsAreaCompany insAreaCompany : insAreaCompanies) {
|
|
|
|
|
- //累加每一个子订单的交强险费用+商业险费用+驾意险费用
|
|
|
|
|
- bigDecimal = bigDecimal.add(insAreaCompany.getJqpremium()).add(insAreaCompany.getSypremium()).add(insAreaCompany.getJypremium());
|
|
|
|
|
|
|
+ //累加每一个子订单的交强险费用+商业险费用+驾意险费用
|
|
|
|
|
+ BigDecimal jqpremium = insAreaCompanies.stream().map(InsAreaCompany::getJqpremium).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
|
|
+ BigDecimal sypremium = insAreaCompanies.stream().map(InsAreaCompany::getSypremium).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
|
|
+ BigDecimal jypremium = insAreaCompanies.stream().map(InsAreaCompany::getJypremium).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ bigDecimal = jqpremium.add(sypremium).add(jypremium);
|
|
|
}
|
|
}
|
|
|
//出单笔数
|
|
//出单笔数
|
|
|
teamUserInfoVo.setIssueNum(insAreaCompanies.size());
|
|
teamUserInfoVo.setIssueNum(insAreaCompanies.size());
|