279 lines
11 KiB
HTML
279 lines
11 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en" xmlns="http://www.w3.org/1999/html">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<title>系统公告-分类管理</title>
|
|
<link rel="stylesheet" href="../../layui-v2.8.18/layui/css/layui.css" media="all"/>
|
|
</head>
|
|
<style>
|
|
.layui-form-label {
|
|
position: relative;
|
|
float: left;
|
|
display: block;
|
|
padding: 9px 15px;
|
|
width: 100%;
|
|
font-weight: 400;
|
|
line-height: 20px;
|
|
text-align: right;
|
|
}
|
|
</style>
|
|
<body>
|
|
<form class="layui-form" action="" onsubmit="return false">
|
|
<table id="announcementType" lay-filter="announcementType" style="padding: 10px"></table>
|
|
<div class="layui-form-item" style="display: none">
|
|
<div class="layui-input-block">
|
|
<button type="submit" class="layui-btn subBtn" id="commit" lay-submit lay-filter="formDemo">提交</button>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
|
|
</body>
|
|
</html>
|
|
<script type="text/html" id="barDemo">
|
|
<a lay-event="add" style="color: #009688;cursor: pointer;font-size: 15px">新增</a>
|
|
{{# if(d.type == 2 || d.type == 3){ }}
|
|
<span style="font-size: 15px;"> | </span>
|
|
<a lay-event="del" style="color: #009688;cursor: pointer;font-size: 15px">删除</a>
|
|
{{# } }}
|
|
</script>
|
|
<script src="../../js/jquery/jquery-3.6.0.js"></script>
|
|
<script src="../../layui-v2.8.18/layui/layui.js"></script>
|
|
<script type="text/javascript" src="../../js/jq.js"></script>
|
|
<script src="../../js/common_methon.js"></script>
|
|
<script type="text/javascript" src="../../../public/public.js"></script>
|
|
<script type="text/javascript" src="../../js/publicJs.js"></script>
|
|
<script type="text/javascript" src="../../js/select.js"></script>
|
|
<script type="text/javascript" src="../../js/my/permission.js"></script>
|
|
<script type="text/javascript">
|
|
layui.config({
|
|
base: '../../js/layuiModules/', // 第三方模块所在目录
|
|
version: 'v1.6.4' // 插件版本号
|
|
}).extend({
|
|
soulTable: 'notice,layNotify', // 模块
|
|
});
|
|
|
|
var form;
|
|
var table;
|
|
var newData;
|
|
var notice;
|
|
var layNotify;
|
|
var finalData;
|
|
|
|
layui.use(['table', 'form', 'notice', 'layNotify'], function () {
|
|
table = layui.table;
|
|
form = layui.form;
|
|
notice = layui.notice;
|
|
layNotify = layui.layNotify;
|
|
|
|
showTable();
|
|
|
|
form.render();
|
|
//监听工具条
|
|
table.on('tool(announcementType)', function (obj) {
|
|
var id = obj.config.id;
|
|
var data = obj.data; //当前行数据
|
|
var rowIndex = obj.index;
|
|
var layEvent = obj.event; //当前点击的事件名
|
|
if (layEvent === 'add') {
|
|
var newRow = {
|
|
typeName: '',
|
|
type: 3,
|
|
id:'',
|
|
parentId: data.parentId
|
|
}; //新增行的数据
|
|
var newData = table.cache.announcementType; //获取当前表格的数据
|
|
var index = obj.tr.index(); //获取当前行的索引
|
|
|
|
newData.splice(index + 1, 0, newRow); // 假设 tableData 是表格的数据源
|
|
|
|
// 重新渲染表格
|
|
table.reload('announcementType', {
|
|
data: newData, // 重新加载时传入新的数据源
|
|
});
|
|
}
|
|
if (layEvent === 'del') {
|
|
if (data.type == '3') {
|
|
layer.confirm('确认删除该行数据?', function (index) {
|
|
newData = table.cache.announcementType; //获取当前表格的数据
|
|
newData.splice(rowIndex, 1); //从数组中删除指定索引的元素
|
|
table.reload('announcementType', {
|
|
data: newData //重新加载表格数据
|
|
});
|
|
layer.close(index);
|
|
reloadTip("删除", '删除成功', 'success');
|
|
});
|
|
}
|
|
if (data.type == '2') {
|
|
var delIndex = layer.confirm('确认删除该行数据?', function (index) {
|
|
newData = table.cache.announcementType; //获取当前表格的数据
|
|
newData.splice(rowIndex, 1); //从数组中删除指定索引的元素
|
|
$.ajax({
|
|
type: 'POST',
|
|
async: false, // 默认异步true,false表示同步
|
|
url: czl_ht_url + "/announcement/delAnnouncementTypeById",// 请求地址
|
|
contentType: "application/x-www-form-urlencoded",
|
|
dataType: 'json', // 服务器返回数据类型
|
|
data: {
|
|
id: data.id
|
|
}, //获取提交的表单字段
|
|
success: function (data) {
|
|
var resMsg = data.resMsg;
|
|
if ("数据获取成功" == resMsg) {
|
|
reloadTip("删除", "删除成功", 'success');
|
|
table.reload('announcementType', {
|
|
data: newData //重新加载表格数据
|
|
});
|
|
layer.close(delIndex);
|
|
} else {
|
|
reloadTip("删除", error, "error");
|
|
}
|
|
}
|
|
});
|
|
});
|
|
}
|
|
}
|
|
});
|
|
|
|
// 单元格编辑事件
|
|
table.on('edit(announcementType)', function (obj) {
|
|
var field = obj.field; // 得到字段
|
|
var value = obj.value; // 得到修改后的值
|
|
var oldValue = obj.oldValue;
|
|
var data = obj.data; // 得到所在行所有键值
|
|
var update = {};
|
|
// 值的校验
|
|
if (field === 'title') {
|
|
if (value.length > 10) {
|
|
update[field] = oldValue;
|
|
obj.update(update);
|
|
layer.tips('最大字符长度为10!', this, {tips: 1});
|
|
return obj.reedit(); // 重新编辑 -- v2.8.0 新增
|
|
} else {
|
|
update[field] = value;
|
|
obj.update(update);
|
|
}
|
|
}
|
|
reloadTip("表格编辑", data.typeName + "编辑成功", 'success')
|
|
});
|
|
|
|
// 验证成功后才会执行下面的操作
|
|
form.on('submit(formDemo)', function (data) {
|
|
addInfo(); //新增方法
|
|
});
|
|
});
|
|
|
|
function showTable() {
|
|
$.ajax({
|
|
type: 'post',
|
|
url: czl_ht_url + '/announcement/getAnnouncementType',//数据接口
|
|
dataType: 'json', // 服务器返回数据类型
|
|
async: true,
|
|
data: {},
|
|
success: function (data) {
|
|
console.log(JSON.stringify(data))
|
|
table.render({
|
|
elem: '#announcementType'
|
|
, toolbar: 'default'
|
|
, cellMinWidth: 80
|
|
, cols: [[ //表头
|
|
{field: 'typeName', title: '类型', edit: 'text', align: 'center'},
|
|
{title: '操作', toolbar: '#barDemo', align: 'center'} //自定义操作栏模板
|
|
]],
|
|
data: data.data,
|
|
done: function (res, curr, count) {
|
|
|
|
},
|
|
toolbar: '#toolbarDemo' //开启工具栏,此处显示默认图标,可以自定义模板,详见文档
|
|
});
|
|
},
|
|
error: function (err) {
|
|
console.log("获取工程下拉列表出错:", err);
|
|
}
|
|
});
|
|
}
|
|
|
|
function addInfo() {
|
|
var tip = '保存';
|
|
|
|
finalData = table.cache.announcementType;
|
|
console.log(finalData)
|
|
for (let i = 0; i < finalData.length; i++) {
|
|
if (isEmpty(finalData[i].typeName)) {
|
|
reloadTip("数据提交", "相关表格数据请填写完整在进行提交,谢谢^_^!", 'error');
|
|
return;
|
|
// return layer.msg("相关表格数据请填写完整在进行提交,谢谢^_^!")
|
|
}
|
|
}
|
|
var data = {
|
|
finalData: JSON.stringify(finalData),
|
|
}
|
|
var tip = "操作";
|
|
var formUrl = czl_ht_url + "/announcement/categoricalManagementOfOperations";
|
|
// 加载提示
|
|
var addLoadingMsg = top.layer.msg('数据上传中,请稍候...', {
|
|
icon: 16,
|
|
scrollbar: false,
|
|
time: 0,
|
|
shade: [0.8, '#393D49']
|
|
});
|
|
|
|
$.ajax({
|
|
type: 'post',
|
|
async: false, // 默认异步true,false表示同步
|
|
url: formUrl, // 请求地址
|
|
contentType: "application/json; charset=utf-8",
|
|
dataType: 'json', // 服务器返回数据类型
|
|
data: JSON.stringify(data), //获取提交的表单字段
|
|
success: function (data) {
|
|
if (data.resMsg == "发起成功") {
|
|
top.layer.close(addLoadingMsg); //再执行关闭
|
|
reloadTip(tip, tip + "成功", "success");
|
|
setTimeout(function () {
|
|
parent.layer.closeAll();
|
|
window.parent.getAnnouncementType(form,"")
|
|
}, 2000);
|
|
} else if (data.resMsg == "团队名称已存在") {
|
|
top.layer.close(addLoadingMsg); //再执行关闭
|
|
reloadTip(tip, "团队名称已存在", "error");
|
|
} else {
|
|
top.layer.close(addLoadingMsg); //再执行关闭
|
|
reloadTip(tip, tip + "失败", "error");
|
|
}
|
|
},
|
|
error: function (XMLHttpRequest, textStatus, e) {
|
|
layer.msg('数据请求发生异常,请稍后重试', {icon: 16, scrollbar: false});
|
|
top.layer.close(addLoadingMsg); //再执行关闭
|
|
}
|
|
});
|
|
}
|
|
|
|
function reloadTip(tip, message, type) {
|
|
parent.layNotify.notice({
|
|
title: tip + "提示",
|
|
type: type,
|
|
message: message
|
|
});
|
|
}
|
|
|
|
function ajaxCommonMethod(url, data, success, error) {
|
|
$.ajax({
|
|
type: 'POST',
|
|
async: false, // 默认异步true,false表示同步
|
|
url: czl_ht_url + url,// 请求地址
|
|
contentType: "application/x-www-form-urlencoded",
|
|
dataType: 'json', // 服务器返回数据类型
|
|
data: data, //获取提交的表单字段
|
|
success: function (data) {
|
|
var resMsg = data.resMsg;
|
|
if ("数据获取成功" == resMsg) {
|
|
reloadTip("删除", success, 'success');
|
|
setTimeout(function () {
|
|
window.location.reload();
|
|
}, 2000);
|
|
} else {
|
|
reloadTip("删除", error, "error");
|
|
}
|
|
}
|
|
});
|
|
}
|
|
</script> |