更新数据维护和查询等功能,适配CIS数据表实体表善事查询。

This commit is contained in:
panx
2025-01-13 22:28:27 +08:00
parent 018322d8c1
commit 2c167222bd
18 changed files with 928 additions and 119 deletions

View File

@@ -107,6 +107,13 @@
data-maxmin="true" data-url="{:url('/PdmPartitemRelation/add')}">
<i class="layui-icon layui-icon-add-1"></i>{:__('添加')}
</button>
<!-- 自定义功能按钮 -->
<button id="updataAll" class="layui-btn layui-btn-primary">
<i class="layui-icon layui-icon-refresh"></i>{:__('更新CIS数据')}
</button>
<!--formEnd-->
</div>
</div>
@@ -130,6 +137,13 @@
<div class="layui-divider layui-divider-vertical"></div>
<!--formEnd-->
<a class="layui-table-text" data-url="{:url('/PdmPartitemRelation/del')}?id={{d.id}}" lay-event="del">{:__('删除')}</a>
<div class="layui-divider layui-divider-vertical"></div>
<!-- <a class="layui-table-text" data-title="{:__('更新')}"
callback="test" data-url="{:url('/PdmPartitemRelation/update')}?id={{d.id}}" lay-event="test" >{:__('更新')}</a> -->
<a class="layui-table-text" data-title="{:__('更新')}"
data-url="{:url('/PdmPartitemRelation/updata')}?id={{d.id}}" lay-event="userdf" >{:__('更新')}</a>
</script>
@@ -138,10 +152,14 @@
<include file="/public/footer" />
<script>
layui.use(['admin', 'table'], function () {
layui.use(['jquery','admin', 'table' ,'show' ,'i18n'], function () {
let $ = layui.jquery;
var admin = layui.admin;
var table = layui.table;
let i18n = layui.i18n;
// 自定义消息通知
let show = layui.show;
/*
* 初始化表格
@@ -164,13 +182,171 @@
{ field: 'footprint', width: 180,title: '{:__("Footprint")}' },
{ field: 'manufacture', width: 120,title: '{:__("Manufacture")}' },
//{ field: 'creatorid', title: '{:__("创建者ID")}' },
{ field: 'creator', title: '{:__("创建者")}' },
{ field: 'creator', width: 120,title: '{:__("创建者")}' },
//{ field: 'departmentid', title: '{:__("部门ID")}' },
{ field: 'departmenttitle', title: '{:__("部门")}' },
{ field: 'departmenttitle',width: 120, title: '{:__("部门")}' },
{ field: 'status', templet: '#columnStatus', title: '{:__("状态")}' },
{ align: 'center', toolbar: '#tableBar', width: 160, fixed: 'right', title: '{:__("操作")}' },
{ align: 'center', toolbar: '#tableBar', width: 220, fixed: 'right', title: '{:__("操作")}' },
]]
})
/**
* 监听表格事件
*/
table.on("tool(lay-tableList)", function (obj) {
let data = obj.data
, reqData = {}
, selector = $(this).parents('table').find('tbody tr')
, callback = {
success: function (res) {
obj.del();
if ((selector.length - 1) === 0 ||
typeof selector.length === 'undefined') {
table.reloadData("lay-tableList");
}
show.msg(res.msg);
},
error: function (res) {
show.error(res.msg);
}
}
, userdfcallback = {
success: function (res) {
// obj.del();
// if ((selector.length - 1) === 0 ||
// typeof selector.length === 'undefined') {
// table.reloadData("lay-tableList");
// }
show.msg(res.msg);
},
error: function (res) {
show.error(res.msg);
}
}
, othis = $(this)
, title = othis.data("title") || undefined
, field = $(this).data('field');
if (typeof (field) === "undefined") {
reqData = {
id: data.id
}
} else {
var array = field.split(",");
for (let d in array) {
reqData[d] = data[d];
}
}
if (obj.event === "edit") {
admin.event.open(othis, obj);
} else if (obj.event === "del") {
var tips = i18n.prop('确定要删除吗');
if (typeof title !== "undefined") {
tips += ' ' + title + ' ';
}
layer.confirm(tips, function (index) {
admin.event.request(othis, reqData, callback);
layer.close(index);
})
} else if (obj.event === "ajax") {
admin.event.request(othis, reqData, callback);
}else if(obj.event === "userdf"){
var tips = i18n.prop('确定要删除吗');
if (typeof title !== "undefined") {
tips += ' ' + title + ' ';
}
layer.confirm(tips, function (index) {
admin.event.request(othis, reqData, userdfcallback);
layer.close(index);
})
} else {
admin.event.open(othis, obj);
}
})
// // 添加 / 编辑用户
// admin.callback.updata = function(clickthis,colletction,config) {
// // 获取表格对象
// var tableThis = colletction.tableThis,
// status = typeof(tableThis) === "undefined" ? true : false;
// layui.msg("dddddd");
// // // 监听权限提交
// // form.on("submit(submitPage)",function(post){
// // // 获取用户id
// // var pageThat = layui.$(this),
// // _pageUrl = !status ? pageThat.attr('lay-edit') : pageThat.attr('lay-add');
// // // 开始POST提交数据
// // layui.$.post(_pageUrl,
// // post.field, function(res){
// // if (res.code === 200) {
// // layer.msg(res.msg);
// // // 关闭当前窗口
// // table.reload('lay-tableList');
// // layer.close(colletction.index);
// // pageThat.attr("disabled",true);
// // }
// // else {
// // layui.show.error(res.msg);
// // }
// // }, 'json');
// // return false;
// // })
// }
// 自定义更新数据按钮点击事件
document.getElementById('updataAll').addEventListener('click', function () {
// 确认用户希望导出全部数据
layer.confirm('确定更新所有数据到 CIS数据表 吗?', { icon: 3, title: '更新确认' }, function(index){
layer.close(index);
exportAllDataToExcel();
});
});
// 自定义导出功能
function exportAllDataToExcel(){
// 获取当前的过滤条件例如pid
// let selectedData = table.checkStatus('lay-tableGroup').data;
// let pid = selectedData.length ? selectedData[0].id : 0;
let url = "{:url('/PdmPartitemRelation/updataAll')}";
// 异步获取所有数据(不分页)
layer.msg('异步获取所有数据不分页超时限制30s');
$.ajax({
url: url ,// 后端需要根据 'export=1' 返回所有数据
// method: 'GET',
type: 'POST',
dataType: 'json',
timeout: 30000,
success: function(res){
if(res.code === 200){
layer.msg('更新数据成功:'+ res.msg);
}
},
error: function(jqXHR, textStatus, errorThrown){
if(textStatus === 'timeout') {
layer.msg('请求超时,请稍后重试。');
} else {
layer.msg('数据获取失败,请稍后重试: ' + errorThrown);
}
}
});
}
})
</script>