288 lines
12 KiB
HTML
288 lines
12 KiB
HTML
<include file="/public/header" />
|
||
<!--partmanage-->
|
||
<div class="layui-fluid">
|
||
<div class="layui-card">
|
||
<!-- // 默认操作按钮 -->
|
||
<div class="layui-card-header layadmin-card-header-auto ">
|
||
<div class="layui-form">
|
||
<!-- // 自定义搜索参数 -->
|
||
<div id="laytable-search" class="layui-form-item">
|
||
<!-- <div class="layui-inline">
|
||
<div class="layui-form-label">{:__('ID')}</div>
|
||
<div class="layui-input-inline ">
|
||
<input name="id" class="layui-input" type="text" placeholder="{:__('ID')}" />
|
||
</div>
|
||
</div>
|
||
|
||
<div class="layui-inline">
|
||
<div class="layui-form-label">{:__('父ID')}</div>
|
||
<div class="layui-input-inline ">
|
||
<input name="pid" class="layui-input" type="text" placeholder="{:__('父ID')}" />
|
||
</div>
|
||
</div>
|
||
|
||
<div class="layui-inline">
|
||
<div class="layui-form-label">{:__('排序')}</div>
|
||
<div class="layui-input-inline ">
|
||
<input name="sort" class="layui-input" type="text" placeholder="{:__('排序')}" />
|
||
</div>
|
||
</div> -->
|
||
|
||
<div class="layui-inline">
|
||
<div class="layui-form-label">{:__('封装预览')}</div>
|
||
<div class="layui-input-inline ">
|
||
<input name="view" class="layui-input" type="text" placeholder="{:__('封装预览')}" />
|
||
</div>
|
||
</div>
|
||
|
||
<div class="layui-inline">
|
||
<div class="layui-form-label">{:__('封装文件')}</div>
|
||
<div class="layui-input-inline ">
|
||
<input name="attachment" class="layui-input" type="text" placeholder="{:__('封装文件')}" />
|
||
</div>
|
||
</div>
|
||
|
||
<div class="layui-inline">
|
||
<div class="layui-form-label">{:__('创建者')}</div>
|
||
<div class="layui-input-inline ">
|
||
<input name="nickname" class="layui-input" type="text" placeholder="{:__('创建者')}" />
|
||
</div>
|
||
</div>
|
||
|
||
<div class="layui-inline">
|
||
<div class="layui-form-label">{:__('注释')}</div>
|
||
<div class="layui-input-inline ">
|
||
<input name="content" class="layui-input" type="text" placeholder="{:__('注释')}" />
|
||
</div>
|
||
</div>
|
||
|
||
<div class="layui-inline">
|
||
<div class="layui-form-label">{:__('更新时间')}</div>
|
||
<div class="layui-input-inline ">
|
||
<input name="update_time" lay-datetime data-range="true" data-type="date"
|
||
data-dateformat="yyyy/MM/dd" class="layui-input" type="text"
|
||
placeholder="{:__('更新时间')}" />
|
||
</div>
|
||
</div>
|
||
|
||
<div class="layui-inline">
|
||
<div class="layui-form-label">{:__('创建时间')}</div>
|
||
<div class="layui-input-inline ">
|
||
<input name="create_time" lay-datetime data-range="true" data-type="date"
|
||
data-dateformat="yyyy/MM/dd" class="layui-input" type="text"
|
||
placeholder="{:__('创建时间')}" />
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="layui-form-item">
|
||
<div class="layui-inline">
|
||
<select name="status">
|
||
<option value="">{:__('按状态查询')}</option>
|
||
<option value="2">{:__('正常')}</option>
|
||
<option value="1">{:__('关闭')}</option>
|
||
</select>
|
||
</div>
|
||
|
||
<div class="layui-inline">
|
||
<div class="layui-form-label">{:__('封装名称')}</div>
|
||
<div class="layui-input-inline ">
|
||
<input name="footprint" class="layui-input" type="text" placeholder="{:__('封装名称')}" />
|
||
</div>
|
||
</div>
|
||
<div class="layui-inline">
|
||
<!-- // 默认搜索 -->
|
||
<button class="layui-btn icon-btn" lay-filter="treeSearch" lay-submit><i
|
||
class="layui-icon layui-icon-search"></i>{:__('搜索')}</button>
|
||
<!--formBegin-->
|
||
<button class="layui-btn icon-btn" lay-open="" data-title="{:__('添加')}" data-area="1100px,750px"
|
||
data-maxmin="true" data-url="{:url('/PdmFootprint/add')}">
|
||
<i class="layui-icon layui-icon-add-1"></i>{:__('添加')}
|
||
</button>
|
||
|
||
<button class="layui-btn layui-btn-primary icon-btn" id="expandAll"><i
|
||
class="layui-icon layui-icon-templeate-1"></i>{:__('展开全部')}</button>
|
||
<button class="layui-btn layui-btn-danger icon-btn" id="foldAll"><i
|
||
class="layui-icon layui-icon-add-1"></i>{:__('折叠全部')}</button>
|
||
<!--formEnd-->
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<!-- // 创建数据实例 -->
|
||
<table id="lay-tableList" lay-filter="lay-tableList"></table>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- // 列表状态栏 -->
|
||
<script type="text/html" id="columnStatus">
|
||
<input type="checkbox" lay-filter="switchStatus" data-url="{:url('/PdmFootprint/status')}" value="{{d.id}}" lay-skin="switch" {{d.status==1?'checked':''}} />
|
||
</script>
|
||
|
||
<!-- // 列表工具栏 -->
|
||
<script type="text/html" id="tableBar">
|
||
<!--formBegin-->
|
||
{{# if(d.pid ===0) {
|
||
|
||
}}
|
||
<a class="layui-table-text" lay-open data-title="{:__('添加菜单')}" data-url="{:url('/PdmFootprint/add')}?pid={{d.id}}"
|
||
data-area="1100px,750px">{:__('添加')}</a>
|
||
<div class="layui-divider layui-divider-vertical"></div>
|
||
{{#
|
||
}
|
||
}}
|
||
<a class="layui-table-text" data-title="{:__('编辑')}" data-area="1100px,750px" data-maxmin="true"
|
||
data-url="{:url('/PdmFootprint/edit')}?id={{d.id}}" lay-event="edit">{:__('编辑')}</a>
|
||
<div class="layui-divider layui-divider-vertical"></div>
|
||
<!--formEnd-->
|
||
<a class="layui-table-text" data-url="{:url('/PdmFootprint/del')}?id={{d.id}}" lay-event="del">{:__('删除')}</a>
|
||
</script>
|
||
|
||
|
||
|
||
<script type="text/html" id="tableButton"></script>
|
||
|
||
|
||
<!-- 文件预览模板 -->
|
||
<!-- 内部模板的嵌套 {-{ }-} 会有问题-->
|
||
<script type="text/html" id="filepreviewtpl">
|
||
{{#
|
||
|
||
if(d.attachment) {
|
||
|
||
|
||
var fileExt = d.attachment.split('.').pop().toLowerCase();
|
||
|
||
var imageExts = ['jpg', 'jpeg', 'png', 'gif', 'bmp', 'webp'];
|
||
|
||
if (imageExts.indexOf(fileExt) !== -1) {
|
||
}}
|
||
<!-- 图片文件:显示图片并链接到原文件 -->
|
||
<a href="{{d.attachment}}" target="_blank">
|
||
<img class="filesuffix" src="{{d.attachment}}" alt="Image Preview" style="max-width: 100px; height: auto;" />
|
||
</a>
|
||
{{#
|
||
} else if (fileExt === 'pdf') {
|
||
}}
|
||
<!-- PDF 文件:显示 PDF 图标并链接到 PDF 文件 -->
|
||
<a href="{{d.attachment}}" target="_blank" style="display: flex; align-items: center;">
|
||
<i class="layui-icon layui-icon-file" style="font-size: 24px; color: #e64340; margin-right: 5px;"></i>
|
||
<span>PDF:{{d.attachment}}</span>
|
||
</a>
|
||
{{#
|
||
} else {
|
||
}}
|
||
<!-- 其他文件类型:显示通用文件图标并链接到文件 -->
|
||
<a href="{{d.attachment}}" target="_blank" style="display: flex; align-items: center;">
|
||
<i class="layui-icon layui-icon-file" style="font-size: 24px; color: #1E9FFF; margin-right: 5px;"></i>
|
||
<span>Other:{{d.attachment}}</span>
|
||
</a>
|
||
{{#
|
||
}
|
||
}
|
||
}}
|
||
</script>
|
||
|
||
|
||
<include file="/public/footer" />
|
||
|
||
|
||
<script type="text/javascript">
|
||
layui.use(['form', 'treeTable'], function () {
|
||
|
||
let $ = layui.jquery;
|
||
let form = layui.form;
|
||
let treeTable = layui.treeTable;
|
||
let tableURL = "{:url('/PdmFootprint/index')}";
|
||
|
||
// 渲染初始化表格
|
||
let renderTable = function (tableURL) {
|
||
treeTable.render({
|
||
id: 'lay-tableList',
|
||
elem: '#lay-tableList',
|
||
url: tableURL,
|
||
toolbar: '#tableButton',
|
||
defaultToolbar: ['filter', 'exports', 'print', 'search'],
|
||
cellMinWidth: 160,
|
||
//page: true,
|
||
//limit: 18,
|
||
tree: {
|
||
customName: {
|
||
pid: 'pid',
|
||
icon: 'icon1',
|
||
},
|
||
view: {
|
||
iconClose: '', // 关闭时候的图标
|
||
iconOpen: '', // 打开时候的图标
|
||
iconLeaf: '', // 叶子节点的图标
|
||
}
|
||
},
|
||
cols: [[
|
||
//{type: 'checkbox', width: 50},
|
||
{ type: 'numbers' },
|
||
//{field: 'id', align: 'center',sort: true,width: 80, title: 'ID'},
|
||
//{field:'parttypetitle',title:'{:__("Title")}'},
|
||
{
|
||
field: 'name', title: '{:__("封装名称")}', templet: function (d) {
|
||
return d.footprint;
|
||
},
|
||
},
|
||
{
|
||
field: 'view', templet: function (d) {
|
||
return '<a href="javascript:"><img class="filesuffix" lay-image-click src="' + d.view + '"></a>';
|
||
}, title: '{:__("封装预览")}'
|
||
},
|
||
{ field: 'manufacture', title: '{:__("加工方式")}' },
|
||
//{
|
||
// field: 'attachment', templet: function (d) {
|
||
// return '<a href="' + d.attachment + '" target="_blank" ><img class="filesuffix" src="' + d.attachment + '"></a>';
|
||
// }, title: '{:__("封装文件")}'
|
||
//},
|
||
{ field: 'attachment', width: 160, templet: '#filepreviewtpl', title: '{:__("封装文件")}' },
|
||
{ field: 'nickname', title: '{:__("创建者")}' },
|
||
{field:'content',title:'{:__("注释")}'},
|
||
{ field: 'status', templet: '#columnStatus', title: '{:__("状态")}' },
|
||
{ align: 'center', toolbar: '#tableBar', width: 220, fixed: 'right', title: '{:__("操作")}' },
|
||
]]
|
||
});
|
||
}
|
||
|
||
// 监听搜索 serialize
|
||
form.on('submit(treeSearch)', function (data) {
|
||
|
||
let whereURL = '',
|
||
field = data.field;
|
||
for (const key in field) {
|
||
if (!field[key]) {
|
||
delete field[key];
|
||
}
|
||
}
|
||
for (let key in field) {
|
||
whereURL += key + '=' + field[key];
|
||
whereURL += '&';
|
||
}
|
||
|
||
// 拼接字符串
|
||
whereURL = whereURL.replace(/(.*)&/, '$1 ');
|
||
whereURL = tableURL + '?' + whereURL;
|
||
renderTable(whereURL);
|
||
})
|
||
|
||
// 展开所有
|
||
$('#expandAll').click(function () {
|
||
treeTable.expandAll('lay-tableList', true);
|
||
})
|
||
|
||
// 折叠所有
|
||
$('#foldAll').click(function () {
|
||
treeTable.expandAll('lay-tableList', false);
|
||
});
|
||
|
||
// 执行初始化
|
||
renderTable(tableURL);
|
||
|
||
});
|
||
|
||
</script>
|
||
|
||
|