发送ai配置

This commit is contained in:
wangshuai 2024-07-11 11:36:56 +08:00
parent bb3eb54b09
commit 117ec15929
4 changed files with 78 additions and 82 deletions

View File

@ -64,9 +64,6 @@ public class RyTask {
* 获取订单并解析号码 5分钟
*/
public void getOrders() {
iMeituanService.getScore();
iMeituanService.getComments();
iMeituanService.getYestodayCount();
iMeituanService.orderInfoList();
}
@ -114,68 +111,69 @@ public class RyTask {
list = orderInfoService.selectBusZpsOrderInfoListToAi(busStoreInfo.getStoreCode(), time);
}
list.forEach(System.out::println);
// for (BusOrderInfo busOrderInfo : list) {
// // 拼好饭
// if("N".equals(busStoreConfigInfo.getIsSpliceOrder())){ // 开启拼好饭订单过滤(不营销拼好饭)
// if("2".equals(busOrderInfo.getIsPhf())){//
// continue;
// }
// }
// // 下单次数
// int count = Integer.valueOf(busOrderInfo.getOrderCount());
// if(busStoreConfigInfo.getMaxOrderNum() < count
// || count < busStoreConfigInfo.getMinOrderNum()){
// continue;
// }
// // 营销时间区间
// LocalTime start = LocalTime.parse(busStoreConfigInfo.getStartTime());
// LocalTime end = LocalTime.parse(busStoreConfigInfo.getEndTime());
// // 时区
// ZoneId zoneId = ZoneId.systemDefault();
// LocalDateTime orderDateTime = LocalDateTime.ofInstant(busOrderInfo.getOrderTime().toInstant(), zoneId);
// LocalTime orderTime = orderDateTime.toLocalTime();
// if(orderTime.isBefore(start)||end.isBefore(orderTime)){
// continue;
// }
// // 话术判断 08:00 10:00 11:30 13:30 18:00 20:00
// String content = "";
// LocalTime time1 = LocalTime.of(6, 00, 00);
// LocalTime time2 = LocalTime.of(10, 00, 00);
// LocalTime time3 = LocalTime.of(14, 00, 00);
// LocalTime time4 = LocalTime.of(17, 00, 00);
// if(time1.isBefore(orderTime)&&orderTime.isBefore(time2)){
// content = busStoreConfigInfo.getContent1();
// }else if(time2.isBefore(orderTime)&&orderTime.isBefore(time3)){
// content = busStoreConfigInfo.getContent2();
// }else if(time3.isBefore(orderTime)&&orderTime.isBefore(time4)){
// content = busStoreConfigInfo.getContent3();
// }else{
// content = busStoreConfigInfo.getContent4();
// }
//
// //加入免运营订单-黑名单的 不营销跳出
// BusBanOperateInfo busBanOperateInfo = new BusBanOperateInfo();
// busBanOperateInfo.setBanOperateCode(busOrderInfo.getCustomId());
// busBanOperateInfo.setBanStatus("1");
// List<BusBanOperateInfo> list1 = iBusBanOperateInfoService.selectBusBanOperateInfoList(busBanOperateInfo);
// if(list1.size() > 0){
// continue;
// }
// // 当日此店铺营销限额
// int quota = Integer.valueOf(redisTemplate.opsForValue().get(busStoreConfigInfo.getStoreCode()+now.format(dateTimeFormatterNow)));
// if(quota==0){
// break;
// }
// quota = quota-1;
// redisTemplate.opsForValue().set(busStoreConfigInfo.getStoreCode()+now.format(dateTimeFormatterNow), quota+"");
// BusFifteenInfo fifteenInfo = new BusFifteenInfo();
// fifteenInfo.setCustomId(busOrderInfo.getCustomId());
// List<BusFifteenInfo> listInfo = fifteenInfoService.selectBusFifteenInfoList(fifteenInfo);
// if (listInfo.size() == 0) {
// aiService.sendAiTask(content,busOrderInfo);
// }
// }
// redisTemplate.delete(busStoreConfigInfo.getStoreCode()+now.format(dateTimeFormatterNow));
for (BusOrderInfo busOrderInfo : list) {
// 拼好饭
if("N".equals(busStoreConfigInfo.getIsSpliceOrder())){ // 开启拼好饭订单过滤(不营销拼好饭)
if("2".equals(busOrderInfo.getIsPhf())){//
continue;
}
}
// 下单次数
int count = Integer.valueOf(busOrderInfo.getOrderCount());
if(busStoreConfigInfo.getMaxOrderNum() < count
|| count < busStoreConfigInfo.getMinOrderNum()){
continue;
}
// 营销时间区间
LocalTime start = LocalTime.parse(busStoreConfigInfo.getStartTime());
LocalTime end = LocalTime.parse(busStoreConfigInfo.getEndTime());
// 时区
ZoneId zoneId = ZoneId.systemDefault();
LocalDateTime orderDateTime = LocalDateTime.ofInstant(busOrderInfo.getOrderTime().toInstant(), zoneId);
LocalTime orderTime = orderDateTime.toLocalTime();
if(orderTime.isBefore(start)||end.isBefore(orderTime)){
continue;
}
// 话术判断 08:00 10:00 11:30 13:30 18:00 20:00
String content = "";
LocalTime time1 = LocalTime.of(6, 00, 00);
LocalTime time2 = LocalTime.of(10, 00, 00);
LocalTime time3 = LocalTime.of(14, 00, 00);
LocalTime time4 = LocalTime.of(17, 00, 00);
if(time1.isBefore(orderTime)&&orderTime.isBefore(time2)){
content = busStoreConfigInfo.getContent1();
}else if(time2.isBefore(orderTime)&&orderTime.isBefore(time3)){
content = busStoreConfigInfo.getContent2();
}else if(time3.isBefore(orderTime)&&orderTime.isBefore(time4)){
content = busStoreConfigInfo.getContent3();
}else{
content = busStoreConfigInfo.getContent4();
}
//加入免运营订单-黑名单的 不营销跳出
BusBanOperateInfo busBanOperateInfo = new BusBanOperateInfo();
busBanOperateInfo.setBanOperateCode(busOrderInfo.getCustomId());
busBanOperateInfo.setBanStatus("1");
List<BusBanOperateInfo> list1 = iBusBanOperateInfoService.selectBusBanOperateInfoList(busBanOperateInfo);
if(list1.size() > 0){
continue;
}
// 当日此店铺营销限额
int quota = Integer.valueOf(redisTemplate.opsForValue().get(busStoreConfigInfo.getStoreCode()+now.format(dateTimeFormatterNow)));
if(quota==0){
break;
}
quota = quota-1;
redisTemplate.opsForValue().set(busStoreConfigInfo.getStoreCode()+now.format(dateTimeFormatterNow), quota+"");
BusFifteenInfo fifteenInfo = new BusFifteenInfo();
fifteenInfo.setCustomId(busOrderInfo.getCustomId());
List<BusFifteenInfo> listInfo = fifteenInfoService.selectBusFifteenInfoList(fifteenInfo);
if (listInfo.size() == 0) {
System.out.println("话术:"+content+"; order"+busOrderInfo.toString());
aiService.sendAiTask(content,busOrderInfo);
}
}
redisTemplate.delete(busStoreConfigInfo.getStoreCode()+now.format(dateTimeFormatterNow));
}
}

View File

@ -131,8 +131,13 @@ public class BusAgentInfoServiceImpl implements IBusAgentInfoService
busAgentInfo.setSuperiorAgentAccount(loginUser.getUsername());
busAgentInfo.setDelStatus("1");
busAgentInfo.setCreateTime(new Date());
Long[] roles = {101L};
user.setRoleIds(roles);
if("admin".equals(loginUser.getUsername())){
Long[] roles = {100L};
user.setRoleIds(roles);
}else{
Long[] roles = {101L};
user.setRoleIds(roles);
}
userService.insertUser(user);
busAgentInfo.setId(user.getUserId());
return insertBusAgentInfo(busAgentInfo);
@ -161,6 +166,11 @@ public class BusAgentInfoServiceImpl implements IBusAgentInfoService
record1.setUpdateType("出账");
record1.setIntegralUpdateNum(busAgentInfo.getAiDurationBalance1());
BusAgentInfo temp1 = busAgentInfoMapper.selectBusAgentInfoById(busAgentInfo.getSuperiorAgentCode());
if(busAgentInfo.getSuperiorAgentCode() == 1){
record1.setIntegralUpdateTime(new Date());
recordService.insertBusIntegralRecord(record1);
return 1;
}
int oldValue1 = temp1.getAiDurationBalance();
record1.setIntegralBalance(oldValue1 - newValue);
record1.setIntegralUpdateTime(new Date());

View File

@ -275,19 +275,7 @@ public class SysUserServiceImpl implements ISysUserService
insertUserPost(user);
// 新增用户与角色管理
insertUserRole(user);
if(user.getRoleIds()[0]==100L){
LoginUser loginUser = SecurityUtils.getLoginUser();
BusAgentInfo busAgentInfo = new BusAgentInfo();
busAgentInfo.setId(user.getUserId());
busAgentInfo.setAgentAccount(user.getUserName());
busAgentInfo.setAgentName(user.getNickName());
busAgentInfo.setSuperiorAgentCode(loginUser.getUserId());
busAgentInfo.setSuperiorAgentAccount(loginUser.getUsername());
busAgentInfo.setDelStatus("1");
busAgentInfo.setIntegral(0);
busAgentInfo.setCreateTime(new Date());
busAgentInfoMapper.insertBusAgentInfo(busAgentInfo);
}
return rows;
}

View File

@ -52,7 +52,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
select a.* from bus_order_info a
LEFT JOIN bus_return_visit_info b on b.phone_number=a.privcy_phone
where b.return_visit_time is null
<if test="storeCode != null and storeCode != ''"> and store_code = #{storeCode}</if>
<if test="storeCode != null and storeCode != ''"> and a.store_code = #{storeCode}</if>
<if test="t1 != null and t1 != ''"> and a.complete_time &gt; #{t1}</if>
<if test="t2 != null and t2 != ''"> and a.complete_time &lt;= #{t2}</if>
</select>
@ -61,7 +61,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
select a.* from bus_order_info a
LEFT JOIN bus_return_visit_info b on b.phone_number=a.privcy_phone
where b.return_visit_time is null
<if test="storeCode != null and storeCode != ''"> and store_code = #{storeCode}</if>
<if test="storeCode != null and storeCode != ''"> and a.store_code = #{storeCode}</if>
<if test="t2 != null and t2 != ''"> and a.order_time &lt;= #{t2}</if>
</select>