|
@@ -95,166 +95,90 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
|
|
|
}
|
|
}
|
|
|
//判断是要查询用户还是团队
|
|
//判断是要查询用户还是团队
|
|
|
if ("1".equals(quTeamNumDto.getTeamOrUserFlag())) {
|
|
if ("1".equals(quTeamNumDto.getTeamOrUserFlag())) {
|
|
|
- List<SysDept> dept = sysUserMapper.getDept();
|
|
|
|
|
- List<QuOrders> orders = sysUserMapper.getOrders(quTeamNumDto);
|
|
|
|
|
- List<QuTeamNum> list = new ArrayList<>();
|
|
|
|
|
- dept.forEach(item -> {
|
|
|
|
|
- QuTeamNum quTeamNum = new QuTeamNum();
|
|
|
|
|
- quTeamNum.setQuoteNum("0");
|
|
|
|
|
- quTeamNum.setSubmitNum("0");
|
|
|
|
|
- quTeamNum.setHasInsuredNum("0");
|
|
|
|
|
- quTeamNum.setTotalSumpremium("0");
|
|
|
|
|
- quTeamNum.setJqPremiumSum("0");
|
|
|
|
|
- quTeamNum.setSyPremiumSum("0");
|
|
|
|
|
- quTeamNum.setTaxaMountSum("0");
|
|
|
|
|
- orders.forEach(order -> {
|
|
|
|
|
- if (order.getDeptId() != null) {
|
|
|
|
|
- if (order.getDeptId().equals(item.getId())) {
|
|
|
|
|
- //报价次数
|
|
|
|
|
- if (Integer.parseInt(order.getOrderStatus()) > 1) {
|
|
|
|
|
- quTeamNum.setQuoteNum(String.valueOf(Integer.parseInt(quTeamNum.getQuoteNum()) + 1));
|
|
|
|
|
- }
|
|
|
|
|
- //提交核保次数
|
|
|
|
|
- if (Integer.parseInt(order.getOrderStatus()) == 3) {
|
|
|
|
|
- quTeamNum.setSubmitNum(String.valueOf(Integer.parseInt(quTeamNum.getSubmitNum()) + 1));
|
|
|
|
|
- }
|
|
|
|
|
- //已承保次数
|
|
|
|
|
- if (Integer.parseInt(order.getOrderStatus()) == 4) {
|
|
|
|
|
- quTeamNum.setHasInsuredNum(String.valueOf(Integer.parseInt(quTeamNum.getHasInsuredNum()) + 1));
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
|
|
+ List<QuTeamNum> dept = sysUserMapper.getDept(quTeamNumDto);
|
|
|
|
|
|
|
|
- //总保费
|
|
|
|
|
- BigDecimal totalSumpremium = new BigDecimal(quTeamNum.getTotalSumpremium());
|
|
|
|
|
- //交强费用
|
|
|
|
|
- BigDecimal jqPremiumSum = new BigDecimal(quTeamNum.getJqPremiumSum());
|
|
|
|
|
- //商业费用
|
|
|
|
|
- BigDecimal syPremiumSum = new BigDecimal(quTeamNum.getSyPremiumSum());
|
|
|
|
|
- //车船税
|
|
|
|
|
- BigDecimal taxaMountSum = new BigDecimal(quTeamNum.getTaxaMountSum());
|
|
|
|
|
|
|
+ return getQuTeamNumIPage(quTeamNumDto, dept);
|
|
|
|
|
|
|
|
|
|
+ } else if ("2".equals(quTeamNumDto.getTeamOrUserFlag())) {
|
|
|
|
|
+ List<QuTeamNum> dept = sysUserMapper.getUser(quTeamNumDto);
|
|
|
|
|
|
|
|
- if (order.getJqPremium() != null && order.getSyPremium() != null) {
|
|
|
|
|
- //交强险费用
|
|
|
|
|
- quTeamNum.setJqPremiumSum(String.valueOf(jqPremiumSum.add(new BigDecimal(order.getJqPremium()))));
|
|
|
|
|
- //商业险费用
|
|
|
|
|
- quTeamNum.setSyPremiumSum(String.valueOf(syPremiumSum.add(new BigDecimal(order.getSyPremium()))));
|
|
|
|
|
- //总承保保费总数
|
|
|
|
|
- quTeamNum.setTotalSumpremium(String.valueOf(totalSumpremium.add(new BigDecimal(order.getJqPremium())).add(new BigDecimal(order.getSyPremium()))));
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- if (order.getTaxAmount() != null) {
|
|
|
|
|
- //车船税
|
|
|
|
|
- quTeamNum.setTaxaMountSum(String.valueOf(taxaMountSum.add(new BigDecimal(order.getTaxAmount()))));
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- });
|
|
|
|
|
- quTeamNum.setDeptId(item.getId());
|
|
|
|
|
- quTeamNum.setDeptName(item.getName());
|
|
|
|
|
- list.add(quTeamNum);
|
|
|
|
|
- });
|
|
|
|
|
|
|
|
|
|
- return getQuTeamNumIPage(quTeamNumDto, list);
|
|
|
|
|
|
|
+ return getQuTeamNumIPage(quTeamNumDto, dept);
|
|
|
|
|
+ }
|
|
|
|
|
+ throw new SystemException("参数错误");
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
|
|
+ private IPage<QuTeamNum> getQuTeamNumIPage(QuTeamNumDto quTeamNumDto, List<QuTeamNum> dept) {
|
|
|
|
|
+ Map<String, List<QuTeamNum>> collect = new HashMap<>();
|
|
|
|
|
+ int flag;
|
|
|
|
|
+ if (quTeamNumDto.getTeamOrUserFlag().equals("1")) {
|
|
|
|
|
+ collect = dept.stream()
|
|
|
|
|
+ .collect(Collectors.groupingBy(QuTeamNum::getDeptId));
|
|
|
|
|
+ flag = 1;
|
|
|
} else if ("2".equals(quTeamNumDto.getTeamOrUserFlag())) {
|
|
} else if ("2".equals(quTeamNumDto.getTeamOrUserFlag())) {
|
|
|
- List<SysDept> dept = sysUserMapper.getDept();
|
|
|
|
|
- List<SysUser> user = sysUserMapper.getUser(dept);
|
|
|
|
|
- //如果未传时间 就默认当前月
|
|
|
|
|
- if (quTeamNumDto.getCreateTimeStart() == null && quTeamNumDto.getCreateTimeEnd() == null) {
|
|
|
|
|
- LocalDate now = LocalDate.now();
|
|
|
|
|
- quTeamNumDto.setCreateTimeStart(now.with(TemporalAdjusters.firstDayOfMonth()));
|
|
|
|
|
- quTeamNumDto.setCreateTimeEnd(now.with(TemporalAdjusters.lastDayOfMonth()));
|
|
|
|
|
- }
|
|
|
|
|
- List<QuOrders> orders = sysUserMapper.getOrders(quTeamNumDto);
|
|
|
|
|
- List<QuTeamNum> list = new ArrayList<>();
|
|
|
|
|
- user.forEach(item -> {
|
|
|
|
|
- QuTeamNum quTeamNum = new QuTeamNum();
|
|
|
|
|
- quTeamNum.setQuoteNum("0");
|
|
|
|
|
- quTeamNum.setSubmitNum("0");
|
|
|
|
|
- quTeamNum.setHasInsuredNum("0");
|
|
|
|
|
- quTeamNum.setTotalSumpremium("0");
|
|
|
|
|
- quTeamNum.setJqPremiumSum("0");
|
|
|
|
|
- quTeamNum.setSyPremiumSum("0");
|
|
|
|
|
- quTeamNum.setTaxaMountSum("0");
|
|
|
|
|
- orders.forEach(order -> {
|
|
|
|
|
- if (order.getUserId() != null) {
|
|
|
|
|
- if (order.getUserId().equals(item.getId())) {
|
|
|
|
|
- //报价次数
|
|
|
|
|
- if (Integer.parseInt(order.getOrderStatus()) > 1) {
|
|
|
|
|
- quTeamNum.setQuoteNum(String.valueOf(Integer.parseInt(quTeamNum.getQuoteNum()) + 1));
|
|
|
|
|
- }
|
|
|
|
|
- //提交核保次数
|
|
|
|
|
- if (Integer.parseInt(order.getOrderStatus()) == 3) {
|
|
|
|
|
- quTeamNum.setSubmitNum(String.valueOf(Integer.parseInt(quTeamNum.getSubmitNum()) + 1));
|
|
|
|
|
- }
|
|
|
|
|
- //已承保次数
|
|
|
|
|
- if (Integer.parseInt(order.getOrderStatus()) == 4) {
|
|
|
|
|
- quTeamNum.setHasInsuredNum(String.valueOf(Integer.parseInt(quTeamNum.getHasInsuredNum()) + 1));
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ collect = dept.stream()
|
|
|
|
|
+ .collect(Collectors.groupingBy(QuTeamNum::getUserId));
|
|
|
|
|
+ flag = 2;
|
|
|
|
|
+ } else {
|
|
|
|
|
+ flag = 0;
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
- //总保费
|
|
|
|
|
- BigDecimal totalSumpremium = new BigDecimal(quTeamNum.getTotalSumpremium());
|
|
|
|
|
- //交强费用
|
|
|
|
|
- BigDecimal jqPremiumSum = new BigDecimal(quTeamNum.getJqPremiumSum());
|
|
|
|
|
- //商业费用
|
|
|
|
|
- BigDecimal syPremiumSum = new BigDecimal(quTeamNum.getSyPremiumSum());
|
|
|
|
|
- //车船税
|
|
|
|
|
- BigDecimal taxaMountSum = new BigDecimal(quTeamNum.getTaxaMountSum());
|
|
|
|
|
-
|
|
|
|
|
- if (order.getJqPremium() != null && order.getSyPremium() != null) {
|
|
|
|
|
- //交强险费用
|
|
|
|
|
- quTeamNum.setJqPremiumSum(String.valueOf(jqPremiumSum.add(new BigDecimal(order.getJqPremium()))));
|
|
|
|
|
- //商业险费用
|
|
|
|
|
- quTeamNum.setSyPremiumSum(String.valueOf(syPremiumSum.add(new BigDecimal(order.getSyPremium()))));
|
|
|
|
|
- //总承保保费总数
|
|
|
|
|
- quTeamNum.setTotalSumpremium(String.valueOf(totalSumpremium.add(new BigDecimal(order.getJqPremium())).add(new BigDecimal(order.getSyPremium()))));
|
|
|
|
|
|
|
+ List<QuTeamNum> quTeamNums = new ArrayList<>();
|
|
|
|
|
+ collect.forEach((k, v) -> {
|
|
|
|
|
+ QuTeamNum teamNum = new QuTeamNum();
|
|
|
|
|
+ teamNum.setHasInsuredNum("0");
|
|
|
|
|
+ teamNum.setSubmitNum("0");
|
|
|
|
|
+ teamNum.setSyPremiumSum("0");
|
|
|
|
|
+ teamNum.setJqPremiumSum("0");
|
|
|
|
|
+ teamNum.setTaxaMountSum("0");
|
|
|
|
|
+ teamNum.setTotalSumpremium("0");
|
|
|
|
|
+ teamNum.setQuoteNum("0");
|
|
|
|
|
+
|
|
|
|
|
+ if (!v.isEmpty()) {
|
|
|
|
|
+ v.forEach(quTeamNum -> {
|
|
|
|
|
+ if (quTeamNum.getOrderStatus() != null) {
|
|
|
|
|
+ if (quTeamNum.getOrderStatus().equals("3")) {
|
|
|
|
|
+ if (quTeamNum.getJqPremiumSum() == null) {
|
|
|
|
|
+ quTeamNum.setJqPremiumSum("0");
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
- if (order.getTaxAmount() != null) {
|
|
|
|
|
- //车船税
|
|
|
|
|
- quTeamNum.setTaxaMountSum(String.valueOf(taxaMountSum.add(new BigDecimal(order.getTaxAmount()))));
|
|
|
|
|
|
|
+ if (quTeamNum.getSyPremiumSum() == null) {
|
|
|
|
|
+ quTeamNum.setSyPremiumSum("0");
|
|
|
}
|
|
}
|
|
|
|
|
+ //添加总额
|
|
|
|
|
+ teamNum.setTotalSumpremium(String.valueOf(new BigDecimal(teamNum.getTotalSumpremium())
|
|
|
|
|
+ .add(new BigDecimal(quTeamNum.getSyPremiumSum())).add(new BigDecimal(quTeamNum.getJqPremiumSum()))));
|
|
|
|
|
+ teamNum.setSyPremiumSum(String.valueOf(new BigDecimal(teamNum.getSyPremiumSum()).add(new BigDecimal(quTeamNum.getSyPremiumSum()))));
|
|
|
|
|
+ teamNum.setJqPremiumSum(String.valueOf(new BigDecimal(teamNum.getJqPremiumSum()).add(new BigDecimal(quTeamNum.getJqPremiumSum()))));
|
|
|
|
|
+ teamNum.setQuoteNum(String.valueOf(new BigDecimal(teamNum.getQuoteNum()).add(new BigDecimal(quTeamNum.getCount()))));
|
|
|
|
|
+ teamNum.setHasInsuredNum(String.valueOf(new BigDecimal(teamNum.getHasInsuredNum()).add(new BigDecimal(quTeamNum.getCount()))));
|
|
|
|
|
+ }
|
|
|
|
|
+ if (quTeamNum.getOrderStatus().equals("2")) {
|
|
|
|
|
+ teamNum.setSubmitNum(String.valueOf(new BigDecimal(teamNum.getSubmitNum()).add(new BigDecimal(quTeamNum.getCount()))));
|
|
|
|
|
+ teamNum.setQuoteNum(String.valueOf(new BigDecimal(teamNum.getQuoteNum()).add(new BigDecimal(quTeamNum.getCount()))));
|
|
|
|
|
+ }
|
|
|
|
|
+ if (quTeamNum.getOrderStatus().equals("1")) {
|
|
|
|
|
+ teamNum.setQuoteNum(String.valueOf(new BigDecimal(teamNum.getQuoteNum()).add(new BigDecimal(quTeamNum.getCount()))));
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
|
- quTeamNum.setUserId(item.getId());
|
|
|
|
|
- quTeamNum.setUserName(item.getName());
|
|
|
|
|
- quTeamNum.setDeptId(item.getDeptId());
|
|
|
|
|
- quTeamNum.setDeptName(item.getDeptName());
|
|
|
|
|
- list.add(quTeamNum);
|
|
|
|
|
- });
|
|
|
|
|
-
|
|
|
|
|
- return getQuTeamNumIPage(quTeamNumDto, list);
|
|
|
|
|
- }
|
|
|
|
|
- throw new SystemException("参数错误");
|
|
|
|
|
-
|
|
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ if (flag == 1) {
|
|
|
|
|
+ teamNum.setDeptId(v.get(0).getDeptId());
|
|
|
|
|
+ teamNum.setDeptName(v.get(0).getDeptName());
|
|
|
|
|
+ } else if (flag == 2) {
|
|
|
|
|
+ teamNum.setUserId(v.get(0).getUserId());
|
|
|
|
|
+ teamNum.setUserName(v.get(0).getUserName());
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
- private IPage<QuTeamNum> getQuTeamNumIPage(QuTeamNumDto quTeamNumDto, List<QuTeamNum> list) {
|
|
|
|
|
- if (quTeamNumDto.getUserId() != null) {
|
|
|
|
|
- List<QuTeamNum> collect = list.stream().filter(item -> item.getUserId().equals(quTeamNumDto.getUserId())).collect(Collectors.toList());
|
|
|
|
|
- collect = collect.stream().skip((quTeamNumDto.getPageNo() - 1) * quTeamNumDto.getPageSize()).limit(quTeamNumDto.getPageSize()).
|
|
|
|
|
- collect(Collectors.toList());
|
|
|
|
|
- IPage<QuTeamNum> page = new Page<>(quTeamNumDto.getPageNo(), quTeamNumDto.getPageSize(), list.size());
|
|
|
|
|
- page.setRecords(collect);
|
|
|
|
|
- return page;
|
|
|
|
|
- }
|
|
|
|
|
- if (quTeamNumDto.getDeptId() != null) {
|
|
|
|
|
- List<QuTeamNum> collect = list.stream().filter(item -> item.getDeptId().equals(quTeamNumDto.getDeptId())).collect(Collectors.toList());
|
|
|
|
|
- collect = collect.stream().skip((quTeamNumDto.getPageNo() - 1) * quTeamNumDto.getPageSize()).limit(quTeamNumDto.getPageSize()).
|
|
|
|
|
- collect(Collectors.toList());
|
|
|
|
|
- IPage<QuTeamNum> page = new Page<>(quTeamNumDto.getPageNo(), quTeamNumDto.getPageSize(), list.size());
|
|
|
|
|
- page.setRecords(collect);
|
|
|
|
|
- return page;
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ quTeamNums.add(teamNum);
|
|
|
|
|
+ });
|
|
|
|
|
|
|
|
- List<QuTeamNum> collection = list.stream().skip((quTeamNumDto.getPageNo() - 1) * quTeamNumDto.getPageSize()).limit(quTeamNumDto.getPageSize()).
|
|
|
|
|
|
|
+ List<QuTeamNum> collect1 = quTeamNums.stream().skip((quTeamNumDto.getPageNo() - 1) * quTeamNumDto.getPageSize()).limit(quTeamNumDto.getPageSize()).
|
|
|
collect(Collectors.toList());
|
|
collect(Collectors.toList());
|
|
|
- IPage<QuTeamNum> page = new Page<>(quTeamNumDto.getPageNo(), quTeamNumDto.getPageSize(), list.size());
|
|
|
|
|
- page.setRecords(collection);
|
|
|
|
|
|
|
+ IPage<QuTeamNum> page = new Page<>(quTeamNumDto.getPageNo(), quTeamNumDto.getPageSize());
|
|
|
|
|
+ page.setRecords(collect1);
|
|
|
|
|
+ page.setTotal(quTeamNums.size());
|
|
|
return page;
|
|
return page;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -587,7 +511,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
|
|
|
if (StringUtils.isNotEmpty(sysUser.getReferrerId())) {
|
|
if (StringUtils.isNotEmpty(sysUser.getReferrerId())) {
|
|
|
//推荐人
|
|
//推荐人
|
|
|
esmUserReferrerService.addReferrer(sysUser.getReferrerId(), userId);
|
|
esmUserReferrerService.addReferrer(sysUser.getReferrerId(), userId);
|
|
|
- }else if("20".equals(sysUser.getRoleId()) || "21".equals(sysUser.getRoleId())){
|
|
|
|
|
|
|
+ } else if ("20".equals(sysUser.getRoleId()) || "21".equals(sysUser.getRoleId())) {
|
|
|
//如果是 团队长或代码人 并且没有推荐人 则默认推荐人为自己
|
|
//如果是 团队长或代码人 并且没有推荐人 则默认推荐人为自己
|
|
|
esmUserReferrerService.addReferrer(sysUser.getId(), userId);
|
|
esmUserReferrerService.addReferrer(sysUser.getId(), userId);
|
|
|
}
|
|
}
|