更新数据维护和查询等功能,适配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

@@ -8,8 +8,10 @@
<div class="layui-card-body">
<gt name="$data.id" value="0">
<input type="text" name="id" value="{$data.id}" hidden="">
<input type="text" class="pid" name="pid" value="{$data.pid}" hidden="">
<else />
<input type="text" name="id" value="" hidden="">
<input type="text" class="pid" name="pid" value="" hidden="">
</gt>
<div class="layui-form-item">
<label class="layui-form-label">PartNumber</label>
@@ -18,22 +20,43 @@
</div>
<div class="layui-form-item">
<label class="layui-form-label">{:__('排序号')}</label>
<div class="layui-input-block">
<input name="sort" placeholder="{:__('默认自动生成')}" type="number" class="layui-input" value="{$data.sort}" />
</div>
</div>
<!-- <div class="layui-form-item">
<label class="layui-form-label">SymbolID</label>
<div class="layui-input-block"><input class="layui-input" name="symbolid" placeholder="请输入"
lay-verify="" value="{$data.symbolid}"></div>
</div> -->
<div class="layui-form-item">
<label class="layui-form-label">Symbol</label>
<div class="layui-input-block">
<div id="symbolNode" name="symbolid" lay-filter="symbolNode" data-pid="{$data.symbolid|default=0}"></div>
</div>
</div>
<div class="layui-form-item">
<!-- <div class="layui-form-item">
<label class="layui-form-label">FootprintID</label>
<div class="layui-input-block"><input class="layui-input" name="footprintid" placeholder="请输入"
lay-verify="" value="{$data.footprintid}"></div>
</div> -->
<div class="layui-form-item">
<label class="layui-form-label">Footprint</label>
<div class="layui-input-block">
<div id="footprintNode" name="footprintid" lay-filter="footprintNode" data-pid="{$data.footprintid|default=0}"></div>
</div>
</div>
<div class="layui-form-item">
<!-- <div class="layui-form-item">
<label class="layui-form-label">部门ID</label>
<div class="layui-input-block"><input class="layui-input" name="departmentid" placeholder="请输入"
lay-verify="" value="{$data.departmentid}"></div>
</div>
</div> -->
<div class="layui-form-item">
<label class="layui-form-label">注释</label>
@@ -47,5 +70,123 @@
</div>
</form>
</div>
<script src="__STATICADMIN__module/xmselect/xmselect.js?v={:release()}"></script>
<include file="/public/static" />
<include file="/public/footer" />
<include file="/public/footer" />
<script>
layui.use(['jquery', 'iconPicker','form'],function() {
let $ = layui.jquery;
let show = layui.show;
let form = layui.form;
let iconPicker = layui.iconPicker;
let data = {$list|raw};
let symboldata= {$symbol|raw};
let footprintdata= {$footprint|raw};
// 提交参数
form.on("submit(submit)",function(data){
$.post("{:Url('/PdmPartitemIndex/')}"+app_Config.action,data.field,function(res){
if(res.code === 200){
show.msg(res.msg);
parent.layui.table.reloadData('lay-tableList');
parent.layer.closeAll();
// 调用接口更新菜单
top.layui.admin.reloadLayout();
}else{
show.error(res.msg);
}
});
return false;
})
xmSelect.render({
el: '#symbolNode',
tips: '请选择Symbol',
// name: 'pid',
name: 'symbolid',
height: '260px',
data: symboldata,
// data: data,
radio: true,
clickClose: true,
initValue:[$('#symbolNode').data('pid')],
prop: {
value: 'id',
name:'symbolname'
},
tree: {
show: true,
strict: false,
showLine: false,
clickExpand: false,
},
model: {
icon: 'hidden',
label: {
type: 'text'
}
},
theme: {
color: '#1890FF'
}
})
xmSelect.render({
el: '#footprintNode',
tips: '请选择Footprint',
// name: 'pid',
name: 'footprintid',
height: '260px',
data: footprintdata,
// data: data,
radio: true,
clickClose: true,
initValue:[$('#footprintNode').data('pid')],
prop: {
value: 'id',
name:'footprint'
},
tree: {
show: true,
strict: false,
showLine: false,
clickExpand: false,
},
model: {
icon: 'hidden',
label: {
type: 'text'
}
},
theme: {
color: '#1890FF'
}
})
// iconPicker.render({
// elem: '#iconPicker',
// type: 'fontClass',
// search: true,
// cellWidth: "19%",
// page: true,
// limit: 12,
// // 点击回调
// click: function(data) { // 点击回调
// $('#iconPicker').val(data.icon);
// },
// success: function(d) { // 渲染成功后的回调
// }
// });
// $('.router').bind('input change',function(data){
// let router = $('.router').val();
// router = router.substring(1);
// $('.alias').val(router.replaceAll('/',':'));
// })
})
</script>

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>