王 垚
2021-06-04 e679b580a434dc00545289506ee34c0cf671a4a3
WebTM/views/»ù´¡×ÊÁÏ/¹¤×Ê»ù´¡×ÊÁÏ/Gy_Group.html
@@ -1,15 +1,19 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>班组设置</title>
    <meta name="renderer" content="webkit">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <link rel="stylesheet" href="../../../layuiadmin/layui/css/layui.css" media="all">
    <link rel="stylesheet" href="../../../layuiadmin/style/admin.css" media="all">
    <script src="../../../layuiadmin/layui/layui.js"></script>
    <style media="screen">
        .custom-tree-item-clicked {
            color: #FC9003
        }
    </style>
</head>
<body>
    <div class="layui-fluid">
@@ -19,40 +23,82 @@
                    <form class="layui-form" action="" lay-filter="component-form-group">
                        <div class="layui-collapse">
                            <div class="layui-colla-item">
                                <div class="layui-colla-title layui-inline">
                                    <div class="layui-inline">
                                        <span></span>
                                    </div>
                                </div>
                                <div class="layui-inline">
                                    <label class="layui-form-label">班组代码</label>
                                    <div class="layui-input-block">
                                        <input type="text" class="layui-input" name="HNumber" id="HNumber">
                                    </div>
                                </div>
                                <div class="layui-inline">
                                    <label class="layui-form-label">班组名称</label>
                                    <div class="layui-input-block">
                                        <input type="text" class="layui-input" name="HName" id="HName">
                                    </div>
                                </div>
                                <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnSearch" id="btnSearch">
                                    <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
                                </button>
                                <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnReSearch" id="btnReSearch" style="padding:0 5px">重置</button>
                                <div style="padding: 10px;">
                                    <!--<div class="layui-col-xs2">
                                        <div id="treeDepartment" lay-filter="treeDepartment" class="demo-tree demo-tree-box" style="width: 200px; height: 500px; overflow: scroll;"></div>
                                    </div>-->
                                    <button type="button" lay-submit="" class="layui-btn layui-btn-sm" lay-filter="btnAdd"><i class="layui-icon layui-icon-add-1"></i>新增</button>
                                    <button type="button" lay-submit="" class="layui-btn layui-btn-sm" lay-filter="btnModify"><i class="layui-icon layui-icon-edit"></i>修改</button>
                                    <button type="button" lay-submit="" class="layui-btn layui-btn-sm" lay-filter="btndelete"><i class="layui-icon layui-icon-delete"></i>删除</button>
                                </div>
                                <div class="layui-form-item" style="border-top: solid 1px #F6F6F6;">
                                    <div class="layui-row" style="padding:10px 0">
                                        <div class="layui-col-xs3 layui-inline" style="width: 23%;">
                                            <div id="treeDepartment" lay-filter="treeDepartment" class="demo-tree demo-tree-box" style="height: 520px; overflow: scroll;"></div>
                                        </div>
                                        <div class="layui-col-xs9 layui-inline">
                                            <div class="layui-row">
                                                <div class="layui-inline">
                                                    <label class="layui-form-label">代码</label>
                                                    <div class="layui-input-block">
                                                        <input type="text" class="layui-input" name="HNumber" id="HNumber">
                                                    </div>
                                                </div>
                                                <div class="layui-inline">
                                                    <label class="layui-form-label">名称</label>
                                                    <div class="layui-input-block">
                                                        <input type="text" class="layui-input" name="HName" id="HName">
                                                    </div>
                                                </div>
                                                <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnSearch" id="btnSearch">
                                                    <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
                                                </button>
                                            </div>
                                            <div>
                                                <table class="" id="mainTable" lay-filter="mainTable"></table>
                                            </div>
                                        </div>
                                    </div>
                                </div>
                                <div class="layui-row layui-form-item">
                                    <!--<div class="layui-inline">
                                        <div id="treeDepartment" lay-filter="treeDepartment" class="demo-tree demo-tree-box" style="width: 200px; height: 500px; overflow: scroll;"></div>
                                    </div>-->
                                    <!--<div class="" style="padding-top: 10px;">
                                        <div class="layui-row">
                                            <div class="layui-inline">
                                                <label class="layui-form-label">部门代码</label>
                                                <div class="layui-input-block">
                                                    <input type="text" class="layui-input" name="HNumber" id="HNumber">
                                                </div>
                                            </div>
                                            <div class="layui-inline">
                                                <label class="layui-form-label">部门名称</label>
                                                <div class="layui-input-block">
                                                    <input type="text" class="layui-input" name="HName" id="HName">
                                                </div>
                                            </div>
                                            <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnSearch" id="btnSearch">
                                                <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
                                            </button>
                                        </div>
                                    </div>-->
                                </div>
                            </div>
                        </div>
                        <table class="" id="mainTable" lay-filter="mainTable"></table>
                        <!--<table class="" id="mainTable" lay-filter="mainTable"></table>-->
                        <script type="text/html" id="toolbarDemo">
                            <div class="layui-btn-container">
                                <!--<button type="button" class="layui-btn layui-btn-sm" lay-event="btn-getCheckData"><i class="layui-icon layui-icon-tips"></i>预览</button>-->
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-reload"><i class="layui-icon layui-icon-refresh"></i>刷新</button>
                                <!--<button type="button" class="layui-btn layui-btn-sm" lay-event="btn-reload"><i class="layui-icon layui-icon-refresh"></i>刷新</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-confirm" id="btn_confirm"><i class="layui-icon layui-icon-ok-circle"></i>确认</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-back" id="btn_back"><i class="layui-icon layui-icon-close-fill"></i>驳回</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-details"><i class="layui-icon layui-icon-form"></i>详情</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-generate"><i class="layui-icon layui-icon-file"></i>生成送货单</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-exit"><i class="layui-icon layui-icon-return"></i>退出</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-exit"><i class="layui-icon layui-icon-return"></i>退出</button>-->
                            </div>
                        </script>
@@ -61,51 +107,155 @@
            </div>
        </div>
    </div>
    <script src="../../../layuiadmin/layui/layui.js"></script>
    <script src="../../../layuiadmin/Scripts/json2.js"></script>
    <script src="../../../layuiadmin/Scripts/jquery-1.4.1.js"></script>
    <!--<script src="../../../layuiadmin/layui/layui.js"></script>-->
    <script src="../../../layuiadmin/Scripts/webConfig.js"></script>
    <script src="../../../layuiadmin/layui/zgqlayui.js"></script>
    <!--<script src="../../../layuiadmin/zgqCustom/zgqCustom.js"></script>-->
    <script>
        var treeCkData = { id: 0 };
        var TagId = "";
        var TagParentId = "";
        layui.config({
            base: '../../../layuiadmin/' //静态资源所在路径
        }).extend({
            index: 'lib/index', //主入口模块
        }).use(['index', 'form', 'table', 'element', 'laypage','laydate'], function () {
        }).use(['tree', 'index', 'form', 'table', 'element', 'laypage', 'laydate', 'util'], function () {
            var $ = layui.$
            , admin = layui.admin
            , layer = layui.layer
            , table = layui.table
            , form = layui.form
            , element = layui.element
            , laypage = layui.laypage
            , laydate = layui.laydate
                , admin = layui.admin
                , layer = layui.layer
                , table = layui.table
                , form = layui.form
                , element = layui.element
                , laypage = layui.laypage
                , laydate = layui.laydate
                , util = layui.util
                , tree = layui.tree
                , util = layui.util
            var sWhere = "";
            tree.render({
                elem: '#treeDepartment',
                data: getData(sWhere),
                showCheckbox: false,     //是否显示复选框
                id: 'demoId',
                isJump: false, //是否允许点击节点时弹出新窗口跳转
                showLine: true,//是否开启连接线
                onlyIconControl: true,   //点击后不收缩
                click: function (obj) {
                    //点击高光
                    if (obj.data.id !== treeCkData.id) {
                        $('div[data-id="' + obj.data.id + '"] span').eq(1).last().addClass("custom-tree-item-clicked");
                        $('div[data-id="' + treeCkData.id + '"] span').eq(1).last().removeClass('custom-tree-item-clicked');
                        treeCkData = obj.data;
                        TagId = obj.data.id;
                        TagParentId = obj.data.ParentID;
                    }
                    else {
                        $('div[data-id="' + treeCkData.id + '"] span').eq(1).last().removeClass('custom-tree-item-clicked');
                        treeCkData = { id: 0 };
                        TagId = "";
                        TagParentId = "";
                    }
                    //获取所有选中节点id数组
                    //var oCks = tree.getChecked('demoId'); //获取选中节点的数据
                    //for (var i = 0; i < oCks.length; i++) {
                    //    //console.log(oCks[0].id, obj.data.id);
                    //    if (oCks[i].id != obj.data.id) {
                    //        console.log(oCks[i]);
                    //        //执行节点勾选
                    //        $(oCks[i]).prop("checked", false);
                    //        $(this).prop("checked", false);
                    //    }
                    //}
                    //form.render('checkbox');
                    $.ajax({
                        url: GetWEBURL() + '/Gy_Group/cx',
                        type: "GET",
                        data: { "HInterID": obj.data.id },
                        success: function (data1) {
                            if (data1.count == 1) {
                                option.data = data1.data;
                                table.render(option);
                                layer.close(index);
                            } else {
                                layer.close(index);
                                layer.alert(data1.code + data1.Message, { icon: 5 });
                            }
                        }, error: function () {
                            layer.close(index);
                            layer.alert("接口请求失败!", { icon: 5 });
                        }
                    });
                }
            });
            //$.ajax({
            //    type: "get",
            //    url: GetWEBURL() + '/Gy_Department/LoadTree',
            //    async: true,
            //    success: function (result) {
            //        //  console.log(result.data);
            //        var tree = Customerdatatree('treeDepartment', result.data, true);
            //        tree.onspread = function () {
            //            var obj = this;
            //            //模拟post后台数据,延迟2秒
            //            setTimeout(() => {
            //                var data = getTreeJson(obj.data.HParentID); //异步获取数据
            //                obj.lazytree(data);
            //            }, 2000);
            //        }
            //        tree.onclick = function () {
            //            var obj = this;
            //            console.log(obj.data); //得到当前点击的节点数据
            //            console.log(obj.state); //得到当前节点的展开状态:open、close、normal
            //            console.log(obj.elem); //得到当前节点元素
            //            console.log(obj.data.children); //当前节点下是否有子节点
            //        }
            //        tree.oncheck = function () {
            //            var obj = this;
            //            console.log(obj.data); //得到当前点击的节点数据
            //            console.log(obj.checked); //得到当前节点的展开状态:open、close、normal
            //            console.log(obj.elem); //得到当前节点元素
            //        }
            //    }
            //});
            var option = {
                elem: '#mainTable'
                //, toolbar: '#toolbarDemo'
                ,height: 'full-50'
                , height: 'full-50'
                , page: true
                ,cellMinWidth: 90
                , cellMinWidth: 90
                , cols: [[
                    { field: 'HItemID', title: 'HItemID', sort: true, hide: true }
                    { type: 'radio', fixed: 'left' }
                    , { field: 'HItemID', title: 'HItemID', sort: true, hide: true }
                    , { field: 'ParentID', title: 'ParentID', sort: true, hide: true }
                    , { field: '班组代码', title: '班组代码' }
                    , { field: '班组名称', title: '班组名称' }
                    , { field: '禁用标记', title: '禁用标记' }
                    , { field: '备注', title: '备注' }
                    , { field: 'HDeptID', title: 'HDeptID', hide: true }
                    , { field: '部门代码', title: '部门代码' }
                    , { field: '部门名称', title: '部门名称' }
                    , { field: 'HProcID', title: 'HProcID', hide: true }
                    , { field: '工序代码', title: '工序代码' }
                    , { field: '工序名称', title: '工序名称' }
                ]]
            };
            var index = layer.load(0, { shade: false });
            //进入页面显示的缓存列表
            $.ajax({
                //url: "http://61.130.49.162:9090/WMSAPI///Web/GetMAXNum",
                url: GetWEBURL() + '/Gy_Group/list',
                type: "GET",
                data: { "sWhere": sWhere },
@@ -122,14 +272,112 @@
                    layer.close(index);
                    layer.alert("接口请求失败!", { icon: 5 });
                }
            });
            //重置按钮
            form.on('submit(btnReSearch)', function (data) {
                $("#HNumber").val("");
                $("#HName").val("");
                $("#btnSearch").click();
            });
            //新增
            form.on('submit(btnAdd)', function (obj) {
                //页面层-自定义
                layer.open({
                    type: 2,
                    skin: 'layui-layer-rim', //加上边框
                    title: '新增班组',
                    closeBtn: 1,
                    shift: 2,
                    area: ['50%', '50%'],
                    maxmin: true,
                    content: ['../工资基础资料/Add_Edit_Gy_Group.html?hID=' + TagId + ''],
                    end: function () {
                        //刷新页面,
                        location.reload();
                    },
                    success: function (layero, index) {
                    }
                });
                return false;//这里加个return false;就不会两次提交
            })
            //删除
            form.on('submit(btndelete)', function (obj) {
                var ModRightNameDelete = 'Gy_Group_Delete'
                if (TagId != "") {
                    layer.confirm('您确定要删除吗?', {
                        btn: ['确定', '取消'] //按钮
                        , yes: function (index, layero) {
                            $.ajax({
                                url: GetWEBURL() + '/Gy_Group/Delete_Json',
                                type: "GET",
                                //async: true,
                                data: { "HItemID": TagId, "User": sessionStorage["HUserName"], "ModRightNameDelete": ModRightNameDelete },
                                success: function (result) {
                                    if (result.count == 1) {
                                        layer.msg(result.Message, { time: 1 * 1000, icon: 1 }, function () {
                                            // å¾—到frame索引
                                            var index = layer.getFrameIndex(window.name);
                                            //关闭当前frame
                                            layer.close(index);
                                            //修改为功后刷新界面
                                            window.location.reload();
                                            //重载tree
                                            tree.reload('treeDepartment', {});
                                        });
                                    } else {
                                        layer.alert(result.code + result.Message, { icon: 5 });
                                    }
                                }
                            })
                        }
                    });
                }
                else {
                    //var data = obj.data //获得当前行数据
                    //    , layEvent = obj.event; //获得 lay-event å¯¹åº”的值
                    var checkStatus = table.checkStatus('mainTable')
                        , data = checkStatus.data;
                    var layEvent = checkStatus.event;
                    if (checkStatus.data.length === 1) {
                        layer.confirm('您确定要删除吗?', {
                            btn: ['确定', '取消'] //按钮
                            , yes: function (index, layero) {
                                $.ajax({
                                    url: GetWEBURL() + '/Gy_Group/Delete_Json',
                                    type: "GET",
                                    //async: true,
                                    data: { "HItemID": data[0].HItemID, "User": sessionStorage["HUserName"], "ModRightNameDelete": ModRightNameDelete },
                                    success: function (result) {
                                        if (result.count == 1) {
                                            layer.msg(result.Message, { time: 1 * 1000, icon: 1 }, function () {
                                                // å¾—到frame索引
                                                var index = layer.getFrameIndex(window.name);
                                                //关闭当前frame
                                                layer.close(index);
                                                //修改为功后刷新界面
                                                window.location.reload();
                                                //重载tree
                                                tree.reload('treeDepartment', {});
                                            });
                                        } else {
                                            layer.alert(result.code + result.Message, { icon: 5 });
                                        }
                                    }
                                })
                            }
                        });
                    }
                    else {
                        layer.msg('请选择一行数据编辑!');
                    }
                }
            });
            //查询按钮
            form.on('submit(btnSearch)', function (data) {
@@ -139,7 +387,7 @@
                    sWhere += " and ç­ç»„代码 like '%" + HNumber + "%'";
                }
                if (HName) {
                    sWhere += " and ç­ç»„名称 like '%" + HName + "%'";
                    sWhere += " and ç­ç»„ like '%" + HName + "%'";
                }
                $.ajax({
                    //url: "http://61.130.49.162:9090/WMSAPI///Web/GetMAXNum",
@@ -162,6 +410,61 @@
            });
            //修改按钮
            form.on('submit(btnModify)', function (data) {
                if (TagId != "") {
                    layer.open({
                        type: 2
                        , area: ['50%', '50%']
                        , title: '编辑班组'
                        , closeBtn: 1
                        , shade: 0.6 //遮罩透明度
                        , maxmin: true //允许全屏最小化
                        , anim: 0 //0-6的动画形式,-1不开启
                        , content: ['../工资基础资料/Add_Edit_Gy_Group.html?hID=' + TagId + '&HType=Modify&TagParentId=' + TagParentId + '', 'yes']
                        , resize: false,
                        end: function () {
                            //刷新页面,
                            location.reload();
                        }
                        , cancel: function () {
                            //$(".layui-btn").removeClass("layui-btn-disabled");
                        }
                    })
                }
                else {
                    var checkStatus = table.checkStatus('mainTable')
                        , data = checkStatus.data;
                    if (checkStatus.data.length === 1) {
                        var hID = data[0].HItemID.toString();
                        TagParentId = data[0].ParentID.toString();
                        //if (AllowLoadData(sSubStr) != false) {//非空验证
                        layer.open({
                            type: 2
                            , area: ['50%', '50%']
                            , title: '编辑班组'
                            , closeBtn: 1
                            , shade: 0.6 //遮罩透明度
                            , maxmin: true //允许全屏最小化
                            , anim: 0 //0-6的动画形式,-1不开启
                            , content: ['../工资基础资料/Add_Edit_Gy_Group.html?hID=' + hID + '&HType=Modify&TagParentId=' + TagParentId + '', 'yes']
                            , resize: false,
                            end: function () {
                                //刷新页面,
                                location.reload();
                            }
                            , cancel: function () {
                                //$(".layui-btn").removeClass("layui-btn-disabled");
                            }
                        })
                    } else {
                        layer.msg('请选择一行数据编辑!');
                    }
                }
            });
            //laydate.render({
            //    elem: '#HDate'
            //    , type: 'datetime'
@@ -173,9 +476,44 @@
            //以上是layui模块
        });
        //查询树状数据
        function getData(sWhere) {
            var treeData;
            $.ajax({
                url: GetWEBURL() + '/Gy_Group/LoadTree',
                type: "GET",
                data: { "sWhere": sWhere },
                async: false,
                success: function (result) {
                    var data = result.data;
                    //生成数据对象集合
                    treeData = LoadTree(data);
                }
            });
            return treeData;
        }
        /**处理树形展示数据,要求有ID和ParentID、title字段**/
        function LoadTree(data) {
            let map = {};
            let treeData = [];
            data.forEach(it => {
                map[it.id] = it;    //ID为每个节点的id
            })
            //生成结果集
            data.forEach(it => {
                const parent = map[it.ParentID];   //ParentID为父节点的id
                if (parent) {
                    if (!Array.isArray(parent.children)) parent.children = [];
                    parent.children.push(it);
                } else {
                    treeData.push(it)
                }
            })
            return treeData;
        }
    </script>
</body>