wtt
2025-08-05 ebef191888d9d2c2a2e7a7f677189164e4eef0b3
WebTM/views/³µ¼ä¹ÜÀí/±¨±í·ÖÎö/Sc_BadReasonReport.html
@@ -42,13 +42,102 @@
                                        </select>
                                    </div>
                                </div>
                                <div class="layui-inline">
                                    <label class="layui-form-label" style="width: 85px;">班组</label>
                                    <div class="layui-input-block" style="margin-left: 120px;">
                                        <input type="text" class="layui-input" name="HGroupName" lay-verify="HGroupName" id="HGroupName" style="width: 60%;display: inline-block;">
                                        <input type="hidden" class="layui-input" name="HGroupID" lay-verify="HGroupID" id="HGroupID" value="0">
                                    </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 class="layui-colla-content" style="padding: 0px; margin-left: 6%;">
                                    <div class="layui-row" style="margin-top:10px;">
                                        <!--其他条件-->
                                        <div class="layui-row" style=" margin-top: 10px; margin-left: 70px;">
                                            <div class="layui-inline">
                                                <label class="layui-form-label">过滤</label>
                                                <div class="layui-input-block">
                                                    <select name="ColName" id="ColName" class="ForFilteringSchemes" lay-filter="ColName" style="width:190px;">
                                                    </select>
                                                </div>
                                            </div>
                                            <div class="layui-inline">
                                                <select name="Comparator" id="Comparator" class="ForFilteringSchemes" lay-filter="Comparator" 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="ColContent" id="ColContent">
                                            </div>
                                        </div>
                                        <div class="layui-row" style=" margin-top: 10px; margin-left: 70px;">
                                            <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: 10px; margin-left: 70px;">
                                            <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>
@@ -68,6 +157,7 @@
                        </div>                       
                        <script type="text/html" id="toolbarDemo">
                            <div class="layui-btn-container">
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="get_export" id="get_export"><i class="layui-icon layui-icon-export"></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="HideColumn"><i class="layui-icon layui-icon-form"></i>隐藏列设置</button>
                            </div>
@@ -79,6 +169,11 @@
    </div>
    <script>
        //#region æ–‡æœ¬æ¡†è¾“入搜索相关数据-变量
        var childPage = null;                       //获取子窗口对象,用于操作子窗口的变量和方法
        var currRowIndex = 0;                       //用于定位子窗口当前选中的行
        var childData = null;                       //用于获取子窗口返回的数据
        //#endregion
        layui.config({
            base: '../../../layuiadmin/' //静态资源所在路径
@@ -100,6 +195,8 @@
            var sWhere = "";
            var option = [];
            var HModName = "Sc_BadReasonReport";
            var ins;                        //用于导出excel
            //#endregion
            //#region è¿›å…¥é¡µé¢æ—¢åŠ è½½
@@ -107,7 +204,7 @@
            //初始化界面
            set_ClearBill();
            //#endregion
            ColFilter();
            //#region ã€å›¾å½¢ã€‘
            function set_Graphics() {
                //#region ã€æŸ±çŠ¶å›¾ã€‘
@@ -392,7 +489,7 @@
                option_BT = {
                    title: {
                        text: $("#HYear").val() + 'å¹´' + (Number(new Date().getMonth()) + Number(1)) + '月份不良原因分布图',
                        text: $("#HYear").val() + 'å¹´' + (Number(new Date().getMonth()) + Number(1)) + '不良原因图',
                        left: 'center'
                    },
                    tooltip: {
@@ -426,6 +523,10 @@
            //头工具栏事件
            table.on('toolbar(mainTable)', function (obj) {
                switch (obj.event) {
                    //导出excel
                    case 'get_export':
                        get_Export();
                        break;
                    //退出
                    case 'btn-exit': Pub_Close(2);
                        break;
@@ -500,12 +601,13 @@
            //加载网格
            function get_Display(sWhere) {
                sWhere = $("#HYear").val();
                var HGroupID = $("#HGroupID").val();
                var wait = layer.load();//遮罩
                $.ajax({
                    url: GetWEBURL() + '/Sc_BadReasonReport/list',
                    type: "GET",
                    async: false,
                    data: { "sWhere": sWhere, "user": sessionStorage["HUserName"] },
                    data: { "sWhere": sWhere, "user": sessionStorage["HUserName"], "HGroupID": HGroupID },
                    success: function (data1) {
                        var col = [];
                        if (data1.count == 1) {
@@ -535,7 +637,7 @@
                            option.cols = [col];
                            option.data = data1.data;
                            table.render(option);
                            ins = table.render(option);
                            layer.close(wait);
                        } else {
                            layer.close(wait);
@@ -552,7 +654,79 @@
            function get_FastQuery() {
                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 = "";
                    switch (Comparator) {
                        case "7":
                            com = "like'%" + ColContent + "%'";
                            break;
                        case "8":
                            com = "like'%" + ColContent + "'";
                            break;
                        case "9":
                            com = "like'" + ColContent + "%'";
                            break;
                        case "10":
                            com = "not like'%" + ColContent + "%'";
                            break;
                        default:
                            com = "" + Comparator + "'" + ColContent + "'";
                            break;
                    }
                    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 = "" + Comparator + "'" + ColContent + "'";
                            break;
                    }
                    sWhere += " and " + ColName2 + " " + com2;
                }
                sWhere = "'" + HBeginDate + "','" + HEndDate + "'";
                get_Display(sWhere);
@@ -561,13 +735,67 @@
                set_Graphics();
            }
            //#region å¯¼å‡ºExecel
            function get_Export() {
                var ModRightNameCheck = "Sc_BadReasonReport_ExportExcel";
                //逻辑审核方法
                $.ajax({
                    type: "GET",
                    url: GetWEBURL() + "/LMES/getReportByModRightNameCheck", //方法所在页面和方法名
                    data: { "ModRightNameCheck": ModRightNameCheck, "user": sessionStorage["HUserName"] },
                    success: function (result) {
                        if (result.count == 1) {
                            table.exportFile(ins.config.id, option.data, "xls");
                        } else {
                            layer.alert("当前模块没有导出权限!", { icon: 5 });
                        }
                    }, error: function () {
                        layer.alert("接口请求失败!", { icon: 5 });
                    }
                });
            }
            //#endregion
            //重置过滤条件
            function set_ClearQuery() {
                $("#HBeginDate").val(Format(new Date(new Date() - 1000 * 60 * 60 * 24 * 30), "yyyy-MM-dd"));
                $("#HEndDate").val(Format(new Date(), "yyyy-MM-dd"));
                $("#ColContent").val("");
                $("#ColName").val("0");
                $("#Comparator").val("0");
                $("#ColContent1").val("");
                $("#ColName1").val("0");
                $("#Comparator1").val("0");
                $("#ColContent2").val("");
                $("#ColName2").val("0");
                $("#Comparator2").val("0");
                $("#HGroupID").val("0");
                $("#HGroupName").val("");
                form.render('select');
                sWhere = " ";
                get_FastQuery();
            }
            //列明显示下拉框
            function ColFilter() {
                var Organization = '<option  value="0" selected="selected" ></option>';
                for (var i = 1; i < option.cols[0].length; i++) {
                    if (option.cols[0][i].hide != true) {
                        Organization += '<option  style="color:blue;" value="' + option.cols[0][i].field + '">' + option.cols[0][i].field + '</option>';
                    }
                }
                $("#ColName").empty();
                $("#ColName").append(Organization);
                $("#ColName1").empty();
                $("#ColName1").append(Organization);
                $("#ColName2").empty();
                $("#ColName2").append(Organization);
                form.render('select');
            }
            //隐藏列设置
            function get_HideColumn() {
@@ -672,6 +900,104 @@
                })
            }
            //#region æ–‡æœ¬æ¡†ç›‘听
            $(document).ready(function () {
                //#region æ ¹æ®ç­ç»„代码获取班组基础资料筛选弹窗
                //根据元素ID对元素进行监听=============================================================================
                $("#HGroupName").on('keydown', function (data) {
                    //================================================================================================
                    var errKeys = ["ArrowUp", "ArrowDown", "ArrowLeft", "ArrowRight", "Enter"];
                    if ($.inArray(event.key, errKeys) == -1) {              //如果按下的键位不是 æ–¹å‘键,则刷新弹窗中的数据
                        if (childPage == null) {                            //判断当前子窗口是否已经打开,若未打卡,则打开页面,并获取子窗口的对象
                            var offset = $(this).offset();                  //获取触发事件的元素的位置,用于定位子窗口打开的位置
                            var innerHeight = window.innerHeight;
                            var top = offset.top + 0.05 * innerHeight;
                            var left = offset.left;
                            if (top + 0.05 * innerHeight + 0.3 * innerHeight > innerHeight) {
                                top = top - 0.3 * innerHeight - 0.05 * innerHeight;
                            }
                            layer.open({
                                type: 2                                                                                     //弹窗类型
                                , skin: 'layui-layer-rim'                                                                   //加上边框
                                , area: ['35%', '50%']                                                                      //大小
                                , shadeClose: true                                                                          //点击遮罩时关闭弹窗
                                , offset: [top, left]
                                , title: false                                                                              //不显示标题栏
                                //, title: '项目费用列表'                                                                     //标题
                                , shift: 2                                                                                  //弹出动画
                                , closeBtn: 0                                                                               //禁用关闭按钮
                                , content: ["../../基础资料/通用基础资料/Gy_CommonBaseData.html?OperationType=2", "yes"]
                                , success: function (layero, index) {
                                    setTimeout(function () {
                                        //修改,根据文本框数据,编写查询语句================================================================================================
                                        var value = $("#HGroupName").val().replace(/'/g, "");                                  //获取文本框最新值
                                        currRowIndex = 0;
                                        var tableView = "h_v_Gy_GroupList";
                                        var childSWhere = "select top(10) HItemID,班组代码,班组名称 from " + tableView + " where 1=1 and (班组名称 like '%" + value + "%') order by ç­ç»„代码 desc";
                                        childPage.getData(childSWhere, tableView);
                                        //===================================================================================================================================
                                    }, 200);
                                }
                                , end: function () {
                                    childPage = null;
                                    currRowIndex = 0;
                                    if (childData != null) {
                                        //根据弹窗返回数据设置文本框数据=================================================================================================
                                        //获取数据
                                        $("#HGroupID").val(childData.HItemID);//班组id
                                        $("#HGroupName").val(childData.班组名称);//班组名称
                                        //===============================================================================================================================
                                        childData = null;
                                    }
                                }
                            });
                        } else {
                            setTimeout(function () {
                                //修改,根据文本框数据,编写查询语句================================================================================================
                                var value = $("#HGroupName").val().replace(/'/g, "");                                  //获取文本框最新值
                                currRowIndex = 0;
                                var tableView = "h_v_Gy_GroupList";
                                var childSWhere = "select top(10) HItemID,班组代码,班组名称 from " + tableView + " where 1=1 and (班组名称 like '%" + value + "%') order by ç­ç»„代码 desc";
                                childPage.getData(childSWhere, tableView);
                                //=================================================================================================================================
                            }, 200);
                        }
                    } else {                                                    //如果按下的键位是 æ–¹å‘键,则调整窗口中 é€‰ä¸­è¡Œ çš„位置
                        if (event.key == "ArrowUp") {
                            currRowIndex--;
                            childPage.setSelectedRow(currRowIndex);
                        } else if (event.key == "ArrowDown") {
                            currRowIndex++;
                            childPage.setSelectedRow(currRowIndex);
                        } else if (event.key == "Enter") {
                            //手动失焦
                            var element = document.getElementById("HGroupName");
                            element.blur();
                            childPage.getSelectedData(currRowIndex);
                            if (childData != null) {
                                //根据弹窗返回数据设置文本框数据=================================================================================================
                                //获取数据
                                $("#HGroupID").val(childData.HItemID);//班组id
                                $("#HGroupName").val(childData.班组名称);//班组名称
                                //===============================================================================================================================
                                childData = null;
                            }
                            childPage = null;
                            currRowIndex = 0;
                            childData = null;
                        }
                    }
                });
                //#endregion
            });
        //#endregion
            //#endregion
        });
    </script>