| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559 |
- package com.ydtech.modules.esm.service.impl;
- import cn.hutool.core.collection.CollUtil;
- import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
- import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
- import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
- import com.github.pagehelper.PageHelper;
- import com.ydtech.constants.enums.dict.organization.OrganizationSource;
- import com.ydtech.core.page.HttpResult;
- import com.ydtech.core.page.PageResult;
- import com.ydtech.exception.SystemException;
- import com.ydtech.modules.admin.constants.UserWorkStatus;
- import com.ydtech.modules.admin.model.SysDept;
- import com.ydtech.modules.admin.model.SysUser;
- import com.ydtech.modules.admin.model.dto.SysUserDto;
- import com.ydtech.modules.admin.model.dto.SysUserTeamDto;
- import com.ydtech.modules.admin.model.dto.SysUserTeamStaticDto;
- import com.ydtech.modules.admin.model.vo.AppCustomerManagementQueryVo;
- import com.ydtech.modules.admin.model.vo.SysReferrerVo;
- import com.ydtech.modules.admin.service.SysDeptService;
- import com.ydtech.modules.admin.service.SysUserService;
- import com.ydtech.modules.base.controller.BaseController;
- import com.ydtech.modules.base.model.dto.PageDto;
- import com.ydtech.modules.base.model.vo.PageVo;
- import com.ydtech.modules.esm.dao.EsmUserReferrerMapper;
- import com.ydtech.modules.esm.model.EsmUserReferrer;
- import com.ydtech.modules.esm.model.QueryChannel;
- import com.ydtech.modules.esm.model.vo.*;
- import com.ydtech.modules.esm.service.EsmUserReferrerService;
- import com.ydtech.modules.order.entity.BasePageResult;
- import com.ydtech.utils.StringUtils;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.jdbc.core.JdbcTemplate;
- import org.springframework.jdbc.core.RowCallbackHandler;
- import org.springframework.stereotype.Service;
- import javax.sql.DataSource;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- import java.util.*;
- import java.util.stream.Collectors;
- import java.util.stream.Stream;
- @Service
- public class EsmUserReferrerServiceImpl extends ServiceImpl<EsmUserReferrerMapper, EsmUserReferrer>
- implements EsmUserReferrerService {
- @Autowired
- public DataSource dataSource;
- @Autowired
- private SysUserService sysUserService;
- @Autowired
- private SysDeptService sysDeptService;
- @Autowired
- private EsmUserReferrerService esmUserReferrerService;
- // 递归查找节点的所有父级节点
- public List<EsmUserReferrer> findParents(String userId) {
- List<EsmUserReferrer> referrers = new ArrayList<>();
- EsmUserReferrer esmUserReferrer = esmUserReferrerService.getById(userId);
- //找不到用户的推荐关系
- if (esmUserReferrer == null) {
- return null;
- }
- List<EsmUserReferrer> esmUserReferrers =
- esmUserReferrerService.list(new LambdaQueryWrapper<EsmUserReferrer>()
- .eq(EsmUserReferrer::getAffiliation, esmUserReferrer.getAffiliation())
- .ne(EsmUserReferrer::getId, esmUserReferrer.getId()));
- findParentsRecursive(esmUserReferrer.getReferrerId(), esmUserReferrers, referrers);
- return referrers;
- }
- private static void findParentsRecursive(String userId, List<EsmUserReferrer> esmUserReferrers, List<EsmUserReferrer> referrers) {
- if (esmUserReferrers.isEmpty())
- return;
- EsmUserReferrer collect = esmUserReferrers.stream().filter(item -> item.getId().equals(userId)).findFirst()
- .orElse(null);
- if (collect != null) {
- if (collect.getId().equals(collect.getReferrerId())) {
- referrers.add(collect);
- } else {
- referrers.add(collect);
- findParentsRecursive(collect.getReferrerId(), esmUserReferrers, referrers);
- }
- }
- }
- @Override
- public Map buildLevelInfo(SysUser agent) {
- Map m = new HashMap();
- LambdaQueryWrapper<EsmUserReferrer> lqw = new LambdaQueryWrapper<>();
- lqw.eq(EsmUserReferrer::getReferrerId, agent.getId());
- lqw.ne(EsmUserReferrer::getId, agent.getId());
- List<EsmUserReferrer> listAll = esmUserReferrerService.list(lqw);
- List<SysUser> oneList = new ArrayList<>();
- List<SysUser> oneTempList = new ArrayList<>();
- listAll.forEach(a -> {
- SysUser sysUser = sysUserService.getById(a.getId());
- if (sysUser.getStatus() == 1) {
- oneList.add(sysUser);
- } else {
- oneTempList.add(sysUser);
- }
- });
- m.put("list1", oneList);
- m.put("list2", oneTempList);
- return m;
- }
- @Override
- public void buildLevelList(SysUser user, List<SysUser> oneList, List<SysUser> oneTempList) {
- Map<String, List<SysUser>> oneMap = buildLevelInfo(user);
- oneList.addAll(oneMap.get("list1"));
- oneTempList.addAll(oneMap.get("list2"));
- }
- @Override
- public void addReferrer(String referrerId, String nextPK) {
- //if(referrerId.equals(nextPK)) throw new SystemException("推荐人不能是自己");
- //推荐人信息
- EsmUserReferrer referrer = getById(referrerId);
- EsmUserReferrer eur = new EsmUserReferrer();
- if (null == referrer) {
- //推荐人是团队长的时候,先固定队长是首级
- eur.setId(referrerId);
- eur.setLevel(0);
- eur.setAffiliation(referrerId);
- SysUser user = sysUserService.getById(referrerId);
- eur.setReferrerId(referrerId);
- eur.setReferrerName(user.getName());
- esmUserReferrerService.save(eur);
- //查询团队长的id,并将团队长作为推荐人
- referrer = getById(referrerId);
- eur.setId(nextPK);
- eur.setReferrerName(referrer.getReferrerName());
- eur.setReferrerId(referrer.getReferrerId());
- eur.setLevel(referrer.getLevel() + 1);
- eur.setAffiliation(referrer.getAffiliation());
- esmUserReferrerService.saveOrUpdate(eur);
- } else {
- //已经级联过的代理再作为推荐人的时候,推荐人是传入的推荐人信息
- SysUser user = sysUserService.getById(referrerId);
- eur.setId(nextPK);
- eur.setReferrerId(referrerId);
- eur.setReferrerName(user.getName());
- eur.setLevel(referrer.getLevel() + 1);
- eur.setAffiliation(referrer.getAffiliation());
- esmUserReferrerService.saveOrUpdate(eur);
- }
- }
- @Override
- public boolean deldeleteByReferrerId(String userId) {
- LambdaQueryWrapper<EsmUserReferrer> queryWrapper = new LambdaQueryWrapper<>();
- queryWrapper.eq(EsmUserReferrer::getId, userId);
- return remove(queryWrapper);
- }
- @Override
- public List<String> getUpUser(String userId, List<String> list) {
- EsmUserReferrer esmUserReferrer = this.getById(userId);
- if (esmUserReferrer == null) {
- return list;
- }
- list.add(esmUserReferrer.getId());
- if (!esmUserReferrer.getReferrerId().equals(userId)) {
- getUpUser(esmUserReferrer.getReferrerId(), list);
- }
- return list;
- }
- @Override
- public Page<SysUser> getUserPage(Page page, SysUserDto dto) {
- return baseMapper.getUserPage(page, dto);
- }
- @Override
- public Page<QueryChannel> getQueryChannelPage(Page page, QueryChannel queryChannel) {
- return baseMapper.getQueryChannelPage(page, queryChannel);
- }
- @Override
- public HttpResult<PageVo<SysReferrerVo>> gainReferrerPage(PageDto<SysReferrerVo> pageDto) {
- if (StringUtils.isNotEmpty(pageDto.getDto().getAffiliation())) {
- EsmUserReferrer esmUserReferrer = this.getById(pageDto.getDto().getAffiliation());
- if (esmUserReferrer == null) {
- return HttpResult.error("工号有误,请重新输入");
- }
- List<String> up3list = new ArrayList<>();
- getUpUser(pageDto.getDto().getAffiliation(), up3list);
- List<String> down3list = this.baseMapper.getIdDown3(pageDto.getDto().getAffiliation());
- List<String> ids = new ArrayList<>();
- ids.addAll(up3list);
- ids.addAll(down3list);
- ids.add(pageDto.getDto().getAffiliation());
- pageDto.getDto().setIds(ids);
- pageDto.getDto().setAffiliation(null);
- }
- PageVo<SysReferrerVo> pageVo = new PageVo();
- //获取分页数量
- int total = super.baseMapper.countReferrerByAffiliation(pageDto);
- // pageVo.setTotalSize(total);
- // PageVo.buildPageInfo(pageDto,pageVo);
- //计算mysql分页起索引
- int firstIndex = pageDto.getPageNum() == 1 ? 0 : (pageDto.getPageNum() - 1) * pageDto.getPageSize();
- //计算mysql分页总页数
- int totalPages = total % pageDto.getPageSize() == 0 ? total / pageDto.getPageSize() : total / pageDto.getPageSize() + 1;
- //响应
- pageVo.setTotalSize(total);
- pageVo.setPageNum(pageDto.getPageNum());
- pageVo.setPageSize(pageDto.getPageSize());
- pageVo.setTotalPages(totalPages);
- //请求替换分页开始索引
- pageDto.setPageNum(firstIndex);
- pageVo.setContent(super.baseMapper.selectReferrerByAffiliation(pageDto));
- return HttpResult.ok(pageVo);
- }
- /**
- * 人员业绩统计
- *
- * @param whereCase
- * @param paramValues
- * @return
- */
- public List<EsmUserPolicyVO> countUserPolicy(String whereCase, Object[] paramValues) {
- List<EsmUserPolicyVO> recordList = new ArrayList<EsmUserPolicyVO>();
- String sql = "select b.teamlevel,b.name username,\n" +
- "sum(case when orderstatus in (1,2,3,4) then 1 else 0 end) ordernum,\n" +
- "sum(case when orderstatus=3 then 1 else 0 end) policynum,\n" +
- "sum(case when orderstatus=3 then sumpremium else 0 end) sumpremium\n" +
- "from v_user_referrer b \n" +
- "left join v_user_order a on b.id=a.id \n" +
- "and a.createtime between ? and ? \n" +
- "where b.affiliation=? \n" +
- "group by b.teamlevel,b.name order by b.teamlevel;";
- JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
- jdbcTemplate.query(sql, paramValues,
- new RowCallbackHandler() {
- @Override
- public void processRow(ResultSet resultSet) throws SQLException {
- EsmUserPolicyVO model = new EsmUserPolicyVO();
- model.setTeamlevel(resultSet.getString("teamlevel"));
- model.setUsername(resultSet.getString("username"));
- model.setOrdernum(resultSet.getInt("ordernum"));
- model.setPolicynum(resultSet.getInt("policynum"));
- model.setSumpremium(resultSet.getDouble("sumpremium"));
- recordList.add(model);
- }
- });
- return recordList;
- }
- /**
- * 团队业绩统计
- *
- * @param whereCase
- * @param paramValues
- * @return
- */
- public List<EsmTeamPolicyVO> countTeamPolicy(String whereCase, Object[] paramValues) {
- List<EsmTeamPolicyVO> recordList = new ArrayList<>();
- String sql = "select teamlevel,sum(teamnum) teamnum, sum(sumpremium) sumpremium,sum(usernum) usernum from \n" +
- "(select a.`level` teamlevel,count(distinct id) teamnum, 0 sumpremium,0 usernum\n" +
- "from v_user_order a\n" +
- "where a.affiliation=?\n" +
- "group by a.`level`\n" +
- "union all \n" +
- "select 9 teamlevel,count(distinct a.id) teamnum, 0 sumpremium,0 usernum\n" +
- "from esm_user_referrer a\n" +
- "left join sys_user b on a.id=b.id\n" +
- "where a.affiliation=? and b.status=2 " +
- "union all \n" +
- "select a.`level` teamlevel,0 teamnum, sum(sumpremium) sumpremium,count(distinct id) usernum\n" +
- "from v_user_order a\n" +
- "where a.affiliation=? and a.orderstatus=3\n" +
- "and a.createtime between ? and ? \n" +
- "group by a.`level`) t group by teamlevel";
- JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
- jdbcTemplate.query(sql, paramValues,
- new RowCallbackHandler() {
- @Override
- public void processRow(ResultSet resultSet) throws SQLException {
- EsmTeamPolicyVO model = new EsmTeamPolicyVO();
- model.setTeamlevel(resultSet.getString("teamlevel"));
- model.setTeamnum(resultSet.getInt("teamnum"));
- model.setUsernum(resultSet.getInt("usernum"));
- model.setSumpremium(resultSet.getDouble("sumpremium"));
- recordList.add(model);
- }
- });
- return recordList;
- }
- /**
- * 人员团队业绩统计--所有业务员都可查询
- *
- * @return
- */
- @Override
- public EsmUserCountVO queryUserCount(TeamUserQryVO record) {
- EsmUserCountVO esmUserCountVO = new EsmUserCountVO();
- List<EsmTeamPolicyVO> hzList = new ArrayList<>();
- List<EsmUserPolicyVO> userPolicyList = new ArrayList<>();
- List<EsmUserPolicyVO> userPolicyList0 = new ArrayList<>();
- List<EsmUserPolicyVO> userPolicyList1 = new ArrayList<>();
- List<EsmUserPolicyVO> userPolicyList2 = new ArrayList<>();
- List<EsmUserPolicyVO> userPolicyList3 = new ArrayList<>();
- List<EsmUserPolicyVO> userPolicyList9 = new ArrayList<>();
- EsmUserReferrer esmUserReferrer = getById(record.getId());
- if (esmUserReferrer != null) {
- List<String> userList1 = new ArrayList<>();
- List<String> userList2 = new ArrayList<>();
- List<String> userList3 = new ArrayList<>();
- //本级信息
- //明细数据加工
- List<String> userList0 = new ArrayList<>();
- userList0.add(esmUserReferrer.getId());
- userPolicyList0 = this.baseMapper.queryOrderCount(userList0, record.getStartdate(), record.getEnddate());
- //汇总数据加工
- EsmTeamPolicyVO esmTeamPolicyVO0 = this.baseMapper.queryOrderCountHz(userList0, record.getStartdate(), record.getEnddate());
- EsmTeamPolicyVO esmTeamPolicyVO1 = new EsmTeamPolicyVO();
- EsmTeamPolicyVO esmTeamPolicyVO2 = new EsmTeamPolicyVO();
- EsmTeamPolicyVO esmTeamPolicyVO3 = new EsmTeamPolicyVO();
- esmTeamPolicyVO2.setTeamlevel("二级会员");
- esmTeamPolicyVO3.setTeamlevel("三级会员");
- if (esmTeamPolicyVO0 == null) {
- esmTeamPolicyVO0 = new EsmTeamPolicyVO();
- esmTeamPolicyVO0.setSumpremium(0);
- esmTeamPolicyVO0.setUsernum(0);
- } else {
- esmTeamPolicyVO0.setUsernum(1);
- }
- esmTeamPolicyVO0.setTeamlevel("本人");
- esmTeamPolicyVO0.setTeamnum(1);
- // 一级团队信息
- userList1 = this.baseMapper.getIdDown_1(esmUserReferrer.getId());
- esmTeamPolicyVO1.setTeamlevel("一级会员");
- if (userList1 != null && !userList1.isEmpty()) {
- userPolicyList1 = this.baseMapper.queryOrderCount(userList1, record.getStartdate(), record.getEnddate());
- EsmTeamPolicyVO esmTeamPolicyVO1_t = this.baseMapper.queryOrderCountHz(userList1, record.getStartdate(),
- record.getEnddate());
- if (esmTeamPolicyVO1_t != null) {
- esmTeamPolicyVO1.setSumpremium(Double.parseDouble(String.format("%.2f",esmTeamPolicyVO1_t.getSumpremium())));
- esmTeamPolicyVO1.setUsernum(userPolicyList1.size());//出单人力
- }
- esmTeamPolicyVO1.setTeamnum(userList1.size());//团队人数
- // 二级团队信息
- userList2 = this.baseMapper.getIdDown_2(esmUserReferrer.getId());
- esmTeamPolicyVO2.setTeamlevel("二级会员");
- if (userList2 != null && !userList2.isEmpty()) {
- userPolicyList2 = this.baseMapper.queryOrderCount(userList2, record.getStartdate(), record.getEnddate());
- EsmTeamPolicyVO esmTeamPolicyVO2_t = this.baseMapper.queryOrderCountHz(userList2, record.getStartdate(),
- record.getEnddate());
- if (esmTeamPolicyVO2_t != null) {
- esmTeamPolicyVO2.setSumpremium(Double.parseDouble(String.format("%.2f",esmTeamPolicyVO2_t.getSumpremium())));
- esmTeamPolicyVO2.setUsernum(userPolicyList2.size());
- }
- esmTeamPolicyVO2.setTeamnum(userList2.size());
- // 三级团队信息
- userList3 = this.baseMapper.getIdDown_3(esmUserReferrer.getId());
- if (userList3 != null && !userList3.isEmpty()) {
- userPolicyList3 = this.baseMapper.queryOrderCount(userList3, record.getStartdate(), record.getEnddate());
- EsmTeamPolicyVO esmTeamPolicyVO3_t = this.baseMapper.queryOrderCountHz(userList3, record.getStartdate(), record.getEnddate());
- esmTeamPolicyVO3.setTeamlevel("三级会员");
- esmTeamPolicyVO3.setTeamnum(userList3.size());
- if (esmTeamPolicyVO3_t != null) {
- esmTeamPolicyVO3.setSumpremium(Double.parseDouble(String.format("%.2f",esmTeamPolicyVO3_t.getSumpremium())));
- esmTeamPolicyVO3.setUsernum(userPolicyList3.size());
- }
- }
- }
- }
- //临时团队
- List<String> registList = this.baseMapper.getIdDown3_regist(record.getId());
- if (registList != null && !registList.isEmpty()) {
- userPolicyList9 = this.baseMapper.queryOrderCount(registList, record.getStartdate(), record.getEnddate());
- }
- EsmTeamPolicyVO esmTeamPolicyVO9 = new EsmTeamPolicyVO();
- esmTeamPolicyVO9.setTeamlevel("临时会员");
- esmTeamPolicyVO9.setTeamnum(registList == null ? 0 : registList.size());
- //汇总
- List<String> userList = new ArrayList<>();
- userList.addAll(userList0);
- userList.addAll(userList1);
- userList.addAll(userList2);
- userList.addAll(userList3);
- userList.addAll(registList);
- userPolicyList = this.baseMapper.queryOrderCount(userList, record.getStartdate(), record.getEnddate());
- EsmTeamPolicyVO esmTeamPolicyVO = new EsmTeamPolicyVO();
- EsmTeamPolicyVO esmTeamPolicyVO_t = this.baseMapper.queryOrderCountHz(userList, record.getStartdate(), record.getEnddate());
- if (esmTeamPolicyVO_t != null) {
- esmTeamPolicyVO.setSumpremium(Double.parseDouble(String.format("%.2f",esmTeamPolicyVO_t.getSumpremium())));
- esmTeamPolicyVO.setUsernum(userPolicyList.size());
- }
- esmTeamPolicyVO.setTeamlevel("汇总");
- esmTeamPolicyVO.setTeamnum(userList.size());
- hzList.add(esmTeamPolicyVO);
- hzList.add(esmTeamPolicyVO0);
- hzList.add(esmTeamPolicyVO1);
- hzList.add(esmTeamPolicyVO2);
- hzList.add(esmTeamPolicyVO3);
- hzList.add(esmTeamPolicyVO9);
- esmUserCountVO.setHzList(hzList);
- userPolicyList1.forEach(x-> x.setTeamlevel("1"));
- userPolicyList2.forEach(x-> x.setTeamlevel("2"));
- userPolicyList3.forEach(x-> x.setTeamlevel("3"));
- Map<String, String> collect = Stream.of(userPolicyList1, userPolicyList2, userPolicyList3)
- .flatMap(List::stream)
- .collect(Collectors.toMap(EsmUserPolicyVO::getId, EsmUserPolicyVO::getTeamlevel));
- userPolicyList.forEach(x -> {
- String s = collect.get(x.getId());
- x.setTeamlevel(s);
- });
- EsmUserCountVO.AggregateDataList aggregateDataList = new EsmUserCountVO.AggregateDataList(userPolicyList);
- EsmUserCountVO.AggregateDataList aggregateDataList0 = new EsmUserCountVO.AggregateDataList(userPolicyList0);
- EsmUserCountVO.AggregateDataList aggregateDataList1 = new EsmUserCountVO.AggregateDataList(userPolicyList1);
- EsmUserCountVO.AggregateDataList aggregateDataList2 = new EsmUserCountVO.AggregateDataList(userPolicyList2);
- EsmUserCountVO.AggregateDataList aggregateDataList3 = new EsmUserCountVO.AggregateDataList(userPolicyList3);
- EsmUserCountVO.AggregateDataList aggregateDataList9 = new EsmUserCountVO.AggregateDataList(userPolicyList9);
- esmUserCountVO.setAggregateDataLists(aggregateDataList);
- esmUserCountVO.setAggregateDataLists0(aggregateDataList0);
- esmUserCountVO.setAggregateDataLists1(aggregateDataList1);
- esmUserCountVO.setAggregateDataLists2(aggregateDataList2);
- esmUserCountVO.setAggregateDataLists3(aggregateDataList3);
- esmUserCountVO.setAggregateDataLists9(aggregateDataList9);
- } else {
- throw new SystemException("内部错误");
- }
- return esmUserCountVO;
- }
- public List<EsmUserReferrer> queryList(String affiliation) {
- return super.baseMapper.queryList(affiliation);
- }
- @Override
- public BasePageResult<SysUserTeamDto> getTeamUser(AppCustomerManagementQueryVo managementQueryVo, String userId, SysDept dept) {
- List<EsmUserReferrer> esmUserReferrers = lambdaQuery().eq(EsmUserReferrer::getReferrerId, userId).orderByDesc(EsmUserReferrer::getLevel).list();
- if (esmUserReferrers.isEmpty()) {
- return new BasePageResult<>();
- }
- int level = esmUserReferrers.get(0).getLevel();
- int i = esmUserReferrers.get(0).getLevel() + 3;
- PageHelper.startPage(managementQueryVo.getPageNum(), managementQueryVo.getPageSize());
- if ("2".equals(managementQueryVo.getAuthenticationStatus())) {
- managementQueryVo.setAuthenticationStatus("-1");
- }
- List<SysUserTeamDto> byTeam = baseMapper.getByTeam(managementQueryVo, userId, i);
- // 个代特殊处理返回
- if (OrganizationSource.OS_2.getCode().equals(dept.getManagementSource())) {
- if(CollUtil.isNotEmpty(byTeam)){
- for (SysUserTeamDto sysUserTeamDto : byTeam) {
- if (UserWorkStatus.UWS_1.getCode().equals(sysUserTeamDto.getStatus())){
- if(sysUserTeamDto.getLevel().equals(level)){
- sysUserTeamDto.setLevelName("一级代理");
- } else if (sysUserTeamDto.getLevel().equals(level + 1)){
- sysUserTeamDto.setLevelName("二级代理");
- } else if (sysUserTeamDto.getLevel().equals(level + 2)){
- sysUserTeamDto.setLevelName("三级代理");
- }
- }else{
- sysUserTeamDto.setLevelName("临时代理");
- }
- }
- }
- }
- PageResult<SysUserTeamDto> sysUserPageResult = new PageResult<>(byTeam);
- return new BasePageResult<>(managementQueryVo.getPageNum(), managementQueryVo.getPageSize(), sysUserPageResult.getTotalSize(),
- sysUserPageResult.getTotalPages(), sysUserPageResult.getContent());
- }
- /**
- * 人员团队业绩统计--指定业务员查询
- *
- * @return
- */
- @Override
- public List<EsmUserPolicyForUserVO> queryUserCountForUser(TeamUserQryVO record) {
- return this.baseMapper.queryOrderCountForUser(record.getId(), record.getStartdate(), record.getEnddate());
- }
- @Override
- public List<SysUserTeamStaticDto> authStatics(String userId, String startTime, String endTime, Integer dateType) {
- List<EsmUserReferrer> esmUserReferrers = lambdaQuery().eq(EsmUserReferrer::getReferrerId, userId).orderByDesc(EsmUserReferrer :: getLevel).list();
- if (esmUserReferrers.isEmpty()) {
- return new ArrayList<>();
- }
- int i = esmUserReferrers.get(0).getLevel() + 3;
- List<SysUserTeamStaticDto> dtoList;
- if (dateType.equals(0)) {
- dtoList = baseMapper.authStatics(userId, i);
- } else if (dateType.equals(1)){
- dtoList = baseMapper.authNowStatics(userId, i,startTime,endTime);
- } else if(dateType.equals(2)){
- dtoList = baseMapper.authSevenStatics(userId, i,startTime,endTime);
- } else{
- dtoList = baseMapper.authThreeStatics(userId, i,startTime,endTime);
- }
- return dtoList;
- }
- }
|