|
@@ -213,7 +213,7 @@ public class QwExternalContactRatingMoreSevenDaysServiceImpl implements QwExtern
|
|
|
QwExternalContact externalContact = new QwExternalContact();
|
|
QwExternalContact externalContact = new QwExternalContact();
|
|
|
externalContact.setId(externalId);
|
|
externalContact.setId(externalId);
|
|
|
externalContact.setLevel(5); // E级
|
|
externalContact.setLevel(5); // E级
|
|
|
- externalContact.setLevelType(5); // E级类型
|
|
|
|
|
|
|
+ externalContact.setLevelType(2); // 降级(从ABCD任何等级变为E级都是降级)
|
|
|
externalContact.setIsDaysNotStudy(1);
|
|
externalContact.setIsDaysNotStudy(1);
|
|
|
return externalContact;
|
|
return externalContact;
|
|
|
}
|
|
}
|
|
@@ -227,20 +227,29 @@ public class QwExternalContactRatingMoreSevenDaysServiceImpl implements QwExtern
|
|
|
QwExternalContact externalContact = new QwExternalContact();
|
|
QwExternalContact externalContact = new QwExternalContact();
|
|
|
externalContact.setId(externalId);
|
|
externalContact.setId(externalId);
|
|
|
externalContact.setLevel(5); // E级
|
|
externalContact.setLevel(5); // E级
|
|
|
- externalContact.setLevelType(5); // E级类型
|
|
|
|
|
|
|
+ externalContact.setLevelType(2); // E级类型
|
|
|
externalContact.setIsDaysNotStudy(1);
|
|
externalContact.setIsDaysNotStudy(1);
|
|
|
return externalContact;
|
|
return externalContact;
|
|
|
} else {
|
|
} else {
|
|
|
- // 有看课记录且时长>0,不是E级,恢复为ABCD评级(保持原有level)
|
|
|
|
|
|
|
+ // 有看课记录且时长>0,不是E级,恢复为ABCD评级
|
|
|
log.info("最近{}天有看课记录,不是E级,externalId: {}", config.getNotStudyDays(), externalId);
|
|
log.info("最近{}天有看课记录,不是E级,externalId: {}", config.getNotStudyDays(), externalId);
|
|
|
QwExternalContact externalContact = new QwExternalContact();
|
|
QwExternalContact externalContact = new QwExternalContact();
|
|
|
externalContact.setId(externalId);
|
|
externalContact.setId(externalId);
|
|
|
- // 保持原有的ABCD评级,不修改
|
|
|
|
|
- if (ratingVOS.get(0).getLevel() != null) {
|
|
|
|
|
- externalContact.setLevel(ratingVOS.get(0).getLevel());
|
|
|
|
|
- }
|
|
|
|
|
- if (ratingVOS.get(0).getLevelType() != null) {
|
|
|
|
|
- externalContact.setLevelType(ratingVOS.get(0).getLevelType());
|
|
|
|
|
|
|
+ // 检查当前等级是否为E级,如果是则需要重新计算
|
|
|
|
|
+ Integer currentLevel = ratingVOS.get(0).getLevel();
|
|
|
|
|
+ if (currentLevel != null && currentLevel == 5) {
|
|
|
|
|
+ // 如果当前是E级,恢复为D级(默认),后续由ABCD评级任务重新计算
|
|
|
|
|
+ externalContact.setLevel(4);
|
|
|
|
|
+ externalContact.setLevelType(1); // 从E级(5)恢复到D级(4)是升级
|
|
|
|
|
+ log.info("客户从E级恢复,暂设为D级,externalId: {}", externalId);
|
|
|
|
|
+ } else {
|
|
|
|
|
+ // 保持原有的ABCD评级,不修改
|
|
|
|
|
+ if (currentLevel != null) {
|
|
|
|
|
+ externalContact.setLevel(currentLevel);
|
|
|
|
|
+ }
|
|
|
|
|
+ if (ratingVOS.get(0).getLevelType() != null) {
|
|
|
|
|
+ externalContact.setLevelType(ratingVOS.get(0).getLevelType());
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
externalContact.setIsDaysNotStudy(0); // 标记为非连续未看课
|
|
externalContact.setIsDaysNotStudy(0); // 标记为非连续未看课
|
|
|
return externalContact;
|
|
return externalContact;
|