IntelligentRecognition/ah-jjsp-web/.svn/pristine/ae/aeb4db793b75b9e68ce1e8a0058...

217 lines
7.5 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

let form, layer, util, tag, active = null;
function setParams(teamLabelIds, teamLabelNames) {
layui.config({
base: "../../../js/layui-v2.9.2/layui/modules/", //此处路径请自行处理, 可以使用绝对路径
}).extend({
tag: 'tag'
}).use(['layer', 'form', 'util', 'tag'], function () {
layer = layui.layer;
form = layui.form;
forutilm = layui.util;
tag = layui.tag;
form.render();
// 加载班组标签数据
loadTeamLabelData();
// 加载班组标签缓存数据
loadHcTeamLabelData(teamLabelIds, teamLabelNames);
//全局设置
tag.set({
skin: 'layui-btn layui-btn-primary layui-btn-sm layui-btn-radius',//标签样式
tagText: '添加标签' //标签添加按钮提示文本
});
// 触发事件
active = {
// 新增demo2标签
tagAdd: function (nameValue, index) {
tag.add('demo2', {
text: nameValue,
id: index
})
},
// 删除demo2标签
tagDelete: function (index) {
tag.delete('demo2', index);
}
};
// 添加demo标签
tag.on('add(demo)', function (data) {
let valueName = data.valueName;
let rex = /^[\u4e00-\u9fa5]{0,}$/;
if (!rex.test(valueName) && valueName.length < 50) {
layer.msg('标签只能输入中文且少于50字符', { icon: 7 });
return false;
} else {
return addTeamLabelData({
'labelName': valueName
});
}
});
// 删除demo标签后删除demo2标签
tag.on('delete(demo)', function (data) {
let innerText = data.elem[0].innerText;
if (innerText) {
innerText = innerText.replace('ဆ添加标签', '');
let innerTextArr = innerText.split('ဆ');
let nameValue = innerTextArr[data.index];
let flag = false, layId = null;
$('#demo2 button').each(function () {
if (replaceChinese($(this).html()) === nameValue) {
flag = true;
layId = $(this).attr('lay-id');
}
})
let result = delTeamLabelData({ 'labelName': nameValue });
if (!result) {
return result;
} else if (result && flag) {
active.tagDelete(layId);
}
}
});
// 点击demo标签添加demo2标签
tag.on('click(demo)', function () {
let name = replaceChinese($(this).html());
let index = $(this).attr('lay-id');
let flag = false;
$('#demo2 button').each(function () {
if (replaceChinese($(this).html()) === name) {
flag = true
}
})
if (flag) {
return layer.msg('选中标签已存在', { icon: 7 });
} else {
active.tagAdd(name, index);
}
});
});
}
// 保留中文汉字
function replaceChinese(value) {
let str = value.match(/[\u4e00-\u9fa5]/g).join("");
return str;
}
// 保存标签
function addTeamLabelData(params) {
let loadingMsg = layer.msg('数据上传中,请稍候...', { icon: 16, scrollbar: false, time: 0 });
let flag = false;
let url = dataUrl + 'proteam/pot/team/addTeamLabel';
ajaxRequest(url, "POST", params, false, function () {
}, function (result) {
layer.close(loadingMsg); // 关闭提示层
if (result.code === 200) {
layer.msg(result.msg, { icon: 1 });
flag = true;
} else if (result.code === 500) {
layer.alert(result.msg, { icon: 2, move: false })
} else if (result.code === 401) {
logout(1);
}
}, function (xhr) {
layer.close(loadingMsg); // 关闭提示层
});
return flag;
}
// 获取班组评价标签
function loadTeamLabelData() {
function setTeamLabel(list) {
if (list && list.length > 0) {
let html = '';
$.each(list, function (index, item) {
html += '<button lay-id="' + item.id + '" type="button" class="tag-item">' + item.labelName + '</button>'
})
$('#demo').empty().append(html);
}
}
let loadingMsg = layer.msg('数据加载中,请稍候...', { icon: 16, scrollbar: false, time: 0 });
let url = dataUrl + 'proteam/pot/team/getTeamLabel';
ajaxRequest(url, "POST", null, false, function () {
}, function (result) {
layer.close(loadingMsg); // 关闭提示层
if (result.code === 200) {
setTeamLabel(result.data);
} else if (result.code === 500) {
} else if (result.code === 401) {
logout(1);
}
}, function (xhr) {
layer.close(loadingMsg); // 关闭提示层
});
}
// 加载班组标签缓存数据
function loadHcTeamLabelData(teamLabelIds, teamLabelNames) {
if (teamLabelIds && teamLabelNames) {
let teamLabelIdsArr = teamLabelIds.split(',');
let teamLabelNamesArr = teamLabelNames.split(',');
let html = '';
for (let i = 0; i < teamLabelIdsArr.length; i++) {
html += '<button lay-id="' + teamLabelIdsArr[i] + '" type="button" class="tag-item">' + teamLabelNamesArr[i] + '</button>'
}
$('#demo2').empty().append(html);
}
}
// 删除标签
function delTeamLabelData(params) {
let flag = false;
let loadingMsg = layer.msg('数据删除中,请稍候...', { icon: 16, scrollbar: false, time: 0 });
let url = dataUrl + 'proteam/pot/team/delTeamLabel';
ajaxRequest(url, "POST", params, false, function () {
}, function (result) {
layer.close(loadingMsg); // 关闭提示层
if (result.code === 200) {
layer.msg(result.msg, { icon: 1 });
flag = true;
} else if (result.code === 500) {
layer.alert(result.msg, { icon: 2, move: false })
} else if (result.code === 401) {
logout(1);
}
}, function (xhr) {
layer.close(loadingMsg); // 关闭提示层
});
return flag;
}
// 暂存标签数据,并返回上一页面
function saveLabelData() {
let labelNameArr = [];
$('#demo2 button').each(function () {
labelNameArr.push(replaceChinese($(this).html()))
})
let teamLabelNames = '', teamLabelIds = '';
// 保存后查询班组标签真实ID
function getTeamLabelIds() {
let params = { 'labelName': labelNameArr.toString() };
let url = dataUrl + 'proteam/pot/team/getTeamLabelIds';
ajaxRequest(url, "POST", params, false, function () {
}, function (result) {
if (result.code === 200) {
if (result.data.nameList && result.data.valueList) {
teamLabelNames = result.data.nameList.toString();
teamLabelIds = result.data.valueList.toString();
}
} else if (result.code === 500) {
} else if (result.code === 401) {
logout(1);
}
}, function (xhr) {
});
}
getTeamLabelIds();
parent.setTeamLabelData(teamLabelIds, teamLabelNames);
closePage();
}
function closePage() {
let index = parent.layer.getFrameIndex(window.name); //先得到当前 iframe层的索引
parent.layer.close(index); //再执行关闭
}