var xmlHttp;
function createXMLHttpRequestss() {
if (window.ActiveXObject) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}else if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
}
}
function startRequest(){
var projectName = document.getElementById("pronameid").value;
var alarmName = document.getElementById("alarmNameId").value;
var url = "getAgentNo.action?randcount="+Math.random()+"&code="+document.getElementById("selectId").value+"&alarmName="+alarmName+"&projectName="+projectName+"&skillName="+document.getElementById("skillGroupId").value;
createXMLHttpRequestss();
xmlHttp.onreadystatechange = handleStateChange;
xmlHttp.open("get",url,false);
xmlHttp.send(null);
}
function handleStateChange(){
if(xmlHttp.readyState == 4 ) {
if(xmlHttp.status == 200) {
if(xmlHttp.responseText == null || xmlHttp.responseText == ""){
return;
}
var obj =eval('('+ xmlHttp.responseText+')');
var str = obj.resultText;
var severityValue = obj.severityValue;
var severityQuomodo = obj.severityQuomodo;
var commonValue =obj.commonValue;
var commonQuomodo = obj.commonQuomodo;
var promptValue = obj.promptValue;
var promptQuomodo = obj.promptQuomodo;
var type = obj.type;
clearRow_callback();
//初使化集合
floatjson = [];
soundjson = [];
messagejson = [];
if(str != null){
var array = str.split("|");
for(var i=0;i<array.length-1;i++){
var listxml =[];
var arr = array[i].split("&");
for(var j=0;j<arr.length-1;j++){
var skill = arr[j].substring(0,arr[j].indexOf("@"));
var agentNo = arr[j].substring(arr[j].indexOf("@")+1,arr[j].length);
//调用CS接口
var b = A.GetCallInfoByAgentNo(agentNo*1);
if(b!=null && b != ""){
listxml.push(b);
}
}
//解析
if(listxml != null && listxml.length >0){
JSXml(severityValue,severityQuomodo,commonValue,commonQuomodo,promptValue,promptQuomodo,type,skill,listxml,floatjson,soundjson,messagejson);
}
}
}
}
}
}
//JS解析XML
function JSXml(severityValue,severityQuomodo,commonValue,commonQuomodo,promptValue,promptQuomodo,type,skill,array,floatjson,soundjson,messagejson){
var totalCount = 0;
var waitTimeCount = 0;
var totalTalkingTimeCount = 0;
var loginTimeCount = 0;
for(var i=0;i<array.length;i++){
var doc = new ActiveXObject("Microsoft.XMLDOM");
doc.async="false";
var str = " <?xml version='1.0' encoding='GB2312'?>"+ array[i];
doc.loadXML(str);
//获得根节点
var root = doc.documentElement;
//解析XML
var callInfo = root.selectNodes("CallInfo");
//获得子节点
for(var j=0;j<callInfo.length;j++){
var skillDesc = callInfo[j].childNodes[4];
var waitTime = callInfo[j].childNodes[7];
var totalTalkingTime = callInfo[j].childNodes[8];
var loginTime = callInfo[j].childNodes[10];
//获得了节点下各节点的文本
var skillDescText = skillDesc.text;
var waitTimeText = waitTime.text;
var totalTalkingTimeText = totalTalkingTime.text;
var loginTimeText = loginTime.text;
//统计节点数据
if(skillDescText==skill){
totalCount++;
waitTimeCount += eval(waitTimeText);
totalTalkingTimeCount += eval(totalTalkingTimeText);
loginTimeCount += eval(loginTimeText);
}
}
}
//表格
var tableObj = document.getElementById("tableCountId");
// add a new row to the table
var newRow = tableObj.insertRow();
// add new cells to the new row.
var cellOne = newRow.insertCell();
cellOne.className = "list02_content";
cellOne.innerText = skill;
var cellTwo = newRow.insertCell();
cellTwo.className = "list02_content";
cellTwo.innerText = totalCount;
var cellThree = newRow.insertCell();
cellThree.className = "list02_content";
if(document.getElementById("alarmNameId").value == "通话时长"){
cellThree.innerText = totalTalkingTimeCount;
if(severityValue != null && commonValue != null && promptValue != null){
document.getElementById("value1").value = severityValue;
document.getElementById("value2").value = commonValue;
document.getElementById("value3").value = promptValue;
//调用判断是否告警
alarmMethod(severityValue,severityQuomodo,commonValue,commonQuomodo,promptValue,promptQuomodo,type,skillDescText,cellThree,totalTalkingTimeCount,floatjson,soundjson,messagejson);
}
}
if(document.getElementById("alarmNameId").value == "进入总时长"){
cellThree.innerText = loginTimeCount;
if(severityValue != null && commonValue != null && promptValue != null){
document.getElementById("value1").value = severityValue;
document.getElementById("value2").value = commonValue;
document.getElementById("value3").value = promptValue;
//调用判断是否告警
alarmMethod(severityValue,severityQuomodo,commonValue,commonQuomodo,promptValue,promptQuomodo,type,skillDescText,cellThree,loginTimeCount,floatjson,soundjson,messagejson);
}
}
if(document.getElementById("alarmNameId").value == "排队等待时长"){
cellThree.innerText = waitTimeCount;
if(severityValue != null && commonValue != null && promptValue != null){
document.getElementById("value1").value = severityValue;
document.getElementById("value2").value = commonValue;
document.getElementById("value3").value = promptValue;
//调用判断是否告警
alarmMethod(severityValue,severityQuomodo,commonValue,commonQuomodo,promptValue,promptQuomodo,type,skillDescText,cellThree,waitTimeCount,floatjson,soundjson,messagejson);
}
}
}
//清空表单
function clearRow_callback(){
tblObj = document.getElementById("tableCountId");
var length= tblObj.rows.length ;
for( var i=1; i<length; i++ )
{
tblObj.deleteRow(1);
}
}