王 垚
2021-12-22 3010095aa7d1e9fca80fd3c0c598ef421848c253
核算方式
2个文件已添加
2个文件已修改
888 ■■■■■ 已修改文件
WebTM/WebTM.csproj 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/index.html 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/工资管理/核算方式/Gy_ClassTimePrjBillEdit.html 385 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/工资管理/核算方式/Gy_ClassTimePrjBillList.html 495 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/WebTM.csproj
@@ -658,6 +658,8 @@
    <Content Include="views\工资管理\工资结算单%28其他%29\Pay_OtherBalBillList.html" />
    <Content Include="views\工资管理\工资结算单%28集体%29\Pay_GroupBalBillEdit.html" />
    <Content Include="views\工资管理\工资结算单%28集体%29\Pay_GroupBalBillList.html" />
    <Content Include="views\工资管理\核算方式\Gy_ClassTimePrjBillEdit.html" />
    <Content Include="views\工资管理\核算方式\Gy_ClassTimePrjBillList.html" />
    <Content Include="views\工资管理\班组职员清单\Gy_GroupEmpBillEdit.html" />
    <Content Include="views\工资管理\班组职员清单\Gy_GroupEmpBillList.html" />
    <Content Include="views\工资管理\考勤汇报单\Pay_WorkTimesBillEdit.html" />
WebTM/views/index.html
@@ -628,6 +628,12 @@
                                    </dl>
                                </dd>
                                <dd>
                                    <a>核算方式</a>
                                    <dl class="layui-nav-child">
                                        <dd><a lay-href="工资管理/核算方式/Gy_ClassTimePrjBillList.html">核算方式</a></dd>
                                    </dl>
                                </dd>
                                <dd>
                                    <a>考勤汇报单</a>
                                    <dl class="layui-nav-child">
                                        <dd><a lay-href="工资管理/考勤汇报单/Pay_WorkTimesBillEdit.html">考勤汇报单</a></dd>
WebTM/views/¹¤×ʹÜÀí/ºËË㷽ʽ/Gy_ClassTimePrjBillEdit.html
New file
@@ -0,0 +1,385 @@
<!DOCTYPE html>
<html>
<head>
    <meta 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.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 type="text/css">
        .layui-form-label {
            width: 85px;
        }
    </style>
</head>
<body>
    <div id="layout1" class="layui-fluid">
        <div class="layui-row layui-col-space15">
            <div class="layui-col-md12">
                <div class="layui-card">
                    <form id="form0" class="layui-form" lay-filter="component-form-group" action="">
                        <div class="layui-card-header">
                            <div class="layui-btn-group">
                                <button type="button" id="add-btn" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="Saver">保存</button>
                                <button type="button" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="Exit">退出</button>
                            </div>
                        </div>
                        <div class="layui-card-body">
                            <div class="layui-tab layui-tab-brief" lay-filter="docDemoTabBrief">
                                <div class="layui-tab-content">
                                    <div class="layui-tab-item layui-show">
                                        <div class="layui-form-item">
                                            <div class="layui-inline">
                                                <label class="layui-form-label">核算方式代码</label>
                                                <div class="layui-input-inline">
                                                    <input class="layui-input" name="HNumber" lay-verify="HNumber" id="HNumber">
                                                    <input id="HItemID" name="HItemID" type="hidden" />
                                                    <input id="HLevel" name="HLevel" type="hidden" value="0"/>
                                                </div>
                                            </div>
                                            <div class="layui-inline">
                                                <label class="layui-form-label">核算方式名称</label>
                                                <div class="layui-input-inline">
                                                    <input class="layui-input" name="HName" lay-verify="HName" id="HName">
                                                </div>
                                            </div>
                                            <div class="layui-inline">
                                                <label class="layui-form-label">班组</label>
                                                <div class="layui-input-inline">
                                                    <input type="text" name="HGroupName" id="HGroupName" readonly class="layui-input" value="0" style="float:left;width:150px;">
                                                    <input type="hidden" name="HGroupID" id="HGroupID" class="layui-input" value="0" style="float:left;width:150px;">
                                                    <button type="button" lay-submit="" class="layui-btn layui-btn-primary" lay-filter="HGroup-BT" style="width:40px;">
                                                        <i class="layui-icon layui-icon-search layuiadmin-button-btn" style="margin-left:-9px;"></i>
                                                    </button>
                                                </div>
                                            </div>
                                            <div class="layui-inline">
                                                <label class="layui-form-label">所属核算组</label>
                                                <div class="layui-input-inline">
                                                    <input type="text" name="HParentName" id="HParentName" readonly class="layui-input" value="0" style="float:left;width:150px;">
                                                    <input type="hidden" name="HParentID" id="HParentID" class="layui-input" value="0" style="float:left;width:150px;">
                                                    <button type="button" lay-submit="" class="layui-btn layui-btn-primary" lay-filter="hparent-BT" style="width:40px;">
                                                        <i class="layui-icon layui-icon-search layuiadmin-button-btn" style="margin-left:-9px;"></i>
                                                    </button>
                                                </div>
                                            </div>
                                            <div class="layui-inline">
                                                <label class="layui-form-label">部门</label>
                                                <div class="layui-input-inline">
                                                    <input type="text" name="HDeptName" id="HDeptName" readonly class="layui-input" value="0" style="float:left;width:150px;">
                                                    <input type="hidden" name="HDeptID" id="HDeptID" class="layui-input" value="0" style="float:left;width:150px;">
                                                    <button type="button" lay-submit="" class="layui-btn layui-btn-primary" lay-filter="HDepart-BT" style="width:40px;">
                                                        <i class="layui-icon layui-icon-search layuiadmin-button-btn" style="margin-left:-9px;"></i>
                                                    </button>
                                                </div>
                                            </div>
                                            <div class="layui-inline">
                                                <label class="layui-form-label">备注</label>
                                                <div class="layui-input-inline">
                                                    <textarea placeholder="请输入维备注" class="layui-textarea" name="HRemark" id="HRemark"></textarea>
                                                </div>
                                            </div>
                                        </div>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </form>
                </div>
            </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/Scripts/webConfig.js"></script>
    <script>
//获取参数
        function getUrlVars() {
            var vars = [], hash;
            var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
            for (var i = 0; i < hashes.length; i++) {
                hash = hashes[i].split('=');
                vars.push(hash[0]);
                vars[hash[0]] = hash[1];
            }
            return vars;
        }
        var params = getUrlVars();
        var hID = params[params[0]];//编辑查看
        var HType = params[params[1]];    //单据状态、层级
        var TagParentId = params[params[2]];  //父级ID
        layui.config({
            base: '../../../layuiadmin/' //静态资源所在路径
        }).extend({
            index: 'lib/index' //主入口模块
        }).use(['index', 'form', 'laydate', 'table', 'element'], function () {
            var $ = layui.$
                , admin = layui.admin
                , layer = layui.layer
                , table = layui.table
                , form = layui.form
                , laydate = layui.laydate
                , element = layui.element;
            //常规用法
            //判断是否登录 æœªç™»å½•则跳到登录页
            //if (sessionStorage.login != "login") {
            //    layer.confirm("登录失效,请重新登录!", {
            //        icon: 4, skin: 'layui-layer-lan', title: "温馨提示", closeBtn: 0, btn: ['重新登录']
            //    }, function () { window.location.href = "../../user/login.html"; });
            //}
            //选择部门按钮
            form.on('submit(HDepart-BT)', function () {
                get_checkDept();
            });
            //选择班组按钮
            form.on('submit(HGroup-BT)', function () {
                get_checkGroup();
            });
            //选择所属组按钮
            form.on('submit(hparent-BT)', function () {
                get_checkparent();
            });
            form.on('submit(Cancel)', function () {
                //sessionStorage["SourceFlag"] = false;
                parent.location.href = "../../../views/index.html"
                //window.close();//关闭当前页
            })
            form.on('submit(Saver)', function (data) {//保存
                //debugger;
                var ModRightNameAdd = 'Gy_ClassTimePrj_Edit';
                var user = sessionStorage["HUserName"];
                var arr = new Array();
                //var isEndCheck = document.getElementById("HStopflag").checked;
                //data.field.HStopflag = isEndCheck;//将数组合并成字符串
                data.field.HItemID = hID == "" ? 0 : hID;
                //data.field.HLevel = HType == "" ? 1 : HType;
                var oMain = JSON.stringify(data.field)
                var sMainSub = oMain + ';' + hID + ';' + user + ';' + ModRightNameAdd;
                if (HType == "Modify") {
                    $.ajax(
                        {
                            type: "POST",
                            url: GetWEBURL() + "/Gy_ClassTimePrj/EditBill", //方法所在页面和方法名
                            async: true,
                            data: { "oMain": sMainSub },
                            dataType: "json",
                            success: function (data) {
                                if (data.count == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                                    layer.msg(data.Message, { time: 1 * 1000, icon: 1 }, function () {
                                        $('#add-btn').addClass("layui-btn-disabled").attr("disabled", true);
                                        var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
                                        parent.layer.close(index); //再执行关闭 Â  Â  Â  Â  Â Â  Â Â Â  Â 
                                    });
                                }
                                else {
                                    f_alert(data.Message);
                                    console.log("Reason" + sMainStr + "sub:" + JSON.stringify(layui.table.cache.mainTable));
                                }
                                layer.closeAll("loading");
                            },
                            error: function (err) {
                                f_alert("错误:" + err);
                                console.log("Reason" + sMainStr);
                            }
                        });
                }
                else {
                    $.ajax(
                        {
                            type: "POST",
                            url: GetWEBURL() + "/Gy_ClassTimePrj/AddBill", //方法所在页面和方法名
                            async: true,
                            data: { "oMain": oMain },
                            dataType: "json",
                            success: function (data) {
                                if (data.count == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                                    layer.msg(data.Message, { time: 1 * 1000, icon: 1 }, function () {
                                        $('#add-btn').addClass("layui-btn-disabled").attr("disabled", true);
                                        var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
                                        parent.layer.close(index); //再执行关闭 Â  Â  Â  Â  Â Â  Â Â Â  Â 
                                    });
                                }
                                else {
                                    f_alert(data.Message);
                                    console.log("Reason" + sMainStr + "sub:" + JSON.stringify(layui.table.cache.mainTable));
                                }
                                layer.closeAll("loading");
                            },
                            error: function (err) {
                                f_alert("错误:" + err);
                                console.log("Reason" + sMainStr);
                            }
                        });
                }
            });
            function f_alert(sMsg) {
                layer.alert(sMsg, { icon: 5 });
            }
            if (HType == "Modify") {
                $.ajax({
                    url: GetWEBURL() + "/Gy_ClassTimePrj/xg",
                    //url: "http://localhost:12761/Gy_Department/xg",
                    type: "GET",
                    data: {
                        "HInterID": hID
                    },
                    success: function (d) {
                        console.log(d);
                        ajaxReturnData = JSON.parse(JSON.stringify(d)).data;
                        $("#HNumber").val(d.data[0].核算方式代码);
                        $("#HName").val(d.data[0].核算方式名称);
                        $("#HGroupID").val(d.data[0].HGroupID);
                        $("#HGroupName").val(d.data[0].班组名称);
                        $("#HParentId").val(d.data[0].hparentid);
                        $("#HParentName").val(d.data[0].组名称);
                        $("#HDeptID").val(d.data[0].HDeptID);
                        $("#HDeptName").val(d.data[0].部门);
                        $("#HRemark").val(d.data[0].备注);
                        layui.form.render();//实时渲染选中和不选中的样式,最好添加这句话
                    }
                });
            }
            //监听提交
            form.verify({
                numberOrEmpty: function (value, item) {
                    // if (value != '') {
                    if (!/^\d+$/.test(value)) {
                        return '不能为空或数字或者0';
                    }
                    //}
                }
            });
            //核算方式类别弹窗
            form.on('submit(HQCCheckClassList)', function () {
                //页面层-自定义
                layer.open({
                    type: 2,
                    skin: 'layui-layer-rim', //加上边框
                    title: '核算方式类别列表',
                    closeBtn: 1,
                    shift: 2,
                    area: ['100%', '100%'],
                    maxmin: true,
                    content: ['../../PublicPage/CheckItemType.html', 'yes'],
                    btn: ['确定', '取消']
                    , btn1: function (index, layero) {
                        //按钮【按钮一】的回调
                        var iframeWindow = window['layui-layer-iframe' + index]  //获取弹框页面
                        var checkStatus = iframeWindow.layui.table.checkStatus('mainTable');//获取table的elem:"#test"
                        if (checkStatus.data.length === 0) {
                            return layer.msg('请选择数据');
                        }
                        $("#HQCCheckClassName").val(checkStatus.data[0].HName);
                        $("#HQCCheckClassID").val(checkStatus.data[0].HItemID);
                        layer.close(layer.index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                    }
                    , btn2: function (index, layero) {
                        //按钮【按钮二】的回调
                        //return false å¼€å¯è¯¥ä»£ç å¯ç¦æ­¢ç‚¹å‡»è¯¥æŒ‰é’®å…³é—­
                    },
                    end: function () {
                    },
                    success: function (layero, index) {
                    }
                });
            });
            //#region é€‰æ‹©éƒ¨é—¨æ–¹æ³•
            function get_checkDept() {
                layer.open({
                    type: 2//弹窗类型
                    , skin: 'layui-layer-rim' //加上边框
                    , area: ['90%', '90%']//大小
                    , title: '部门列表'//标题
                    , shift: 2//弹出动画
                    , content: ['../../PublicPage/DeptInformation.html', 'yes']
                    , btn: ['确定', '取消']
                    , btn1: function (index, layero) {//按钮【按钮一】的回调
                        var iframeWindow = window['layui-layer-iframe' + index]  //获取弹框页面
                        var checkStatus = iframeWindow.layui.table.checkStatus('mainTable');//获取table的elem:"#test"
                        if (checkStatus.data.length === 0) {
                            return layer.msg('请选择数据');
                        }
                        $("#HDeptName").val(checkStatus.data[0].HName);
                        $("#HDeptID").val(checkStatus.data[0].HItemID);
                        layer.close(index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                    }
                    , btn2: function (index, layero) { }
                })
            }
            //#endregion
            //#region é€‰æ‹©ç­ç»„方法
            function get_checkGroup() {
                layer.open({
                    type: 2//弹窗类型
                    , skin: 'layui-layer-rim' //加上边框
                    , area: ['90%', '90%']//大小
                    , title: '班组列表'//标题
                    , shift: 2//弹出动画
                    , content: ['../../PublicPage/GroupInformation.html', 'yes']
                    , btn: ['确定', '取消']
                    , btn1: function (index, layero) {//按钮【按钮一】的回调
                        var iframeWindow = window['layui-layer-iframe' + index]  //获取弹框页面
                        var checkStatus = iframeWindow.layui.table.checkStatus('mainTable');//获取table的elem:"#test"
                        if (checkStatus.data.length === 0) {
                            return layer.msg('请选择数据');
                        }
                        $("#HGroupName").val(checkStatus.data[0].HName);
                        $("#HGroupID").val(checkStatus.data[0].HItemID);
                        layer.close(index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                    }
                    , btn2: function (index, layero) { }
                })
            }
            //#endregion
            //#region é€‰æ‹©æ‰€å±žç»„方法
            function get_checkparent() {
                layer.open({
                    type: 2//弹窗类型
                    , skin: 'layui-layer-rim' //加上边框
                    , area: ['90%', '90%']//大小
                    , title: '所属组列表'//标题
                    , shift: 2//弹出动画
                    , content: ['../../Baseset/基础资料/Gy_ClassTimePrjGroupList.html', 'yes']
                    , btn: ['确定', '取消']
                    , btn1: function (index, layero) {//按钮【按钮一】的回调
                        var iframeWindow = window['layui-layer-iframe' + index]  //获取弹框页面
                        var checkStatus = iframeWindow.layui.table.checkStatus('mainTable');//获取table的elem:"#test"
                        if (checkStatus.data.length === 0) {
                            return layer.msg('请选择数据');
                        }
                        $("#HParentName").val(checkStatus.data[0].HName);
                        $("#HParentID").val(checkStatus.data[0].HItemID);
                        //$("#HDeptNumber").val(checkStatus.data[0].HNumber);
                        layer.close(index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                    }
                    , btn2: function (index, layero) { }
                })
            }
            //#endregion
        });
    </script>
</body>
</html>
WebTM/views/¹¤×ʹÜÀí/ºËË㷽ʽ/Gy_ClassTimePrjBillList.html
New file
@@ -0,0 +1,495 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <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>
    <script src="../../../layuiadmin/treeTable.js"></script>
    <script src="../../../layuiadmin/Scripts/json2.js"></script>
    <script src="../../../layuiadmin/Scripts/jquery-1.4.1.js"></script>
    <script src="../../../layuiadmin/Scripts/webConfig.js"></script>
    <script src="../../../layuiadmin/layui/lay/modules/util.js"></script>
    <style media="screen">
        .custom-tree-item-clicked {
            color: #FC9003
        }
        .layui-form-label {
            width: 40px;
            padding: 9px 5px;
        }
        .layui-input-block {
            margin-left: 50px;
        }
    </style>
</head>
<body>
    <div class="layui-fluid">
        <div class="layui-col-md12">
            <div class="layui-card" style="padding: 1px">
                <div class="layui-card-body" style="padding: 1px;">
                    <form class="layui-form" action="" lay-filter="component-form-group">
                        <div class="layui-collapse">
                            <div class="layui-colla-item">
                                <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%;display:none;">
                                            <div id="treeCheckItem" lay-filter="treeCheckItem" class="demo-tree demo-tree-box" style="height: 520px; overflow: scroll;"></div>
                                        </div>
                                        <div class="layui-col-xs12 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>-->
                        <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-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>-->
                            </div>
                        </script>
                    </form>
                </div>
            </div>
        </div>
    </div>
    <script src="../../../layuiadmin/layui/zgqlayui.js"></script>
    <script src="../../../layuiadmin/zgqCustom/zgqCustom.js"></script>
    <script>
        var treeCkData = { id: 0 };
        var TagId = "";
        var TagParentId = "";
        var Level = "1";
        layui.config({
            base: '../../../layuiadmin/' //静态资源所在路径
        }).extend({
            index: 'lib/index', //主入口模块
        }).use(['tree', 'index', 'form', 'table', 'element', 'laypage', 'laydate'], function () {
            var $ = layui.$
                , 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
            var sWhere = "";
            let that = this;
            //tree.render({
            //    elem: '#treeCheckItem',
            //    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;
            //            Level = obj.data.HLevel+1;
            //        }
            //        else {
            //            $('div[data-id="' + treeCkData.id + '"] span').eq(1).last().removeClass('custom-tree-item-clicked');
            //            treeCkData = { id: 0 };
            //            TagId = "";
            //            TagParentId = "";
            //            Level = "1";
            //        }
            //        $.ajax({
            //            url: GetWEBURL() + '/Gy_ClassTimePrj/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 });
            //            }
            //        });
            //    }
            //});
            var option = {
                elem: '#mainTable'
                //, toolbar: '#toolbarDemo'
                , height: 'full-50'
                , page: true
                , cellMinWidth: 90
                , cols: [[
                    { type: 'checkbox', fixed: 'left' }
                    , { field: 'HItemID', title: 'HItemID', sort: true, hide: true }
                    , { field: '核算方式代码', title: '核算方式代码' }
                    , { field: '核算方式名称', title: '核算方式名称' }
                    , { field: 'HDeptID', title: 'HDeptID', sort: true, hide: true }
                    , { field: '部门代码', title: '部门代码' }
                    , { field: '部门', title: '部门名称' }
                    , { field: 'HGroupID', title: 'HGroupID', sort: true, hide: true }
                    , { field: '班组代码', title: '班组代码' }
                    , { field: '班组名称', title: '班组名称' }
                    , { field: '备注', title: '备注' }
                    , { field: 'hparentid', title: 'hparentid', sort: true, hide: true }
                    , { field: '组代码', title: '核算方式组代码' }
                    , { field: '组名称', title: '核算方式组名称' }
                ]]
            };
            var index = layer.load(0, { shade: false });
            //进入页面显示的缓存列表
            $.ajax({
                url: GetWEBURL() + '/Gy_ClassTimePrj/list',
                type: "GET",
                data: { "sWhere": sWhere },
                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 });
                }
            });
            //新增
            form.on('submit(btnAdd)', function (obj) {
                //页面层-自定义
                layer.open({
                    type: 2,
                    skin: 'layui-layer-rim', //加上边框
                    title: '新增核算方式',
                    closeBtn: 1,
                    shift: 2,
                    area: ['80%', '80%'],
                    maxmin: true,
                    content: ['../核算方式/Gy_ClassTimePrjBillEdit.html?hID=' + TagId + '&Level=' + Level+''],
                    end: function () {
                        //刷新页面,
                        location.reload();
                    },
                    success: function (layero, index) {
                    }
                });
                return false;//这里加个return false;就不会两次提交
            })
            //删除
            form.on('submit(btndelete)', function (obj) {
                var ModRightNameDelete = 'Gy_QCCheckItem_Delete'
                if (TagId != "") {
                    layer.confirm('您确定要删除吗?', {
                        btn: ['确定', '取消'] //按钮
                        , yes: function (index, layero) {
                            $.ajax({
                                url: GetWEBURL() + '/Gy_ClassTimePrj/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_ClassTimePrj/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) {
                var HNumber = $("#HNumber").val();
                var HName = $("#HName").val();
                if (HNumber) {
                    sWhere += " and ä»£ç  like '%" + HNumber + "%'";
                }
                if (HName) {
                    sWhere += " and åç§° like '%" + HName + "%'";
                }
                $.ajax({
                    //url: "http://61.130.49.162:9090/WMSAPI///Web/GetMAXNum",
                    url: GetWEBURL() + '/Gy_ClassTimePrj/list',
                    type: "GET",
                    data: { "sWhere": sWhere },
                    success: function (data1) {
                        if (data1.count == 1) {
                            option.data = data1.data;
                            table.render(option);
                            layer.alert("查询成功", { icon: 1 });
                        } else {
                            layer.alert(data1.code + data1.Message, { icon: 5 });
                        }
                    }, error: function () {
                        layer.alert("接口请求失败!", { icon: 5 });
                    }
                });
                sWhere = "";//调用接口后清空sWhere缓存
            });
            //修改按钮
            form.on('submit(btnModify)', function (data) {
                if (TagId != "") {
                    layer.open({
                        type: 2
                        , area: ['80%', '80%']
                        , title: '编辑核算方式'
                        , closeBtn: 1
                        , shade: 0.6 //遮罩透明度
                        , maxmin: true //允许全屏最小化
                        , anim: 0 //0-6的动画形式,-1不开启
                        , content: ['../核算方式/Gy_ClassTimePrjBillEdit.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].hparentid.toString();
                        //if (AllowLoadData(sSubStr) != false) {//非空验证
                        layer.open({
                            type: 2
                            , area: ['80%', '80%']
                            , title: '编辑核算方式'
                            , closeBtn: 1
                            , shade: 0.6 //遮罩透明度
                            , maxmin: true //允许全屏最小化
                            , anim: 0 //0-6的动画形式,-1不开启
                            , content: ['../核算方式/Gy_ClassTimePrjBillEdit.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'
            //    , trigger: 'click'
            //    , format:'yyyy-MM-dd HH:mm'
            //});
            //以上是layui模块
        });
        //查询树状数据
        function getData(sWhere) {
            var treeData;
            $.ajax({
                url: GetWEBURL() + '/Gy_ClassTimePrj/LoadTree',
                type: "GET",
                data: { "sWhere": sWhere },
                async: false,
                success: function (result) {
                    console.log(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>
</html>