WebTM/filterRowTemplate.html | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
WebTM/layuiadmin/SetColumn.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
WebTM/layuiadmin/modules/dropdown-disable.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
WebTM/views/车间管理/工序出站汇报单/Cj_StationOutBillList.html | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
WebTM/filterRowTemplate.html
New file @@ -0,0 +1,99 @@  <div class="layui-row" style="margin-top:5px"> <div class="layui-inline"> <label class="layui-form-label" id="BT_ColName">è¿æ»¤</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> <option value="为空">为空</option> </select> </div> <div class="layui-inline"> <input type="text" class="layui-input ForFilteringSchemes" value="" name="ColContent" id="ColContent"> </div> <div class="layui-inline"> <select name="Logical_judgement" id="Logical_judgement" class="ForFilteringSchemes" lay-filter="Logical_judgement" style="width:190px;"> <option value="0" selected="selected"></option> <option value="ä¸">å¹¶ä¸</option> <option value="æ">æè </option> </select> </div> </div> <div class="layui-row" style="margin-top:5px"> <div class="layui-inline"> <label class="layui-form-label" id="BT_ColName1">è¿æ»¤</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> <option value="为空">为空</option> </select> </div> <div class="layui-inline"> <input type="text" class="layui-input ForFilteringSchemes" value="" name="ColContent1" id="ColContent1"> </div> <div class="layui-inline"> <select name="Logical_judgement1" id="Logical_judgement1" class="ForFilteringSchemes" lay-filter="Logical_judgement1" style="width:190px;"> <option value="0" selected="selected"></option> <option value="ä¸">å¹¶ä¸</option> <option value="æ">æè </option> </select> </div> </div> <div class="layui-row" style="margin-top:5px"> <div class="layui-inline"> <label class="layui-form-label" id="BT_ColName2">è¿æ»¤</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> <option value="为空">为空</option> </select> </div> <div class="layui-inline"> <input type="text" class="layui-input ForFilteringSchemes" value="" name="ColContent2" id="ColContent2"> </div> </div> WebTM/layuiadmin/SetColumn.js
@@ -734,3 +734,123 @@ } return count; } function buildFilterWhere(colName, comparator, colContent, Logical_judgement, sWhere) { if (!colName || !comparator || comparator === "0") return ""; else if (sWhere == "") { 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; } return " and " + "("+colName + " " + com ; } else if (sWhere != "") { 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; } return Logical_judgement === "æ" ? " or " + colName + " " + com + ")" : " and " + colName + " " + com + ")"; } else { 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; } return " and " + colName + " " + com; } } function fixParenthesesMatching(swhere) { const keywordEndPositions = []; const keywordRegex = /\b(and|or)\b/gi; let match; while ((match = keywordRegex.exec(swhere)) !== null) { keywordEndPositions.push(match.index + match[0].length); } keywordEndPositions.sort((a, b) => a - b); let leftCount = 0; const insertPositions = []; const workingKeywordPositions = [...keywordEndPositions]; for (let i = 0; i < swhere.length; i++) { if (swhere[i] === '(') { leftCount++; } else if (swhere[i] === ')') { leftCount--; if (leftCount < 0) { let insertIndex = -1; for (let j = workingKeywordPositions.length - 1; j >= 0; j--) { if (workingKeywordPositions[j] < i) { insertIndex = workingKeywordPositions[j]; workingKeywordPositions.splice(j, 1); break; } } insertPositions.push(insertIndex !== -1 ? insertIndex : 0); leftCount = 0; } } } let result = swhere; insertPositions .sort((a, b) => b - a) .forEach(pos => { result = result.slice(0, pos) + '(' + result.slice(pos); }); return result; } WebTM/layuiadmin/modules/dropdown-disable.js
New file @@ -0,0 +1,40 @@ layui.define(['jquery', 'form'], function (exports) { var $ = layui.$; var form = layui.form; var DropdownDisable = { init: function (options) { var dropdownSelector = options.dropdown; var inputSelector = options.input; var filter = options.filter; var disableValue = options.disableValue || "为空"; var $dropdown = $(dropdownSelector); var $input = $(inputSelector); if (!$dropdown.length || !$input.length || !filter) return; form.on('select(' + filter + ')', function (data) { DropdownDisable._updateInput($input, data.value === disableValue); }); DropdownDisable._updateInput($input, $dropdown.val() === disableValue); }, _updateInput: function ($input, disabled) { if (disabled) { $input.prop('disabled', true) .addClass('layui-disabled') .attr('placeholder', 'å·²ç¦ç¨è¾å ¥'); } else { $input.prop('disabled', false) .removeClass('layui-disabled') .attr('placeholder', '请è¾å ¥å 容'); } } }; exports('dropdownDisable', DropdownDisable); }); WebTM/views/³µ¼ä¹ÜÀí/¹¤Ðò³öÕ¾»ã±¨µ¥/Cj_StationOutBillList.html
@@ -141,86 +141,7 @@ </div> </div> </div> <div class="layui-row" style="margin-top:5px"> <div class="layui-inline"> <label class="layui-form-label" id="BT_ColName">è¿æ»¤</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:5px"> <div class="layui-inline"> <label class="layui-form-label" id="BT_ColName1">è¿æ»¤</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" id="BT_ColName2">è¿æ»¤</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 id="filter-row"> <!--è¿æ»¤æ¡html--> </div> </div> </div> @@ -326,6 +247,7 @@ base: '../../../layuiadmin/' //éæèµæºæå¨è·¯å¾ }).extend({ index: 'lib/index', //ä¸»å ¥å£æ¨¡å dropdownDisable: 'dropdown-disable'//䏿æ¡ç¦ç¨è卿¨¡å }).use(['index', 'form', 'table', 'element', 'laypage', 'laydate', 'soulTable','tableFilter'], function () { var $ = layui.$ , admin = layui.admin @@ -389,7 +311,28 @@ //åå§åçé¢ set_ClearBill(); //䏿æ¡ç¦ç¨èå¨ layui.use(['form', 'dropdownDisable'], function () { var dropdownDisable = layui.dropdownDisable; dropdownDisable.init({ dropdown: '#Comparator', input: '#ColContent', filter: 'Comparator', // lay-filter åç§° disableValue: '为空' }); dropdownDisable.init({ dropdown: '#Comparator1', input: '#ColContent1', filter: 'Comparator1', // lay-filter åç§° disableValue: '为空' }); dropdownDisable.init({ dropdown: '#Comparator2', input: '#ColContent2', filter: 'Comparator2', // lay-filter åç§° disableValue: '为空' }); }); //æ¥æé´é䏿å表çå¬ form.on('select(HInitTimeCycle)', function (data) { var HInitTimeCycle = $("#HInitTimeCycle").val() * 1; @@ -785,9 +728,13 @@ } }); } //#region åå§åçé¢ function set_ClearBill() { $.get("../../../filterRowTemplate.html", function (data) { $("#filter-row").html(data); ColFilter(); // éæ°çæä¸æé项 layui.form.render(); // 渲æè¡¨åæ§ä»¶ }); //åå§åæ¥æé´éãå¼å§æ¥æãç»ææ¥æ setSelect_HInitTimeCycle(); //è¥æ¥æé´éä¸ä¸º ä»»æé´éï¼åç¦ç¨å¼å§æ¥æä¸ç»ææ¥æçéæ© @@ -2066,10 +2013,13 @@ $("#ColContent").val(""); $("#ColName").val("0"); $("#Comparator").val("0"); $("#ColContent1").val(""); $("#Logical_judgement").val("0"); $("#ColName1").val("0"); $("#Comparator1").val("0"); $("#ColContent2").val(""); $("#Logical_judgement1").val("0"); $("#ColName2").val("0"); $("#Comparator2").val("0"); $("#Logical_judgement2").val("0"); form.render('select'); sWhere = ""; @@ -2095,83 +2045,26 @@ var checkHWasterQty = $("input[name='checkHWasterQty']").prop("checked");//å¤éæ¡ var ColName = $("#ColName").val();//å¤éæ¡ var Comparator = $("#Comparator").val(); var Logical_judgement = $("#Logical_judgement").val(); var ColContent = $("#ColContent").val(); var ColName1 = $("#ColName1").val();//å¤éæ¡ var Comparator1 = $("#Comparator1").val(); var ColContent1 = $("#ColContent1").val(); var Logical_judgement1 = $("#Logical_judgement1").val(); var ColName2 = $("#ColName2").val();//å¤éæ¡ var Comparator2 = $("#Comparator2").val() var ColContent2 = $("#ColContent2").val(); var Logical_judgement2 = $("#Logical_judgement2").val(); var HNumber = $("#HNumber").val(); //产å代ç å³ç©æç¼ç var HName = $("#HName").val(); //å½åå·¥åº var HEmpNumber = $("#HEmpNumber").val(); //æä½å代ç var HEmpName = $("#HEmpName").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 com = ""; switch (Comparator1) { case "7": com = "like''%" + ColContent1 + "%''"; break; case "8": com = "like''%" + ColContent1 + "''"; break; case "9": com = "like''" + ColContent1 + "%''"; break; case "10": com = "not like''%" + ColContent1 + "%''"; break; default: com = "" + Comparator1 + "''" + ColContent1 + "''"; break; } sWhere += " and " + ColName1 + " " + com; } 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; } //è¿æ»¤æ¡è¿æ»¤ sWhere += buildFilterWhere(ColName, Comparator, ColContent, Logical_judgement, sWhere); sWhere += buildFilterWhere(ColName1, Comparator1, ColContent1, Logical_judgement, sWhere); sWhere += buildFilterWhere(ColName2, Comparator2, ColContent2, Logical_judgement1, sWhere); //æ¬å·å¹é sWhere=fixParenthesesMatching(sWhere); if (HBeginDate) { sWhere += " and CONVERT(varchar(100),åºç«æ¶é´, 23) >= ''" + HBeginDate + "''"; }