Commit d9e82b60 by hongzhong

ydlife 我的团队中数据查询02

parent 840c67aa
...@@ -239,4 +239,11 @@ public interface PractitionerService { ...@@ -239,4 +239,11 @@ public interface PractitionerService {
QueryCustomerInsuredListResponesVO queryCustomerInsuredList(QueryCustomerInsuredListRequestVO requestVO); QueryCustomerInsuredListResponesVO queryCustomerInsuredList(QueryCustomerInsuredListRequestVO requestVO);
QueryPolicyListByHolderCustomerIdResponesVO queryPolicyListByHolderCustomerId(QueryPolicyListByHolderCustomerIdRequestVO requestVO); QueryPolicyListByHolderCustomerIdResponesVO queryPolicyListByHolderCustomerId(QueryPolicyListByHolderCustomerIdRequestVO requestVO);
/**
* 经纪人-根据体系id查询所在的经纪人
* @param sid
* @return
*/
List<Long> getPractitionerIdBySidList(Long sId,String systemType,Integer isActive);
} }
...@@ -753,9 +753,15 @@ public class PractitionerBasicInfoServiceImpl implements PractitionerBasicInfoSe ...@@ -753,9 +753,15 @@ public class PractitionerBasicInfoServiceImpl implements PractitionerBasicInfoSe
public QueryTeamMemberDetailResponseVO queryTeamMemberDetail(QueryTeamMemberDetailRequestVO requestVO) { public QueryTeamMemberDetailResponseVO queryTeamMemberDetail(QueryTeamMemberDetailRequestVO requestVO) {
QueryTeamMemberDetailResponseVO resp = new QueryTeamMemberDetailResponseVO(); QueryTeamMemberDetailResponseVO resp = new QueryTeamMemberDetailResponseVO();
Long practitionerId = requestVO.getPractitionerId(); Long practitionerId = requestVO.getPractitionerId();
String systemType = requestVO.getSystemType();
try { try {
// 获取团队成员或被辅导人的practitionerId // 获取团队成员或被辅导人的practitionerId
List<Long> practitionerIdList = practitionerService.getPractitionerIdList(practitionerId,1); List<Long> practitionerIdList = new ArrayList<>();
if(null != requestVO.getSId()){
practitionerIdList = practitionerService.getPractitionerIdBySidList(requestVO.getSId(),systemType,1);
}else{
practitionerIdList = practitionerService.getPractitionerIdList(practitionerId,1);
}
List<TeamMemberDetail> dataList = aclPractitionerDALService.queryTeamMemberDetailList(practitionerIdList); List<TeamMemberDetail> dataList = aclPractitionerDALService.queryTeamMemberDetailList(practitionerIdList);
List<TeamMemberDetail> s1DataList = new ArrayList<>(); List<TeamMemberDetail> s1DataList = new ArrayList<>();
...@@ -764,10 +770,13 @@ public class PractitionerBasicInfoServiceImpl implements PractitionerBasicInfoSe ...@@ -764,10 +770,13 @@ public class PractitionerBasicInfoServiceImpl implements PractitionerBasicInfoSe
List<TeamMemberDetail> groupList = new ArrayList<>(); List<TeamMemberDetail> groupList = new ArrayList<>();
List<TeamMemberDetail> teamList = new ArrayList<>(); List<TeamMemberDetail> teamList = new ArrayList<>();
List<TeamMemberDetail> teamMemberList = new ArrayList<>();
BeanPropertyValueEqualsPredicate predicatePackage; BeanPropertyValueEqualsPredicate predicatePackage;
//根据体系筛选出对应的经纪人信息 //根据体系筛选出对应的经纪人信息,根据getSystemType分组
if(null != dataList){ if(null != dataList && dataList.size() > 0){
for(TeamMemberDetail teamMemberDetail:dataList){ for(TeamMemberDetail teamMemberDetail:dataList){
if("S1".equals(teamMemberDetail.getSystemType())){ if("S1".equals(teamMemberDetail.getSystemType())){
s1DataList.add(teamMemberDetail); s1DataList.add(teamMemberDetail);
...@@ -779,41 +788,66 @@ public class PractitionerBasicInfoServiceImpl implements PractitionerBasicInfoSe ...@@ -779,41 +788,66 @@ public class PractitionerBasicInfoServiceImpl implements PractitionerBasicInfoSe
s3DataList.add(teamMemberDetail); s3DataList.add(teamMemberDetail);
} }
} }
resp.setSystemName(dataList.get(0).getSystem());
} }
//查询当前的经纪人信息 //查询当前的经纪人信息
predicatePackage = new BeanPropertyValueEqualsPredicate( "practitionerId", practitionerId); //1,根据组织信息查询经纪人
teamList = (List<TeamMemberDetail>) CollectionUtils.select(dataList,predicatePackage); if(StringUtils.isNotBlank(systemType)){
if("S2".equals(systemType)){
if(null != s1DataList){
for (TeamMemberDetail teamMemberDetail : s1DataList) {
if (null != teamMemberDetail.getOwnerPractitionerId() && teamMemberDetail.getOwnerPractitionerId().longValue() == teamMemberDetail.getPractitionerId().longValue()) {
teamMemberList.add(teamMemberDetail);
}
groupList.addAll(s2DataList);
}
}
//没有团队长
if(teamMemberList == null || teamMemberList.size() == 0){
teamMemberList.addAll(s1DataList);
}
}
//如果是s1 直接显示所有
if("S1".equals(systemType)){
groupList.addAll(dataList);
}
}else {
predicatePackage = new BeanPropertyValueEqualsPredicate("practitionerId", practitionerId);
teamList = (List<TeamMemberDetail>) CollectionUtils.select(dataList, predicatePackage);
//根据职级进行数据筛选 //根据职级进行数据筛选
if(null != teamList){ if (null != teamList && teamList.size() > 0) {
if("S2".equals( teamList.get(0).getPractitionerLevel())){ if ("S2".equals(teamList.get(0).getPractitionerLevel())) {
for(TeamMemberDetail teamMemberDetail:s1DataList) { for (TeamMemberDetail teamMemberDetail : s1DataList) {
if(teamMemberDetail.getOwnerPractitionerId().longValue() == teamMemberDetail.getPractitionerId().longValue()){ if (null != teamMemberDetail.getOwnerPractitionerId() && teamMemberDetail.getOwnerPractitionerId().longValue() == teamMemberDetail.getPractitionerId().longValue()) {
groupList.add(teamMemberDetail); teamMemberList.add(teamMemberDetail);
} }
} }
groupList.addAll(s2DataList); groupList.addAll(s2DataList);
}else if("S3".equals( teamList.get(0).getPractitionerLevel())){ } else if ("S3".equals(teamList.get(0).getPractitionerLevel())) {
for(TeamMemberDetail teamMemberDetail:s1DataList) { for (TeamMemberDetail teamMemberDetail : s1DataList) {
if(teamMemberDetail.getOwnerPractitionerId().longValue() == teamMemberDetail.getPractitionerId().longValue()){ if (null != teamMemberDetail.getOwnerPractitionerId() && teamMemberDetail.getOwnerPractitionerId().longValue() == teamMemberDetail.getPractitionerId().longValue()) {
groupList.add(teamMemberDetail); teamMemberList.add(teamMemberDetail);
} }
} }
for(TeamMemberDetail teamMemberDetail:s2DataList) { for (TeamMemberDetail teamMemberDetail : s2DataList) {
if(teamMemberDetail.getOwnerPractitionerId().longValue() == teamMemberDetail.getPractitionerId().longValue()){ if (null != teamMemberDetail.getOwnerPractitionerId() && teamMemberDetail.getOwnerPractitionerId().longValue() == teamMemberDetail.getPractitionerId().longValue()) {
groupList.add(teamMemberDetail); teamMemberList.add(teamMemberDetail);
} }
} }
groupList.addAll(s3DataList); groupList.addAll(s3DataList);
}else if("S1".equals( teamList.get(0).getPractitionerLevel())){ } else if ("S1".equals(teamList.get(0).getPractitionerLevel())) {
groupList.addAll(dataList); groupList.addAll(dataList);
} }
}
resp.setSystemName(teamList.get(0).getSystem());
}
}
resp.setCommonResult(new CommonResult(true, ZHBErrorConfig.getErrorInfo("800000"))); resp.setCommonResult(new CommonResult(true, ZHBErrorConfig.getErrorInfo("800000")));
resp.setTeamMemberDetail(groupList); resp.setTeamMemberDetail(groupList);
resp.setTeamMemberList(teamMemberList);
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
......
...@@ -2173,6 +2173,16 @@ public class PractitionerServiceImpl implements com.yd.api.practitioner.service. ...@@ -2173,6 +2173,16 @@ public class PractitionerServiceImpl implements com.yd.api.practitioner.service.
} }
@Override @Override
public List<Long> getPractitionerIdBySidList(Long sId, String systemType,Integer isActive) {
List<Long> practitionerIdList = new ArrayList<>();
List<AclPractitioner> aclPractitionerList = aclPractitionerDALService.findBySubordinateSystemId(sId,systemType);
if(null != aclPractitionerList){
practitionerIdList = aclPractitionerList.stream().map(AclPractitioner::getId).collect(Collectors.toList());
}
return practitionerIdList;
}
@Override
public PotentialGoalsActionsQueryResponseVO potentialGoalsActionsQuery(PotentialGoalsActionsQueryRequestVO requestVO) { public PotentialGoalsActionsQueryResponseVO potentialGoalsActionsQuery(PotentialGoalsActionsQueryRequestVO requestVO) {
PotentialGoalsActionsQueryResponseVO responseVO = new PotentialGoalsActionsQueryResponseVO(); PotentialGoalsActionsQueryResponseVO responseVO = new PotentialGoalsActionsQueryResponseVO();
Long practitionerId = requestVO.getPractitionerId(); Long practitionerId = requestVO.getPractitionerId();
......
...@@ -5,4 +5,7 @@ import lombok.Data; ...@@ -5,4 +5,7 @@ import lombok.Data;
@Data @Data
public class QueryTeamMemberDetailRequestVO { public class QueryTeamMemberDetailRequestVO {
private Long practitionerId; private Long practitionerId;
private Long sId;
private String systemType;
} }
...@@ -8,5 +8,8 @@ import java.util.List; ...@@ -8,5 +8,8 @@ import java.util.List;
@Data @Data
public class QueryTeamMemberDetailResponseVO { public class QueryTeamMemberDetailResponseVO {
private List<TeamMemberDetail> teamMemberDetail; private List<TeamMemberDetail> teamMemberDetail;
private List<TeamMemberDetail> teamMemberList;
private String systemName;
private CommonResult commonResult; private CommonResult commonResult;
} }
...@@ -25,4 +25,6 @@ public class TeamMemberDetail { ...@@ -25,4 +25,6 @@ public class TeamMemberDetail {
private String practitionerRegNo; private String practitionerRegNo;
private Long ownerPractitionerId; private Long ownerPractitionerId;
private String systemType; private String systemType;
private Long sId;
} }
...@@ -45,7 +45,7 @@ public interface AclPractitionerMapper { ...@@ -45,7 +45,7 @@ public interface AclPractitionerMapper {
List<PlayerSalesActivityInfo> playerSalesActivityQuery(@Param("practitionerId") Long practitionerId, @Param("optionsId") Long optionsId); List<PlayerSalesActivityInfo> playerSalesActivityQuery(@Param("practitionerId") Long practitionerId, @Param("optionsId") Long optionsId);
List<AclPractitioner> findBySubordinateSystemId(@Param("subordinateSystemId") Long subordinateSystemId); List<AclPractitioner> findBySubordinateSystemId(@Param("subordinateSystemId") Long subordinateSystemId,@Param("systemType") String systemType);
String findMobileNoByPractitionerId(@Param("practitionerId") Long practitionerId); String findMobileNoByPractitionerId(@Param("practitionerId") Long practitionerId);
......
...@@ -111,7 +111,7 @@ public interface AclPractitionerDALService { ...@@ -111,7 +111,7 @@ public interface AclPractitionerDALService {
* @param subordinateSystemId 体系id * @param subordinateSystemId 体系id
* @return * @return
*/ */
List<AclPractitioner> findBySubordinateSystemId(Long subordinateSystemId); List<AclPractitioner> findBySubordinateSystemId(Long subordinateSystemId,String systemType);
/** /**
* 更具经纪人id查询该经纪人手机号码 * 更具经纪人id查询该经纪人手机号码
......
...@@ -109,8 +109,8 @@ public class AclPractitionerDALServiceImpl implements AclPractitionerDALService ...@@ -109,8 +109,8 @@ public class AclPractitionerDALServiceImpl implements AclPractitionerDALService
return aclPractitionerMapper.playerSalesActivityQuery(practitionerId, optionsId); return aclPractitionerMapper.playerSalesActivityQuery(practitionerId, optionsId);
} }
@Override @Override
public List<AclPractitioner> findBySubordinateSystemId(Long subordinateSystemId) { public List<AclPractitioner> findBySubordinateSystemId(Long subordinateSystemId,String systemType) {
return aclPractitionerMapper.findBySubordinateSystemId(subordinateSystemId); return aclPractitionerMapper.findBySubordinateSystemId(subordinateSystemId,systemType);
} }
@Override @Override
......
...@@ -1468,7 +1468,14 @@ ...@@ -1468,7 +1468,14 @@
select select
<include refid="Base_Column_List" /> <include refid="Base_Column_List" />
from ag_acl_practitioner from ag_acl_practitioner
where subordinate_system_id = #{subordinateSystemId,jdbcType=BIGINT} and is_active = 1 where is_active = 1
<if test="systemType == 'S2'">
and s2_id = #{subordinateSystemId,jdbcType=BIGINT}
</if>
<if test="systemType == 'S1'">
and subordinate_system_id = #{subordinateSystemId,jdbcType=BIGINT}
</if>
</select> </select>
<select id="findMobileNoByPractitionerId" resultType="java.lang.String"> <select id="findMobileNoByPractitionerId" resultType="java.lang.String">
select c.mobile_no select c.mobile_no
...@@ -1691,7 +1698,9 @@ ...@@ -1691,7 +1698,9 @@
p.id_no, p.id_no,
p.effective_start_date, p.effective_start_date,
p.practitioner_reg_no, p.practitioner_reg_no,
sys.system_type as systemType,sys.owner_practitioner_id as ownerPractitionerId sys.system_type as systemType,sys.owner_practitioner_id as ownerPractitionerId,
p.subordinate_system_id sId
from from
(select (select
id,name,mobile_no,gender,practitioner_birthdate,province_name,city_name,id_type,id_no,effective_start_date, id,name,mobile_no,gender,practitioner_birthdate,province_name,city_name,id_type,id_no,effective_start_date,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment