Commit 14e45a0c by Water Wang

optimize

parent aade45f4
......@@ -104,7 +104,7 @@ public class AgmsStatisticsServiceImpl implements AgmsStatisticsService {
Map<Long,Long> leadsStatusMap = mktLeadsPoolDALService.findLeadsStatusMap();
//4、商机状态信息
List<MdDropOptions> dropList = mdDropOptionsDALService.findByDropMasterCodes(Arrays.asList("leads_manual_blood_type","leads_manual_zodiac_type","leads_manual_source","action_code"));
List<MdDropOptions> dropList = mdDropOptionsDALService.findByDropMasterCodes(Arrays.asList("leads_manual_blood_type","leads_manual_zodiac_type","leads_manual_source","bizchance_promotion_action"));
Map<Long,String> dropMap = new HashMap<>();
if(dropList != null && dropList.size() > 0){
dropList.forEach(i->dropMap.put(i.getId(),i.getDropOptionName()));
......@@ -145,39 +145,37 @@ public class AgmsStatisticsServiceImpl implements AgmsStatisticsService {
*/
private List<LeadsStatisticsInfo> screenResult(List<LeadsStatisticsInfo> resultList, Integer leadsStatus, Integer expertApplyStatus) {
List<LeadsStatisticsInfo> isAssignList,unapplyList,applyingList,isAssignExpertList;
if(leadsStatus == 2){
isAssignList = new ArrayList<>();
for(LeadsStatisticsInfo item : resultList){
if(item.getAssignId() != null){
isAssignList.add(item);
}
isAssignList = new ArrayList<>();
for(LeadsStatisticsInfo item : resultList){
if(item.getAssignId() != null){
isAssignList.add(item);
}
if(expertApplyStatus == null || expertApplyStatus == 0){//已派遣的全部
return isAssignList;
}else if(!isAssignList.isEmpty()){
unapplyList = new ArrayList<>();
applyingList = new ArrayList<>();
isAssignExpertList = new ArrayList<>();
for(LeadsStatisticsInfo item : isAssignList) {
if (item.getRequestSMEDate() == null) {
unapplyList.add(item);//未申请
}
if(expertApplyStatus == null || expertApplyStatus == 0){//已派遣的全部
return isAssignList;
}else if(!isAssignList.isEmpty()){
unapplyList = new ArrayList<>();
applyingList = new ArrayList<>();
isAssignExpertList = new ArrayList<>();
for(LeadsStatisticsInfo item : isAssignList) {
if (item.getRequestSMEDate() == null) {
unapplyList.add(item);//未申请
}else{
if(item.getAssignSMEDate() == null){
applyingList.add(item);//申请中
}else{
if(item.getAssignSMEDate() == null){
applyingList.add(item);//申请中
}else{
isAssignExpertList.add(item);//已派遣专家
}
isAssignExpertList.add(item);//已派遣专家
}
}
if(expertApplyStatus == 1){//未申请
return unapplyList;
}else if(expertApplyStatus == 2){//申请中
return applyingList;
}else if(expertApplyStatus == 3){//已指派
return isAssignExpertList;
}else{//全部
return isAssignList;
}
}
if(expertApplyStatus == 1){//未申请
return unapplyList;
}else if(expertApplyStatus == 2){//申请中
return applyingList;
}else if(expertApplyStatus == 3){//已指派
return isAssignExpertList;
}else{//全部
return isAssignList;
}
}
return resultList;
......
......@@ -2,7 +2,7 @@ package com.yd.dal.entity.leads;
public class LeadsStatusInfo {
private Long leadsCustomerId;
private Long leadsStatus;
private Long leadsStatusId;
public Long getLeadsCustomerId() {
return leadsCustomerId;
......@@ -12,11 +12,11 @@ public class LeadsStatusInfo {
this.leadsCustomerId = leadsCustomerId;
}
public Long getLeadsStatus() {
return leadsStatus;
public Long getLeadsStatusId() {
return leadsStatusId;
}
public void setLeadsStatus(Long leadsStatus) {
this.leadsStatus = leadsStatus;
public void setLeadsStatusId(Long leadsStatusId) {
this.leadsStatusId = leadsStatusId;
}
}
......@@ -51,7 +51,7 @@ public class MktLeadsPoolDALServiceImpl implements MktLeadsPoolDALService {
public Map<Long, Long> findLeadsStatusMap() {
Map<Long, Long> leadsMap = new HashMap<>();
List<LeadsStatusInfo> leadsStatusInfoList = mktLeadsPoolMapper.findLeadsStatusMap();
leadsStatusInfoList.forEach(i->leadsMap.put(i.getLeadsCustomerId(),i.getLeadsStatus()));
leadsStatusInfoList.forEach(i->leadsMap.put(i.getLeadsCustomerId(),i.getLeadsStatusId()));
return leadsMap;
}
}
......@@ -919,7 +919,7 @@
left join ag_mkt_leads_assigneds a on a.assigned_practitioner_id = p.id
where a.id = #{leadsAssignedId,jdbcType=BIGINT}
</select>
<select id="findAll" resultType="com.yd.dal.entity.customer.AclPractitioner">
<select id="findAll" parameterType="java.lang.Long" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from ag_acl_practitioner
......
......@@ -164,7 +164,7 @@
c.blood_type_id as leadsBloodTypeId,
c.zodiac_type_id as leadsZodiacTypeId,
IF(c.gender = 1, '男', '女') as leadsGender,
date_format(pool.added_at , '%Y-%m-%d %H:%i:%s') as leadsCreatTime,
date_format(pool.added_at , '%Y-%m-%d %H:%i:%s') as leadsCreateTime,
assign.id as assignId,
assign.assigned_practitioner_id as practitionerId,
pool.source_from as leadsSourceId,
......@@ -246,7 +246,7 @@
<select id="findLeadsStatusMap" resultType="com.yd.dal.entity.leads.LeadsStatusInfo">
SELECT maxt.customer_id as leadsCustomerId,
# tr.leads_assigned_id as assignId,
tr.md_drop_option_id as statusId -- 商机状态id
tr.md_drop_option_id as leadsStatusId -- 商机状态id
FROM(SELECT customer_id,max(updated_at) as track_time FROM ag_mkt_leads_assigned_track tr GROUP BY tr.customer_id) maxt
INNER JOIN ag_mkt_leads_assigned_track tr on maxt.customer_id=tr.customer_id AND maxt.track_time = tr.updated_at order by tr.leads_assigned_id;
......
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