/**
* 新增或编辑工单
* */
//通话记录跳转过来的
var callId = helper.request.queryString("cid");
$(function() {
//通话记录跳转过来的
var cphone = helper.request.queryString("cphone");
var cCustomerName = decodeURIComponent(helper.request.queryString("cCustomerName"));
if(cphone) {
$('#order_tel').val(cphone); //否 string 联系电话
}
if(cCustomerName) {
$('#order_name').val(cCustomerName); //是 string 姓名/联系人
}
autosize($('textarea'));
//获取工单来源
helper.getDropList.getlistDropByDic($('#order_source'), 'GDLY').then(function() {
$('#order_source').selectpicker('val', '468').trigger('change');
});
//获取业务办理
helper.getDropList.getlistDropByDic($('#order_handle'), 'YWLX');
//获取工单类型
helper.getDropList.getOrderRadios($('#order_type'), 'GDLX', 'inlineRadioOptions').then(function() {
$('#order_type').find('input[type="radio"]').on('change', function() {
if($(this).val() === "107") { // 业务办理
$('#order_handles').show();
}else{
$('#order_handles').hide();
}
});
});
//工单有效性
$('#order_iseffective').find('input[type="radio"]').on('change', function() {
//是否有效工单项(0有效,1无效)
if($(this).val() === "1") { //无效
$('.order_note').show();
} else {
$('.order_note').hide();
}
});
//获取接收部门
getDepts('reginsTreeView', 'order_transfer_dept');
// 立即处理
$('#order_isover').find('input[type="radio"]').on('change', function(){
if($(this).val() === '1'){
$('#order_transfer_depts').hide();
}else{
$('#order_transfer_depts').show();
}
});
//新增工单创建
$('#save_order').on('click', orderSave);
});
//新建工单 保存
function orderSave() {
if(!regexs.userNameReg.test($.trim($('#order_name').val()))) {
layer.confirm('请输入有效的客户姓名(2-20位汉字可以包含·•)!', {
icon: 2,
btn: ['确定']
});
return;
}
if(!regexs.phone.test($.trim($('#order_tel').val()))) {
layer.confirm('请输入正确的联系电话!', {
icon: 2,
btn: ['确定']
});
return;
}
if($('#order_iseffective').find('input[type="radio"]:checked').val() === '1') {
if(!$.trim($('#order_note').val())) {
layer.confirm('请输入无效原因!', {
icon: 2,
btn: ['确定']
});
return;
}
}
if($.trim($('#order_transfer_dept').val()) && $('#order_receiveUser').val() === "0"){
layer.confirm('请选择接收人!', {
icon: 2,
btn: ['确定']
});
return;
}
var order_handle = $('#order_handles').is(':visible') ? $('#order_handle').val() : 0,
order_transfer_dept = $('#order_transfer_dept').attr('data-id'),//int 接收部门
order_receiveUser = $('#order_receiveUser').val();//int 接收人
if($('#order_isover').find('input[type="radio"]:checked').val() === '1'){
order_transfer_dept = 0;
order_receiveUser = 0;
}
$.post(huayi.config.callcenter_url + 'CallInScreen/AddWorkOrder', {
source: $('#order_source').val(),//int 工单来源-下拉,数据来源:数据字典GDLY;
gdlx: $('#order_type').find('input[type="radio"]:checked').val(),//int 工单类型-单选,数据来源:数据字典GDLX;
ywlx: order_handle,//int 业务办理-下拉,工单类型选择“业务办理”时数据来源:数据字典GDLX,工单类型选择“投诉”时数据是投诉,传值ID与工单类型一致
// customerid: ,//int 客户id; -此参数可根据来电弹屏时的客户绑定
callid: callId,//string; -此参数可根据来电弹屏时的客户绑定
callCustomer: $('#order_name').val(),//string 客户姓名; -此参数可根据来电弹屏时的客户绑定
tel: $('#order_tel').val(),//string 联系电话 ; -此参数可根据来电弹屏时的客户绑定
fkcont: $('#order_reception').val(),//string 反馈内容;
iseffective: $('#order_iseffective').find('input[type="radio"]:checked').val(),//int 是否有效工单项(0有效,1无效);
note: $('#order_note').val(),//string 无效工单必填备注;
clbm: order_transfer_dept,//int 接收部门;
clid: order_receiveUser,//int 接收人;
isover: $('#order_isover').find('input[type="radio"]:checked').val(), //int 是否立即处理(默认为0,立即处理为1,立即处理的工单无法指派接收人和接受部门)
token: $.cookie("token")
}, function(result) {
result = $.parseJSON(result);
if(result.state.toLowerCase() == "success") {
cleanOrderForm();
top.workcount();
layer.msg("保存成功");
}
})
}
//清空表单
function cleanOrderForm() {
$('#order_form').find('input.form-control').val('');
$('#order_form').find('textarea.form-control').val('');
$('#order_form').find('select.form-control').val('0');
$('#order_type').find("input[type='radio'][value='107']").prop("checked", true).trigger('change');
$('#order_iseffective').find("input[type='radio'][value='0']").prop("checked", true).trigger('change');
$('#order_transfer_dept').val('').trigger('keyup');
$('#order_transfer_dept').attr('placeholder', '请选择部门');
$('#order_transfer_dept').attr('data-id', 0);
$('#order_receiveUser').selectpicker('destroy');
$('#order_receiveUser').empty();
$('#order_receiveUser').append('');
$('#order_receiveUser').selectpicker('refresh');
$('#order_form').find('.selectpicker.form-control').selectpicker('val', '0').trigger('change');
$('#order_source').selectpicker('val', '468').trigger('change');
$('#order_isover').find("input[type='radio'][value='0']").prop("checked", true);
}
/**
* 获取接收部门 获取投诉类型
* el1, 树形结构元素id名 reginsTreeView
* el2, 搜索框元素id名 order_transfer_dept
* */
function getDepts(el1, el2) {
//初始化 样式
$('#' + el2).on('focus click', function() {
$('#' + el1).removeClass('hidden').addClass('show');
});
$('#' + el2).on('keyup', function() {
if($(this).val() == '') {
$('#' + el1).treeview('uncheckAll', {
silent: true
});
$(this).attr('data-id', '0');
}
});
$('#' + el2 + ' .caret').on('click', function() {
$('#' + el1).removeClass('hidden').addClass('show');
});
$('#' + el1).mouseleave(function() {
$(this).removeClass('show').addClass('hidden');
});
$.getJSON(huayi.config.callcenter_url + 'Department/GetDeptList', {
token: $.cookie("token")
}, function(result) {
if(result.state.toLowerCase() == "success") {
var defaultDatas = helper.methods.buildTree(result.data);
var sortChildrenArr = helper.methods.objToArray(defaultDatas[0].children);
sortChildrenArr.sort(helper.methods.compare('sort'));
var sortChildrenObj = helper.methods.arrayToObj(sortChildrenArr);
defaultDatas[0].children = sortChildrenObj;
if(defaultDatas) {
var $sTree = $('#' + el1).treeview({
color: "#1ab394",
selectedBackColor: '#1ab394',
expandIcon: 'glyphicon glyphicon-chevron-right',
collapseIcon: 'glyphicon glyphicon-chevron-down',
nodeIcon: 'fa fa-folder-o',
//selectedIcon: "glyphicon glyphicon-stop",
//icon: "glyphicon glyphicon-stop",
//emptyIcon: 'glyphicon',
//showCheckbox: true,
selectable: true,
state: {
selected: true
},
data: defaultDatas,
onNodeSelected: function(event, node) {
$sTree.treeview('clearSearch');
$('#' + el2).val(node.text);
$('#' + el2).attr('data-id', node.id);
$('#' + el1).removeClass('show').addClass('hidden');
//获取接收人员
getReceiveUser($('#order_receiveUser'), node.id);
},
onNodeUnselected: function(event, node) {
$('#' + el2).attr('data-id', 0);
$('#' + el2).attr('placeholder', '请选择接收部门');
$('#order_receiveUser').empty();
$('#order_receiveUser').append('');
$('#order_receiveUser').selectpicker('refresh');
}
});
// $('#' + el1).treeview('collapseAll', {
// silent: true
// });
$('#' + el1).treeview('expandAll', { levels: 2, silent: true });
var findSNodes = function() {
return $sTree.treeview('search', [$('#' + el2).val(), {
ignoreCase: false,
exactMatch: false
}]);
};
$('#' + el2).on('keyup focus', function(e) {
var selectableNodes = findSNodes();
//var m = $('#' + el1).treeview('getParent', selectableNodes);
//$('#' + el1).treeview('selectNode', [ m, { silent: true } ]);
});
}
}
})
}
//获取接收人员
function getReceiveUser(obj, deptid) {
$.ajax({
url: huayi.config.callcenter_url + 'UserAccount/GetDeptUserList',
type: 'get',
data: {
deptid: deptid,
token: $.cookie("token")
},
dataType: "json",
async: true,
success: function(res) {
obj.empty();
if(res.state.toLowerCase() === "success") {
res = res.data;
if(res && res.length > 0) {
obj.append('');
res.forEach(function(v, i) {
obj.append('');
});
obj.selectpicker('refresh');
}
}
},
});
}