From 4410a4fbb3d3e31c2f1ba8ad66c91628b3b11489 Mon Sep 17 00:00:00 2001 From: wangshuai Date: Thu, 11 Jul 2024 14:29:49 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=91=E9=80=81ai=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/BusBanOperateController.java | 2 +- .../java/com/ruoyi/quartz/task/RyTask.java | 27 +++++++++---------- .../mapper/BusReturnVisitInfoMapper.java | 2 ++ .../service/IBusReturnVisitInfoService.java | 2 ++ .../impl/BusReturnVisitInfoServiceImpl.java | 5 ++++ .../service/impl/MeituanServiceImpl.java | 18 +++++++------ .../business/BusReturnVisitInfoMapper.xml | 5 ++++ 7 files changed, 38 insertions(+), 23 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/business/controller/BusBanOperateController.java b/ruoyi-admin/src/main/java/com/ruoyi/business/controller/BusBanOperateController.java index 41b2402..d6b270b 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/business/controller/BusBanOperateController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/business/controller/BusBanOperateController.java @@ -80,7 +80,7 @@ public class BusBanOperateController extends BaseController /** * 新增免运营订单信息 */ - @PreAuthorize("@ss.hasPermi('system:info:add')") +// @PreAuthorize("@ss.hasPermi('system:info:add')") @Log(title = "免运营订单信息", businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(@RequestBody ReqBusOrderList reqBusOrderList) diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java index f8e64cb..5690713 100644 --- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java +++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java @@ -87,19 +87,10 @@ public class RyTask { if("2".equals(busStoreInfo.getReturnVisitStatus())){ continue;// 未开启营销的跳出 } - BusAgentInfo agentInfo = new BusAgentInfo(); - agentInfo.setAgentAccount(busStoreInfo.getBindUser()); - List agentInfoL = agentInfoService.selectBusAgentInfoList(agentInfo); - if (agentInfoL.size() > 0) { - if (agentInfoL.get(0).getAiDurationBalance() <= 0) { - continue;//代理账分不足,跳出 - } - } else continue; // 配置规则 BusStoreConfigInfo busStoreConfigInfo = new BusStoreConfigInfo(); busStoreConfigInfo.setStoreCode(busStoreInfo.getStoreCode()); busStoreConfigInfo = iBusStoreConfigInfoService.selectBusStoreConfigInfoList(busStoreConfigInfo).get(0); - redisTemplate.opsForValue().set(busStoreConfigInfo.getStoreCode()+now.format(dateTimeFormatterNow), busStoreConfigInfo.getQuota()+""); List list = new ArrayList<>(); if("1".equals(busStoreInfo.getSelfDeliveryStatus())){ @@ -110,7 +101,17 @@ public class RyTask { // 自配送前推时间处理 list = orderInfoService.selectBusZpsOrderInfoListToAi(busStoreInfo.getStoreCode(), time); } + if (list.size() == 0 ) continue; list.forEach(System.out::println); + //代理账分不足,跳出 取最小值 + BusAgentInfo agentInfo = new BusAgentInfo(); + agentInfo.setAgentAccount(busStoreInfo.getBindUser()); + List agentInfoL = agentInfoService.selectBusAgentInfoList(agentInfo); + if (agentInfoL.size() > 0) { + if (agentInfoL.get(0).getAiDurationBalance() < list.size()) { + list.subList(0,agentInfoL.get(0).getAiDurationBalance()-1); + } + } else continue; for (BusOrderInfo busOrderInfo : list) { // 拼好饭 if("N".equals(busStoreConfigInfo.getIsSpliceOrder())){ // 否:开启拼好饭订单过滤(不营销拼好饭) @@ -159,21 +160,19 @@ public class RyTask { continue; } // 当日此店铺营销限额 - int quota = Integer.valueOf(redisTemplate.opsForValue().get(busStoreConfigInfo.getStoreCode()+now.format(dateTimeFormatterNow))); - if(quota==0){ + int quota = iBusReturnVisitInfoService.countByToday(storeInfo.getStoreCode()); + if(quota >= busStoreConfigInfo.getQuota()){ break; } - quota = quota-1; redisTemplate.opsForValue().set(busStoreConfigInfo.getStoreCode()+now.format(dateTimeFormatterNow), quota+""); BusFifteenInfo fifteenInfo = new BusFifteenInfo(); fifteenInfo.setCustomId(busOrderInfo.getCustomId()); List listInfo = fifteenInfoService.selectBusFifteenInfoList(fifteenInfo); if (listInfo.size() == 0) { System.out.println("话术:"+content+"; order"+busOrderInfo.toString()); - aiService.sendAiTask(content,busOrderInfo); +// aiService.sendAiTask(content,busOrderInfo); } } - redisTemplate.delete(busStoreConfigInfo.getStoreCode()+now.format(dateTimeFormatterNow)); } } diff --git a/ruoyi-system/src/main/java/com/ruoyi/business/mapper/BusReturnVisitInfoMapper.java b/ruoyi-system/src/main/java/com/ruoyi/business/mapper/BusReturnVisitInfoMapper.java index 0205dab..bb9361a 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/business/mapper/BusReturnVisitInfoMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/business/mapper/BusReturnVisitInfoMapper.java @@ -64,4 +64,6 @@ public interface BusReturnVisitInfoMapper int batchInsertVisit(@Param("ls") List ls); List selectBusReturnVisitInfoListByDate(@Param("storeCode") String storeCode,@Param("date") String date); + + int countByToday(String storeCode); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/business/service/IBusReturnVisitInfoService.java b/ruoyi-system/src/main/java/com/ruoyi/business/service/IBusReturnVisitInfoService.java index 55c7282..e1ce988 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/business/service/IBusReturnVisitInfoService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/business/service/IBusReturnVisitInfoService.java @@ -60,4 +60,6 @@ public interface IBusReturnVisitInfoService public int deleteBusReturnVisitInfoById(Long id); List selectBusReturnVisitInfoListByDate(String storeCode, String date); + + int countByToday(String storeCode); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/business/service/impl/BusReturnVisitInfoServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/business/service/impl/BusReturnVisitInfoServiceImpl.java index ccb8908..4c9e114 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/business/service/impl/BusReturnVisitInfoServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/business/service/impl/BusReturnVisitInfoServiceImpl.java @@ -95,4 +95,9 @@ public class BusReturnVisitInfoServiceImpl implements IBusReturnVisitInfoService public List selectBusReturnVisitInfoListByDate(String storeCode, String date) { return busReturnVisitInfoMapper.selectBusReturnVisitInfoListByDate(storeCode,date); } + + @Override + public int countByToday(String storeCode) { + return busReturnVisitInfoMapper.countByToday(storeCode); + } } diff --git a/ruoyi-system/src/main/java/com/ruoyi/business/service/impl/MeituanServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/business/service/impl/MeituanServiceImpl.java index 9a10e94..197d812 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/business/service/impl/MeituanServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/business/service/impl/MeituanServiceImpl.java @@ -274,7 +274,7 @@ public class MeituanServiceImpl implements IMeituanService { } } } - System.out.println(jsonObject); +// System.out.println(jsonObject); return true; } @@ -386,7 +386,7 @@ public class MeituanServiceImpl implements IMeituanService { array = jo.getJSONObject("data").getJSONArray("wmOrderList"); } else { System.out.println(jo.getString("msg")); - break; + return R.fail(jo.getString("msg")); } } return R.ok(); @@ -420,14 +420,16 @@ public class MeituanServiceImpl implements IMeituanService { HttpClient client = proxyHttpClient(); HttpEntity responseEntity; - String resp; + String resp = null; + JSONObject jsonObject = new JSONObject(); try { responseEntity = client.execute(httpPost).getEntity(); resp = EntityUtils.toString(responseEntity); - } catch (IOException e) { - throw new RuntimeException(e); + jsonObject = JSONObject.parseObject(resp); + } catch (Exception e) { + System.out.println(e.getMessage()); + jsonObject.put("code","403"); } - JSONObject jsonObject = JSONObject.parseObject(resp); return jsonObject; } @@ -617,7 +619,7 @@ public class MeituanServiceImpl implements IMeituanService { } } } - System.out.println(result); +// System.out.println(result); return true; } @@ -673,7 +675,7 @@ public class MeituanServiceImpl implements IMeituanService { busStoreDayInfo1.setLastPositiveReviewsNum(fiveNum + fourNum); busStoreDayInfoService.updateBusStoreDayInfo(busStoreDayInfo1); } - System.out.println(jsonObject);//落库 +// System.out.println(jsonObject);//落库 return true; } catch (Exception e) { System.out.println(e.getMessage()); diff --git a/ruoyi-system/src/main/resources/mapper/business/BusReturnVisitInfoMapper.xml b/ruoyi-system/src/main/resources/mapper/business/BusReturnVisitInfoMapper.xml index 6244641..c3f1c50 100644 --- a/ruoyi-system/src/main/resources/mapper/business/BusReturnVisitInfoMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/business/BusReturnVisitInfoMapper.xml @@ -41,6 +41,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and DATE_FORMAT(return_visit_time,'%Y-%m-%d') = #{date} + insert into bus_return_visit_info (store_code,store_name,phone_number,phone_end_number,return_visit_time) values