chenhaozhe
2025-05-21 94853e46b9d4911fb4cf00389f00a4b820db5d3c
WebTM/views/É豸¹ÜÀí/É豸ͣ»úµ¥/Sb_EquipStopBillList.html
@@ -16,6 +16,8 @@
    <script src="../../../layuiadmin/zgqCustom/zgqCustom.js"></script>
    <script src="../../../layuiadmin/soulTable.slim.js"></script>
    <script src="../../../layuiadmin/PageTitle.js"></script>
    <script src="../../../layuiadmin/SetColumn.js"></script>
    <script src="../../../layuiadmin/HideButton_New.js"></script>
</head>
<body>
@@ -44,15 +46,22 @@
                                    </div>
                                </div>
                                <div class="layui-inline">
                                    <label class="layui-form-label">日期间隔</label>
                                    <div class="layui-input-block">
                                        <select name="HInitTimeCycle" id="HInitTimeCycle" class="ForFilteringSchemes" lay-filter="HInitTimeCycle" style="width:190px;">
                                        </select>
                                    </div>
                                </div>
                                <div class="layui-inline">
                                    <label class="layui-form-label">开始时间</label>
                                    <div class="layui-input-block">
                                        <input type="date" class="layui-input" name="BenginHCreateDate" id="BenginHCreateDate">
                                        <input type="date" class="layui-input ForFilteringSchemes" name="HBeginDate" id="HBeginDate">
                                    </div>
                                </div>
                                <div class="layui-inline">
                                    <label class="layui-form-label">结束时间</label>
                                    <div class="layui-input-block">
                                        <input type="date" class="layui-input" name="EndHCreateDate" id="EndHCreateDate">
                                        <input type="date" class="layui-input ForFilteringSchemes" name="HEndDate" id="HEndDate">
                                    </div>
                                </div>
                                <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnSearch" id="btnSearch">
@@ -91,14 +100,70 @@
                                            <input type="text" class="layui-input ForFilteringSchemes" value="" name="ColContent" id="ColContent">
                                        </div>
                                    </div>
                                    <div class="layui-row" style="margin-top:5px">
                                        <div class="layui-inline">
                                            <label class="layui-form-label">过滤</label>
                                            <div class="layui-input-block">
                                                <select name="ColName1" id="ColName1" class="ForFilteringSchemes" lay-filter="ColName1" style="width:190px;">
                                                </select>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <select name="Comparator1" id="Comparator1" class="ForFilteringSchemes" lay-filter="Comparator1" style="width:190px;">
                                                <option value="0" selected="selected"></option>
                                                <option value="=">=</option>
                                                <option value=">=">>=</option>
                                                <option value=">">></option>
                                                <option value="<="><=</option>
                                                <option value="<"><</option>
                                                <option value="<>"><></option>
                                                <option value="7">包含</option>
                                                <option value="8">左包含</option>
                                                <option value="9">右包含</option>
                                                <option value="10">不包含</option>
                                            </select>
                                        </div>
                                        <div class="layui-inline">
                                            <input type="text" class="layui-input ForFilteringSchemes" value="" name="ColContent1" id="ColContent1">
                                        </div>
                                    </div>
                                    <div class="layui-row" style="margin-top:5px">
                                        <div class="layui-inline">
                                            <label class="layui-form-label">过滤</label>
                                            <div class="layui-input-block">
                                                <select name="ColName2" id="ColName2" class="ForFilteringSchemes" lay-filter="ColName2" style="width:190px;">
                                                </select>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <select name="Comparator2" id="Comparator2" class="ForFilteringSchemes" lay-filter="Comparator2" style="width:190px;">
                                                <option value="0" selected="selected"></option>
                                                <option value="=">=</option>
                                                <option value=">=">>=</option>
                                                <option value=">">></option>
                                                <option value="<="><=</option>
                                                <option value="<"><</option>
                                                <option value="<>"><></option>
                                                <option value="7">包含</option>
                                                <option value="8">左包含</option>
                                                <option value="9">右包含</option>
                                                <option value="10">不包含</option>
                                            </select>
                                        </div>
                                        <div class="layui-inline">
                                            <input type="text" class="layui-input ForFilteringSchemes" value="" name="ColContent2" id="ColContent2">
                                        </div>
                                    </div>
                                </div>
                            </div>
                        </div>
                        <table class="" id="mainTable" lay-filter="mainTable"></table>
                        <div id="page" style="position: relative; bottom: 0;"></div>
                        <script type="text/html" id="toolbarDemo">
                            <div class="layui-btn-container">
                            <div class="layui-btn-container" id="toolbarDemo_ButtonSet">
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn_Export" id="btn_Export"><i class="layui-icon layui-icon-export"></i>导出</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="set_AddNew"><i class="layui-icon layui-icon-file-b"></i>新增</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="set_ShowBill"><i class="layui-icon layui-icon-form"></i>编辑</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="set_ShowBill"><i class="layui-icon layui-icon-form"></i>编辑</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="set_DeleteBill"><i class="layui-icon layui-icon-delete"></i>删除</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="get_Refresh"><i class="layui-icon layui-icon-refresh-3"></i>刷新</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-Audit"><i class="layui-icon layui-icon-radio"></i>审核</button>
@@ -109,6 +174,7 @@
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-DeDrop"><i class="layui-icon layui-icon-radio"></i>反作废</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="get_Exit"><i class="layui-icon layui-icon-logout"></i>退出</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="set_HideColumn"><i class="layui-icon layui-icon-form"></i>列设置</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="set_HideButton" id="HideButton"><i class="layui-icon layui-icon-form"></i>按钮设置</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="set_SaveScheme" id="set_SaveScheme"><i class="layui-icon layui-icon-template"></i>保存方案</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="set_ReadScheme" id="set_ReadScheme"><i class="layui-icon layui-icon-set"></i>读取方案</button>
                            </div>
@@ -144,16 +210,21 @@
            var option = [];
            var sWhere = "";
            var page = 1;//分页数据
            var size = 50;
            var HModName = "Sb_EquipStopBillList";
            var ins;                //用于导出excel
            var HBillType = "3918";
            var set_HideButton_ID = "toolbarDemo_ButtonSet";//需要设置的按钮的父级节点的id
            //#region ã€åŠ¨æ€èŽ·å–æ¨¡å—åç§°ã€‘
            var HModuleType = "3918";
            //通过单据类型,从数据库动态获取单据模块命名,引用js文件 PageTitle.js
            var HPageTitle = get_PageTitle(HModuleType) == "" ? document.title : get_PageTitle(HModuleType);
        //#endregion
            //#endregion
            //不需要显示的字段 å¯æ‰©å±•
            var titleData = ["HInterID", "HEquipID", "HEquipRelationID", "HStopEmpID"];
            var titleData = ["HInterID", "HEquipID", "HEquipRelationID", "HStopEmpID", "sorderid"];
            //#endregion
            //#region ã€è¿‡æ»¤æ–¹æ¡ˆã€‘
@@ -183,6 +254,9 @@
            table.on('toolbar(mainTable)', function (obj) {
                switch (obj.event) {
                    //导出按钮
                    case 'btn_Export': btn_Export();
                        break;
                    //新增
                    case 'set_AddNew': set_AddNew();
                        break;
@@ -226,7 +300,11 @@
                    case 'get_Exit': Pub_Close(2);
                        break;
                    //列设置
                    case 'set_HideColumn': get_HideColumn();
                    case 'set_HideColumn': get_HideColumnNoPage(HModName, sessionStorage["HUserName"], option, get_FastQuery);
                        break;
                    //按钮设置
                    case 'set_HideButton':
                        get_HideButton(set_HideButton_ID, HBillType, HModName, sessionStorage["HUserName"]);
                        break;
                    //保存方案
                    case 'set_SaveScheme': set_SaveScheme();
@@ -279,9 +357,32 @@
            //#region æŸ¥è¯¢æŒ‰é’®
            form.on('submit(btnSearch)', function (data) {
                get_FastQuery();
                if (page != 1) {
                    $("#page a:eq(1)").get(0).click();//点击分页栏第一页
                } else {
                    get_FastQuery();
                }
            });
            //#endregion
            //日期间隔下拉列表监听
            form.on('select(HInitTimeCycle)', function (data) {
                var HInitTimeCycle = $("#HInitTimeCycle").val() * 1;
                //若日期间隔不为 ä»»æ„é—´éš”,则禁用开始日期与结束日期的选择
                if (HInitTimeCycle != -1) {
                    $('#HBeginDate').prop('disabled', true);
                    $('#HEndDate').prop('disabled', true);
                    $("#HBeginDate").val(Format(new Date(new Date() - 1000 * 60 * 60 * 24 * HInitTimeCycle), "yyyy-MM-dd"));
                    $("#HEndDate").val(Format(new Date(), "yyyy-MM-dd"));
                    //执行查询方法
                    get_FastQuery();
                } else {
                    $('#HBeginDate').prop('disabled', false);
                    $('#HEndDate').prop('disabled', false);
                }
            });
            //#endregion
@@ -289,15 +390,27 @@
            //#region åˆå§‹åŒ–界面
            function set_ClearBill() {
                //初始化日期间隔、开始日期、结束日期
                setSelect_HInitTimeCycle();
                //若日期间隔不为 ä»»æ„é—´éš”,则禁用开始日期与结束日期的选择
                var HInitTimeCycle = $("#HInitTimeCycle").val() * 1;
                if (HInitTimeCycle != -1) {
                    $('#HBeginDate').prop('disabled', true);
                    $('#HEndDate').prop('disabled', true);
                } else {
                    $('#HBeginDate').prop('disabled', false);
                    $('#HEndDate').prop('disabled', false);
                }
                $("#HBeginDate").val(Format(new Date(new Date() - 1000 * 60 * 60 * 24 * HInitTimeCycle), "yyyy-MM-dd"));
                $("#HEndDate").val(Format(new Date(), "yyyy-MM-dd"));
                //初始化表格
                set_InitGrid();
               
                //查询
                get_FastQuery();
                //get_FastQuery();
                //查询当前登录用户有没有在当前模块设置默认过滤方案
                get_DefaultModule();
                $("#BenginHCreateDate").val(Format(new Date(new Date()-(1000 * 60 * 60 * 24 * 7)), "yyyy-MM-dd"));
                $("#EndHCreateDate").val(Format(new Date(), "yyyy-MM-dd"));
            }
            //#endregion
@@ -307,7 +420,7 @@
                    elem: '#mainTable'
                    , toolbar: '#toolbarDemo'
                    , height: 'full-50'
                    , page: true
                    , page: false
                    , sort: true  //重点1:这里的sort表示 table表在取得接口数据后,对页面渲染后的table数据进行排序。同时,这里的true ä¼šå½±å“é¡µé¢sort ä¸Šä¸‹å°ç®­å¤´çš„ æ˜¾ç¤ºæ•ˆæžœ
                    , totalRow: true
                    , limit: 50
@@ -316,6 +429,24 @@
                        soulTable.render(this);
                    }
                };
                optionPage = {
                    elem: 'page', //注意,这里的 page æ˜¯ ID,不用加 # å·
                    count: 10000, //数据总数,从服务端得到
                    limit: 50,
                    limits: [50, 500, 5000, 50000],
                    layout: ['count', 'prev', 'page', 'next', 'limit', 'skip'],
                    jump: function (obj, first) {
                        //首次不执行
                        if (!first) {
                            //do something
                            page = obj.curr;
                            size = obj.limit;
                            get_FastQuery();
                        }
                    }
                }
                laypage.render(optionPage);
            }
            //#endregion
@@ -357,6 +488,7 @@
                            option.cols = [col];
                            option.data = data1.data;
                            table.render(option);
                            ins = table.render(option);
                            //刷新表格数据
                            DisPlay_HideColumn();
@@ -380,17 +512,98 @@
            }
            //#endregion
            //#region åˆ†é¡µæŸ¥è¯¢
            function get_DisplayPage(sWhere) {
                var ajaxLoad = layer.load();
                $.ajax({
                    url: GetWEBURL() + '/Sb_EquipStopBill/getSb_EquipStopBillListPage',
                    type: "GET",
                    data: { "sWhere": sWhere, "user": sessionStorage["HUserName"], "page": page, "size": size },
                    success: function (data1) {
                        option.limit = size;//改变表格页大小
                        if (data1.code == 1) {
                            optionPage.count = data1.count;//改变列表数据总数
                            var data = [];
                            var col = [];
                            //给空的数组赋值
                            for (var key in data1.list) {
                                //动态获取列表所有列名
                                data.push({ "id": data1.list[key].ColmCols, "name": data1.list[key].ColmCols, "Type": data1.list[key].ColmType });
                                //获取不需要显示的列(H开头的列不显示)
                                var patrn = new RegExp(/^h/i);
                                if (patrn.test(data1.list[key].ColmCols)) {
                                    titleData[key] = data1.list[key].ColmCols;
                                }
                            }
                            //在列表左边添加勾选框
                            col.push({ type: 'checkbox', fixed: 'left', totalRowText: '合计' });
                            for (var i = 0; i < data.length; i++) {
                                if ($.inArray(data[i].name, titleData) > -1) {
                                    col.push({ field: data[i].id, title: data[i].name, align: 'center', hide: true }); //隐藏id列
                                }
                                else {
                                    switch (data[i].Type) {
                                        //int
                                        case 'DateTime':
                                            col.push({ field: data[i].id, title: data[i].name, align: 'center', sort: false, templet: "<div>{{d." + data[i].name + " ==null ?'':layui.util.toDateString(d." + data[i].name + ", 'yyyy-MM-dd HH:mm:ss')}}</div>", width: 160 });
                                            break;
                                        case 'Decimal':
                                            col.push({ field: data[i].id, title: data[i].name, align: 'center', sort: false, width: 140, totalRow: true });
                                            break;
                                        case 'Int32':
                                            col.push({ field: data[i].id, title: data[i].name, align: 'center', sort: false, width: 140, totalRow: true });
                                            break;
                                        default:
                                            col.push({ field: data[i].id, title: data[i].name, align: 'center', sort: false, width: 140 });
                                    }
                                }
                            }
                            columns = col;
                            option.cols = [col];
                            option.data = data1.data;
                            option.totalRow = true;
                            laypage.render(optionPage);
                            ins = table.render(option);
                            //列设置
                            DisPlay_HideColumn(HModName, sessionStorage["HUserName"], option, titleData);
                            layer.close(ajaxLoad);
                            if ($("#ColName option").length < 1) {
                                ColFilter();
                            }
                            //刷新按钮显示
                            Display_HideButton(set_HideButton_ID, HBillType, HModName, sessionStorage["HUserName"]);
                        } else {
                            layer.close(ajaxLoad);
                            layer.alert(data1.code + data1.Message, { icon: 5 });
                        }
                    }, error: function () {
                        layer.close(ajaxLoad);
                        layer.alert("接口请求失败!", { icon: 5 });
                    }
                });
            }
            //#endregion
            //#region å¿«é€Ÿè¿‡æ»¤
            function get_FastQuery() {
               
                var HBillNo = $("#HBillNo").val();  //单据号
                var HEquipName = $("#HEquipName").val();//设备名称
                var BenginHCreateDate = $("#BenginHCreateDate").val();//开始时间
                var EndHCreateDate = $("#EndHCreateDate").val();//结束时间
                var HBeginDate = $("#HBeginDate").val();//开始时间
                var HEndDate = $("#HEndDate").val();//结束时间
                //任意字段过滤
                var ColName = $("#ColName").val();//复选框
                var Comparator = $("#Comparator").val()
                var ColContent = $("#ColContent").val();
                var ColName1 = $("#ColName1").val();//复选框
                var Comparator1 = $("#Comparator1").val()
                var ColContent1 = $("#ColContent1").val();
                var ColName2 = $("#ColName2").val();//复选框
                var Comparator2 = $("#Comparator2").val()
                var ColContent2 = $("#ColContent2").val();
                if (ColName != 0 && Comparator != 0) {
                    var com = "";
@@ -413,37 +626,92 @@
                    }
                    sWhere += " and " + ColName + " " + com;
                }
                if (ColName1 != 0 && Comparator1 != 0) {
                    var com1 = "";
                    switch (Comparator1) {
                        case "7":
                            com1 = "like'%" + ColContent1 + "%'";
                            break;
                        case "8":
                            com1 = "like'%" + ColContent1 + "'";
                            break;
                        case "9":
                            com1 = "like'" + ColContent1 + "%'";
                            break;
                        case "10":
                            com1 = "not like'%" + ColContent1 + "%'";
                            break;
                        default:
                            com1 = "" + Comparator1 + "'" + ColContent1 + "'";
                            break;
                    }
                    sWhere += " and " + ColName1 + " " + com1;
                }
                if (ColName2 != 0 && Comparator2 != 0) {
                    var com2 = "";
                    switch (Comparator2) {
                        case "7":
                            com2 = "like'%" + ColContent2 + "%'";
                            break;
                        case "8":
                            com2 = "like'%" + ColContent2 + "'";
                            break;
                        case "9":
                            com2 = "like'" + ColContent2 + "%'";
                            break;
                        case "10":
                            com2 = "not like'%" + ColContent2 + "%'";
                            break;
                        default:
                            com2 = "" + Comparator2 + "'" + ColContent2 + "'";
                            break;
                    }
                    sWhere += " and " + ColName2 + " " + com2;
                }
                if (HBillNo) {
                    sWhere += " and å•据号 like '%" + HBillNo + "%'";
                }
                if (HEquipName) {
                    sWhere += " and è®¾å¤‡ like '%" + HEquipName + "%'";
                }
                if (BenginHCreateDate) {
                    sWhere += " and CONVERT(varchar(100),日期, 23) >= '" + BenginHCreateDate + "'";
                if (HBeginDate) {
                    sWhere += " and CONVERT(varchar(100),日期, 23) >= '" + HBeginDate + "'";
                }
                if (EndHCreateDate) {
                    sWhere += " and CONVERT(varchar(100),日期, 23) <= '" + EndHCreateDate + "'";
                if (HEndDate) {
                    sWhere += " and CONVERT(varchar(100),日期, 23) <= '" + HEndDate + "'";
                }
                get_Display(sWhere);
                //get_Display(sWhere);
                //数据库分页查询
                get_DisplayPage(sWhere);
                sWhere = "";//调用接口后清空sWhere缓存
            }
            //#endregion
            //#region é‡ç½®è¿‡æ»¤æ¡ä»¶æ–¹æ³•
            function set_ClearQuery() {
                var HInitTimeCycle = $("#HInitTimeCycle").val() * 1;
                $("#HBillNo").val("");
                $("#HEquipName").val("");
                $("#BenginHCreateDate").val(Format(new Date(new Date() - 1000 * 60 * 60 * 24 * 7), "yyyy-MM-dd"));
                $("#EndHCreateDate").val(Format(new Date( ), "yyyy-MM-dd"));
                $("#HBeginDate").val(Format(new Date(new Date() - 1000 * 60 * 60 * 24 * HInitTimeCycle), "yyyy-MM-dd"));
                $("#HEndDate").val(Format(new Date( ), "yyyy-MM-dd"));
                $("#ColContent").val("");
                $("#ColName").val("0");
                $("#Comparator").val("0");
                $("#ColContent2").val("");
                $("#ColName2").val("0");
                $("#Comparator2").val("0");
                $("#ColContent1").val("");
                $("#ColName1").val("0");
                $("#Comparator1").val("0");
                form.render('select');
                sWhere = "";
            }
            //#endregion
            //#region å¯¼å‡ºExecel
            function btn_Export() {
                table.exportFile(ins.config.id, option.data, "xls");
            }
            //#endregion
@@ -766,7 +1034,8 @@
            }
            //#endregion
            //#region ä»»æ„å­—段过滤:列名显示下拉框
            //#region åˆ—明显示下拉框
            function ColFilter() {
                var Organization = '<option  value="0" selected="selected" ></option>';
                for (var i = 1; i < option.cols[0].length; i++) {
@@ -776,8 +1045,13 @@
                }
                $("#ColName").empty();
                $("#ColName").append(Organization);
                $("#ColName1").empty();
                $("#ColName1").append(Organization);
                $("#ColName2").empty();
                $("#ColName2").append(Organization);
                form.render('select');
            }
            //#endregion
            //#endregion
            //#region èŽ·å–å‚æ•°
@@ -790,6 +1064,24 @@
                    vars[hash[0]] = hash[1];
                }
                return vars;
            }
            //#endregion
            //#region åˆå§‹æ—¥æœŸé—´éš” ä¸‹æ‹‰åˆ—表
            function setSelect_HInitTimeCycle() {
                var valueList = [0, 1, 2, 3, 4, 5, 6, 29];
                var titleList = ["今天", "近两天", "近三天", "近四天", "近五天", "近六天", "近七天", "近30天"];
                var HInitTimeCycle_ArrayList = '<option  value="-1" selected="selected" >任意间隔</option>';
                for (var i = 0; i < valueList.length; i++) {
                    HInitTimeCycle_ArrayList += '<option  style="color:blue;" value="' + valueList[i] + '">' + titleList[i] + '</option>';
                }
                $("#HInitTimeCycle").empty();
                $("#HInitTimeCycle").append(HInitTimeCycle_ArrayList);
                form.render('select');
                $("#HInitTimeCycle").val("29");
            }
            //#endregion
@@ -823,6 +1115,24 @@
                                    $("#" + data[i].过滤字段ID).find("option[value='" + data[i].过滤值 + "']").attr("selected", true);
                                }
                            }
                            var HInitTimeCycle = $("#HInitTimeCycle").val() * 1;
                            //若日期间隔不为 ä»»æ„é—´éš”,则禁用开始日期与结束日期的选择
                            if (HInitTimeCycle != -1) {
                                $('#HBeginDate').prop('disabled', true);
                                $('#HEndDate').prop('disabled', true);
                                $("#HBeginDate").val(Format(new Date(new Date() - 1000 * 60 * 60 * 24 * HInitTimeCycle), "yyyy-MM-dd"));
                                $("#HEndDate").val(Format(new Date(), "yyyy-MM-dd"));
                                //执行查询方法
                                get_FastQuery();
                            } else {
                                $('#HBeginDate').prop('disabled', false);
                                $('#HEndDate').prop('disabled', false);
                            }
                            //查询
                            get_FastQuery();
                            form.render("select");
@@ -830,7 +1140,8 @@
                            //当前用户没有设置默认的过滤方案
                            //隐藏显示过滤方案的标签信息
                            document.getElementById("HFilterScheme_Now").style.display = "none";
                            //查询
                            get_FastQuery();
                        }
                    }, error: function () {
                        layer.alert("接口请求失败!", { icon: 5 });