等待联通联调
parent
4ff2c12d83
commit
61a5d43891
|
|
@ -28,7 +28,7 @@ import java.util.concurrent.atomic.AtomicBoolean;
|
||||||
*/
|
*/
|
||||||
@Component
|
@Component
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@Profile({"dev"})
|
@Profile({"default"})
|
||||||
public class AutoCallTaskScheduled {
|
public class AutoCallTaskScheduled {
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
|
|
@ -46,6 +46,9 @@ public class AutoCallTaskScheduled {
|
||||||
@EventListener(ApplicationReadyEvent.class)
|
@EventListener(ApplicationReadyEvent.class)
|
||||||
public void initialize() throws Exception {
|
public void initialize() throws Exception {
|
||||||
autoCallHelper.getToken();
|
autoCallHelper.getToken();
|
||||||
|
log.info("token1 {}", autoCallHelper.getToken());
|
||||||
|
autoCallHelper.getToken();
|
||||||
|
log.info("token2 {}", autoCallHelper.getToken());
|
||||||
initialized.set(true);
|
initialized.set(true);
|
||||||
log.info("AutoCallTaskScheduled初始化完成");
|
log.info("AutoCallTaskScheduled初始化完成");
|
||||||
}
|
}
|
||||||
|
|
@ -131,6 +134,7 @@ public class AutoCallTaskScheduled {
|
||||||
int pendingDuration = 60 * 1000 * 2;
|
int pendingDuration = 60 * 1000 * 2;
|
||||||
int loopGap = 1000;
|
int loopGap = 1000;
|
||||||
boolean resultFetched = false;
|
boolean resultFetched = false;
|
||||||
|
AutoCallPerson _person = null;
|
||||||
while (pendingDuration > 0) {
|
while (pendingDuration > 0) {
|
||||||
try {
|
try {
|
||||||
Thread.sleep(loopGap);
|
Thread.sleep(loopGap);
|
||||||
|
|
@ -140,12 +144,15 @@ public class AutoCallTaskScheduled {
|
||||||
}
|
}
|
||||||
pendingDuration -= loopGap;
|
pendingDuration -= loopGap;
|
||||||
|
|
||||||
resultFetched = autoCallTaskService.step4QueryAICCTaskResult(person);
|
//联通确保tag和remark同时返回
|
||||||
|
_person = autoCallTaskService.step4QueryAICCTaskResult(person);
|
||||||
|
if (_person != null && _person.getDetailRemark() != null) {
|
||||||
|
resultFetched = true;
|
||||||
|
}
|
||||||
if (resultFetched) break;
|
if (resultFetched) break;
|
||||||
}
|
}
|
||||||
|
|
||||||
AutoCallPerson _person = autoCallTaskService.getPersonMapper().selectById(person.getId());
|
if (_person != null) person = _person;
|
||||||
person = _person;
|
|
||||||
|
|
||||||
if (resultFetched) {
|
if (resultFetched) {
|
||||||
//获取到任务详情且有话术标签为已知晓,中断循环
|
//获取到任务详情且有话术标签为已知晓,中断循环
|
||||||
|
|
@ -161,7 +168,7 @@ public class AutoCallTaskScheduled {
|
||||||
|
|
||||||
//重呼等15秒
|
//重呼等15秒
|
||||||
try {
|
try {
|
||||||
Thread.sleep(15*1000);
|
Thread.sleep(15 * 1000);
|
||||||
} catch (InterruptedException ignore) {
|
} catch (InterruptedException ignore) {
|
||||||
Thread.currentThread().interrupt();
|
Thread.currentThread().interrupt();
|
||||||
break;
|
break;
|
||||||
|
|
|
||||||
|
|
@ -109,7 +109,23 @@ public class WarningResponder extends Model<WarningResponder> implements Seriali
|
||||||
|
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
WarningResponder a = new WarningResponder();
|
WarningResponder a = new WarningResponder();
|
||||||
a.setPhone("18872619396");
|
//徐 18507181623 13545369643移动
|
||||||
|
//文 18627085672 13707166566移动苹果
|
||||||
|
//梁 18507191089
|
||||||
|
//18507181673,陆
|
||||||
|
//18607181767。孔
|
||||||
|
//18507181586,韩
|
||||||
|
//18507191372 王书坦
|
||||||
|
//18671662204 杨胜利
|
||||||
|
//舒康18607181321
|
||||||
|
//18607181503 冯阳
|
||||||
|
//18607181960 汪登
|
||||||
|
//18607181633 张梁
|
||||||
|
//18607181867 陶亚明
|
||||||
|
//18607251280 熊胜
|
||||||
|
//18507191276 李陶
|
||||||
|
//18607251169 王锐
|
||||||
|
a.setPhone("18607251169");
|
||||||
a.encryptPhone();
|
a.encryptPhone();
|
||||||
System.out.println(a.salt);
|
System.out.println(a.salt);
|
||||||
System.out.println(a.phone);
|
System.out.println(a.phone);
|
||||||
|
|
|
||||||
|
|
@ -5,12 +5,12 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.whdc.mapper.*;
|
import com.whdc.mapper.*;
|
||||||
import com.whdc.model.autocall.AutoCallPerson;
|
import com.whdc.model.autocall.AutoCallPerson;
|
||||||
import com.whdc.model.autocall.AutoCallTask;
|
import com.whdc.model.autocall.AutoCallTask;
|
||||||
import com.whdc.model.entity.QXWarning;
|
|
||||||
import com.whdc.model.entity.WarningResponder;
|
|
||||||
import com.whdc.model.autocall.aicc.AICCCallRespDetail;
|
import com.whdc.model.autocall.aicc.AICCCallRespDetail;
|
||||||
import com.whdc.model.autocall.aicc.AICCCallRespTask;
|
import com.whdc.model.autocall.aicc.AICCCallRespTask;
|
||||||
import com.whdc.model.autocall.aicc.AICCCallRespWrapper;
|
import com.whdc.model.autocall.aicc.AICCCallRespWrapper;
|
||||||
import com.whdc.model.autocall.aicc.AICCUploadTask;
|
import com.whdc.model.autocall.aicc.AICCUploadTask;
|
||||||
|
import com.whdc.model.entity.QXWarning;
|
||||||
|
import com.whdc.model.entity.WarningResponder;
|
||||||
import com.whdc.utils.AICCHelper;
|
import com.whdc.utils.AICCHelper;
|
||||||
import com.whdc.utils.SmsHelper;
|
import com.whdc.utils.SmsHelper;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
|
|
@ -26,7 +26,6 @@ import java.io.UnsupportedEncodingException;
|
||||||
import java.security.GeneralSecurityException;
|
import java.security.GeneralSecurityException;
|
||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.concurrent.atomic.AtomicBoolean;
|
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -56,15 +55,217 @@ public class AutoCallTaskService2 {
|
||||||
private SmsHelper smsHelper;
|
private SmsHelper smsHelper;
|
||||||
|
|
||||||
public void generateFakeCall() {
|
public void generateFakeCall() {
|
||||||
QXWarning warn = qxWarningMapper.selectOne(
|
QXWarning warn;
|
||||||
|
List<AutoCallTask> taskList;
|
||||||
|
AutoCallTask task;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
warn = qxWarningMapper.selectOne(
|
||||||
|
new QueryWrapper<QXWarning>()
|
||||||
|
.orderByDesc("WARNID")
|
||||||
|
.last("limit 1")
|
||||||
|
);
|
||||||
|
warn.setCtnm("荆州市");
|
||||||
|
warn.setCnnm("钟祥 ");
|
||||||
|
taskList = newTask(warn);
|
||||||
|
task = taskList.get(0);
|
||||||
|
task.setStatus(0);
|
||||||
|
task.setCreateTm(new Date());
|
||||||
|
task.setWarnCnnm("钟祥 ");
|
||||||
|
taskMapper.insert(task);
|
||||||
|
generatePerson(task);
|
||||||
|
|
||||||
|
warn = qxWarningMapper.selectOne(
|
||||||
|
new QueryWrapper<QXWarning>()
|
||||||
|
.orderByDesc("WARNID")
|
||||||
|
.last("limit 1")
|
||||||
|
);
|
||||||
|
warn.setCtnm("荆州市");
|
||||||
|
warn.setCnnm("张湾 ");
|
||||||
|
taskList = newTask(warn);
|
||||||
|
task = taskList.get(0);
|
||||||
|
task.setStatus(0);
|
||||||
|
task.setCreateTm(new Date());
|
||||||
|
task.setWarnCnnm("张湾 ");
|
||||||
|
taskMapper.insert(task);
|
||||||
|
generatePerson(task);
|
||||||
|
|
||||||
|
warn = qxWarningMapper.selectOne(
|
||||||
|
new QueryWrapper<QXWarning>()
|
||||||
|
.orderByDesc("WARNID")
|
||||||
|
.last("limit 1")
|
||||||
|
);
|
||||||
|
warn.setCtnm("荆州市");
|
||||||
|
warn.setCnnm("枣阳 ");
|
||||||
|
taskList = newTask(warn);
|
||||||
|
task = taskList.get(0);
|
||||||
|
task.setStatus(0);
|
||||||
|
task.setCreateTm(new Date());
|
||||||
|
task.setWarnCnnm("枣阳 ");
|
||||||
|
taskMapper.insert(task);
|
||||||
|
generatePerson(task);
|
||||||
|
|
||||||
|
warn = qxWarningMapper.selectOne(
|
||||||
|
new QueryWrapper<QXWarning>()
|
||||||
|
.orderByDesc("WARNID")
|
||||||
|
.last("limit 1")
|
||||||
|
);
|
||||||
|
warn.setCtnm("荆州市");
|
||||||
|
warn.setCnnm("郧西 ");
|
||||||
|
taskList = newTask(warn);
|
||||||
|
task = taskList.get(0);
|
||||||
|
task.setStatus(0);
|
||||||
|
task.setCreateTm(new Date());
|
||||||
|
task.setWarnCnnm("郧西 ");
|
||||||
|
taskMapper.insert(task);
|
||||||
|
generatePerson(task);
|
||||||
|
|
||||||
|
warn = qxWarningMapper.selectOne(
|
||||||
|
new QueryWrapper<QXWarning>()
|
||||||
|
.orderByDesc("WARNID")
|
||||||
|
.last("limit 1")
|
||||||
|
);
|
||||||
|
warn.setCtnm("荆州市");
|
||||||
|
warn.setCnnm("英山 ");
|
||||||
|
taskList = newTask(warn);
|
||||||
|
task = taskList.get(0);
|
||||||
|
task.setStatus(0);
|
||||||
|
task.setCreateTm(new Date());
|
||||||
|
task.setWarnCnnm("英山 ");
|
||||||
|
taskMapper.insert(task);
|
||||||
|
generatePerson(task);
|
||||||
|
|
||||||
|
warn = qxWarningMapper.selectOne(
|
||||||
|
new QueryWrapper<QXWarning>()
|
||||||
|
.orderByDesc("WARNID")
|
||||||
|
.last("limit 1")
|
||||||
|
);
|
||||||
|
warn.setCtnm("荆州市");
|
||||||
|
warn.setCnnm("应城 ");
|
||||||
|
taskList = newTask(warn);
|
||||||
|
task = taskList.get(0);
|
||||||
|
task.setStatus(0);
|
||||||
|
task.setCreateTm(new Date());
|
||||||
|
task.setWarnCnnm("应城 ");
|
||||||
|
taskMapper.insert(task);
|
||||||
|
generatePerson(task);
|
||||||
|
|
||||||
|
warn = qxWarningMapper.selectOne(
|
||||||
|
new QueryWrapper<QXWarning>()
|
||||||
|
.orderByDesc("WARNID")
|
||||||
|
.last("limit 1")
|
||||||
|
);
|
||||||
|
warn.setCtnm("荆州市");
|
||||||
|
warn.setCnnm("阳新 ");
|
||||||
|
taskList = newTask(warn);
|
||||||
|
task = taskList.get(0);
|
||||||
|
task.setStatus(0);
|
||||||
|
task.setCreateTm(new Date());
|
||||||
|
task.setWarnCnnm("阳新 ");
|
||||||
|
taskMapper.insert(task);
|
||||||
|
generatePerson(task);
|
||||||
|
|
||||||
|
warn = qxWarningMapper.selectOne(
|
||||||
|
new QueryWrapper<QXWarning>()
|
||||||
|
.orderByDesc("WARNID")
|
||||||
|
.last("limit 1")
|
||||||
|
);
|
||||||
|
warn.setCtnm("荆州市");
|
||||||
|
warn.setCnnm("宣恩 ");
|
||||||
|
taskList = newTask(warn);
|
||||||
|
task = taskList.get(0);
|
||||||
|
task.setStatus(0);
|
||||||
|
task.setCreateTm(new Date());
|
||||||
|
task.setWarnCnnm("宣恩 ");
|
||||||
|
taskMapper.insert(task);
|
||||||
|
generatePerson(task);
|
||||||
|
|
||||||
|
warn = qxWarningMapper.selectOne(
|
||||||
|
new QueryWrapper<QXWarning>()
|
||||||
|
.orderByDesc("WARNID")
|
||||||
|
.last("limit 1")
|
||||||
|
);
|
||||||
|
warn.setCtnm("荆州市");
|
||||||
|
warn.setCnnm("宜城 ");
|
||||||
|
taskList = newTask(warn);
|
||||||
|
task = taskList.get(0);
|
||||||
|
task.setStatus(0);
|
||||||
|
task.setCreateTm(new Date());
|
||||||
|
task.setWarnCnnm("宜城 ");
|
||||||
|
taskMapper.insert(task);
|
||||||
|
generatePerson(task);
|
||||||
|
|
||||||
|
warn = qxWarningMapper.selectOne(
|
||||||
|
new QueryWrapper<QXWarning>()
|
||||||
|
.orderByDesc("WARNID")
|
||||||
|
.last("limit 1")
|
||||||
|
);
|
||||||
|
warn.setCtnm("荆州市");
|
||||||
|
warn.setCnnm("孝南 ");
|
||||||
|
taskList = newTask(warn);
|
||||||
|
task = taskList.get(0);
|
||||||
|
task.setStatus(0);
|
||||||
|
task.setCreateTm(new Date());
|
||||||
|
task.setWarnCnnm("孝南 ");
|
||||||
|
taskMapper.insert(task);
|
||||||
|
generatePerson(task);
|
||||||
|
|
||||||
|
warn = qxWarningMapper.selectOne(
|
||||||
|
new QueryWrapper<QXWarning>()
|
||||||
|
.orderByDesc("WARNID")
|
||||||
|
.last("limit 1")
|
||||||
|
);
|
||||||
|
warn.setCtnm("荆州市");
|
||||||
|
warn.setCnnm("孝感 ");
|
||||||
|
taskList = newTask(warn);
|
||||||
|
task = taskList.get(0);
|
||||||
|
task.setStatus(0);
|
||||||
|
task.setCreateTm(new Date());
|
||||||
|
task.setWarnCnnm("孝感 ");
|
||||||
|
taskMapper.insert(task);
|
||||||
|
generatePerson(task);
|
||||||
|
|
||||||
|
warn = qxWarningMapper.selectOne(
|
||||||
|
new QueryWrapper<QXWarning>()
|
||||||
|
.orderByDesc("WARNID")
|
||||||
|
.last("limit 1")
|
||||||
|
);
|
||||||
|
warn.setCtnm("荆州市");
|
||||||
|
warn.setCnnm("襄州 ");
|
||||||
|
taskList = newTask(warn);
|
||||||
|
task = taskList.get(0);
|
||||||
|
task.setStatus(0);
|
||||||
|
task.setCreateTm(new Date());
|
||||||
|
task.setWarnCnnm("襄州 ");
|
||||||
|
taskMapper.insert(task);
|
||||||
|
generatePerson(task);
|
||||||
|
|
||||||
|
warn = qxWarningMapper.selectOne(
|
||||||
|
new QueryWrapper<QXWarning>()
|
||||||
|
.orderByDesc("WARNID")
|
||||||
|
.last("limit 1")
|
||||||
|
);
|
||||||
|
warn.setCtnm("荆州市");
|
||||||
|
warn.setCnnm("咸丰 ");
|
||||||
|
taskList = newTask(warn);
|
||||||
|
task = taskList.get(0);
|
||||||
|
task.setStatus(0);
|
||||||
|
task.setCreateTm(new Date());
|
||||||
|
task.setWarnCnnm("咸丰 ");
|
||||||
|
taskMapper.insert(task);
|
||||||
|
generatePerson(task);
|
||||||
|
|
||||||
|
|
||||||
|
warn = qxWarningMapper.selectOne(
|
||||||
new QueryWrapper<QXWarning>()
|
new QueryWrapper<QXWarning>()
|
||||||
.orderByDesc("WARNID")
|
.orderByDesc("WARNID")
|
||||||
.last("limit 1")
|
.last("limit 1")
|
||||||
);
|
);
|
||||||
warn.setCtnm("荆州市");
|
warn.setCtnm("荆州市");
|
||||||
warn.setCnnm("洪湖 ");
|
warn.setCnnm("洪湖 ");
|
||||||
List<AutoCallTask> taskList = newTask(warn);
|
taskList = newTask(warn);
|
||||||
AutoCallTask task = taskList.get(0);
|
task = taskList.get(0);
|
||||||
task.setStatus(0);
|
task.setStatus(0);
|
||||||
task.setCreateTm(new Date());
|
task.setCreateTm(new Date());
|
||||||
task.setWarnCnnm("洪湖 ");
|
task.setWarnCnnm("洪湖 ");
|
||||||
|
|
@ -86,20 +287,35 @@ public class AutoCallTaskService2 {
|
||||||
taskMapper.insert(task);
|
taskMapper.insert(task);
|
||||||
generatePerson(task);
|
generatePerson(task);
|
||||||
|
|
||||||
// warn = qxWarningMapper.selectOne(
|
warn = qxWarningMapper.selectOne(
|
||||||
// new QueryWrapper<QXWarning>()
|
new QueryWrapper<QXWarning>()
|
||||||
// .orderByDesc("WARNID")
|
.orderByDesc("WARNID")
|
||||||
// .last("limit 1")
|
.last("limit 1")
|
||||||
// );
|
);
|
||||||
// warn.setCtnm("荆州市");
|
warn.setCtnm("荆州市");
|
||||||
// warn.setCnnm("竹溪 ");
|
warn.setCnnm("竹溪 ");
|
||||||
// taskList = newTask(warn);
|
taskList = newTask(warn);
|
||||||
// task = taskList.get(0);
|
task = taskList.get(0);
|
||||||
// task.setStatus(0);
|
task.setStatus(0);
|
||||||
// task.setCreateTm(new Date());
|
task.setCreateTm(new Date());
|
||||||
// task.setWarnCnnm("竹溪 ");
|
task.setWarnCnnm("竹溪 ");
|
||||||
// taskMapper.insert(task);
|
taskMapper.insert(task);
|
||||||
// generatePerson(task);
|
generatePerson(task);
|
||||||
|
|
||||||
|
warn = qxWarningMapper.selectOne(
|
||||||
|
new QueryWrapper<QXWarning>()
|
||||||
|
.orderByDesc("WARNID")
|
||||||
|
.last("limit 1")
|
||||||
|
);
|
||||||
|
warn.setCtnm("荆州市");
|
||||||
|
warn.setCnnm("竹山 ");
|
||||||
|
taskList = newTask(warn);
|
||||||
|
task = taskList.get(0);
|
||||||
|
task.setStatus(0);
|
||||||
|
task.setCreateTm(new Date());
|
||||||
|
task.setWarnCnnm("竹山 ");
|
||||||
|
taskMapper.insert(task);
|
||||||
|
generatePerson(task);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void markPersonDetailQueryTimeout(AutoCallPerson person) {
|
public void markPersonDetailQueryTimeout(AutoCallPerson person) {
|
||||||
|
|
@ -394,7 +610,7 @@ public class AutoCallTaskService2 {
|
||||||
// }
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean step4QueryAICCTaskResult(AutoCallPerson person) {
|
public AutoCallPerson step4QueryAICCTaskResult(AutoCallPerson person) {
|
||||||
person = personMapper.selectById(person.getId());
|
person = personMapper.selectById(person.getId());
|
||||||
//切记要设置person的status和task的status
|
//切记要设置person的status和task的status
|
||||||
AICCCallRespWrapper<AICCCallRespDetail> detail = aiccHelper.apiGetTaskCallDetail(person.getUploadRequestId(), person.getUploadCustId());
|
AICCCallRespWrapper<AICCCallRespDetail> detail = aiccHelper.apiGetTaskCallDetail(person.getUploadRequestId(), person.getUploadCustId());
|
||||||
|
|
@ -404,9 +620,10 @@ public class AutoCallTaskService2 {
|
||||||
detail.getResult().getData() == null ||
|
detail.getResult().getData() == null ||
|
||||||
detail.getResult().getData().getRecords() == null ||
|
detail.getResult().getData().getRecords() == null ||
|
||||||
detail.getResult().getData().getRecords().isEmpty() ||
|
detail.getResult().getData().getRecords().isEmpty() ||
|
||||||
detail.getResult().getData().getRecords().get(0).getRemark() == null
|
detail.getResult().getData().getRecords().get(0).getTags() == null ||
|
||||||
|
detail.getResult().getData().getRecords().get(0).getTags().isEmpty()
|
||||||
) {
|
) {
|
||||||
return false; //remark为空代表联通平台还未或正在呼叫,还没有结果信息,应继续刷接口
|
return null; //tags为空代表联通平台还未或正在呼叫,还没有结果信息,应继续刷接口
|
||||||
}
|
}
|
||||||
|
|
||||||
Integer taskId = person.getTaskId();
|
Integer taskId = person.getTaskId();
|
||||||
|
|
@ -419,14 +636,9 @@ public class AutoCallTaskService2 {
|
||||||
person.setDetailSipTermCause(rawVarListMap.getSipTermCause());
|
person.setDetailSipTermCause(rawVarListMap.getSipTermCause());
|
||||||
fillTimeData(person, record);
|
fillTimeData(person, record);
|
||||||
//话术部分
|
//话术部分
|
||||||
String tag = null;
|
String tag = record.getTags().get(record.getTags().size() - 1).getTagName();
|
||||||
if (record.getTags() != null &&
|
|
||||||
!record.getTags().isEmpty() &&
|
|
||||||
record.getTags().get(0).getTagName() != null
|
|
||||||
) {
|
|
||||||
tag = record.getTags().get(0).getTagName();
|
|
||||||
person.setTag(tag);
|
person.setTag(tag);
|
||||||
}
|
|
||||||
//再判断状态
|
//再判断状态
|
||||||
// if ("接通".equals(dialRemark)) {
|
// if ("接通".equals(dialRemark)) {
|
||||||
// person.setStatus(AutoCallPerson.STATUS_PUT);
|
// person.setStatus(AutoCallPerson.STATUS_PUT);
|
||||||
|
|
@ -439,10 +651,8 @@ public class AutoCallTaskService2 {
|
||||||
// }
|
// }
|
||||||
personMapper.updateById(person);
|
personMapper.updateById(person);
|
||||||
if ("已知晓".equals(tag)) {
|
if ("已知晓".equals(tag)) {
|
||||||
if ("接通".equals(dialRemark)) {
|
|
||||||
person.setStatus(AutoCallPerson.STATUS_PUT);
|
person.setStatus(AutoCallPerson.STATUS_PUT);
|
||||||
personMapper.updateById(person);
|
personMapper.updateById(person);
|
||||||
}
|
|
||||||
markRemnantPersonStatus(taskId);
|
markRemnantPersonStatus(taskId);
|
||||||
taskMapper.setTag(taskId, tag);
|
taskMapper.setTag(taskId, tag);
|
||||||
taskMapper.setStatus(taskId, AutoCallTask.STATUS_ANY_SUCCESS);
|
taskMapper.setStatus(taskId, AutoCallTask.STATUS_ANY_SUCCESS);
|
||||||
|
|
@ -452,7 +662,7 @@ public class AutoCallTaskService2 {
|
||||||
taskMapper.setStatus(taskId, AutoCallTask.STATUS_ALL_FAIL);
|
taskMapper.setStatus(taskId, AutoCallTask.STATUS_ALL_FAIL);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return true;
|
return person;
|
||||||
|
|
||||||
// boolean done = false;
|
// boolean done = false;
|
||||||
// log.info("{}", JSON.toJSONString(record));
|
// log.info("{}", JSON.toJSONString(record));
|
||||||
|
|
|
||||||
|
|
@ -55,6 +55,7 @@ public class AICCHelper {
|
||||||
|
|
||||||
public void initToken() throws RuntimeException {
|
public void initToken() throws RuntimeException {
|
||||||
if (isAcquiringToken.compareAndSet(false, true)) {
|
if (isAcquiringToken.compareAndSet(false, true)) {
|
||||||
|
latch = new CountDownLatch(1);
|
||||||
globalToken.set(null);
|
globalToken.set(null);
|
||||||
try {
|
try {
|
||||||
String data = "{\"sysUserId\":\"" + sysUserId + "\",\"expire\":1000000}";
|
String data = "{\"sysUserId\":\"" + sysUserId + "\",\"expire\":1000000}";
|
||||||
|
|
@ -67,7 +68,7 @@ public class AICCHelper {
|
||||||
JSONObject request = new JSONObject();
|
JSONObject request = new JSONObject();
|
||||||
request.put("request", encrypt);
|
request.put("request", encrypt);
|
||||||
Map<String, String> headers = new HashMap<>();
|
Map<String, String> headers = new HashMap<>();
|
||||||
headers.put("X-Access-Token", getToken());
|
// headers.put("X-Access-Token", getToken());
|
||||||
String resp = httpHelper.postJsonString("https://aicc.cuopen.net:9801/aicc-api/ssb/callout/thirdParty/login", request.toJSONString(), headers);
|
String resp = httpHelper.postJsonString("https://aicc.cuopen.net:9801/aicc-api/ssb/callout/thirdParty/login", request.toJSONString(), headers);
|
||||||
|
|
||||||
TypeReference<AICCCallRespWrapper<AICCLogin>> type = new TypeReference<AICCCallRespWrapper<AICCLogin>>() {
|
TypeReference<AICCCallRespWrapper<AICCLogin>> type = new TypeReference<AICCCallRespWrapper<AICCLogin>>() {
|
||||||
|
|
@ -80,11 +81,12 @@ public class AICCHelper {
|
||||||
|
|
||||||
AICCLogin result = AICCCallRespWrapper.getResult();
|
AICCLogin result = AICCCallRespWrapper.getResult();
|
||||||
String token = result.getToken();
|
String token = result.getToken();
|
||||||
if (token != null && !token.isEmpty()) {
|
// if (token != null && !token.isEmpty()) {
|
||||||
globalToken.set(token);
|
globalToken.set(token);
|
||||||
}
|
// }
|
||||||
} finally {
|
} finally {
|
||||||
isAcquiringToken.set(false);
|
isAcquiringToken.set(false);
|
||||||
|
latch.countDown();
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
try {
|
try {
|
||||||
|
|
@ -161,22 +163,33 @@ public class AICCHelper {
|
||||||
Map<String, String> headers = new HashMap<>();
|
Map<String, String> headers = new HashMap<>();
|
||||||
headers.put("X-Access-Token", token);
|
headers.put("X-Access-Token", token);
|
||||||
String resp = httpHelper.postJsonString("https://aicc.cuopen.net:9801/aicc-api/ssb/callout/thirdParty/task/getTaskCallDetail", request.toJSONString(),headers);
|
String resp = httpHelper.postJsonString("https://aicc.cuopen.net:9801/aicc-api/ssb/callout/thirdParty/task/getTaskCallDetail", request.toJSONString(),headers);
|
||||||
|
log.info("apiGetTaskCallDetail: {}", resp);
|
||||||
TypeReference<AICCCallRespWrapper<AICCCallRespDetail>> type = new TypeReference<AICCCallRespWrapper<AICCCallRespDetail>>() {
|
TypeReference<AICCCallRespWrapper<AICCCallRespDetail>> type = new TypeReference<AICCCallRespWrapper<AICCCallRespDetail>>() {
|
||||||
};
|
};
|
||||||
AICCCallRespWrapper<AICCCallRespDetail> AICCCallRespWrapper = JSON.parseObject(resp, type);
|
AICCCallRespWrapper<AICCCallRespDetail> aICCCallRespWrapper = null;
|
||||||
if (AICCCallRespWrapper == null || !AICCCallRespWrapper.isSuccess()) {
|
try {
|
||||||
|
aICCCallRespWrapper = JSON.parseObject(resp, type);
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("apiGetTaskCallDetail first time: {}", resp);
|
||||||
|
log.error("error: ", e);
|
||||||
|
}
|
||||||
|
if (aICCCallRespWrapper == null || !aICCCallRespWrapper.isSuccess()) {
|
||||||
initToken();
|
initToken();
|
||||||
headers.put("X-Access-Token", getToken());
|
headers.put("X-Access-Token", getToken());
|
||||||
resp = httpHelper.postJsonString("https://aicc.cuopen.net:9801/aicc-api/ssb/callout/thirdParty/task/getTaskCallDetail", request.toJSONString(), headers);
|
resp = httpHelper.postJsonString("https://aicc.cuopen.net:9801/aicc-api/ssb/callout/thirdParty/task/getTaskCallDetail", request.toJSONString(), headers);
|
||||||
AICCCallRespWrapper = JSON.parseObject(resp, type);
|
try {
|
||||||
|
aICCCallRespWrapper = JSON.parseObject(resp, type);
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("apiGetTaskCallDetail second time: {}", resp);
|
||||||
|
log.error("error: ", e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (AICCCallRespWrapper == null || !AICCCallRespWrapper.isSuccess()) {
|
if (aICCCallRespWrapper == null || !aICCCallRespWrapper.isSuccess()) {
|
||||||
log.info("获取任务详情失败:{}", resp);
|
log.info("获取任务详情失败:{}", resp);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
return AICCCallRespWrapper;
|
return aICCCallRespWrapper;
|
||||||
}
|
}
|
||||||
|
|
||||||
public AICCUploadTask newTask(String requestId, String custId, String custName, String content, List<String> numbers) {
|
public AICCUploadTask newTask(String requestId, String custId, String custName, String content, List<String> numbers) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue