diff --git a/ruoyi-admin/src/main/java/com/ruoyi/business/controller/AiController.java b/ruoyi-admin/src/main/java/com/ruoyi/business/controller/AiController.java index b43c7ab..b2032e1 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/business/controller/AiController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/business/controller/AiController.java @@ -27,10 +27,22 @@ public class AiController { @Autowired private IAiService aiService; - @GetMapping(value = "/login") - public void login(String phoneNum, String virtualPhone) + @GetMapping(value = "/addAiTask") + public R addAiTask(String phoneNum, String virtualPhone) { - aiService.login(phoneNum, virtualPhone); + return aiService.addAiTask(phoneNum, virtualPhone); + } + + @GetMapping(value = "/appendAiTask") + public R appendAiTask(String phoneNum, String virtualPhone) + { + return aiService.appendAiTask(phoneNum, virtualPhone); + } + + @GetMapping(value = "/queryAiTask") + public void queryAiTask() + { + aiService.queryAiTask(); } } diff --git a/ruoyi-system/src/main/java/com/ruoyi/business/service/IAiService.java b/ruoyi-system/src/main/java/com/ruoyi/business/service/IAiService.java index b94f78a..b45ecf6 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/business/service/IAiService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/business/service/IAiService.java @@ -1,8 +1,6 @@ package com.ruoyi.business.service; -import com.ruoyi.business.domain.BusAgentInfo; - -import java.util.List; +import com.ruoyi.common.core.domain.R; /** * ai Service接口 @@ -17,6 +15,8 @@ public interface IAiService * @param phoneNo * @param virtualPhone */ - void login(String phoneNo,String virtualPhone); + R addAiTask(String phoneNo,String virtualPhone); + R appendAiTask(String phoneNo,String virtualPhone); + void queryAiTask(); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/business/service/impl/AiServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/business/service/impl/AiServiceImpl.java index 3e5541c..8ac0907 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/business/service/impl/AiServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/business/service/impl/AiServiceImpl.java @@ -9,6 +9,7 @@ import com.ruoyi.business.domain.BusOrderInfo; import com.ruoyi.business.domain.BusStoreInfo; import com.ruoyi.business.mapper.BusAgentInfoMapper; import com.ruoyi.business.service.*; +import com.ruoyi.common.core.domain.R; import com.ruoyi.common.utils.HttpClientUtilT; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -35,8 +36,13 @@ public class AiServiceImpl implements IAiService @Autowired private IBusAgentInfoService agentInfoService; + private static String aKey; + private static String uSn; + private static String pSn; + private static String dialTaskMainSn; + @Override - public void login(String phoneNo, String virtualPhone) { + public R addAiTask(String phoneNo, String virtualPhone) { String url = "https://ai002.ciopaas.com/api/login"; String userName = "zw982210"; Map header = new HashMap<>(); @@ -53,6 +59,9 @@ public class AiServiceImpl implements IAiService System.out.println("login 返回:===========apikey,userSn,projectSn============="+apiKey+","+userSn+","+projectSn); String projectSn1 = projectSn.split(",")[0]; + aKey = apiKey; + uSn = userSn; + pSn = projectSn1; String requestJson = "{\"api_key\": \""+apiKey+"\",\"user_sn\": \""+userSn+"\",\"source\": \"测试任务\",\"project_sn\": \""+projectSn1+"\",\"ai_user_sn\": \"SYSUSER|2665bcca63a2b5c724095fa01dce0470\",\"is_zidong\": \"on\",\"client_info_json\": {\"data\": [{\"姓名\": \"ws测试\",\"电话\": \""+phoneNo+"\",\"备注\": \"门店新客\",\"虚拟分机号\": \""+virtualPhone+"\"}]},\"is_open_second_dialing\": \"1\",\n" + "\"is_open_remove_duplication\": \"0\",\"dial_task_main_sn\": \"20240621203741220560000000000034\",\"is_append\": \"0\"}"; @@ -64,57 +73,109 @@ public class AiServiceImpl implements IAiService String taskMainId = data1.getString("dial_task_main_id"); String taskMainSn = data1.getString("dial_task_main_sn"); + dialTaskMainSn = taskMainSn; // JSONArray jsonArray = jsonObject.getJSONArray("list"); // JSONObject joo = jsonArray.getJSONObject(0); // String taskMainSn1 = joo.getString("dial_task_main_sn"); // System.out.println(taskMainSn1); System.out.println("建立任务返回: ============taskMainId,taskMainSn==========="+taskMainId+","+taskMainSn); - - String url1 = "https://ai002.ciopaas.com/api/crmList"; - String json1 = "{\"api_key\":\""+apiKey+"\",\"user_sn\":\""+userSn+"\",\"pageIndex\":\"0\",\"pageSize\":\"20\"}"; - String result1 = HttpClientUtilT.doPostJson(url1,header,json1); - JSONObject jsonObject1 = JSONObject.parseObject(result1); - if ("0".equals(jsonObject1.getString("code"))){ - JSONArray jsonArray = jsonObject1.getJSONObject("data").getJSONArray("list"); - for (Object o : jsonArray) { - JSONObject oj = JSONObject.parseObject(JSON.toJSONString(o)); - String id = oj.getString("id"); - String dial_task_main_sn = oj.getString("dial_task_main_sn"); - String phone = oj.getString("phone"); - String virtual_extension_number = oj.getString("virtual_extension_number"); - String connected_at = oj.getString("connected_at"); - String disconnected_at = oj.getString("disconnected_at"); - String talktimes = oj.getString("talktimes"); - String mark = oj.getString("mark"); - String source = oj.getString("source"); - BusAiInfo aiInfo = new BusAiInfo(); - aiInfo.setId(Long.valueOf(id)); - aiInfo.setDialTaskMainSn(dial_task_main_sn); - aiInfo.setPhone(phone); - aiInfo.setVirtualExtensionNumber(virtual_extension_number); - aiInfo.setConnectedAt(connected_at); - aiInfo.setDisconnectedAt(disconnected_at); - aiInfo.setTalktimes(talktimes); - aiInfo.setMark(mark); - aiInfo.setSource(source); - try { - aiInfoService.insertBusAiInfo(aiInfo); - long saveId = aiInfo.getId(); - reduceIntegral(saveId); - }catch (Exception e) { - System.out.println(id+"duplicate"); - } - } - } else { - System.out.println("crmList接口返回错误: " + jsonObject1.toString()); - } + return R.ok(taskMainSn); } else { System.out.println("建立任务接口返回错误: " + jo.toString()); } } else { System.out.println("login接口返回错误: " + jsonObject.toString()); } + return R.fail(); + } + + @Override + public R appendAiTask(String phoneNo, String virtualPhone) { + String requestJson = "{\"api_key\": \""+aKey+"\",\"user_sn\": \""+uSn+"\",\"source\": \"测试任务\",\"project_sn\": \""+pSn+"\",\"ai_user_sn\": \"SYSUSER|2665bcca63a2b5c724095fa01dce0470\",\"is_zidong\": \"on\",\"client_info_json\": {\"data\": [{\"姓名\": \"ws测试\",\"电话\": \""+phoneNo+"\",\"备注\": \"门店新客\",\"虚拟分机号\": \""+virtualPhone+"\"}]},\"is_open_second_dialing\": \"1\",\n" + + "\"is_open_remove_duplication\": \"0\",\"dial_task_main_sn\": \""+dialTaskMainSn+"\",\"is_append\": \"1\"}"; + String requestUrl = "https://ai002.ciopaas.com/api/addJsonOfAsync"; + Map header = new HashMap<>(); + header.put("Accept", "application/json"); + header.put("Content-Type", "application/json;charset=utf-8"); + String requestResult = HttpClientUtilT.doPostJson(requestUrl,header,requestJson); + JSONObject jo = JSONObject.parseObject(requestResult); + if ("0".equals(jo.getString("code"))){ + JSONObject data1 = jo.getJSONObject("data"); + String taskMainId = data1.getString("dial_task_main_id"); + String taskMainSn = data1.getString("dial_task_main_sn"); + +// JSONArray jsonArray = jsonObject.getJSONArray("list"); +// JSONObject joo = jsonArray.getJSONObject(0); +// String taskMainSn1 = joo.getString("dial_task_main_sn"); +// System.out.println(taskMainSn1); + + System.out.println("追加任务返回: ============taskMainId,taskMainSn==========="+taskMainId+","+taskMainSn); + return R.ok(taskMainSn); + } else { + System.out.println("追加任务接口返回错误: " + jo.toString()); + } + return R.fail(); + } + + @Override + public void queryAiTask() { + String url = "https://ai002.ciopaas.com/api/login"; + String userName = "zw982210"; + Map header = new HashMap<>(); + header.put("Accept", "application/json"); + header.put("Content-Type", "application/json;charset=utf-8"); + String loginJson = "{\"username\":\""+userName+"\",\"password\":\""+userName+"\",\"from\":\"2\",\"url\":\"83710973\"}"; + String loginResult = HttpClientUtilT.doPostJson(url,header, loginJson); + JSONObject jsonObject = JSONObject.parseObject(loginResult); + if ("0".equals(jsonObject.getString("code"))){ + JSONObject data = jsonObject.getJSONObject("data"); + String apiKey = data.getString("api_key"); + String userSn = data.getString("user_sn"); + String projectSn = data.getString("project_sn"); + System.out.println("login 返回:===========apikey,userSn,projectSn============="+apiKey+","+userSn+","+projectSn); + + String url1 = "https://ai002.ciopaas.com/api/crmList"; + String json1 = "{\"api_key\":\""+apiKey+"\",\"user_sn\":\""+userSn+"\",\"pageIndex\":\"0\",\"pageSize\":\"20\"}"; + String result1 = HttpClientUtilT.doPostJson(url1,header,json1); + JSONObject jsonObject1 = JSONObject.parseObject(result1); + if ("0".equals(jsonObject1.getString("code"))){ + JSONArray jsonArray = jsonObject1.getJSONObject("data").getJSONArray("list"); + for (Object o : jsonArray) { + JSONObject oj = JSONObject.parseObject(JSON.toJSONString(o)); + String id = oj.getString("id"); + String dial_task_main_sn = oj.getString("dial_task_main_sn"); + String phone = oj.getString("phone"); + String virtual_extension_number = oj.getString("virtual_extension_number"); + String connected_at = oj.getString("connected_at"); + String disconnected_at = oj.getString("disconnected_at"); + String talktimes = oj.getString("talktimes"); + String mark = oj.getString("mark"); + String source = oj.getString("source"); + BusAiInfo aiInfo = new BusAiInfo(); + aiInfo.setId(Long.valueOf(id)); + aiInfo.setDialTaskMainSn(dial_task_main_sn); + aiInfo.setPhone(phone); + aiInfo.setVirtualExtensionNumber(virtual_extension_number); + aiInfo.setConnectedAt(connected_at); + aiInfo.setDisconnectedAt(disconnected_at); + aiInfo.setTalktimes(talktimes); + aiInfo.setMark(mark); + aiInfo.setSource(source); + try { + aiInfoService.insertBusAiInfo(aiInfo); +// long saveId = aiInfo.getId(); +// reduceIntegral(saveId); + }catch (Exception e) { + System.out.println(id+"duplicate"); + } + } + } else { + System.out.println("crmList接口返回错误: " + jsonObject1.toString()); + } + } else { + System.out.println("login接口返回错误: " + jsonObject.toString()); + } } private void reduceIntegral(long aiId){