Commit e7d772e2 by wenyang Committed by akexiu

经纪人名片2.接口实现

parent 82cf0f96
......@@ -265,6 +265,7 @@ import com.yd.util.CommonUtil;
import com.yd.util.HttpUtil;
import com.yd.util.PDFConfiguration;
import com.yd.util.config.ZHBErrorConfig;
import com.yd.util.deshandler.DESTypeHandler;
@Service("practitionerService")
public class PractitionerServiceImpl implements com.yd.api.practitioner.service.PractitionerService {
......@@ -5131,23 +5132,28 @@ public class PractitionerServiceImpl implements com.yd.api.practitioner.service.
resp.setCommonResult(new CommonResult(false, ZHBErrorConfig.getErrorInfo("630028")));
return resp;
}
resp.setCommonResult(new CommonResult(true, ZHBErrorConfig.getErrorInfo("800000")));
AclPractitioner practitioner = aclPractitionerDALService.findPractitionerById(practitionerId);
if(practitioner != null){
resp.setPractitionerId(practitioner.getId());
resp.setPractitionerName(practitioner.getName());
resp.setInsurerId(practitioner.getInsurerId());
List<PractitionerBusinessCardResponseVO> rets = aclPractitionerDALService.businessCard(practitionerId);
if(rets != null && rets.size() > 0){
resp = rets.get(0);
if(!Strings.isNullOrEmpty(resp.getCertList())){
List<String> certIdStrList = Arrays.asList(resp.getCertList().split(","));
List<Long> certIdList = new ArrayList<>();
certIdStrList.forEach(i -> certIdList.add(Long.valueOf(i)));
List<Certificate> certificateList = aclPractitionerDALService.findCertificate(certIdList);
resp.setCertificateList(certificateList);
if(!Strings.isNullOrEmpty(resp.getMobileNo())){
DESTypeHandler jpaCryptoConverter = new DESTypeHandler();
resp.setMobileNo(jpaCryptoConverter.decode(resp.getMobileNo()));
}
}
resp.setInsurerUrl("www.ydinsurance.cn");
resp.setInsurerAbbre("银盾保险经纪");
resp.setInsurerUser("全球保险集团BHL成员");
resp.setCommonResult(new CommonResult(true, ZHBErrorConfig.getErrorInfo("800000")));
}else{
resp.setCommonResult(new CommonResult(false, "没有查到该经纪人"));
return resp;
}
return resp;
}
......
......@@ -10,6 +10,7 @@ public class PractitionerBusinessCardResponseVO {
private Long practitionerId;//经纪人id
private String practitionerName;//经纪人名称
private String practitionerNameEn;//经纪人英文
private String certList;//从业人员证照/荣誉列
private List<Certificate> certificateList;//专业/荣誉证照
private String levelCode;//经纪人职称code
private String levelName;//经纪人职称名称
......
......@@ -263,5 +263,4 @@ public class AclPractitioner {
private Long s1Id;
private Long s2Id;
private Long s3Id;
private String practitionerNameEn;//经纪人英文
}
package com.yd.dal.mapper.customer;
import com.yd.api.practitioner.vo.businessCard.Certificate;
import com.yd.api.practitioner.vo.businessCard.PractitionerBusinessCardRequestVO;
import com.yd.api.practitioner.vo.businessCard.PractitionerBusinessCardResponseVO;
import com.yd.api.practitioner.vo.payscale.PayScaleInfo;
import com.yd.api.practitioner.vo.subordinate.TeamMemberDetail;
import com.yd.api.practitioner.vo.unionSales.UnionSalesPractitionerInfo;
......@@ -133,5 +136,21 @@ public interface AclPractitionerMapper {
* @author Yan Wenyang
*/
void updateUnionSales(@Param("unionSalesId")Long unionSalesId, @Param("ossPath")String ossPath, @Param("signStatus")String signStatus);
/**
* 经纪人名片
* @param practitionerId
* @return List<PractitionerBusinessCardResponseVO>
* @author Yan Wenyang
*/
List<PractitionerBusinessCardResponseVO> businessCard(@Param("practitionerId")Long practitionerId);
/**
* 经纪人专业/荣誉证照
* @param List<Long>
* @return List<Certificate>
* @author Yan Wenyang
*/
List<Certificate> findCertificate(List<Long> certIdList);
}
package com.yd.dal.service.customer;
import java.util.List;
import java.util.Map;
import org.springframework.stereotype.Service;
import com.yd.api.practitioner.vo.businessCard.Certificate;
import com.yd.api.practitioner.vo.businessCard.PractitionerBusinessCardResponseVO;
import com.yd.api.practitioner.vo.payscale.PayScaleInfo;
import com.yd.api.practitioner.vo.subordinate.TeamMemberDetail;
import com.yd.api.practitioner.vo.unionSales.UnionSalesPractitionerInfo;
import com.yd.dal.entity.customer.AclCustomer;
import com.yd.dal.entity.practitioner.opportunity.PlayerSalesActivityInfo;
import com.yd.dal.entity.practitioner.opportunity.OwnOpportunityInfo;
import com.yd.dal.entity.customer.AclPractitioner;
import com.yd.dal.entity.customer.practitioner.PractitionerBasicInfo;
import com.yd.dal.entity.customer.practitioner.PractitionerInfo;
import com.yd.dal.entity.customer.practitioner.PractitionerRankInfo;
import com.yd.dal.entity.practitioner.opportunity.OwnOpportunityInfo;
import com.yd.dal.entity.practitioner.opportunity.PlayerSalesActivityInfo;
import com.yd.dal.entity.practitioner.payscale.PayScaleBasicInfo;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
@Service("aclPractitionerDALService")
public interface AclPractitionerDALService {
......@@ -264,4 +267,20 @@ public interface AclPractitionerDALService {
void updateUnionSales(Long unionSalesId, String ossPath, String signStatus);
Map<Long, AclPractitioner> findAllMap();
/**
* 经纪人名片
* @param practitionerId
* @return List<PractitionerBusinessCardResponseVO>
* @author Yan Wenyang
*/
List<PractitionerBusinessCardResponseVO> businessCard(Long practitionerId);
/**
* 经纪人专业/荣誉证照
* @param List<Long>
* @return List<Certificate>
* @author Yan Wenyang
*/
List<Certificate> findCertificate(List<Long> certIdList);
}
package com.yd.dal.service.customer.impl;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.context.request.RequestAttributes;
import org.springframework.web.context.request.RequestContextHolder;
import com.google.common.base.Strings;
import com.yd.api.practitioner.service.PractitionerService;
import com.yd.api.practitioner.vo.businessCard.Certificate;
import com.yd.api.practitioner.vo.businessCard.PractitionerBusinessCardResponseVO;
import com.yd.api.practitioner.vo.payscale.PayScaleInfo;
import com.yd.api.practitioner.vo.subordinate.TeamMemberDetail;
import com.yd.api.practitioner.vo.unionSales.UnionSalesPractitionerInfo;
import com.yd.dal.entity.customer.AclCustomer;
import com.yd.dal.entity.customer.AclPractitionerSubordinateSystem;
import com.yd.dal.entity.practitioner.opportunity.PlayerSalesActivityInfo;
import com.yd.dal.entity.practitioner.opportunity.OwnOpportunityInfo;
import com.yd.dal.entity.customer.AclPractitioner;
import com.yd.dal.entity.customer.AclPractitionerSubordinateSystem;
import com.yd.dal.entity.customer.practitioner.PractitionerBasicInfo;
import com.yd.dal.entity.customer.practitioner.PractitionerInfo;
import com.yd.dal.entity.customer.practitioner.PractitionerRankInfo;
import com.yd.dal.entity.practitioner.opportunity.OwnOpportunityInfo;
import com.yd.dal.entity.practitioner.opportunity.PlayerSalesActivityInfo;
import com.yd.dal.entity.practitioner.payscale.PayScaleBasicInfo;
import com.yd.dal.mapper.customer.AclCustomerMapper;
import com.yd.dal.mapper.customer.AclPractitionerMapper;
......@@ -24,18 +40,6 @@ import com.yd.util.auth.setting.JwtTokenUtil;
import com.yd.util.deshandler.DESTypeHandler;
import com.yd.util.intercept.annotation.TargetDataSource;
import com.yd.util.intercept.commons.DataSourceKey;
import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.context.request.RequestAttributes;
import org.springframework.web.context.request.RequestContextHolder;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Service("aclPractitionerDALService")
public class AclPractitionerDALServiceImpl implements AclPractitionerDALService {
......@@ -389,4 +393,25 @@ public class AclPractitionerDALServiceImpl implements AclPractitionerDALService
return aclPractitionerMap;
}
/**
* 经纪人名片
* @param practitionerId
* @return List<PractitionerBusinessCardResponseVO>
* @author Yan Wenyang
*/
@Override
public List<PractitionerBusinessCardResponseVO> businessCard(Long practitionerId){
return aclPractitionerMapper.businessCard(practitionerId);
}
/**
* 经纪人专业/荣誉证照
* @param List<Long>
* @return List<Certificate>
* @author Yan Wenyang
*/
@Override
public List<Certificate> findCertificate(List<Long> certIdList){
return aclPractitionerMapper.findCertificate(certIdList);
}
}
......@@ -2075,4 +2075,36 @@
where id = #{unionSalesId}
</update>
<select id="businessCard" resultType="com.yd.api.practitioner.vo.businessCard.PractitionerBusinessCardResponseVO">
select distinct
t.id practitionerId,t.name practitionerName,t.name_en practitionerNameEn,
t.cert_list certList,
ps.practitioner_level,mdo.drop_option_name levelName,mdo.drop_option_code levelCode,mdo.drop_option_remark levelNameEn,fu.file_path wxQRImgUrl,
t.insurer_id insurerId,CONCAT(i.name,IFNULL(ib.branch_name,ibd.name)) insurerName, i.name_abbre insurerAbbre,
ifnull(ib.address,ibd.address) insurerAddress,
t.mobile_no mobileNo,t.email email
from ag_acl_practitioner t
left join ag_acl_insurer i on i.id=t.insurer_id
left join ag_acl_insurer_branch ib on ib.id=t.insurer_branch_id
left join ag_acl_insurer_branch_dept ibd on ibd.id=t.dept_id
left join ag_acl_practitioner_setting ps on ps.practitioner_id = t.id
left join ag_md_drop_options mdo on mdo.id = ps.practitioner_level
left join ag_acl_file_upload fu on fu.target_type='1' and fu.target_id=t.id and fu.target_use_for='9' AND fu.is_active='1'
where t.id = #{practitionerId} and t.is_active='1'
</select>
<select id="findCertificate" resultType="com.yd.api.practitioner.vo.businessCard.Certificate">
select
t.id id,
SUBSTRING_INDEX(t.cert_name,'-',-1) certName,
t.cert_abbre certNameEn,
t.image_path imagePath
from ag_md_certificate t
where t.id in
<foreach collection="list" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
and t.is_active = 1
</select>
</mapper>
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