PDM更新数据结构后,基础数据查询和BOM初始查询等基本功能都已经OK,待完善和细化相关的上传和下载服务等。

This commit is contained in:
panx
2024-12-29 22:18:05 +08:00
parent d3d429e964
commit d70fcccc1d
99 changed files with 4877 additions and 948 deletions

View File

@@ -1,157 +1,65 @@
<include file="/public/header" />
<!-- // 重定位style -->
<!--partmanage-->
<link href="__STATICADMIN__css/content.css" rel="stylesheet" type="text/css" />
<div class="layui-fluid">
<form class="layui-form layui-card" >
<div class="layui-card-body">
<gt name="$data.id" value="0">
<input type="text" name="id" value="{$data.id}" hidden="">
<else/>
<input type="text" name="id" value="" hidden="">
</gt>
<div class="layui-form-item layui-row" ><div class="layui-col-md6 layui-grid-0" data-index="0">
<div class="layui-form-item" >
<label class="layui-form-label">上级分类</label>
<div class="layui-input-block">
<div id="treeNode" name="pid" lay-filter="treeNode" data-pid="{$data.pid|default=0}"></div>
</div>
<label class="layui-form-label"><font color="red">* </font>制造商名称</label>
<div class="layui-input-block"><input class="layui-input" name="mfgname" placeholder="请输入" required="1" lay-verify=""value="{$data.mfgname}" ></div>
</div>
<div class="layui-form-item" >
<div class="layui-input-block">
<div class="layui-input-inline">
<!-- <label class="layui-form-label"> -->
<font color="blue">* </font>制造商名称格式eg.TI德州仪器
<!-- </label> -->
<i class="layui-icon layui-icon-about" lay-tips="消息提示:如果无中文名称,可以忽略。" data-offset="4"></i>
</div>
</div>
</div>
</div><div class="layui-col-md6 layui-grid-1" data-index="1"><div class="layui-form-item" >
<label class="layui-form-label">网站主页</label>
<div class="layui-input-block"><input class="layui-input" name="mfgsite" placeholder="请输入" lay-verify=""value="{$data.mfgsite}" ></div>
</div>
<div class="layui-form-item" >
<div class="layui-input-block"><div class="layui-input-inline">
<!-- <label class="layui-form-label"> -->
<font color="blue">* </font>网站主页格式eg.https://www.ti.com
<!-- </label> -->
<i class="layui-icon layui-icon-about" lay-tips="消息提示:如果无主页路径,可以忽略。" data-offset="4"></i>
</div>
</div>
</div>
</div>
</div>
<div class="layui-form-item" >
<label class="layui-form-label"></label>
<div class="layui-input-block"><textarea class="layui-textarea" name="mfgrmark" placeholder="请输入" >{$data.mfgrmark}</textarea></div>
</div>
<div class="layui-form-item" >
<div class="layui-input-block"><hr class="layui-border-black"></div>
<label class="layui-form-label">排序</label>
<div class="layui-input-block">
<!-- <input class="layui-input" name="sort" placeholder="{:__('默认自动生成')}" required="" lay-verify=""value="{$data.sort}" > -->
<input name="sort" placeholder="{:__('默认自动生成')}" type="number" value="{$data.sort}" class="layui-input"/>
</div>
</div>
<div class="layui-form-item" >
<label class="layui-form-label">注释</label>
<div class="layui-input-block"> <textarea id="content" lay-editor class="layui-hide" name="content" type="layui-textarea" >{$data.content}</textarea></div>
</div>
<div class="layui-footer layui-form-footer">
<button class="layui-btn layui-btn-primary" type="button" sa-event="closeDialog">{:__('取消')}</button>
<button class="layui-btn" type="button" lay-filter="submitIframe" lay-submit>{:__('提交')}</button>
</div>
</form>
</div>
<include file="/public/static" />
<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 = {$rules|raw};
// 提交参数
form.on("submit(submit)",function(data){
$.post("{:Url('/PdmMfgName/')}"+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: '#treeNode',
tips: '请选择上级菜单',
name: 'pid',
height: '260px',
data: data,
radio: true,
clickClose: true,
initValue:[$('#treeNode').data('pid')],
prop: {
value: 'id',
name:'mfgname'
},
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>
<include file="/public/header" />
<!-- // 重定位style -->
<!--partmanage-->
<link href="__STATICADMIN__css/content.css" rel="stylesheet" type="text/css" />
<div class="layui-fluid">
<form class="layui-form layui-card" >
<div class="layui-card-body">
<gt name="$data.id" value="0">
<input type="text" name="id" value="{$data.id}" hidden="">
<else/>
<input type="text" name="id" value="" hidden="">
</gt>
<div class="layui-form-item layui-row" ><div class="layui-col-md6 layui-grid-0" data-index="0"><div class="layui-form-item" >
<label class="layui-form-label"><font color="red">* </font>制造商名称</label>
<div class="layui-input-block"><input class="layui-input" name="mfgname" placeholder="请输入" required="1" lay-verify=""value="{$data.mfgname}" ></div>
</div>
<div class="layui-form-item" >
<div class="layui-input-block">
<div class="layui-input-inline">
<font color="blue">* </font>制造商名称格式eg.TI德州仪器
<i class="layui-icon layui-icon-about" lay-tips="消息提示如果无中文名称可以忽略xx的内容。" data-offset="4"></i>
</div>
</div>
</div>
</div>
<div class="layui-col-md6 layui-grid-1" data-index="1"><div class="layui-form-item" >
<label class="layui-form-label">网站主页</label>
<div class="layui-input-block"><input class="layui-input" name="mfgsite" placeholder="请输入" lay-verify=""value="{$data.mfgsite}" ></div>
</div>
<div class="layui-form-item" >
<div class="layui-input-block"><div class="layui-input-inline">
<!-- <label class="layui-form-label"> -->
<font color="blue">* </font>网站主页格式eg.https://www.ti.com
<!-- </label> -->
<i class="layui-icon layui-icon-about" lay-tips="消息提示:如果无主页路径,可以忽略。" data-offset="4"></i>
</div>
</div>
</div>
</div>
</div>
<div class="layui-form-item" >
<label class="layui-form-label">备注</label>
<div class="layui-input-block"><textarea class="layui-textarea" name="mfgrmark" placeholder="请输入" >{$data.mfgrmark}</textarea></div>
</div>
<div class="layui-form-item" >
<div class="layui-input-block"><hr class="layui-border-black"></div>
</div>
<div class="layui-form-item" >
<label class="layui-form-label"></label>
<div class="layui-input-block"> <textarea id="content" lay-editor class="layui-hide" name="content" type="layui-textarea" >{$data.content}</textarea></div>
</div>
<div class="layui-footer layui-form-footer">
<button class="layui-btn layui-btn-primary" type="button" sa-event="closeDialog">{:__('取消')}</button>
<button class="layui-btn" type="button" lay-filter="submitIframe" lay-submit>{:__('提交')}</button>
</div>
</form>
</div>
<include file="/public/static" />
<include file="/public/footer" />

View File

@@ -35,6 +35,13 @@
</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 ">
@@ -45,7 +52,7 @@
<div class="layui-inline">
<div class="layui-form-label">{:__('创建者')}</div>
<div class="layui-input-inline ">
<input name="createrid" class="layui-input" type="text" placeholder="{:__('创建者')}"/>
<input name="creatorid" class="layui-input" type="text" placeholder="{:__('创建者')}"/>
</div>
</div>
@@ -85,9 +92,6 @@
<button class="layui-btn icon-btn" lay-open="" data-title="{:__('添加')}" data-area="1100px,750px" data-maxmin="true" data-url="{:url('/PdmMfgName/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>
@@ -119,88 +123,37 @@
<include file="/public/footer" />
<script>
layui.use(['form','treeTable'], function () {
layui.use(['admin','table'], function () {
let $ = layui.jquery;
let form = layui.form;
let treeTable = layui.treeTable;
let tableURL = "{:url('/PdmMfgName/index')}";
var admin = layui.admin;
var table = layui.table;
// 渲染初始化表格
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:'name',title:'{:__("制造商名称")}',templet: function(d) {
return d.mfgname;
},},
/*
* 初始化表格
*/
var isTable = table.render({
elem: "#lay-tableList"
,url: "{:url('/PdmMfgName/index')}"
,toolbar: '#tableButton'
,defaultToolbar: ['filter', 'exports', 'print','search']
,cellMinWidth: 160
,page: true
,limit: 18
,cols: [[
<!-- {type: 'checkbox', width: 50}, -->
{field: 'id', align: 'center',sort: true,width: 80, title: 'ID'},
{field:'mfgname',title:'{:__("制造商名称")}'},
{field:'mfgsite',title:'{:__("网站主页")}',templet: function(d) {
// return '<a href="https://' +d.mfgsite+ '" target="_blank">'+ d.mfgsite +'</a>';
return '<a href="' +d.mfgsite+ '" target="_blank">'+ d.mfgsite +'</a>';
},}, //https://www.ti.com/
} },
{field:'mfgrmark',title:'{:__("备注")}'},
{field:'sort',title:'{:__("排序")}'},
{field:'content',title:'{:__("注释")}'},
{field:'createrid',title:'{:__("创建者")}'},
{field:'status',templet: '#columnStatus',title:'{:__("状态")}'},
{field:'content',title:'{:__("注释")}',width: 350}, //,fixed: 'right'
<!-- {field:'creatorid',title:'{:__("创建者ID")}',align: 'center'}, -->
{field:'creator',title:'{:__("创建者")}',align: 'center'},
{field:'status',templet: '#columnStatus',title:'{:__("状态")}',width: 100,fixed: 'right'},
{align: 'center', toolbar: '#tableBar', width:160, fixed: 'right', title: '{:__("操作")}'},
]]
});
}
// 监听搜索 serialize
form.on('submit(treeSearch)',function(data) {
let whereURL = '',
field = data.field;
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>