ai追加任务拆分

This commit is contained in:
Lenovo 2024-07-07 14:58:22 +08:00
parent 464ee406fd
commit 6ea709ea13
3 changed files with 120 additions and 47 deletions

View File

@ -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();
}
}

View File

@ -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();
}

View File

@ -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<String, String> 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<String, String> 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<String, String> 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){