|
|
@@ -14,7 +14,9 @@ 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.vo.EsmTeamPolicyVO;
|
|
|
+import com.ydtech.modules.esm.model.vo.EsmUserCountVO;
|
|
|
import com.ydtech.modules.esm.model.vo.EsmUserPolicyVO;
|
|
|
+import com.ydtech.modules.esm.model.vo.TeamUserQryVO;
|
|
|
import com.ydtech.modules.esm.service.EsmUserReferrerService;
|
|
|
import com.ydtech.utils.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
@@ -261,6 +263,115 @@ public class EsmUserReferrerServiceImpl extends ServiceImpl<EsmUserReferrerMappe
|
|
|
|
|
|
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<>();
|
|
|
+ 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());
|
|
|
+ if(esmTeamPolicyVO0==null){
|
|
|
+ esmTeamPolicyVO0=new EsmTeamPolicyVO();
|
|
|
+ esmTeamPolicyVO0.setSumpremium(0);
|
|
|
+ esmTeamPolicyVO0.setUsernum(0);
|
|
|
+ }else{
|
|
|
+ esmTeamPolicyVO0.setUsernum(1);
|
|
|
+ }
|
|
|
+ esmTeamPolicyVO0.setTeamlevel("本人");
|
|
|
+ esmTeamPolicyVO0.setTeamnum(1);
|
|
|
+ hzList.add(esmTeamPolicyVO0);
|
|
|
+
|
|
|
+ // 一级团队信息
|
|
|
+ userList1 = this.baseMapper.getIdDown_1(esmUserReferrer.getId());
|
|
|
+ EsmTeamPolicyVO esmTeamPolicyVO1=new EsmTeamPolicyVO();
|
|
|
+ esmTeamPolicyVO1.setTeamlevel("一级团队");
|
|
|
+ if(userList1!=null && userList1.size()>0){
|
|
|
+ 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(esmTeamPolicyVO1_t.getSumpremium());
|
|
|
+ esmTeamPolicyVO1.setUsernum(userPolicyList1.size());//出单人力
|
|
|
+ }
|
|
|
+ esmTeamPolicyVO1.setTeamnum(userList1.size());//团队人数
|
|
|
+ // 二级团队信息
|
|
|
+ userList2 = this.baseMapper.getIdDown_2(esmUserReferrer.getId());
|
|
|
+ EsmTeamPolicyVO esmTeamPolicyVO2=new EsmTeamPolicyVO();
|
|
|
+ esmTeamPolicyVO2.setTeamlevel("二级团队");
|
|
|
+ if(userList2!=null && userList2.size()>0){
|
|
|
+ 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(esmTeamPolicyVO2_t.getSumpremium());
|
|
|
+ esmTeamPolicyVO2.setUsernum(userPolicyList2.size());
|
|
|
+ }
|
|
|
+ esmTeamPolicyVO2.setTeamnum(userList2.size());
|
|
|
+ // 三级团队信息
|
|
|
+ /*userList3 = this.baseMapper.getIdDown_3(esmUserReferrer.getId());
|
|
|
+ if(userList3!=null && userList3.size()>0){
|
|
|
+ userPolicyList3=this.baseMapper.queryOrderCount(userList3);
|
|
|
+ EsmTeamPolicyVO esmTeamPolicyVO3=this.baseMapper.queryOrderCountHz(userList3);
|
|
|
+ esmTeamPolicyVO3.setTeamlevel("三级团队");
|
|
|
+ esmTeamPolicyVO3.setTeamnum(userList3.size());
|
|
|
+ hzList.add(esmTeamPolicyVO3);
|
|
|
+ }*/
|
|
|
+ }
|
|
|
+ hzList.add(esmTeamPolicyVO2);
|
|
|
+ }
|
|
|
+ hzList.add(esmTeamPolicyVO1);
|
|
|
+
|
|
|
+ //临时团队
|
|
|
+ List<String> registList= this.baseMapper.getIdDown3_regist(record.getId());
|
|
|
+ EsmTeamPolicyVO esmTeamPolicyVO9=new EsmTeamPolicyVO();
|
|
|
+ esmTeamPolicyVO9.setTeamlevel("临时团队");
|
|
|
+ esmTeamPolicyVO9.setTeamnum(registList==null?0:registList.size());
|
|
|
+ hzList.add(esmTeamPolicyVO9);
|
|
|
+ //汇总
|
|
|
+ List<String> userList=new ArrayList<>();
|
|
|
+ userList.addAll(userList0);
|
|
|
+ userList.addAll(userList1);
|
|
|
+ userList.addAll(userList2);
|
|
|
+ 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(esmTeamPolicyVO_t.getSumpremium());
|
|
|
+ esmTeamPolicyVO.setUsernum(userPolicyList.size());
|
|
|
+ }
|
|
|
+ esmTeamPolicyVO.setTeamlevel("汇总");
|
|
|
+ esmTeamPolicyVO.setTeamnum(userList.size());
|
|
|
+ hzList.add(esmTeamPolicyVO);
|
|
|
+
|
|
|
+ esmUserCountVO.setHzList(hzList);
|
|
|
+ esmUserCountVO.setUserPolicyList(userPolicyList);
|
|
|
+ esmUserCountVO.setUserPolicyList0(userPolicyList0);
|
|
|
+ esmUserCountVO.setUserPolicyList1(userPolicyList1);
|
|
|
+ esmUserCountVO.setUserPolicyList2(userPolicyList2);
|
|
|
+ }else{
|
|
|
+ throw new SystemException("内部错误");
|
|
|
+ }
|
|
|
+
|
|
|
+ return esmUserCountVO;
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
public List<EsmUserReferrer> queryList(String affiliation){
|
|
|
return super.baseMapper.queryList(affiliation);
|