1;配置去掉归属人

This commit is contained in:
wangshuai 2024-07-25 09:03:15 +08:00
parent 20d8754791
commit 137465c5c3
3 changed files with 27 additions and 4 deletions

View File

@ -249,8 +249,8 @@ public class AiServiceImpl implements IAiService {
@Override @Override
@Transactional @Transactional
public void sendToAi() { public void sendToAi() {
System.out.println("开始===");
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm"); DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm");
DateTimeFormatter dateTimeFormatterNow = DateTimeFormatter.ofPattern("yyyy-MM-dd");
LocalDateTime now = LocalDateTime.now(); LocalDateTime now = LocalDateTime.now();
LocalDateTime t30 = now.minusMinutes(30); LocalDateTime t30 = now.minusMinutes(30);
LocalDateTime t10 = now.minusMinutes(10); LocalDateTime t10 = now.minusMinutes(10);
@ -261,6 +261,7 @@ public class AiServiceImpl implements IAiService {
List<BusStoreInfo> storeInfoList = storeInfoService.selectBusStoreInfoList(storeInfo); List<BusStoreInfo> storeInfoList = storeInfoService.selectBusStoreInfoList(storeInfo);
for (BusStoreInfo busStoreInfo : storeInfoList) { for (BusStoreInfo busStoreInfo : storeInfoList) {
if ("2".equals(busStoreInfo.getReturnVisitStatus())) { if ("2".equals(busStoreInfo.getReturnVisitStatus())) {
System.out.println("未开启营销的跳出");
continue;// 未开启营销的跳出 continue;// 未开启营销的跳出
} }
// 配置规则 // 配置规则
@ -270,8 +271,10 @@ public class AiServiceImpl implements IAiService {
List<BusOrderInfo> list = new ArrayList<>(); List<BusOrderInfo> list = new ArrayList<>();
if ("1".equals(busStoreInfo.getSelfDeliveryStatus())) { if ("1".equals(busStoreInfo.getSelfDeliveryStatus())) {
System.out.println("自动营销");
list = orderInfoService.selectBusOrderInfoListToAi(busStoreInfo.getStoreCode(), t1, t2); list = orderInfoService.selectBusOrderInfoListToAi(busStoreInfo.getStoreCode(), t1, t2);
} else if ("2".equals(busStoreInfo.getSelfDeliveryStatus())) { } else if ("2".equals(busStoreInfo.getSelfDeliveryStatus())) {
System.out.println("自配送营销");
LocalDateTime tN = now.minusMinutes(busStoreConfigInfo.getSelfDeliveryDuration()); LocalDateTime tN = now.minusMinutes(busStoreConfigInfo.getSelfDeliveryDuration());
String time = tN.format(dateTimeFormatter); String time = tN.format(dateTimeFormatter);
// 自配送前推时间处理 // 自配送前推时间处理
@ -287,6 +290,7 @@ public class AiServiceImpl implements IAiService {
int cha = agentInfoL.get(0).getAiDurationBalance() - agentInfoL.get(0).getAiRealTimeNum(); int cha = agentInfoL.get(0).getAiDurationBalance() - agentInfoL.get(0).getAiRealTimeNum();
if (cha < list.size()&&(cha - 1)>0) { if (cha < list.size()&&(cha - 1)>0) {
list.subList(0, cha - 1); list.subList(0, cha - 1);
System.out.println("积分不足截取部分订单营销");
agentInfoL.get(0).setAiRealTimeNum(agentInfoL.get(0).getAiDurationBalance()); agentInfoL.get(0).setAiRealTimeNum(agentInfoL.get(0).getAiDurationBalance());
} else { } else {
agentInfoL.get(0).setAiRealTimeNum(agentInfoL.get(0).getAiRealTimeNum() + list.size()); agentInfoL.get(0).setAiRealTimeNum(agentInfoL.get(0).getAiRealTimeNum() + list.size());
@ -297,6 +301,7 @@ public class AiServiceImpl implements IAiService {
// 拼好饭 // 拼好饭
if ("N".equals(busStoreConfigInfo.getIsSpliceOrder())) { // 开启拼好饭订单过滤(不营销拼好饭) if ("N".equals(busStoreConfigInfo.getIsSpliceOrder())) { // 开启拼好饭订单过滤(不营销拼好饭)
if ("2".equals(busOrderInfo.getIsPhf())) {// if ("2".equals(busOrderInfo.getIsPhf())) {//
System.out.println("拼好饭拦截成功");
continue; continue;
} }
} }
@ -304,16 +309,18 @@ public class AiServiceImpl implements IAiService {
int count = Integer.valueOf(busOrderInfo.getOrderCount()); int count = Integer.valueOf(busOrderInfo.getOrderCount());
if (busStoreConfigInfo.getMaxOrderNum() < count if (busStoreConfigInfo.getMaxOrderNum() < count
|| count < busStoreConfigInfo.getMinOrderNum()) { || count < busStoreConfigInfo.getMinOrderNum()) {
System.out.println("下单次数拦截成功");
continue; continue;
} }
// 营销时间区间 // 营销时间区间
LocalTime start = LocalTime.parse(busStoreConfigInfo.getStartTime()); LocalTime start = LocalTime.parse(busStoreConfigInfo.getStartTime());
LocalTime end = LocalTime.parse(busStoreConfigInfo.getEndTime()); LocalTime end = LocalTime.parse(busStoreConfigInfo.getEndTime());
// 时区 // 时区
ZoneId zoneId = ZoneId.systemDefault(); // ZoneId zoneId = ZoneId.systemDefault();
LocalDateTime orderDateTime = LocalDateTime.ofInstant(busOrderInfo.getOrderTime().toInstant(), zoneId); LocalDateTime orderDateTime = busOrderInfo.getOrderTime().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime();
LocalTime orderTime = orderDateTime.toLocalTime(); LocalTime orderTime = orderDateTime.toLocalTime();
if (orderTime.isBefore(start) || end.isBefore(orderTime)) { if (orderTime.isBefore(start) || end.isBefore(orderTime)) {
System.out.println("营销时间区间拦截成功");
continue; continue;
} }
// 话术判断 08:00 10:00 11:30 13:30 18:00 20:00 // 话术判断 08:00 10:00 11:30 13:30 18:00 20:00
@ -327,24 +334,29 @@ public class AiServiceImpl implements IAiService {
if(busStoreConfigInfo.getContent1()==null){ if(busStoreConfigInfo.getContent1()==null){
continue; continue;
} }
System.out.println("ai话术1");
content = busStoreConfigInfo.getContent1(); content = busStoreConfigInfo.getContent1();
} else if (time2.isBefore(orderTime) && orderTime.isBefore(time3)) { } else if (time2.isBefore(orderTime) && orderTime.isBefore(time3)) {
if(busStoreConfigInfo.getContent2()==null){ if(busStoreConfigInfo.getContent2()==null){
continue; continue;
} }
System.out.println("ai话术2");
content = busStoreConfigInfo.getContent2(); content = busStoreConfigInfo.getContent2();
} else if (time3.isBefore(orderTime) && orderTime.isBefore(time4)) { } else if (time3.isBefore(orderTime) && orderTime.isBefore(time4)) {
if(busStoreConfigInfo.getContent3()==null){ if(busStoreConfigInfo.getContent3()==null){
continue; continue;
} }
System.out.println("ai话术3");
content = busStoreConfigInfo.getContent3(); content = busStoreConfigInfo.getContent3();
} else { } else {
if(busStoreConfigInfo.getContent4()==null){ if(busStoreConfigInfo.getContent4()==null){
continue; continue;
} }
System.out.println("ai话术4");
content = busStoreConfigInfo.getContent4(); content = busStoreConfigInfo.getContent4();
} }
}else if("sms".equals(busStoreInfo.getMarketingChannels())){ }else if("sms".equals(busStoreInfo.getMarketingChannels())){
System.out.println("短信话术");
content = sysDictDataMapper.selectDictLabel("bus_default_sms_script","default_script"); content = sysDictDataMapper.selectDictLabel("bus_default_sms_script","default_script");
} }
if(busReturnVisitInfoMapper.returnVisitInfoList(busOrderInfo.getPrivcyPhone()).size()>0){ if(busReturnVisitInfoMapper.returnVisitInfoList(busOrderInfo.getPrivcyPhone()).size()>0){
@ -354,6 +366,7 @@ public class AiServiceImpl implements IAiService {
if ("1".equals(busStoreConfigInfo.getQuotaStatus()) && busStoreConfigInfo.getQuota() != 0){ if ("1".equals(busStoreConfigInfo.getQuotaStatus()) && busStoreConfigInfo.getQuota() != 0){
int quota = busReturnVisitInfoMapper.countByToday(storeInfo.getStoreCode()); int quota = busReturnVisitInfoMapper.countByToday(storeInfo.getStoreCode());
if (quota >= busStoreConfigInfo.getQuota()) { if (quota >= busStoreConfigInfo.getQuota()) {
System.out.println("当日此店铺营销限额拦截成功");
break; break;
} }
} }
@ -363,6 +376,7 @@ public class AiServiceImpl implements IAiService {
busBanOperateInfo.setBanStatus("1"); busBanOperateInfo.setBanStatus("1");
List<BusBanOperateInfo> list1 = iBusBanOperateInfoService.selectBusBanOperateInfoList(busBanOperateInfo); List<BusBanOperateInfo> list1 = iBusBanOperateInfoService.selectBusBanOperateInfoList(busBanOperateInfo);
if (list1.size() > 0) { if (list1.size() > 0) {
System.out.println("黑名单拦截成功");
continue; continue;
} }
BusReturnVisitInfo returnVisitInfo = new BusReturnVisitInfo(); BusReturnVisitInfo returnVisitInfo = new BusReturnVisitInfo();
@ -417,6 +431,7 @@ public class AiServiceImpl implements IAiService {
} }
} }
} }
System.out.println("结束===");
} }
@Override @Override
@ -532,4 +547,5 @@ public class AiServiceImpl implements IAiService {
} }
} }
} }
} }

View File

@ -197,6 +197,10 @@ public class BusStoreInfoServiceImpl implements IBusStoreInfoService
}else { }else {
throw new ServiceException("销售人员信息异常!"); throw new ServiceException("销售人员信息异常!");
} }
}else{
busStoreInfo.setSaleBindId(0L);
busStoreInfo.setSaleBindName("");
busStoreInfo.setSaleBindTime(new Date());
} }
busStoreInfo.setMarketingChannels(busStoreConfigInfo.getMarketingChannels()); busStoreInfo.setMarketingChannels(busStoreConfigInfo.getMarketingChannels());
busStoreInfoMapper.updateBusStoreInfo(busStoreInfo); busStoreInfoMapper.updateBusStoreInfo(busStoreInfo);

View File

@ -182,7 +182,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="storeBelong != null">store_belong = #{storeBelong},</if> <if test="storeBelong != null">store_belong = #{storeBelong},</if>
<if test="grantStatus != null">grant_status = #{grantStatus},</if> <if test="grantStatus != null">grant_status = #{grantStatus},</if>
<if test="returnVisitStatus != null">return_visit_status = #{returnVisitStatus},</if> <if test="returnVisitStatus != null">return_visit_status = #{returnVisitStatus},</if>
<if test="bindId != null">bind_id = #{bindId},</if> <if test="bindId != null">
<if test="bindId == 0">bind_id = null,</if>
<if test="bindId != 0">bind_id = #{bindId},</if>
</if>
<if test="bindUser != null">bind_user = #{bindUser},</if> <if test="bindUser != null">bind_user = #{bindUser},</if>
<if test="bindTime != null">bind_time = #{bindTime},</if> <if test="bindTime != null">bind_time = #{bindTime},</if>
<if test="updateId != null">update_id = #{updateId},</if> <if test="updateId != null">update_id = #{updateId},</if>