Authored by 徐炜

Babel 翻译

'use strict';
/**
* 在线客服客户页
*
... ... @@ -43,8 +45,8 @@ var allRTs,
var processInfo = {
scrollLoad: false,
manual: false,
promoter: 1, // 评论发起者 1:客户自己 2:客服
savedEval: false // 是否保存过评论
promoter: 1, // 评论发起者 1:客户自己 2:客服
savedEval: false // 是否保存过评论
};
var key,
... ... @@ -144,12 +146,9 @@ function pageInit() {
* @param msg 具体消息
*/
function systemTip(type, msg) {
var tip,
liHtml;
var tipMap = {
var tip, liHtml;
};
var tipMap = {};
if (type) {
tip = tipMap[type];
... ... @@ -157,12 +156,7 @@ function pageInit() {
tip = msg;
}
liHtml =
`<div class="list-item">
<p class="push-tip">
<span class="tip">${tip}</span>
</p>
</div>`;
liHtml = '<div class="list-item">\n <p class="push-tip">\n <span class="tip">' + tip + '</span>\n </p>\n </div>';
// 添加消息
$msgList.append(liHtml);
... ... @@ -205,7 +199,6 @@ function pageInit() {
socketConfCM.message.type = msgType || 1;
socketChat.send(socketConfCM);
$area.val('');
} else {
socketConfCM.type = allRTs.CU_SEND;
socketConfCM.uuid = uuid.v4();
... ... @@ -326,36 +319,22 @@ function pageInit() {
switch (msgType) {
case OUT_SERVICE: // 0是没上班
liHtml =
`<div class="list-item">
<p class="push-tip">
<span class="tip">${message.content}您也可以选择<a class="leave-msg">留言</a></span>
</p>
</div>`;
case OUT_SERVICE:
// 0是没上班
liHtml = '<div class="list-item">\n <p class="push-tip">\n <span class="tip">' + message.content + '\u60A8\u4E5F\u53EF\u4EE5\u9009\u62E9<a class="leave-msg">\u7559\u8A00</a></span>\n </p>\n </div>';
break;
case LINE_UP: // 1是需要排队
liHtml =
`<div class="list-item">
<p class="push-tip">
<span class="tip">
${message.content}您也可以选择<a class="leave-msg">留言</a>
</span>
</p>
</div>`;
case LINE_UP:
// 1是需要排队
liHtml = '<div class="list-item">\n <p class="push-tip">\n <span class="tip">\n ' + message.content + '\u60A8\u4E5F\u53EF\u4EE5\u9009\u62E9<a class="leave-msg">\u7559\u8A00</a>\uFF01\n </span>\n </p>\n </div>';
// 隐藏人工
$iconMs.hide();
break;
case MANUAL_SERVICE: // 2是接入人工成功
liHtml =
`<div class="list-item">
<p class="push-tip">
<span class="tip">${message.content}</span>
</p>
</div>`;
case MANUAL_SERVICE:
// 2是接入人工成功
liHtml = '<div class="list-item">\n <p class="push-tip">\n <span class="tip">' + message.content + '</span>\n </p>\n </div>';
// 接入人工客服需要评价
processInfo.manual = true;
... ... @@ -365,13 +344,9 @@ function pageInit() {
$iconMs.hide();
break;
case ADMIN_MANUAL_SERVICE: // 3是管理员分配客服成功
liHtml =
`<div class="list-item">
<p class="push-tip">
<span class="tip">${message.content}</span>
</p>
</div>`;
case ADMIN_MANUAL_SERVICE:
// 3是管理员分配客服成功
liHtml = '<div class="list-item">\n <p class="push-tip">\n <span class="tip">' + message.content + '</span>\n </p>\n </div>';
// 接入人工客服需要评价
processInfo.manual = true;
... ... @@ -419,23 +394,13 @@ function pageInit() {
// 图片添加标签
if (msgType === 2) {
message.newContent =
`<img class="img-msg" src="${message.content}">`;
message.newContent = '<img class="img-msg" src="' + message.content + '">';
}
liHtml = `<div class="list-item host">
<img src="${rec.userHead}" class="avatar">
<div class="item-detail">
<span class="time">${rec.userName} ${rec.sendTimeShort}</span>
<div class="msg-bubble">
<div>${message.newContent}</div>
</div>
</div>
</div>`;
liHtml = '<div class="list-item host">\n <img src="' + rec.userHead + '" class="avatar">\n <div class="item-detail">\n <span class="time">' + rec.userName + ' ' + rec.sendTimeShort + '</span>\n <div class="msg-bubble">\n <div>' + message.newContent + '</div>\n </div>\n </div>\n </div>';
$msgList.append(liHtml);
$panelMainBody.scrollTop($panelMainBody[0].scrollHeight);
}
/**
... ... @@ -445,15 +410,7 @@ function pageInit() {
function breakCountdown(message) {
var liHtml;
liHtml =
`<div class="list-item">
<p class="push-tip">
<span class="tip">
${message.content}
<span class="countdown"></span>
</span>
</p>
</div>`;
liHtml = '<div class="list-item">\n <p class="push-tip">\n <span class="tip">\n ' + message.content + '\n <span class="countdown"></span>\n </span>\n </p>\n </div>';
$msgList.append(liHtml);
$panelMainBody.scrollTop($panelMainBody[0].scrollHeight);
... ... @@ -472,18 +429,9 @@ function pageInit() {
message.newContent = emojiPrefix(message.newContent);
if (msgType === 2) {
message.newContent =
`<img class="img-msg" src="${message.content}">`;
message.newContent = '<img class="img-msg" src="' + message.content + '">';
}
liHtml = `<div class="list-item guest">
<img src="${rec.csHead}" class="avatar">
<div class="item-detail">
<span class="time">${rec.csName} ${rec.sendTimeShort}</span>
<div class="msg-bubble">
<div>${message.newContent}</div>
</div>
</div>
</div>`;
liHtml = '<div class="list-item guest">\n <img src="' + rec.csHead + '" class="avatar">\n <div class="item-detail">\n <span class="time">' + rec.csName + ' ' + rec.sendTimeShort + '</span>\n <div class="msg-bubble">\n <div>' + message.newContent + '</div>\n </div>\n </div>\n </div>';
$msgList.append(liHtml);
$panelMainBody.scrollTop($panelMainBody[0].scrollHeight);
... ... @@ -502,7 +450,8 @@ function pageInit() {
// 评价原因
function discontentHtml(len, data) {
var i, r,
var i,
r,
html = '',
ceilRows = Math.ceil(len / 2),
floorRows = Math.floor(len / 2);
... ... @@ -510,38 +459,16 @@ function pageInit() {
if (ceilRows === floorRows) {
for (r = 1, i = 0; r <= ceilRows; r++) {
html +=
`<div class="dis-row">
<span class="type" data-id="${data[i].id}" data-content="${data[i].content}">
${data[i].content}
</span>
<span class="type" data-id="${data[i + 1].id}" data-content="${data[i].content}">
${data[i + 1].content}
</span>
</div>`;
html += '<div class="dis-row">\n <span class="type" data-id="' + data[i].id + '" data-content="' + data[i].content + '">\n ' + data[i].content + '\n </span>\n <span class="type" data-id="' + data[i + 1].id + '" data-content="' + data[i].content + '">\n ' + data[i + 1].content + '\n </span>\n </div>';
i += 2;
}
} else {
for (r = 1, i = 0; r <= ceilRows - 1; r++) {
html +=
`<div class="dis-row">
<span class="type" data-id="${data[i].id}" data-content="${data[i].content}">
${data[i].content}
</span>
<span class="type" data-id="${data[i + 1].id}" data-content="${data[i].content}">
${data[i + 1].content}
</span>
</div>`;
html += '<div class="dis-row">\n <span class="type" data-id="' + data[i].id + '" data-content="' + data[i].content + '">\n ' + data[i].content + '\n </span>\n <span class="type" data-id="' + data[i + 1].id + '" data-content="' + data[i].content + '">\n ' + data[i + 1].content + '\n </span>\n </div>';
i += 2;
}
html +=
`<div class="dis-row">
<span class="type" data-id="${data[len - 1].id}" data-content="${data[i].content}">
${data[len - 1].content}
</span>
</div>`;
html += '<div class="dis-row">\n <span class="type" data-id="' + data[len - 1].id + '" data-content="' + data[i].content + '">\n ' + data[len - 1].content + '\n </span>\n </div>';
}
$evalModal.find('.discontent').empty().append(html);
... ... @@ -554,7 +481,7 @@ function pageInit() {
data: {
conversationId: socketConfCM.conversationId
},
success: function(res) {
success: function success(res) {
var data = res.data,
len = data.length;
... ... @@ -608,15 +535,7 @@ function pageInit() {
case allTypes.ROBOT_SEND:
rec.csName = rec.csName || '客服机器人';
tipTpl = `<div class="list-item guest">
<img src="${assetsPrefix}/img/service/robot-avatar.png" class="avatar">
<div class="item-detail">
<span class="time">${rec.csName} ${rec.sendTimeShort}</span>
<div class="msg-bubble">
<div>${message.newContent}</div>
</div>
</div>
</div>`;
tipTpl = '<div class="list-item guest">\n <img src="' + assetsPrefix + '/img/service/robot-avatar.png" class="avatar">\n <div class="item-detail">\n <span class="time">' + rec.csName + ' ' + rec.sendTimeShort + '</span>\n <div class="msg-bubble">\n <div>' + message.newContent + '</div>\n </div>\n </div>\n </div>';
break;
case allTypes.CS_SEND:
... ... @@ -643,15 +562,7 @@ function pageInit() {
break;
case allTypes.OFFLINE:
tipTpl =
`<div class="list-item">
<p class="push-tip">
<span class="tip">
${message.content}
<a class="red-tip reconnect">连线客服</a>
</span>
</p>
</div>`;
tipTpl = '<div class="list-item">\n <p class="push-tip">\n <span class="tip">\n ' + message.content + '\n <a class="red-tip reconnect">\u8FDE\u7EBF\u5BA2\u670D</a>\n </span>\n </p>\n </div>';
break;
default:
... ... @@ -668,26 +579,24 @@ function pageInit() {
*/
function connectSocket() {
socketChat.init(Object.assign(originConf, {
onMessage: function(e) {
onMessage: function onMessage(e) {
var jsonString = e.data;
var received = JSON.parse(jsonString);
socketConfCM.conversationId = received.newConversationId !== 0 ?
received.newConversationId :
received.conversationId;
socketConfCM.conversationId = received.newConversationId !== 0 ? received.newConversationId : received.conversationId;
getMessage(received);
},
onClose: function() {
onClose: function onClose() {
$('.connect-fail').fadeIn();
},
connectFailCb: function() {
connectFailCb: function connectFailCb() {
$('.connect-fail').fadeIn();
},
socketClosedCb: function() {
socketClosedCb: function socketClosedCb() {
$('.connect-fail').fadeIn();
}
}));
... ... @@ -712,61 +621,54 @@ function pageInit() {
endTime = msgList[0].sendTime;
if (hasMore) {
for (item of msgList) {
item.message.newContent = emojiPrefix(item.message.newContent);
if (item.message.type === 2) {
item.message.newContent =
['<img class="img-msg" src="', item.message.newContent, '">'].join('');
var _iteratorNormalCompletion = true;
var _didIteratorError = false;
var _iteratorError = undefined;
try {
for (var _iterator = msgList[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
item = _step.value;
item.message.newContent = emojiPrefix(item.message.newContent);
if (item.message.type === 2) {
item.message.newContent = ['<img class="img-msg" src="', item.message.newContent, '">'].join('');
}
switch (item.type) {
case allRTs.CU_SEND:
// 用户头像处理
if (!item.userHead) {
item.userHead = assetsPrefix + socketConf.defaultUserHead;
}
msgTpl += '<div class="list-item host">\n <img src="' + item.userHead + '" class="avatar">\n <div class="item-detail">\n <span class="time">' + item.userName + ' ' + item.sendTimeShort + '</span>\n <div class="msg-bubble">\n <div>' + item.message.newContent + '</div>\n </div>\n </div>\n </div>';
break;
case allRTs.ROBOT_SEND:
item.csName = item.csName || '客服机器人';
msgTpl = '<div class="list-item guest">\n <img src="' + assetsPrefix + '/img/service/robot-avatar.png" class="avatar">\n <div class="item-detail">\n <span class="time">' + item.csName + ' ' + item.sendTimeShort + '</span>\n <div class="msg-bubble">\n <div>' + item.message.newContent + '</div>\n </div>\n </div>\n </div>';
break;
case allRTs.CS_SEND:
msgTpl += '<div class="list-item guest">\n <img src="' + item.csHead + '" class="avatar">\n <div class="item-detail">\n <span class="time">' + item.csName + ' ' + item.sendTimeShort + '</span>\n <div class="msg-bubble">\n <div>' + item.message.newContent + '</div>\n </div>\n </div>\n </div>';
break;
default:
break;
}
}
switch (item.type) {
case allRTs.CU_SEND:
// 用户头像处理
if (!item.userHead) {
item.userHead = assetsPrefix + socketConf.defaultUserHead;
}
msgTpl +=
`<div class="list-item host">
<img src="${item.userHead}" class="avatar">
<div class="item-detail">
<span class="time">${item.userName} ${item.sendTimeShort}</span>
<div class="msg-bubble">
<div>${item.message.newContent}</div>
</div>
</div>
</div>`;
break;
case allRTs.ROBOT_SEND:
item.csName = item.csName || '客服机器人';
msgTpl =
`<div class="list-item guest">
<img src="${assetsPrefix}/img/service/robot-avatar.png" class="avatar">
<div class="item-detail">
<span class="time">${item.csName} ${item.sendTimeShort}</span>
<div class="msg-bubble">
<div>${item.message.newContent}</div>
</div>
</div>
</div>`;
break;
case allRTs.CS_SEND:
msgTpl +=
`<div class="list-item guest">
<img src="${item.csHead}" class="avatar">
<div class="item-detail">
<span class="time">${item.csName} ${item.sendTimeShort}</span>
<div class="msg-bubble">
<div>${item.message.newContent}</div>
</div>
</div>
</div>`;
break;
default:
break;
} catch (err) {
_didIteratorError = true;
_iteratorError = err;
} finally {
try {
if (!_iteratorNormalCompletion && _iterator.return) {
_iterator.return();
}
} finally {
if (_didIteratorError) {
throw _iteratorError;
}
}
}
... ... @@ -792,7 +694,7 @@ function pageInit() {
type: 'GET',
url: urls.msgHistory,
data: data,
success: function(res) {
success: function success(res) {
if (res && res.code === 200) {
hasMore && msgResolve(res.data);
$history.hide();
... ... @@ -802,8 +704,6 @@ function pageInit() {
});
}
// 用户信息获取并初始化socket连接
(function() {
var param = {
... ... @@ -824,7 +724,7 @@ function pageInit() {
connectSocket();
}
});
}());
})();
// tab页title重置
tab.tabVisible(function() {
... ... @@ -901,7 +801,7 @@ function pageInit() {
$btnEval.hide();
processInfo.savedEval = true;
socketConfCM.type = 10; // 评价后通知客服
socketConfCM.type = 10; // 评价后通知客服
socketConfCM.uuid = uuid.v4();
socketChat.send(socketConfCM);
}
... ... @@ -910,7 +810,6 @@ function pageInit() {
mEval.modal('hide');
}
});
});
// 根节点高度设置
... ... @@ -952,10 +851,7 @@ function pageInit() {
time = tag.data('time'),
status = tag.data('status');
var msgContent = ['单号:', no,
'金额:', '¥' + nm,
'下单时间:', time,
'状态:', status];
var msgContent = ['单号:', no, '金额:', '¥' + nm, '下单时间:', time, '状态:', status];
sendMessage(e, 10, msgContent);
});
... ... @@ -1042,7 +938,9 @@ function pageInit() {
// 星评
$document.on('click', '.make-eval .star', function() {
var el, i, len,
var el,
i,
len,
tag = $(this),
index = tag.index(),
$detailReason = $('.detail-reason'),
... ... @@ -1143,7 +1041,8 @@ function pageInit() {
// 关闭聊天窗口
$close.click(function() {
if (processInfo.manual && !processInfo.savedEval) { // 没有保存过评论
if (processInfo.manual && !processInfo.savedEval) {
// 没有保存过评论
showEvalModal();
} else {
window.close();
... ... @@ -1202,7 +1101,7 @@ function pageInit() {
socketConf.servers.push(configDomains.imSocket);
pageInit();
}
}());
})();
}
});
}());
})();
... ...