Commit 3ac8e84cf26066883483641b16d2dcc368cf3608

Authored by 张志伟
1 parent c7a2bff1

:fire: 跟进详情新增判断

fw-valhalla-domain/src/main/java/cn/fw/valhalla/domain/vo/follow/FollowDetailVO.java
@@ -73,6 +73,10 @@ public class FollowDetailVO { @@ -73,6 +73,10 @@ public class FollowDetailVO {
73 */ 73 */
74 private Date deadline; 74 private Date deadline;
75 private String reason; 75 private String reason;
  76 + /**
  77 + * 是否已经打过电话
  78 + */
  79 + private Boolean hadCall;
76 80
77 public long getCountdown() { 81 public long getCountdown() {
78 if (Objects.isNull(deadline)) { 82 if (Objects.isNull(deadline)) {
fw-valhalla-service/src/main/java/cn/fw/valhalla/service/bus/follow/strategy/impl/ACFollowStrategy.java
@@ -86,9 +86,14 @@ public class ACFollowStrategy extends AbstractFollowStrategy { @@ -86,9 +86,14 @@ public class ACFollowStrategy extends AbstractFollowStrategy {
86 public FollowDetailVO getDetail(Long id) { 86 public FollowDetailVO getDetail(Long id) {
87 FollowRecord followRecord = followRecordService.getById(id); 87 FollowRecord followRecord = followRecordService.getById(id);
88 BV.notNull(followRecord, "跟进记录不存在"); 88 BV.notNull(followRecord, "跟进记录不存在");
  89 + int count = followRecordLogService.count(Wrappers.<FollowRecordLog>lambdaQuery()
  90 + .eq(FollowRecordLog::getRecordId, followRecord.getId())
  91 + .eq(FollowRecordLog::getAttType, AttTypeEnum.SMART_PHONE)
  92 + );
89 ACDetailVO vo = assemble(followRecord.getCustomerId()); 93 ACDetailVO vo = assemble(followRecord.getCustomerId());
90 vo.setId(followRecord.getId()); 94 vo.setId(followRecord.getId());
91 vo.setTaskId(followRecord.getTaskId()); 95 vo.setTaskId(followRecord.getTaskId());
  96 + vo.setHadCall(count > 0);
92 vo.setDeadline(Objects.isNull(followRecord.getLimitTime()) ? followRecord.getDeadline() : followRecord.getLimitTime()); 97 vo.setDeadline(Objects.isNull(followRecord.getLimitTime()) ? followRecord.getDeadline() : followRecord.getLimitTime());
93 return vo; 98 return vo;
94 } 99 }
fw-valhalla-service/src/main/java/cn/fw/valhalla/service/bus/follow/strategy/impl/FMFollowStrategy.java
@@ -4,10 +4,12 @@ import cn.fw.valhalla.common.utils.MobileUtil; @@ -4,10 +4,12 @@ import cn.fw.valhalla.common.utils.MobileUtil;
4 import cn.fw.valhalla.domain.db.OriginalData; 4 import cn.fw.valhalla.domain.db.OriginalData;
5 import cn.fw.valhalla.domain.db.customer.Customer; 5 import cn.fw.valhalla.domain.db.customer.Customer;
6 import cn.fw.valhalla.domain.db.follow.FollowRecord; 6 import cn.fw.valhalla.domain.db.follow.FollowRecord;
  7 +import cn.fw.valhalla.domain.db.follow.FollowRecordLog;
7 import cn.fw.valhalla.domain.db.follow.FollowTask; 8 import cn.fw.valhalla.domain.db.follow.FollowTask;
8 import cn.fw.valhalla.domain.db.pool.CustomerCluePool; 9 import cn.fw.valhalla.domain.db.pool.CustomerCluePool;
9 import cn.fw.valhalla.domain.dto.CustomerDetailDto; 10 import cn.fw.valhalla.domain.dto.CustomerDetailDto;
10 import cn.fw.valhalla.domain.dto.FollowAttachmentDTO; 11 import cn.fw.valhalla.domain.dto.FollowAttachmentDTO;
  12 +import cn.fw.valhalla.domain.enums.AttTypeEnum;
11 import cn.fw.valhalla.domain.enums.ClueStatusEnum; 13 import cn.fw.valhalla.domain.enums.ClueStatusEnum;
12 import cn.fw.valhalla.domain.enums.FollowTypeEnum; 14 import cn.fw.valhalla.domain.enums.FollowTypeEnum;
13 import cn.fw.valhalla.domain.enums.SettingTypeEnum; 15 import cn.fw.valhalla.domain.enums.SettingTypeEnum;
@@ -76,6 +78,11 @@ public class FMFollowStrategy extends AbstractFollowStrategy { @@ -76,6 +78,11 @@ public class FMFollowStrategy extends AbstractFollowStrategy {
76 vo.setId(followRecord.getId()); 78 vo.setId(followRecord.getId());
77 vo.setTaskId(followRecord.getTaskId()); 79 vo.setTaskId(followRecord.getTaskId());
78 vo.setFMExpiration(followTask.getDeadline()); 80 vo.setFMExpiration(followTask.getDeadline());
  81 + int count = followRecordLogService.count(Wrappers.<FollowRecordLog>lambdaQuery()
  82 + .eq(FollowRecordLog::getRecordId, followRecord.getId())
  83 + .eq(FollowRecordLog::getAttType, AttTypeEnum.SMART_PHONE)
  84 + );
  85 + vo.setHadCall(count > 0);
79 return vo; 86 return vo;
80 } 87 }
81 88
fw-valhalla-service/src/main/java/cn/fw/valhalla/service/bus/follow/strategy/impl/IRFollowStrategy.java
@@ -8,6 +8,7 @@ import cn.fw.valhalla.domain.db.OriginalData; @@ -8,6 +8,7 @@ import cn.fw.valhalla.domain.db.OriginalData;
8 import cn.fw.valhalla.domain.db.customer.Customer; 8 import cn.fw.valhalla.domain.db.customer.Customer;
9 import cn.fw.valhalla.domain.db.follow.FollowNoticeRecord; 9 import cn.fw.valhalla.domain.db.follow.FollowNoticeRecord;
10 import cn.fw.valhalla.domain.db.follow.FollowRecord; 10 import cn.fw.valhalla.domain.db.follow.FollowRecord;
  11 +import cn.fw.valhalla.domain.db.follow.FollowRecordLog;
11 import cn.fw.valhalla.domain.db.follow.FollowTask; 12 import cn.fw.valhalla.domain.db.follow.FollowTask;
12 import cn.fw.valhalla.domain.db.pool.CustomerCluePool; 13 import cn.fw.valhalla.domain.db.pool.CustomerCluePool;
13 import cn.fw.valhalla.domain.dto.CustomerDetailDto; 14 import cn.fw.valhalla.domain.dto.CustomerDetailDto;
@@ -81,6 +82,11 @@ public class IRFollowStrategy extends AbstractFollowStrategy { @@ -81,6 +82,11 @@ public class IRFollowStrategy extends AbstractFollowStrategy {
81 FollowRecord followRecord = followRecordService.getById(id); 82 FollowRecord followRecord = followRecordService.getById(id);
82 BV.notNull(followRecord, "跟进记录不存在"); 83 BV.notNull(followRecord, "跟进记录不存在");
83 IRDetailVO vo = assemble(followRecord.getCustomerId()); 84 IRDetailVO vo = assemble(followRecord.getCustomerId());
  85 + int count = followRecordLogService.count(Wrappers.<FollowRecordLog>lambdaQuery()
  86 + .eq(FollowRecordLog::getRecordId, followRecord.getId())
  87 + .eq(FollowRecordLog::getAttType, AttTypeEnum.SMART_PHONE)
  88 + );
  89 + vo.setHadCall(count > 0);
84 vo.setId(followRecord.getId()); 90 vo.setId(followRecord.getId());
85 vo.setTaskId(followRecord.getTaskId()); 91 vo.setTaskId(followRecord.getTaskId());
86 vo.setDeadline(followRecord.getDeadline()); 92 vo.setDeadline(followRecord.getDeadline());
fw-valhalla-service/src/main/java/cn/fw/valhalla/service/bus/follow/strategy/impl/RMFollowStrategy.java
@@ -5,10 +5,12 @@ import cn.fw.valhalla.common.utils.MobileUtil; @@ -5,10 +5,12 @@ import cn.fw.valhalla.common.utils.MobileUtil;
5 import cn.fw.valhalla.domain.db.OriginalData; 5 import cn.fw.valhalla.domain.db.OriginalData;
6 import cn.fw.valhalla.domain.db.customer.Customer; 6 import cn.fw.valhalla.domain.db.customer.Customer;
7 import cn.fw.valhalla.domain.db.follow.FollowRecord; 7 import cn.fw.valhalla.domain.db.follow.FollowRecord;
  8 +import cn.fw.valhalla.domain.db.follow.FollowRecordLog;
8 import cn.fw.valhalla.domain.db.follow.FollowTask; 9 import cn.fw.valhalla.domain.db.follow.FollowTask;
9 import cn.fw.valhalla.domain.db.pool.CustomerCluePool; 10 import cn.fw.valhalla.domain.db.pool.CustomerCluePool;
10 import cn.fw.valhalla.domain.dto.CustomerDetailDto; 11 import cn.fw.valhalla.domain.dto.CustomerDetailDto;
11 import cn.fw.valhalla.domain.dto.FollowAttachmentDTO; 12 import cn.fw.valhalla.domain.dto.FollowAttachmentDTO;
  13 +import cn.fw.valhalla.domain.enums.AttTypeEnum;
12 import cn.fw.valhalla.domain.enums.ClueStatusEnum; 14 import cn.fw.valhalla.domain.enums.ClueStatusEnum;
13 import cn.fw.valhalla.domain.enums.FollowTypeEnum; 15 import cn.fw.valhalla.domain.enums.FollowTypeEnum;
14 import cn.fw.valhalla.domain.enums.SettingTypeEnum; 16 import cn.fw.valhalla.domain.enums.SettingTypeEnum;
@@ -99,6 +101,11 @@ public class RMFollowStrategy extends AbstractFollowStrategy { @@ -99,6 +101,11 @@ public class RMFollowStrategy extends AbstractFollowStrategy {
99 FollowRecord followRecord = followRecordService.getById(id); 101 FollowRecord followRecord = followRecordService.getById(id);
100 BV.notNull(followRecord, "跟进记录不存在"); 102 BV.notNull(followRecord, "跟进记录不存在");
101 RMDetailVO vo = assemble(followRecord.getCustomerId()); 103 RMDetailVO vo = assemble(followRecord.getCustomerId());
  104 + int count = followRecordLogService.count(Wrappers.<FollowRecordLog>lambdaQuery()
  105 + .eq(FollowRecordLog::getRecordId, followRecord.getId())
  106 + .eq(FollowRecordLog::getAttType, AttTypeEnum.SMART_PHONE)
  107 + );
  108 + vo.setHadCall(count > 0);
102 vo.setId(followRecord.getId()); 109 vo.setId(followRecord.getId());
103 vo.setTaskId(followRecord.getTaskId()); 110 vo.setTaskId(followRecord.getTaskId());
104 vo.setDeadline(followRecord.getDeadline()); 111 vo.setDeadline(followRecord.getDeadline());