duhe
2023-06-25 ad84e10b88807dbec8b733e2143e0b57d3df5aa2
菜单加载(完成)
菜单自定义(完成)
快捷方式自定义(还差图标设置)
1个文件已添加
3个文件已修改
453 ■■■■ 已修改文件
WebTM/views/home/console.html 247 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/indexMenu.html 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/系统管理/快捷方式自定义/Xt_UserFastMenu.html 172 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/系统管理/菜单自定义/Xt_DefineMenuDisplay.html 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/home/console.html
@@ -3,6 +3,7 @@
<!DOCTYPE html>
<html>
<head>
    <
    <meta charset="utf-8">
    <title>控制台主页一</title>
    <meta name="renderer" content="webkit">
@@ -10,9 +11,28 @@
    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
    <link rel="stylesheet" href="../../layuiadmin/layui/css/layui.css" media="all">
    <link rel="stylesheet" href="../../layuiadmin/style/admin.css" media="all">
    <style id="LAY_layadmin_theme">
        .layui-side-menu, .layadmin-pagetabs .layui-tab-title li:after, .layadmin-pagetabs .layui-tab-title li.layui-this:after, .layui-layer-admin .layui-layer-title, .layadmin-side-shrink .layui-side-menu .layui-nav > .layui-nav-item > .layui-nav-child {
            background-color: #20222A !important;
        }
        .layui-nav-tree .layui-this, .layui-nav-tree .layui-this > a, .layui-nav-tree .layui-nav-child dd.layui-this, .layui-nav-tree .layui-nav-child dd.layui-this a {
            background-color: #009688 !important;
        }
        .layui-layout-admin .layui-logo {
            background-color: #20222A !important;
        }
        .FastMenu {
        }
    </style>
    <script>
        /^http(s*):\/\//.test(location.href) || alert('请先部署到 localhost ä¸‹å†è®¿é—®');
    </script>
</head>
<body layadmin-themealias="default">
    <div class="layui-fluid">
        <div class="layui-row layui-col-space15">
            <div class="layui-col-md8">
@@ -23,114 +43,8 @@
                            <div class="layui-card-header">快捷方式</div>
                            <div class="layui-card-body">
                                <div class="layui-carousel layadmin-carousel layadmin-shortcut" lay-anim="" lay-indicator="inside" lay-arrow="none" style="width: 100%; height: 280px;">
                                    <div carousel-item="">
                                        <ul class="layui-row layui-col-space10 layui-this">
                                            <li class="layui-col-xs3">
                                                <a lay-href="生产管理/生产任务单/Sc_ICMOBillList.html">
                                                    <i class="layui-icon layui-icon-add-circle"></i>
                                                    <cite>生产订单维护</cite>
                                                </a>
                                            </li>
                                            <li class="layui-col-xs3">
                                                <a lay-href="车间管理/工序流转卡/Sc_ProcessExchangeIssueBillList.html">
                                                    <i class="layui-icon layui-icon-mike"></i>
                                                    <cite>工序流转卡(下达)</cite>
                                                </a>
                                            </li>
                                            <li class="layui-col-xs3">
                                                <a lay-href="车间管理/工序流转卡/Sc_ProcessSendWorkList.html">
                                                    <i class="layui-icon layui-icon-android"></i>
                                                    <cite>派工单维护</cite>
                                                </a>
                                            </li>
                                            <li class="layui-col-xs3">
                                                <a lay-href="车间管理/工序出站汇报单/Cj_StationOutBillList.html">
                                                    <i class="layui-icon layui-icon-chart"></i>
                                                    <cite>工序出站汇报单维护</cite>
                                                </a>
                                            </li>
                                            <li class="layui-col-xs3">
                                                <a lay-href="仓存管理/条码生成/Gy_BarCodeBill.html">
                                                    <i class="layui-icon layui-icon-app"></i>
                                                    <cite>条码生成</cite>
                                                </a>
                                            </li>
                                            <li class="layui-col-xs3">
                                                <a lay-href="车间管理/工序出站汇报单/Cj_StationOutBill.html">
                                                    <i class="layui-icon layui-icon-theme"></i>
                                                    <cite>报工新增</cite>
                                                </a>
                                            </li>
                                            <li class="layui-col-xs3">
                                                <a lay-href="模治具管理/模治具管理/Gy_BarCodeBillList.html">
                                                    <i class="layui-icon layui-icon-addition"></i>
                                                    <cite>条码主档维护</cite>
                                                </a>
                                            </li>
                                            <li class="layui-col-xs3">
                                                <a lay-href="基础资料/公用基础资料/Gy_Material.html">
                                                    <i class="layui-icon layui-icon-release"></i>
                                                    <cite>物料列表</cite>
                                                </a>
                                            </li>
                                        </ul>
                                        <ul class="layui-row layui-col-space10">
                                            <li class="layui-col-xs3">
                                                <a href="../仓存管理/仓库调拨/Cc_LookingForReturnBill.html" target="main_self_frame">
                                                    <i class="layui-icon layui-icon-at"></i>
                                                    <cite>上架归还单</cite>
                                                </a>
                                            </li>
                                            <li class="layui-col-xs3">
                                                <a href="../车间管理/工序流转/MES_StationInBill_PDA.html" target="main_self_frame">
                                                    <i class="layui-icon layui-icon-auz"></i>
                                                    <cite>工序进站接收单</cite>
                                                </a>
                                            </li>
                                            <li class="layui-col-xs3">
                                                <a href="../车间管理/工序流转/MES_StationOutBill_PDA.html" target="main_self_frame">
                                                    <i class="layui-icon layui-icon-bluetooth"></i>
                                                    <cite>工序出站汇报单</cite>
                                                </a>
                                            </li>
                                            <li class="layui-col-xs3">
                                                <a href="../车间管理/委外工序发出单/Cj_StationEntrustInBill.html" target="main_self_frame">
                                                    <i class="layui-icon layui-icon-carousel"></i>
                                                    <cite>委外工序发出单</cite>
                                                </a>
                                            </li>
                                            <li class="layui-col-xs3">
                                                <a href="../生产管理/生产拆箱单/Sc_PackSplitBill_Fast.html" target="main_self_frame">
                                                    <i class="layui-icon layui-icon-cellphone"></i>
                                                    <cite>生产拆箱单</cite>
                                                </a>
                                            </li>
                                            <li class="layui-col-xs3">
                                                <a href="../质量管理/来料检验单/Kf_QCStockInCheckBill_Fast.html" target="main_self_frame">
                                                    <i class="layui-icon layui-icon-diamond"></i>
                                                    <cite>来料检验单</cite>
                                                </a>
                                            </li>
                                            <li class="layui-col-xs3">
                                                <a href="../领料发货/收料入库/Kf_ReciveBill_Fast_AR.html" target="main_self_frame">
                                                    <i class="layui-icon layui-icon-dollar"></i>
                                                    <cite>到货确认(安瑞)</cite>
                                                </a>
                                            </li>
                                            <li class="layui-col-xs3">
                                                <a href="../生产管理/生产汇报单/Sc_ICMOReportBill_FastNew.html" target="main_self_frame">
                                                    <i class="layui-icon layui-icon-dollar"></i>
                                                    <cite>生产汇报单</cite>
                                                </a>
                                            </li>
                                            <!--<li class="layui-col-xs3">
                                                <a lay-href="set/user/info.html">
                                                    <i class="layui-icon layui-icon-set"></i>
                                                    <cite>我的资料</cite>
                                                </a>
                                            </li>-->
                                        </ul>
                                    </div>
                                    <!--快捷方式-->
                                    <div class="FastMenu" carousel-item=""></div>
                                    <div class="layui-carousel-ind"><ul><li class="layui-this"></li><li class=""></li></ul></div><button class="layui-icon layui-carousel-arrow" lay-type="sub"></button><button class="layui-icon layui-carousel-arrow" lay-type="add"></button>
                                </div>
                            </div>
@@ -422,29 +336,106 @@
    </div>
    <script src="../../layuiadmin/layui/layui.js?t=1"></script>
    <script src="../../layuiadmin/Scripts/webConfig.js"></script>
    <script src="../../layuiadmin/Scripts/jquery-1.4.1.js"></script>
    <script>
        layui.config({
            base: '../../layuiadmin/' //静态资源所在路径
        }).extend({
            index: 'lib/index' //主入口模块
        }).use(['index', 'console']);
        }).use(['index', 'form', 'laydate', 'table', 'element', 'console'], function () {
            var $ = layui.$;
            var element = layui.element;
            var $ = layui.jquery;
            //#region   é¡µé¢åˆå§‹åŒ–
            set_ClearBill();
            //#endregion
            //#region   é¡µé¢åˆå§‹åŒ–方法
            function set_ClearBill() {
                get_Display();
            }
            //#endregion
            //#region   é¡µé¢å…¶å®ƒæ–¹æ³•
            function get_Display() {
                //获取菜单列表数据
                $.ajax({
                    url: "http://localhost:8082/API//Web/Xt_UserFastMenu_Init",
                    type: "GET",
                    async: false,
                    data: { "HMakeName": sessionStorage["HUserName"] },
                    success: function (data) {
                        console.log(data.data);
                        FastMenu(data.data);
                    },
                    error: function (data) {
                        layer.alert("发生错误!", { icon: 5 });
                    }
                });
            }
            function FastMenu(data) {
                var liStr = '';
                //遍历生成主菜单
                for (var i = 0; i < data.length; i++) {
                    if (i == 0) {
                        liStr += '<ul class="layui-row layui-col-space10 layui-this">';
                    } else if (i % 8 == 0) {
                        liStr += '<ul class="layui-row layui-col-space10">';
                    }
                    liStr += '<li class="layui-col-xs3">';
                    if (data[i]["HPicNum"] == null || data[i]["HPicNum"] == "") {
                        liStr += '<i id="' + data[i]["HSubFuncID"] +'" class="layui-icon layui-icon-add-circle"></i>';
                    } else {
                        liStr += '<i class="layui-icon ' + data[i]["HPicNum"] + '"></i>';
                    }
                    liStr += '<a lay-href="' + data[i]["Hurl"] + '">';
                    liStr += '<cite>' + data[i]["HCaption"] + '</cite>';
                    liStr += '</a>';
                    liStr += '</li>';
                    if (i % 8 == 7) {
                        liStr += '</ul>';
                    }
                };
                if (data.length % 8 == 0) {
                    liStr += '<ul class="layui-row layui-col-space10">';
                    liStr += '<li class="layui-col-xs3">';
                    liStr += '<a lay-href="系统管理/快捷方式自定义/Xt_UserFastMenu.html">';
                    liStr += '<i class="layui-icon layui-icon-add-circle"></i>';
                    liStr += '<cite>快捷方式自定义</cite>';
                    liStr += '</a>';
                    liStr += '</li>';
                    liStr += '</ul>';
                } else {
                    liStr += '<li class="layui-col-xs3">';
                    liStr += '<a lay-href="系统管理/快捷方式自定义/Xt_UserFastMenu.html">';
                    liStr += '<i class="layui-icon layui-icon-add-circle"></i>';
                    liStr += '<cite>快捷方式自定义</cite>';
                    liStr += '</a>';
                    liStr += '</li>';
                    liStr += '</ul>';
                }
                $(".FastMenu").html(liStr);
                element.init();
                for (var i = 0; i < data.length; i++) {
                    var item = document.getElementById(data[i]["HSubFuncID"]);
                    item.addEventListener("click", function (event) {
                        alert(event.currentTarget.id);
                    }, false);
                }
            }
            //#endregion
        });
    </script>
    <style id="LAY_layadmin_theme">
        .layui-side-menu, .layadmin-pagetabs .layui-tab-title li:after, .layadmin-pagetabs .layui-tab-title li.layui-this:after, .layui-layer-admin .layui-layer-title, .layadmin-side-shrink .layui-side-menu .layui-nav > .layui-nav-item > .layui-nav-child {
            background-color: #20222A !important;
        }
        .layui-nav-tree .layui-this, .layui-nav-tree .layui-this > a, .layui-nav-tree .layui-nav-child dd.layui-this, .layui-nav-tree .layui-nav-child dd.layui-this a {
            background-color: #009688 !important;
        }
        .layui-layout-admin .layui-logo {
            background-color: #20222A !important;
        }
    </style>
</body>
</html>
</html>
WebTM/views/indexMenu.html
@@ -49,7 +49,9 @@
                </ul>
                <ul class="layui-nav layui-layout-right" lay-filter="layadmin-layout-right">
                    <li class="layui-nav-item" lay-unselect>
                        <a href="系统管理/菜单自定义/Xt_DefineMenuDisplay.html">菜单自定义</a>
                        <a href="javascript:void(0);">
                            <cite id="MenuDefineID">菜单自定义</cite>
                        </a>
                    </li>
                    <li class="layui-nav-item" lay-unselect>
                        <a href="javascript:void(0);">
@@ -265,6 +267,29 @@
                }
                return subStr;
            }
            //菜单自定义:弹出菜单自定义子页面
            Ul = document.getElementById("MenuDefineID");
            Ul.addEventListener("click", function (event) {
                layer.open({
                    type: 2
                    , area: ['90%', '90%']
                    , title: '菜单自定义'
                    , closeBtn: 1
                    , shade: 0.6 //遮罩透明度
                    , maxmin: true //允许全屏最小化
                    , anim: 0 //0-6的动画形式,-1不开启
                    , content: '系统管理/菜单自定义/Xt_DefineMenuDisplay.html'
                    , resize: false
                    , btn: ["确定"]
                    , end: function () {
                        //刷新页面,
                        location.reload();
                    }
                })
            }, false);
            //#endregion
        });
WebTM/views/ϵͳ¹ÜÀí/¿ì½Ý·½Ê½×Ô¶¨Òå/Xt_UserFastMenu.html
New file
@@ -0,0 +1,172 @@
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Demo</title>
    <!-- è¯·å‹¿åœ¨é¡¹ç›®æ­£å¼çŽ¯å¢ƒä¸­å¼•ç”¨è¯¥ layui.css åœ°å€ -->
    <link href="//unpkg.com/layui@2.8.8/dist/css/layui.css" rel="stylesheet">
</head>
<body>
    <div class="layui-btn-container">
        <button type="button" class="layui-btn layui-btn-sm" lay-on="save">保存</button>
    </div>
    <div id="ID-tree-demo"></div>
    <!-- è¯·å‹¿åœ¨é¡¹ç›®æ­£å¼çŽ¯å¢ƒä¸­å¼•ç”¨è¯¥ layui.js åœ°å€ -->
    <script src="//unpkg.com/layui@2.8.8/dist/layui.js"></script>
    <script src="../../../layuiadmin/Scripts//jquery-1.4.1.js"></script>
    <script src="../../../layuiadmin/Scripts/webConfig.js"></script>
    <script>
        layui.use(function () {
            var tree = layui.tree;
            var layer = layui.layer;
            var util = layui.util;
            var $ = layui.$;
            //#region å…¨å±€å˜é‡
            var option = {};                //树组件的渲染参数,保存树组件渲染的信息
            var saveData = [];              //存储用户设置的自定义数据,传递给后端进行保存
            var menuDefineData = [];        //以父子级结构存放树组件的自定义数据,用来赋给option
            //#endregion
            //#region åˆå§‹åŒ–页面
            set_ClearBill();                        //调用初始化界面方法,完成界面的初始化
            //#endregion
            //#region ç›‘听方法
            // æŒ‰é’®äº‹ä»¶
            util.event('lay-on', {
                save: function () {               //保存
                    saveMenuDefineData();
                }
            });
            //#endregion
            //#region å…¶å®ƒæ–¹æ³•
            //#region ç•Œé¢åˆå§‹åŒ–方法
            //初始化界面方法
            function set_ClearBill() {
                set_InitGrid();
                get_Display();
            }
            //#endregion
            //#region æ ‘组件渲染参数的初始化
            //对树组件的渲染参数进行初始化,设置除data以外的其它属性
            function set_InitGrid() {
                option = {
                    elem: '#ID-tree-demo',
                    showCheckbox: true,  // æ˜¯å¦æ˜¾ç¤ºå¤é€‰æ¡†
                    id: 'demo-id-1',
                    isJump: false, // æ˜¯å¦å…è®¸ç‚¹å‡»èŠ‚ç‚¹æ—¶å¼¹å‡ºæ–°çª—å£è·³è½¬
                    click: function (obj) {
                        //var data = obj.data;  //获取当前点击的节点数据
                        //layer.msg('状态:' + obj.state + '<br>节点数据:' + JSON.stringify(data));
                    }
                }
            }
            //#endregion
            //#region ä¿å­˜
            //保存自定义数据:获取树组件中选中的节点信息
            function saveMenuDefineData() {
                var checkedData = tree.getChecked('demo-id-1'); // èŽ·å–é€‰ä¸­èŠ‚ç‚¹çš„æ•°æ®
                saveData = [];                                  //清空保存自定义数据的列表的数据
                getSelectedData(checkedData);                   //将选中的节点的信息以列表的形式保存在saveData中
                //if (saveData.length > 7) {
                //    layer.msg('设置超额,请保证快捷方式低于8个!!');
                //    return;
                //}
                var sMainSub = JSON.stringify(saveData) + ";" + sessionStorage["HUserName"];
                var index = layer.load();
                $.ajax({
                    url: GetWEBURL() +  "/Web/Xt_UserFastMenu_Save",
                    type: "POST",
                    data: { "sMainSub": sMainSub },         //将当前用户和其自定义数据传递给后端,保存到数据库
                    success: function (data) {
                        if (data.count == 1) {
                            layer.close(index);
                            layer.msg("提交成功");
                        }
                        else {
                            layer.close(index);
                            layer.msg(data.Message, { icon: 5, btn: ['确认'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                        }
                    },
                    error: function (err) {
                        layer.close(index);
                        layer.msg("错误:" + err, { icon: 5, btn: ['确认'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                        layer.alert(JSON.stringify(err), { shade: 0 });
                    }
                });
            }
            //将树组件被选中的数据,从父子级结构列表以数组列表形式存放
            function getSelectedData(checkedData) {
                for (var i = 0; i < checkedData.length; i++) {
                    if (checkedData[i].children == null || checkedData[i].children.length == 0) {
                        saveData.push({ "HItemID": checkedData[i].id, "HName": checkedData[i].title });
                    } else {
                        getSelectedData(checkedData[i].children);
                    }
                }
            }
            //#endregion
            //#region æ˜¾ç¤ºç›®å½•的树组件
            //优化自定义菜单显示的实验
            function get_Display() {
                $.ajax({
                    url: GetWEBURL() +  "/Web/Xt_UserFastMenu_Display",
                    type: "GET",
                    async: false,
                    data: { "HMakeName": sessionStorage["HUserName"] },
                    success: function (res) {
                        var dt = res.data.dt;               //菜单清单的全部信息与被选中情况
                        var trees = res.data.tree;          //树组件的根节点
                        menuDefineData = trees;             //获取树组件的根节点,并通过方法getDefineData()递归添加dt中其它的子节点,并设置各节点的选中情况
                        getDefineData(dt, menuDefineData);  //为根节点添加其它子节点的数据
                        option.data = menuDefineData;       //为树组件的渲染参数添加节点数据
                        tree.render(option);                //渲染树组件
                    },
                    error: function (err) {
                    }
                });
            }
            //根据后端传递的菜单清单列表和根目录列表,递归
            function getDefineData(dt, tree) {
                for (var i = 0; i < tree.length; i++) {                     //遍历节点列表,为列表中的各节点添加子节点
                    var children = [];                                      //根节点的子节点属性children由后端传递,为null,所以此处为节点的children赋值为[]
                    for (var j = 0; j < dt.length; j++) {                   //遍历菜单清单列表,寻找当前节点的子节点
                        if (tree[i].id == dt[j].HPartentID && dt[j].HitemID != dt[j].HPartentID) {      //判断dt中当下数据是否为当前节点的子节点的数据
                            var item = { "id": dt[j].HitemID, "field": dt[j].HitemID, "title": dt[j].HName, "spread": false };
                            if (dt[j].HSelected == true) {
                                item.checked = true;
                            }
                            children.push(item);                            //收集当前节点的子节点
                        }
                    }
                    tree[i].children = children;                            //将收集的子节点列表赋给当前节点的children,即添加当前节点的子节点列表
                    for (var j = 0; j < tree[i].children.length; j++) {
                        getDefineData(dt, tree[i].children);
                    }
                }
            }
            //#endregion
            //#endregion
        });
    </script>
</body>
</html>
WebTM/views/ϵͳ¹ÜÀí/²Ëµ¥×Ô¶¨Òå/Xt_DefineMenuDisplay.html
@@ -82,7 +82,7 @@
                var sMainSub = JSON.stringify(saveData) + ";" + sessionStorage["HUserName"];
                var index = layer.load();
                $.ajax({
                    url: "http://localhost:8082/API//Web/SaveMenuDefineSet",
                    url: GetWEBURL() + "/Web/SaveMenuDefineSet",
                    type: "POST",
                    data: { "sMainSub": sMainSub },         //将当前用户和其自定义数据传递给后端,保存到数据库
                    success: function (data) {
@@ -118,7 +118,7 @@
            //优化自定义菜单显示的实验
            function get_Display() {
                $.ajax({
                    url: "http://localhost:8082/API//Web/MenuDefineSet",
                    url: GetWEBURL() + "/Web/MenuDefineSet",
                    type: "GET",
                    async: false,
                    data: { "HMakeName": sessionStorage["HUserName"]},
@@ -150,6 +150,9 @@
                        }
                    }
                    tree[i].children = children;                            //将收集的子节点列表赋给当前节点的children,即添加当前节点的子节点列表
                    if (tree[i].children.length > 0) {
                        tree[i].checked = false;
                    }
                    for (var j = 0; j < tree[i].children.length; j++) {
                        getDefineData(dt, tree[i].children);                
                    }