|
|
@@ -17,6 +17,7 @@ import com.ydtech.modules.admin.model.vo.*;
|
|
|
import com.ydtech.modules.admin.service.SysAgencyLeaderService;
|
|
|
import com.ydtech.modules.admin.service.SysDeptService;
|
|
|
import com.ydtech.modules.admin.service.SysPartnerService;
|
|
|
+import com.ydtech.modules.admin.service.SysUserService;
|
|
|
import com.ydtech.modules.base.controller.BaseController;
|
|
|
import com.ydtech.modules.order.dao.InsAreaCompanyMapper;
|
|
|
import com.ydtech.modules.order.dao.InsOrdersMapper;
|
|
|
@@ -53,6 +54,8 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
|
|
|
@Resource
|
|
|
private SysUserMapper sysUserMapper;
|
|
|
|
|
|
+ @Resource
|
|
|
+ private SysUserService sysUserService;
|
|
|
@Resource
|
|
|
private InsOrdersMapper insOrdersMapper;
|
|
|
|
|
|
@@ -231,7 +234,7 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
|
|
|
if (sysAgencyLeaders.size() > 0) {
|
|
|
for (SysAgencyLeader record : sysAgencyLeaders) {
|
|
|
for (SysAgencyLeaderVo sysAgencyLeaderVo : sysAgencyLeaderVos) {
|
|
|
- if (record.getId().equals(sysAgencyLeaderVo.getId()) ) {
|
|
|
+ if (record.getId().equals(sysAgencyLeaderVo.getId())) {
|
|
|
String source = record.getSource();
|
|
|
if (!StringUtils.isNullOrEmpty(source)) {
|
|
|
String[] split = source.split(",");
|
|
|
@@ -260,7 +263,7 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
|
|
|
if (records.size() > 0) {
|
|
|
for (SysAgencyLeader record : records) {
|
|
|
for (SysAgencyLeaderVo sysAgencyLeaderVo : sysAgencyLeaderVos) {
|
|
|
- if (record.getId().equals(sysAgencyLeaderVo.getId()) ) {
|
|
|
+ if (record.getId().equals(sysAgencyLeaderVo.getId())) {
|
|
|
String source = record.getSource();
|
|
|
if (!StringUtils.isNullOrEmpty(source)) {
|
|
|
String[] split = source.split(",");
|
|
|
@@ -383,7 +386,7 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
|
|
|
agencyExtractFee.setHistoryFee(historyFee);
|
|
|
//可提现 = 总抽成-已提现
|
|
|
agencyExtractFee.setCashFee(multiply.subtract(historyFee));
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
agencyExtractFee.setHistoryFee(new BigDecimal("0.00"));
|
|
|
agencyExtractFee.setCashFee(multiply.subtract(new BigDecimal("0.00")));
|
|
|
}
|
|
|
@@ -458,7 +461,7 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
|
|
|
agencyExtractFee.setHistoryFee(historyFee);
|
|
|
//可提现 = 总抽成-已提现
|
|
|
agencyExtractFee.setCashFee(multiply.subtract(historyFee));
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
agencyExtractFee.setHistoryFee(new BigDecimal("0.00"));
|
|
|
agencyExtractFee.setCashFee(multiply.subtract(new BigDecimal("0.00")));
|
|
|
}
|
|
|
@@ -541,7 +544,7 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
|
|
|
agencyExtractFee.setHistoryFee(historyFee);
|
|
|
//可提现 = 总抽成-已提现
|
|
|
agencyExtractFee.setCashFee(multiply.subtract(historyFee));
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
agencyExtractFee.setHistoryFee(new BigDecimal("0.00"));
|
|
|
agencyExtractFee.setCashFee(multiply.subtract(new BigDecimal("0.00")));
|
|
|
}
|
|
|
@@ -555,434 +558,339 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
|
|
|
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++;
|
|
|
- }
|
|
|
+// @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;
|
|
|
+// }
|
|
|
|
|
|
- }
|
|
|
- }
|
|
|
- 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
|
|
|
+ public BasePageResult<TeamInformation> queryTeamInfoPage(TeamInformationDto teamInformationDto) {
|
|
|
+ String userId = teamInformationDto.getUserId();
|
|
|
+ if (userId == null) {
|
|
|
+ userId=BaseController.getUserId();
|
|
|
}
|
|
|
+ List<TeamInformation> informationList = new ArrayList<>();
|
|
|
+ //机构负责人查询机构下的团队
|
|
|
+ SysAgencyLeader sysAgencyLeaders = sysAgencyLeaderMapper.selectOne(new LambdaQueryWrapper<SysAgencyLeader>().eq(SysAgencyLeader::getUserId, userId)
|
|
|
+ .eq(SysAgencyLeader::getDelFlag, 1));
|
|
|
+ if (sysAgencyLeaders == null) return null;
|
|
|
+ String[] split = sysAgencyLeaders.getSource().split(",");
|
|
|
|
|
|
+ Page<SysDept> page = new Page<>(teamInformationDto.getPageNum(), teamInformationDto.getPageSize());
|
|
|
|
|
|
- return informationList;
|
|
|
- }
|
|
|
+ LambdaQueryWrapper<SysDept> wrapper = new LambdaQueryWrapper<>();
|
|
|
+ wrapper.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());
|
|
|
|
|
|
- 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) {
|
|
|
+ Page<SysDept> insOrdersPage = sysDeptService.page(page, wrapper);
|
|
|
+ List<SysDept> sysDeptList = insOrdersPage.getRecords();
|
|
|
+
|
|
|
+ if (sysDeptList.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++;
|
|
|
- }
|
|
|
+ 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());
|
|
|
|
|
|
- }
|
|
|
- }
|
|
|
- teamInformation.setOrderManNum(num);
|
|
|
- informationList.add(teamInformation);
|
|
|
- Integer type = teamInformationDto.getType();
|
|
|
- if (type == 1) {
|
|
|
- int size = informationList.size();
|
|
|
- if (size == 2) {
|
|
|
- return informationList;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
+ } 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);
|
|
|
}
|
|
|
- }
|
|
|
- }
|
|
|
- return informationList;
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- @Override
|
|
|
- public BasePageResult<TeamInformation> queryTeamInfoPage(TeamInformationDto teamInformationDto) {
|
|
|
- String userId = BaseController.getUser().getId();
|
|
|
- List<TeamInformation> informationList = new ArrayList<>();
|
|
|
- //合伙人
|
|
|
- boolean c = sysPartnerService.checkPartner(userId);
|
|
|
- if (c) {
|
|
|
- //查询所有推荐的机构负责人核算总保费
|
|
|
- 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>()
|
|
|
- .in(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++;
|
|
|
- }
|
|
|
+ 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.setOrderManNum(num);
|
|
|
- informationList.add(teamInformation);
|
|
|
-
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
}
|
|
|
+ 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++;
|
|
|
+ }
|
|
|
|
|
|
- int total = informationList.size();
|
|
|
- double v = (double) total / 10;
|
|
|
- long pages = Math.round(v);
|
|
|
-
|
|
|
-
|
|
|
- int fromIndex = (teamInformationDto.getPageNum() - 1) * teamInformationDto.getPageSize();
|
|
|
- int toIndex = Math.min(fromIndex + teamInformationDto.getPageSize(), informationList.size());
|
|
|
-
|
|
|
- if (fromIndex > informationList.size() || fromIndex < 0) {
|
|
|
- return new BasePageResult<>(teamInformationDto.getPageNum(), teamInformationDto.getPageSize(), total, pages,
|
|
|
- new ArrayList<>()); // 如果页码超出范围,返回空列表
|
|
|
+ }
|
|
|
}
|
|
|
+ teamInformation.setOrderManNum(num);
|
|
|
+ informationList.add(teamInformation);
|
|
|
|
|
|
- List<TeamInformation> list = informationList.subList(fromIndex, toIndex);
|
|
|
-
|
|
|
- return new BasePageResult<>(teamInformationDto.getPageNum(), teamInformationDto.getPageSize(), total, pages,
|
|
|
- list);
|
|
|
}
|
|
|
- }
|
|
|
- //校验当前用户是否为机构负责人
|
|
|
- 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()));
|
|
|
-
|
|
|
- Page<SysDept> page = new Page<>(teamInformationDto.getPageNum(), teamInformationDto.getPageSize());
|
|
|
- LambdaQueryWrapper<SysDept> wrapper = new LambdaQueryWrapper<>();
|
|
|
- wrapper.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());
|
|
|
-
|
|
|
-
|
|
|
- Page<SysDept> insOrdersPage =sysDeptService.page(page, wrapper);
|
|
|
-
|
|
|
- List<SysDept> sysDeptList = insOrdersPage.getRecords();
|
|
|
|
|
|
- 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++;
|
|
|
- }
|
|
|
+ }
|
|
|
+ return new BasePageResult<>(teamInformationDto.getPageNum(), page.getSize(), insOrdersPage.getTotal(), page.getPages(),
|
|
|
+ informationList);
|
|
|
+ }
|
|
|
|
|
|
- }
|
|
|
- }
|
|
|
- teamInformation.setOrderManNum(num);
|
|
|
- informationList.add(teamInformation);
|
|
|
+ @Override
|
|
|
+ public List<SysAgencyLeaderVo> queryAgencyLeader(String userId) {
|
|
|
+ List<SysRelationPerson> sysRelationPeople = sysRelationPersonMapper.selectList(new LambdaQueryWrapper<SysRelationPerson>()
|
|
|
+ .eq(SysRelationPerson::getSuggestId, userId).eq(SysRelationPerson::getType, 1));
|
|
|
+ if (sysRelationPeople.size() > 0) {
|
|
|
+ //获取所有推荐的机构负责人id
|
|
|
+ List<String> agencyLeaderIds = sysRelationPeople.stream().map(SysRelationPerson::getAgencyLeaderId).collect(Collectors.toList());
|
|
|
|
|
|
- }
|
|
|
+ //获取机构负责人信息
|
|
|
+ List<SysAgencyLeader> sysAgencyLeaders = sysAgencyLeaderMapper.selectList(new LambdaQueryWrapper<SysAgencyLeader>()
|
|
|
+ .in(SysAgencyLeader::getUserId, agencyLeaderIds)
|
|
|
+ .eq(SysAgencyLeader::getDelFlag, 1));
|
|
|
|
|
|
- }
|
|
|
- return new BasePageResult<>(teamInformationDto.getPageNum(), page.getSize(), insOrdersPage.getTotal(), page.getPages(),
|
|
|
- informationList);
|
|
|
+ return BeanUtil.copyToList(sysAgencyLeaders, SysAgencyLeaderVo.class);
|
|
|
}
|
|
|
|
|
|
-
|
|
|
- return new BasePageResult<>(teamInformationDto.getPageNum(), teamInformationDto.getPageSize(), 0, 0,
|
|
|
- informationList);
|
|
|
+ return null;
|
|
|
}
|
|
|
|
|
|
|
|
|
@Override
|
|
|
- public List<TeamUserInfoVo> queryTeamUser(TeamUserInfoDto teamUserInfoDto) {
|
|
|
+ public BasePageResult<TeamUserInfoVo> queryTeamUser(TeamUserInfoDto teamUserInfoDto) {
|
|
|
List<TeamUserInfoVo> teamUserInfoVoList = new ArrayList<>();
|
|
|
- //团队下的人员 报价笔数 核保笔数 出单笔数 签单保费
|
|
|
- List<SysUser> sysUsers = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
|
|
|
- .likeRight(SysUser::getId, teamUserInfoDto.getDeptId())
|
|
|
- .eq(SysUser::getStatus, 1));
|
|
|
+ Page<SysUser> page = new Page<>(teamUserInfoDto.getPageNum(), teamUserInfoDto.getPageSize());
|
|
|
+ LambdaQueryWrapper<SysUser> wrapper = new LambdaQueryWrapper<>();
|
|
|
+ wrapper.likeRight(SysUser::getId, teamUserInfoDto.getDeptId()).eq(SysUser::getStatus, 1);
|
|
|
+
|
|
|
+ Page<SysUser> insOrdersPage = sysUserService.page(page, wrapper);
|
|
|
+ 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) {
|
|
|
List<InsOrders> insOrderList = insOrdersMapper.selectList(new LambdaQueryWrapper<InsOrders>()
|
|
|
.ge(InsOrders::getCreatetime, teamUserInfoDto.getStartTime())
|
|
|
- .ge(StringUtils.isNotEmpty(teamUserInfoDto.getBeginTime()),InsOrders::getCreatetime,teamUserInfoDto.getBeginTime())
|
|
|
- .le(StringUtils.isNotEmpty(teamUserInfoDto.getEndTime()),InsOrders::getCreatetime,teamUserInfoDto.getEndTime())
|
|
|
+ .ge(StringUtils.isNotEmpty(teamUserInfoDto.getBeginTime()), InsOrders::getCreatetime, teamUserInfoDto.getBeginTime())
|
|
|
+ .le(StringUtils.isNotEmpty(teamUserInfoDto.getEndTime()), InsOrders::getCreatetime, teamUserInfoDto.getEndTime())
|
|
|
.eq(InsOrders::getUserid, sysUser.getId()));
|
|
|
//总保费
|
|
|
BigDecimal bigDecimal = new BigDecimal("0.00");
|
|
|
@@ -1026,7 +934,8 @@ public class SysAgencyLeaderServiceImpl extends ServiceImpl<SysAgencyLeaderMappe
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- return teamUserInfoVoList;
|
|
|
+ return new BasePageResult<>(teamUserInfoDto.getPageNum(), page.getSize(), insOrdersPage.getTotal(), page.getPages(),
|
|
|
+ teamUserInfoVoList);
|
|
|
}
|
|
|
|
|
|
|