|
@@ -76,7 +76,7 @@ public class KoalaOutCallBillSchuding {
|
|
//描述事件的生存周期:1.坐席振铃,2.坐席接通,3.客户振铃,4.客户接通,5.坐席挂断,6.客户挂断,7.未接通
|
|
//描述事件的生存周期:1.坐席振铃,2.坐席接通,3.客户振铃,4.客户接通,5.坐席挂断,6.客户挂断,7.未接通
|
|
if (logDomains.size() > 2) {
|
|
if (logDomains.size() > 2) {
|
|
//构建大有话单 关于成功话单部分
|
|
//构建大有话单 关于成功话单部分
|
|
- KoalaOutCallBill koalaOutCallBill = buildDataUBill(sid, logDomains, makeCallIds);
|
|
|
|
|
|
+ KoalaOutCallBill koalaOutCallBill = buildDataUBill(sid, logDomains);
|
|
if (koalaOutCallBill == null) {
|
|
if (koalaOutCallBill == null) {
|
|
continue;
|
|
continue;
|
|
}
|
|
}
|
|
@@ -101,7 +101,7 @@ public class KoalaOutCallBillSchuding {
|
|
idList.add(idMap);
|
|
idList.add(idMap);
|
|
} else if (logDomains.size() >= 1 && logDomains.size() <= 2) {
|
|
} else if (logDomains.size() >= 1 && logDomains.size() <= 2) {
|
|
//构建大有话单 关于未接通的话单部分
|
|
//构建大有话单 关于未接通的话单部分
|
|
- KoalaOutCallBill koalaOutCallBill = buildDataUBill(sid, logDomains, makeCallIds);
|
|
|
|
|
|
+ KoalaOutCallBill koalaOutCallBill = buildDataUBill(sid, logDomains);
|
|
if (koalaOutCallBill == null) {
|
|
if (koalaOutCallBill == null) {
|
|
continue;
|
|
continue;
|
|
}
|
|
}
|
|
@@ -129,11 +129,10 @@ public class KoalaOutCallBillSchuding {
|
|
}
|
|
}
|
|
|
|
|
|
//构建大有话单
|
|
//构建大有话单
|
|
- private synchronized KoalaOutCallBill buildDataUBill(String sessionId, List<KoalaLogDomain> logDomains, List<String> idList) {
|
|
|
|
|
|
+ private synchronized KoalaOutCallBill buildDataUBill(String sessionId, List<KoalaLogDomain> logDomains) {
|
|
try {
|
|
try {
|
|
KoalaOutCallBill koalaOutCallBill = new KoalaOutCallBill();
|
|
KoalaOutCallBill koalaOutCallBill = new KoalaOutCallBill();
|
|
- //离外呼最近的事件时间
|
|
|
|
- String receiveTime = "";
|
|
|
|
|
|
+
|
|
//通话计费开始时间
|
|
//通话计费开始时间
|
|
String callStartTime = "";
|
|
String callStartTime = "";
|
|
//双方通话结束时间
|
|
//双方通话结束时间
|
|
@@ -144,19 +143,16 @@ public class KoalaOutCallBillSchuding {
|
|
String hangupType = "";
|
|
String hangupType = "";
|
|
//通话结果状态
|
|
//通话结果状态
|
|
String callResultStatus = "1";
|
|
String callResultStatus = "1";
|
|
- //如果为1说明客户接听已接通,2未接通客户只是振铃,
|
|
|
|
- String outCallCheck = "0";
|
|
|
|
|
|
+
|
|
//租户id,考拉开通的租户id
|
|
//租户id,考拉开通的租户id
|
|
String tenantId = "";
|
|
String tenantId = "";
|
|
//被叫号码
|
|
//被叫号码
|
|
String calledNumber = "";
|
|
String calledNumber = "";
|
|
- //老人id
|
|
|
|
- String olderId = "";
|
|
|
|
|
|
+
|
|
//开始外呼时间,用于记录无人接听的时候的开始时间
|
|
//开始外呼时间,用于记录无人接听的时候的开始时间
|
|
String unReceivedCallStartTime = "";
|
|
String unReceivedCallStartTime = "";
|
|
boolean callFlag = false;
|
|
boolean callFlag = false;
|
|
boolean unCalledFlag = false;
|
|
boolean unCalledFlag = false;
|
|
- boolean isCalledFlag = false;
|
|
|
|
//开始振铃时间
|
|
//开始振铃时间
|
|
String dialingTime = "";
|
|
String dialingTime = "";
|
|
//话单变量,标记该话单为正确话单
|
|
//话单变量,标记该话单为正确话单
|
|
@@ -164,7 +160,6 @@ public class KoalaOutCallBillSchuding {
|
|
for (KoalaLogDomain logDomain : logDomains) {
|
|
for (KoalaLogDomain logDomain : logDomains) {
|
|
tenantId = logDomain.getTenantId();
|
|
tenantId = logDomain.getTenantId();
|
|
calledNumber = logDomain.getPhone();
|
|
calledNumber = logDomain.getPhone();
|
|
- olderId = logDomain.getOlderId();
|
|
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
for (KoalaLogDomain logDomain : logDomains) {
|
|
for (KoalaLogDomain logDomain : logDomains) {
|
|
@@ -173,7 +168,6 @@ public class KoalaOutCallBillSchuding {
|
|
clientAlterTime = logDomain.getReceiveTime();
|
|
clientAlterTime = logDomain.getReceiveTime();
|
|
unReceivedCallStartTime = logDomain.getReceiveTime();
|
|
unReceivedCallStartTime = logDomain.getReceiveTime();
|
|
dialingTime = logDomain.getReceiveTime();
|
|
dialingTime = logDomain.getReceiveTime();
|
|
- isCalledFlag = true;
|
|
|
|
}
|
|
}
|
|
//双方通话结束时间
|
|
//双方通话结束时间
|
|
if ("5,6".contains(logDomain.getEventStatus())) {
|
|
if ("5,6".contains(logDomain.getEventStatus())) {
|
|
@@ -190,7 +184,6 @@ public class KoalaOutCallBillSchuding {
|
|
//日志中有4 说明客户接通
|
|
//日志中有4 说明客户接通
|
|
if ("4".equals(logDomain.getEventStatus())) {
|
|
if ("4".equals(logDomain.getEventStatus())) {
|
|
callStartTime = logDomain.getReceiveTime();
|
|
callStartTime = logDomain.getReceiveTime();
|
|
- outCallCheck = "1";
|
|
|
|
unCalledFlag = true;
|
|
unCalledFlag = true;
|
|
}
|
|
}
|
|
//日志中有7 说明无人接听,坐席主动挂断(6表示客户拒接)
|
|
//日志中有7 说明无人接听,坐席主动挂断(6表示客户拒接)
|