Commit 0d5a0caf by jianan

Merge branch 'dev_20210305_N22new' into dev

parents bd54e1f6 6c06ae70
...@@ -2,9 +2,10 @@ package com.yd.api.practitioner.vo.rank; ...@@ -2,9 +2,10 @@ package com.yd.api.practitioner.vo.rank;
public class PractitionerRankRequestVO { public class PractitionerRankRequestVO {
private String mobileNo; private String mobileNo;
private Integer platform;//1-online,2-offline private Integer platform;//1-online,2-offline(N22)
private Integer time;//1-month,2-year,3-quarter private Integer time;//1-month,2-year,3-quarter
private Integer type;//1-保费,2-佣金,3-件数 private Integer type;//1-保费,2-佣金,3-件数
private Integer isPersonal;//0-查询当前经纪人的个人数据,1-查询所有经纪人的数据
public String getMobileNo() { public String getMobileNo() {
return mobileNo; return mobileNo;
...@@ -37,4 +38,12 @@ public class PractitionerRankRequestVO { ...@@ -37,4 +38,12 @@ public class PractitionerRankRequestVO {
public void setType(Integer type) { public void setType(Integer type) {
this.type = type; this.type = type;
} }
public Integer getIsPersonal() {
return isPersonal;
}
public void setIsPersonal(Integer isPersonal) {
this.isPersonal = isPersonal;
}
} }
...@@ -10,10 +10,12 @@ public class PractitionerInfo { ...@@ -10,10 +10,12 @@ public class PractitionerInfo {
private String levelName;//级别 private String levelName;//级别
private String insurerBranchName;//分公司名称 private String insurerBranchName;//分公司名称
private Long subordinateId;//体系ID private Long subordinateId;//体系ID
private String subsystem;
private String weChatId; private String weChatId;
private String qqId; private String qqId;
private String practitionerRegNo; private String practitionerRegNo;
private Long canSeeSalaryList; private Long canSeeSalaryList;
private String mobileNo;
public Long getCustomerId() { public Long getCustomerId() {
return customerId; return customerId;
...@@ -118,4 +120,20 @@ public class PractitionerInfo { ...@@ -118,4 +120,20 @@ public class PractitionerInfo {
public void setCanSeeSalaryList(Long canSeeSalaryList) { public void setCanSeeSalaryList(Long canSeeSalaryList) {
this.canSeeSalaryList = canSeeSalaryList; this.canSeeSalaryList = canSeeSalaryList;
} }
public String getSubsystem() {
return subsystem;
}
public void setSubsystem(String subsystem) {
this.subsystem = subsystem;
}
public String getMobileNo() {
return mobileNo;
}
public void setMobileNo(String mobileNo) {
this.mobileNo = mobileNo;
}
} }
...@@ -9,6 +9,7 @@ public class SubordinateSystemMemberInfoE { ...@@ -9,6 +9,7 @@ public class SubordinateSystemMemberInfoE {
private Double fyc; private Double fyc;
private Integer count; private Integer count;
private String mobileNo; private String mobileNo;
private String loginName;
public Long getPractitionerId() { public Long getPractitionerId() {
return practitionerId; return practitionerId;
...@@ -73,4 +74,12 @@ public class SubordinateSystemMemberInfoE { ...@@ -73,4 +74,12 @@ public class SubordinateSystemMemberInfoE {
public void setMobileNo(String mobileNo) { public void setMobileNo(String mobileNo) {
this.mobileNo = mobileNo; this.mobileNo = mobileNo;
} }
public String getLoginName() {
return loginName;
}
public void setLoginName(String loginName) {
this.loginName = loginName;
}
} }
...@@ -81,4 +81,9 @@ public interface AclPractitionerMapper { ...@@ -81,4 +81,9 @@ public interface AclPractitionerMapper {
List<AclPractitioner> queryAllLifePractitioner(); List<AclPractitioner> queryAllLifePractitioner();
List<PractitionerInfo> findPractitionerInfoByPractitionerCode(List<String> paramList);
List<PractitionerInfo> findPractitionerInfoByNameList(List<String> nameList);
List<PractitionerInfo> findPractitionerInfoByMobileList(List<String> mobileList);
} }
\ No newline at end of file
...@@ -65,6 +65,13 @@ public interface AclPractitionerDALService { ...@@ -65,6 +65,13 @@ public interface AclPractitionerDALService {
PractitionerInfo findPractitionerInfoByLogin(String mobileNo); PractitionerInfo findPractitionerInfoByLogin(String mobileNo);
/** /**
* 经纪人基本信息查询
* @param paramList
* @return
*/
List<PractitionerInfo> findPractitionerInfoByPractitionerCode(List<String> paramList);
/**
* 通过经纪人id查找经纪人 * 通过经纪人id查找经纪人
* @param practitionerId * @param practitionerId
* @return * @return
...@@ -196,4 +203,8 @@ public interface AclPractitionerDALService { ...@@ -196,4 +203,8 @@ public interface AclPractitionerDALService {
* @return * @return
*/ */
List<AclPractitioner> queryAllLifePractitioner(); List<AclPractitioner> queryAllLifePractitioner();
List<PractitionerInfo> findPractitionerInfoByNameList(List<String> nameList);
List<PractitionerInfo> findPractitionerInfoByMobileList(List<String> mobileList);
} }
...@@ -74,6 +74,11 @@ public class AclPractitionerDALServiceImpl implements AclPractitionerDALService ...@@ -74,6 +74,11 @@ public class AclPractitionerDALServiceImpl implements AclPractitionerDALService
} }
@Override @Override
public List<PractitionerInfo> findPractitionerInfoByPractitionerCode(List<String> paramList) {
return aclPractitionerMapper.findPractitionerInfoByPractitionerCode(paramList);
}
@Override
@TargetDataSource(dataSourceKey = DataSourceKey.DB_MASTER) @TargetDataSource(dataSourceKey = DataSourceKey.DB_MASTER)
public AclPractitioner findPractitionerById(Long practitionerId) { public AclPractitioner findPractitionerById(Long practitionerId) {
return aclPractitionerMapper.selectByPrimaryKey(practitionerId); return aclPractitionerMapper.selectByPrimaryKey(practitionerId);
...@@ -211,4 +216,14 @@ public class AclPractitionerDALServiceImpl implements AclPractitionerDALService ...@@ -211,4 +216,14 @@ public class AclPractitionerDALServiceImpl implements AclPractitionerDALService
public List<AclPractitioner> queryAllLifePractitioner() { public List<AclPractitioner> queryAllLifePractitioner() {
return aclPractitionerMapper.queryAllLifePractitioner(); return aclPractitionerMapper.queryAllLifePractitioner();
} }
@Override
public List<PractitionerInfo> findPractitionerInfoByNameList(List<String> nameList) {
return aclPractitionerMapper.findPractitionerInfoByNameList(nameList);
}
@Override
public List<PractitionerInfo> findPractitionerInfoByMobileList(List<String> mobileList) {
return aclPractitionerMapper.findPractitionerInfoByMobileList(mobileList);
}
} }
package com.yd.rmi.n22.salary.pojo;
import lombok.Data;
@Data
public class Achieve {
private String ID;
private String Description;
private String SearchType;
private Double FYC;
private Double FYP;
private int SucNumber;
private Double StandardPREMIUM;
}
package com.yd.rmi.n22.salary.pojo;
public class SearchStaffAchievementRequestBody {
private String Epid;
private String issuedatestart;
private String issuedateend;
private String searchtype;
private String policystatus;
private String isdown;
private String agent_id;
private String rolegroup_id;
private String organization_id;
public void setEpid(String Epid){
this.Epid = Epid;
}
public String getEpid(){
return this.Epid;
}
public void setIssuedatestart(String issuedatestart){
this.issuedatestart = issuedatestart;
}
public String getIssuedatestart(){
return this.issuedatestart;
}
public void setIssuedateend(String issuedateend){
this.issuedateend = issuedateend;
}
public String getIssuedateend(){
return this.issuedateend;
}
public void setSearchtype(String searchtype){
this.searchtype = searchtype;
}
public String getSearchtype(){
return this.searchtype;
}
public void setPolicystatus(String policystatus){
this.policystatus = policystatus;
}
public String getPolicystatus(){
return this.policystatus;
}
public void setIsdown(String isdown){
this.isdown = isdown;
}
public String getIsdown(){
return this.isdown;
}
public void setAgent_id(String agent_id){
this.agent_id = agent_id;
}
public String getAgent_id(){
return this.agent_id;
}
public void setRolegroup_id(String rolegroup_id){
this.rolegroup_id = rolegroup_id;
}
public String getRolegroup_id(){
return this.rolegroup_id;
}
public void setOrganization_id(String organization_id){
this.organization_id = organization_id;
}
public String getOrganization_id(){
return this.organization_id;
}
}
package com.yd.rmi.n22.salary.pojo;
import lombok.Data;
import java.util.List;
@Data
public class SearchStaffAchievementResponseBody {
private List<Achieve> AchieveList;
}
package com.yd.rmi.n22.salary.pojo;
import com.yd.rmi.n22.common.pojo.ResponseHead;
import lombok.Data;
@Data
public class SearchStaffAchievementResponseVO {
private ResponseHead responseHead;
private SearchStaffAchievementResponseBody responseBody;
}
package com.yd.rmi.n22.salary.service; package com.yd.rmi.n22.salary.service;
import com.yd.rmi.n22.salary.pojo.SalaryDetails; import com.yd.rmi.n22.salary.pojo.*;
import com.yd.rmi.n22.salary.pojo.SalaryDetailsSearchRequestBody;
import com.yd.rmi.n22.salary.pojo.SalaryDetailsSearchResponseVO;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -10,5 +8,5 @@ import java.util.Map; ...@@ -10,5 +8,5 @@ import java.util.Map;
public interface N22SalaryService { public interface N22SalaryService {
SalaryDetailsSearchResponseVO salaryDetailsSearch(SalaryDetailsSearchRequestBody salaryDetailsSearchRequestBody); SalaryDetailsSearchResponseVO salaryDetailsSearch(SalaryDetailsSearchRequestBody salaryDetailsSearchRequestBody);
Map<String, List<SalaryDetails>> groupByYearmonth(List<SalaryDetails> salaryDetailsList); SearchStaffAchievementResponseVO searchStaffAchievement(SearchStaffAchievementRequestBody searchStaffAchievementRequestBody);
} }
...@@ -3,9 +3,7 @@ package com.yd.rmi.n22.salary.service.impl; ...@@ -3,9 +3,7 @@ package com.yd.rmi.n22.salary.service.impl;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.yd.rmi.cache.SystemConfigService; import com.yd.rmi.cache.SystemConfigService;
import com.yd.rmi.n22.common.utils.N22Utils; import com.yd.rmi.n22.common.utils.N22Utils;
import com.yd.rmi.n22.salary.pojo.SalaryDetails; import com.yd.rmi.n22.salary.pojo.*;
import com.yd.rmi.n22.salary.pojo.SalaryDetailsSearchRequestBody;
import com.yd.rmi.n22.salary.pojo.SalaryDetailsSearchResponseVO;
import com.yd.rmi.n22.salary.service.N22SalaryService; import com.yd.rmi.n22.salary.service.N22SalaryService;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
...@@ -17,8 +15,6 @@ import java.util.*; ...@@ -17,8 +15,6 @@ import java.util.*;
@Service @Service
public class N22SalaryServiceImpl implements N22SalaryService { public class N22SalaryServiceImpl implements N22SalaryService {
private final static Logger logger = LoggerFactory.getLogger(N22SalaryServiceImpl.class);
@Autowired @Autowired
private SystemConfigService systemConfigService; private SystemConfigService systemConfigService;
...@@ -31,44 +27,30 @@ public class N22SalaryServiceImpl implements N22SalaryService { ...@@ -31,44 +27,30 @@ public class N22SalaryServiceImpl implements N22SalaryService {
obj.put("requestHead", requestHead); obj.put("requestHead", requestHead);
obj.put("requestBody", salaryDetailsSearchRequestBody); obj.put("requestBody", salaryDetailsSearchRequestBody);
logger.info("N22佣金明细查询请求报文:"+obj.toString());
String url = systemConfigService.getSingleConfigValue("N22_URL_Salary_Details_Search"); String url = systemConfigService.getSingleConfigValue("N22_URL_Salary_Details_Search");
String result = N22Utils.postTransaction(url, obj.toString()); String result = N22Utils.postTransaction(url, obj.toString());
logger.info("N22佣金明细查询响应报文:"+result);
SalaryDetailsSearchResponseVO response = JSONObject.parseObject(result, SalaryDetailsSearchResponseVO.class); SalaryDetailsSearchResponseVO response = JSONObject.parseObject(result, SalaryDetailsSearchResponseVO.class);
return response; return response;
} }
@Override @Override
public Map<String, List<SalaryDetails>> groupByYearmonth(List<SalaryDetails> salaryDetailsList) { public SearchStaffAchievementResponseVO searchStaffAchievement(SearchStaffAchievementRequestBody searchStaffAchievementRequestBody) {
Map<String, List<SalaryDetails>> result = new HashMap<String, List<SalaryDetails>>(); JSONObject obj = new JSONObject(); //接口传参
int year = 0;
String month = ""; JSONObject requestHead = new JSONObject();
String key = ""; requestHead.put("seqNo", UUID.randomUUID().toString());
for (SalaryDetails SalaryDetails : salaryDetailsList) {
year = SalaryDetails.getYear(); obj.put("requestHead", requestHead);
month = SalaryDetails.getMonth(); obj.put("requestBody", searchStaffAchievementRequestBody);
key = year + month;
String url = systemConfigService.getSingleConfigValue("N22_URL_Search_Staff_Achievement");
List<SalaryDetails> childList = result.get(key); String result = N22Utils.postTransaction(url, obj.toString());
if (childList == null) {
childList = new ArrayList<SalaryDetails>(); SearchStaffAchievementResponseVO response = JSONObject.parseObject(result, SearchStaffAchievementResponseVO.class);
result.put(key, childList);
} return response;
childList.add(SalaryDetails);
}
result.forEach((cc, list) -> {
System.out.println("CheckDate is:" + cc);
list.forEach((SalaryDetails) -> {
System.out.println("SalaryDetails is:" + SalaryDetails);
});
});
return result;
} }
} }
package com.yd.rmi.n22.staff.pojo;
import lombok.Data;
@Data
public class MyStaff {
private String Staff_ID;
private String StaffName;
private String LoginName;
private String Manage_Staff_Id;
private String Manage_StaffName;
private String Manage_LoginName;
private String Manage_StaffStatus;
}
package com.yd.rmi.n22.staff.pojo;
import lombok.Data;
@Data
public class MyStaffSearchRequestBody {
private String Epid; //默认空
private String loginName; //销售在本系统中的工号
private String staffId; //内部唯一ID
private String StaffStatus; //人员状态,ONLINE在职QUIT离职
private String TokenID; //签名ID(待开发)
}
package com.yd.rmi.n22.staff.pojo;
import lombok.Data;
import java.util.List;
@Data
public class MyStaffSearchResponseBody {
private List<MyStaff> StaffArray;
}
package com.yd.rmi.n22.staff.pojo;
import com.yd.rmi.n22.common.pojo.ResponseHead;
import lombok.Data;
@Data
public class MyStaffSearchResponseVO {
private ResponseHead responseHead;
private MyStaffSearchResponseBody responseBody;
}
package com.yd.rmi.n22.staff.service; package com.yd.rmi.n22.staff.service;
import com.yd.rmi.n22.staff.pojo.GetStaffNewRequestBody; import com.yd.rmi.n22.staff.pojo.*;
import com.yd.rmi.n22.staff.pojo.GetStaffNewResponseVO;
public interface N22StaffService { public interface N22StaffService {
GetStaffNewResponseVO getStaffNew(GetStaffNewRequestBody getStaffNewRequestBody); GetStaffNewResponseVO getStaffNew(GetStaffNewRequestBody getStaffNewRequestBody);
String queryN22LoginNameByMobileNo(String mobileNo); /**
* 根据手机号查询N22经纪人信息
* @param mobileNo
* @return
*/
Staff queryN22StaffByMobileNo(String mobileNo);
/**
* 根据N22员工编号查询N22经纪人信息
* @param loginName
* @return
*/
Staff queryN22StaffByLoginName(String loginName);
MyStaffSearchResponseVO myStaffSearch(MyStaffSearchRequestBody myStaffSearchRequestBody);
} }
...@@ -4,9 +4,7 @@ import com.alibaba.fastjson.JSONObject; ...@@ -4,9 +4,7 @@ import com.alibaba.fastjson.JSONObject;
import com.yd.rmi.cache.SystemConfigService; import com.yd.rmi.cache.SystemConfigService;
import com.yd.rmi.n22.common.utils.N22Utils; import com.yd.rmi.n22.common.utils.N22Utils;
import com.yd.rmi.n22.policy.service.impl.N22PolicyServiceImpl; import com.yd.rmi.n22.policy.service.impl.N22PolicyServiceImpl;
import com.yd.rmi.n22.staff.pojo.GetStaffNewRequestBody; import com.yd.rmi.n22.staff.pojo.*;
import com.yd.rmi.n22.staff.pojo.GetStaffNewResponseVO;
import com.yd.rmi.n22.staff.pojo.Staff;
import com.yd.rmi.n22.staff.service.N22StaffService; import com.yd.rmi.n22.staff.service.N22StaffService;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
...@@ -42,23 +40,60 @@ public class N22StaffServiceImpl implements N22StaffService { ...@@ -42,23 +40,60 @@ public class N22StaffServiceImpl implements N22StaffService {
} }
@Override @Override
public String queryN22LoginNameByMobileNo(String mobileNo) { public Staff queryN22StaffByMobileNo(String mobileNo) {
// 根据手机号查询经纪人在N22系统的Agent_id
GetStaffNewRequestBody getStaffNewRequestBody = new GetStaffNewRequestBody(); GetStaffNewRequestBody getStaffNewRequestBody = new GetStaffNewRequestBody();
getStaffNewRequestBody.setMobile(mobileNo); getStaffNewRequestBody.setMobile(mobileNo);
GetStaffNewResponseVO resp = this.getStaffNew(getStaffNewRequestBody); GetStaffNewResponseVO resp = this.getStaffNew(getStaffNewRequestBody);
String agent_id = null; Staff staff = null;
if(resp != null){
if ("查询成功".equals(resp.getResponseHead().getMessage())){
List<Staff> staffList = resp.getResponseBody().getStaff();
if (staffList.size() > 0) {
staff = staffList.get(0);
}
}
}
return staff;
}
@Override
public Staff queryN22StaffByLoginName(String loginName) {
GetStaffNewRequestBody getStaffNewRequestBody = new GetStaffNewRequestBody();
getStaffNewRequestBody.setLoginname(loginName);
GetStaffNewResponseVO resp = this.getStaffNew(getStaffNewRequestBody);
Staff staff = null;
if(resp != null){ if(resp != null){
if ("查询成功".equals(resp.getResponseHead().getMessage())){ if ("查询成功".equals(resp.getResponseHead().getMessage())){
List<Staff> staffList = resp.getResponseBody().getStaff(); List<Staff> staffList = resp.getResponseBody().getStaff();
if (staffList.size() > 0) { if (staffList.size() > 0) {
Staff staff = staffList.get(0); staff = staffList.get(0);
agent_id = staff.getAgent_id();
} }
} }
} }
return agent_id; return staff;
}
@Override
public MyStaffSearchResponseVO myStaffSearch(MyStaffSearchRequestBody myStaffSearchRequestBody) {
JSONObject obj = new JSONObject(); //传参
JSONObject requestHead = new JSONObject();
requestHead.put("seqNo", UUID.randomUUID().toString());
obj.put("requestHead", requestHead);
obj.put("requestBody", myStaffSearchRequestBody);
String url = systemConfigService.getSingleConfigValue("N22_URL_My_Staff_Search");
String result = N22Utils.postTransaction(url, obj.toString());
MyStaffSearchResponseVO response = JSONObject.parseObject(result, MyStaffSearchResponseVO.class);
return response;
} }
} }
...@@ -1340,10 +1340,12 @@ ...@@ -1340,10 +1340,12 @@
<result column="levelName" property="levelName" /> <result column="levelName" property="levelName" />
<result column="insurerBranchName" property="insurerBranchName" /> <result column="insurerBranchName" property="insurerBranchName" />
<result column="subordinateId" property="subordinateId" /> <result column="subordinateId" property="subordinateId" />
<result column="subsystem" property="subsystem" />
<result column="weChatId" property="weChatId" /> <result column="weChatId" property="weChatId" />
<result column="qqId" property="qqId" /> <result column="qqId" property="qqId" />
<result column="practitionerRegNo" property="practitionerRegNo" /> <result column="practitionerRegNo" property="practitionerRegNo" />
<result column="canSeeSalaryList" property="canSeeSalaryList" /> <result column="canSeeSalaryList" property="canSeeSalaryList" />
<result column="mobile_no" jdbcType="VARCHAR" property="mobileNo" typeHandler="com.yd.util.deshandler.DESTypeHandler"/>
</resultMap> </resultMap>
<select id="findPractitionerInfoByLogin" resultMap="practitioner_info_map"> <select id="findPractitionerInfoByLogin" resultMap="practitioner_info_map">
...@@ -1717,4 +1719,92 @@ ...@@ -1717,4 +1719,92 @@
and p.is_active=1 and p.is_active=1
</select> </select>
<select id="findPractitionerInfoByPractitionerCode" resultMap="practitioner_info_map">
select
p.customer_id as customerId,
p.id as practitionerId,
p.name as name,
p.gender as gender,
s.practitioner_type_id as practitionerType,
sys.name as subsystem,
o.drop_option_code as levelCode,
o.drop_option_name as levelName,
b.branch_name as insurerBranchName,
p.subordinate_system_id as subordinateId,
p.wechat_id as weChatId,
p.qq_id as qqId,
p.practitioner_reg_no as practitionerRegNo,
p.mobile_no,
p.can_see_salary_list as canSeeSalaryList
from ag_acl_practitioner p
left join ag_acl_insurer_branch b on p.insurer_branch_id = b.id
left join ag_acl_practitioner_subordinate_system sys on p.subordinate_system_id = sys.id
left join ag_acl_practitioner_setting s on p.id = s.practitioner_id
left join ag_md_drop_options o on s.practitioner_level = o.id
where p.practitioner_code in
<foreach collection="list" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
and p.is_active = 1
</select>
<select id="findPractitionerInfoByNameList" resultMap="practitioner_info_map">
select
p.customer_id as customerId,
p.id as practitionerId,
p.name as name,
p.gender as gender,
s.practitioner_type_id as practitionerType,
sys.name as subsystem,
o.drop_option_code as levelCode,
o.drop_option_name as levelName,
b.branch_name as insurerBranchName,
p.subordinate_system_id as subordinateId,
p.wechat_id as weChatId,
p.qq_id as qqId,
p.practitioner_reg_no as practitionerRegNo,
p.mobile_no,
p.can_see_salary_list as canSeeSalaryList
from ag_acl_practitioner p
left join ag_acl_insurer_branch b on p.insurer_branch_id = b.id
left join ag_acl_practitioner_subordinate_system sys on p.subordinate_system_id = sys.id
left join ag_acl_practitioner_setting s on p.id = s.practitioner_id
left join ag_md_drop_options o on s.practitioner_level = o.id
where p.name in
<foreach collection="list" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
and p.is_active = 1
</select>
<select id="findPractitionerInfoByMobileList" resultMap="practitioner_info_map">
select
p.customer_id as customerId,
p.id as practitionerId,
p.name as name,
p.gender as gender,
s.practitioner_type_id as practitionerType,
sys.name as subsystem,
o.drop_option_code as levelCode,
o.drop_option_name as levelName,
b.branch_name as insurerBranchName,
p.subordinate_system_id as subordinateId,
p.wechat_id as weChatId,
p.qq_id as qqId,
p.practitioner_reg_no as practitionerRegNo,
p.mobile_no,
p.can_see_salary_list as canSeeSalaryList
from ag_acl_practitioner p
left join ag_acl_insurer_branch b on p.insurer_branch_id = b.id
left join ag_acl_practitioner_subordinate_system sys on p.subordinate_system_id = sys.id
left join ag_acl_practitioner_setting s on p.id = s.practitioner_id
left join ag_md_drop_options o on s.practitioner_level = o.id
where p.mobile_no in
<foreach collection="list" index="index" item="item" open="(" separator="," close=")">
#{item,typeHandler=com.yd.util.deshandler.DESTypeHandler}
</foreach>
and p.is_active = 1
</select>
</mapper> </mapper>
\ No newline at end of file
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