您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
you can use it for your report
当前为
此脚本不应直接安装。它是供其他脚本使用的外部库,要使用该库请加入元指令 // @require https://update.cn-greasyfork.org/scripts/493430/1365916/DFDJLAdjfldjg.js
// ==UserScript== // @name DFDJLAdjfldjg // @namespace http://tampermonkey.net/ // @version 0.1 // @description you can use it for your report // @author You // @match http://111.51.123.233:8088/stj-web/index/inspect/report/toReportInput.do* // @icon https://www.google.com/s2/favicons?sz=64&domain=123.233 // @grant none // ==/UserScript== (function () { "use strict"; if (1) { var origSend = XMLHttpRequest.prototype.send; XMLHttpRequest.prototype.send = function (body) { if ( this._url.includes( "http://111.51.123.233:8088/intf/report/itemJson/save" ) ) { try { const parsedData = parseCustomUrlEncodedData(body); } catch (error) { console.error("解析数据时发生错误:", error); } } origSend.call(this, body); };var origOpen = XMLHttpRequest.prototype.open; XMLHttpRequest.prototype.open = function (method, url) { this._url = url; origOpen.apply(this, arguments); };var button = document.createElement("button"); button.innerText = "审核系统"; button.title = "点击进行审核"; button.style.position = "fixed"; button.style.right = window.innerWidth / 15 + "px"; button.style.bottom = window.innerHeight / 15 + "px"; button.style.cursor = "grab";button.style.fontSize = "16px"; button.style.color = "#ffffff"; button.style.backgroundColor = "#add8e6"; button.style.border = "none"; button.style.borderRadius = "5px"; button.style.padding = "10px 20px"; button.style.transition = "background-color 0.3s ease";button.onmouseover = function () { this.style.backgroundColor = "#87CEEB"; }; button.onmouseout = function () { this.style.backgroundColor = "#add8e6"; };var initialX, initialY; var isDragging = false; button.onmousedown = function (e) { initialX = e.clientX - button.getBoundingClientRect().right; initialY = e.clientY - button.getBoundingClientRect().bottom; isDragging = true; document.onmousemove = function (e) { if (!isDragging) return; var newX = e.clientX - initialX; var newY = e.clientY - initialY; button.style.right = window.innerWidth - newX + "px"; button.style.bottom = window.innerHeight - newY + "px"; }; document.onmouseup = function () { isDragging = false; document.onmousemove = null; document.onmouseup = null; }; e.preventDefault(); return false; }; function drag(e) { if (!isDragging) return; var newX = e.clientX - initialX; var newY = e.clientY - initialY; button.style.left = newX + "px"; button.style.top = newY + "px"; e.preventDefault(); return false; } function stopDragging() { document.onmousemove = null; document.onmouseup = null; isDragging = false; } Object.assign(button.style, { fontSize: "16px", zIndex: 1000, borderRadius: "50%", backgroundColor: "#FF8C00", boxShadow: "0 4px 8px 0 rgba(0, 0, 0, 0.2)", padding: "15px 32px", cursor: "grab", transition: "all 0.3s ease", outline: "none", border: "none", color: "white", textTransform: "uppercase", fontWeight: "bold", }); document.body.appendChild(button); button.onclick = function (e) { main(); }; if (1) { if (1) { /* var input = document.createElement("TEXTAREA"); input.id = "information"; inp input.style.width = "320px"; input.style.height = "400px"; input.style.resize = "none"; Object.assign(input.style, { position: "fixed", right: "20px", bott backgro }); document.body.appendChild(input); */ } if (1) { /* var input = document.createElement("TEXTAREA"); input.id = "information"; input.name = "information"; // 设置基本样式 input.style.width = "320px"; input.style.height = "400px"; input. var initialX1, initialY1; input.onmetLeft; initialYove = drag1; document.onmouseup = stopDrag1; }; function drag1(e) { i if (newX > window.innerWidth - input.offsetWidth) newX = window.innerWidth - input.offsetWidth; if (newY > window.innerHeight - input.offsetHeight) new isDra }); */ } if (1) { /* var input = document.createElement("TEXTAREA"); input.id = "information"; input.name = "information"; var initialX1, initialY1; / isDragging1 = true; function drag1(e) { if (!isDragging1) return; // Math.min(newY, window.innerHeight - input.offsetHeight) ); //"; input.style.top = newY + "px"; } // document.onmousemove = null; document.onmouseup = null; } // borderRadi }); */ } if (1) { var input = document.createElement("TEXTAREA"); input.id = "information"; input.name = "information"; input.style.width = "320px"; input.style.height = "400px"; input.style.resize = "none"; input.style.position = "absolute"; input.style.left = window.innerWidth / 15 + "px"; input.style.top = window.innerWidth / 4 + "px"; input.style.zIndex = 100; input.style.backgroundColor = "#add8e6"; input.onmouseover = function () { this.style.backgroundColor = "#87CEEB"; }; input.onmouseout = function () { this.style.backgroundColor = "#add8e6"; }; var isDragging1 = false; var initialX1, initialY1; var offsetX1, offsetY1; input.onmousedown = function (e) { if (e.button === 2) { e.preventDefault(); initialX1 = e.clientX - parseInt(input.style.left, 10); initialY1 = e.clientY - parseInt(input.style.top, 10); offsetX1 = e.clientX - input.offsetLeft; offsetY1 = e.clientY - input.offsetTop; isDragging1 = true; document.onmousemove = drag1; document.onmouseup = stopDrag1; } }; function drag1(e) { if (!isDragging1) return; var newX = e.clientX - offsetX1; var newY = e.clientY - offsetY1; newX = Math.max( 0, Math.min(newX, window.innerWidth - input.offsetWidth) ); newY = Math.max( 0, Math.min(newY, window.innerHeight - input.offsetHeight) ); input.style.left = newX + "px"; input.style.top = newY + "px"; } function stopDrag1() { isDragging1 = false; document.onmousemove = null; document.onmouseup = null; } document.body.appendChild(input); Object.assign(input.style, { border: "2px solid #ccc", borderRadius: "10px", backgroundColor: "white", padding: "10px", boxShadow: "0 0 5px rgba(0, 0, 0, 0.1)", fontSize: "16px", overflow: "auto", }); } } function parseCustomUrlEncodedData(dataString) { const parts = dataString.split("&"); const objects = []; parts.forEach((part) => { const [key, encodedValue] = part.split("="); const decodedValue = decodeURIComponent(encodedValue); const parsedValue = JSON.parse(decodedValue); objects.push(parsedValue); }); let mergedObject = {}; objects.forEach((obj) => { Object.assign(mergedObject, obj); }); return mergedObject; } } var strtip = ""; var tipnum = 0; var enable = true; var strinput = ""; var strreport = "报告模板:\n"; const keyname = [ "JYJG1_JYJL1", "DTBZ1", "JYJG2_JYJL1", "DTBZ2", "JYJG3_JYJL1", "DTBZ3", "JYJG4_JYJL2", "DTBZ4", "JYJG5_JYJL2", "DTBZ5", "JYJG6_JYJL3", "DTBZ6", "JYJG7_JYJL4", "DTBZ7", "JYJG8_JYJL4", "DTBZ8", "JYJG9_JYJL4", "DTBZ9", "JYJG10_JYJL4", "DTBZ10", "JYJG11_JYJL5", "DTBZ11", "JYJG12_JYJL6", "DTBZ12", "JYJG13_JYJL6", "DTBZ13", "JYJG14_JYJL6", "DTBZ14", "JYJG15_JYJL6", "DTBZ15", "JYJG16_JYJL7", "DTBZ16", "JYJG17_JYJL8", "DTBZ17", "JYJG18_JYJL8", "DTBZ18", "JYJG19_JYJL9", "DTBZ19", "JYJG20_JYJL10", "DTBZ20", "JYJG21_JYJL11", "DTBZ21", "JYJG22_JYJL12", "DTBZ22", "JYJG23_JYJL12", "DTBZ23", "JYJG24_JYJL12", "DTBZ24", "JYJG25_JYJL13", "DTBZ25", "JYJG26_JYJL13", "DTBZ26", "JYJG27_JYJL13", "DTBZ27", "JYJG28_JYJL13", "DTBZ28", "JYJG29_JYJL13", "DTBZ29", "JYJG30_JYJL14", "DTBZ30", "JYJG31_JYJL14", "DTBZ31", "JYJG32_JYJL15", "DTBZ32", "JYJG33_JYJL15", "DTBZ33", "JYJG34_JYJL15", "DTBZ34", "JYJG35_JYJL16", "DTBZ35", "JYJG36_JYJL17", "DTBZ36", "JYJG37_JYJL18", "DTBZ37", "JYJG38_JYJL18", "DTBZ38", "JYJG39_JYJL18", "DTBZ39", "JYJG40_JYJL18", "DTBZ40", "JYJG41_JYJL19", "DTBZ41", "JYJG42_JYJL20", "DTBZ42", "JYJG43_JYJL21", "DTBZ43", "JYJG44_JYJL21", "DTBZ44", "JYJG45_JYJL21", "DTBZ45", "JYJG46_JYJL21", "DTBZ46", "JYJG47_JYJL22", "DTBZ47", "JYJG48_JYJL22", "DTBZ48", "JYJG49_JYJL23", "DTBZ49", "DTSJ503", "JYJG50_JYJL24", "DTBZ50", "DTSJ504", "JYJG51_JYJL24", "DTBZ51", "JYJG52_JYJL25", "DTBZ52", "JYJG53_JYJL26", "DTBZ53", "JYJG54_JYJL26", "DTBZ54", "JYJG55_JYJL26", "DTBZ55", "JYJG56_JYJL27", "DTBZ56", "JYJG57_JYJL27", "DTBZ57", "JYJG58_JYJL28", "DTBZ58", "JYJG59_JYJL28", "DTBZ59", "JYJG60_JYJL29", "DTBZ60", "DTSJ700", "JYJG61_JYJL29", "DTBZ61", "JYJG62_JYJL29", "DTBZ62", "JYJG63_JYJL29", "DTBZ63", "JYJG64_JYJL30", "DTBZ64", "JYJG65_JYJL30", "DTBZ65", "JYJG66_JYJL30", "DTBZ66", "DTSJ702", "JYJG67_JYJL31", "DTBZ67", "DTSJ74", "JYJG68_JYJL31", "DTBZ68", "JYJG69_JYJL32", "DTBZ69", "JYJG70_JYJL33", "DTBZ70", "JYJG71_JYJL33", "DTBZ71", "JYJG72_JYJL34", "DTBZ72", "JYJG73_JYJL34", "DTBZ73", "JYJG74_JYJL34", "DTBZ74", "JYJG75_JYJL34", "DTBZ75", "JYJG76_JYJL35", "DTBZ76", "JYJG77_JYJL36", "DTBZ77", "JYJG78_JYJL36", "DTBZ78", "JYJG79_JYJL38", "DTBZ79", "JYJG80_JYJL39", "DTBZ80", "JYJG81_JYJL39", "DTBZ81", "JYJG82_JYJL39", "DTBZ82", "JYJG83_JYJL39", "DTBZ83", "JYJG84_JYJL40", "DTBZ84", "JYJG85_JYJL40", "DTBZ85", "JYJG86_JYJL40", "DTBZ86", "JYJG87_JYJL40", "DTBZ87", "JYJG88_JYJL41", "DTBZ88", "JYJG89_JYJL41", "DTBZ89", "JYJG90_JYJL42", "DTBZ90", "JYJG91_JYJL43", "DTBZ91", ]; var keyvalarr1 = null, keyvalarr2 = null, keyvalarr3 = null, keyvalarr4 = null; function main() { XiaoHe(); } function XiaoHe() { //alert(gett("DTSJ700")) if (1) { keyvalarr1 = { REPORTNO: "NTD11202405871", 使用单位名称: "宁夏永建建筑工程有限公司", 设备代码: "311010339201203353", SHEBEILEIBIE: "曳引与强制驱动电梯", "内部(全面)检验日期(电类定检)": "2024年04月17日", }; keyvalarr2 = { 使用单位名称: "宁夏永建建筑工程有限公司", 使用单位组织机构代码: "916401212279302618", "设备使用(所在)地点": "永宁县团结社区日间照料中心", 设备分类代码: "曳引驱动乘客电梯", 设备型号: "DPN35", "产品编号(出厂编号)": "202209146", 使用证编号: "56", 安全管理人员: "张飞", 安全管理人员联系电话: "09514100765", 制造单位: "苏州德奥电梯有限公司", 制造日期: "2006年09月26日", GZDWMC: "-", 改造监督检验日期: "-", 维保单位名称: "宁夏通宇电梯制造发展股份有限公司", ZDSYRQ: "2023年04月", 安装监督检验日期: "2016年06月", 是否加装电梯: "否", 是否住宅电梯: "否", "内部(全面)下次检验日期(电类定检)": "2025年04月", 电梯额定载荷: "800", 电梯运行速度: "1.5", 电梯层站: "6", 电梯站数: "6", 电梯门数: "6", 控制方式: "单台集选控制", DTJYYJ: "《电梯监督检验和定期检验规则》(TSG T7001-2023)", JYYQSB: "详见(2)号工具箱", DTBZCS3: "-", DTBZCS4: "-", XCJYTJ: "符合", XCAQTJ: "符合", "内部(全面)检验结论(电类定检)": "合格", JYRY: "", "内部(全面)检验日期(电类定检)": "2024年04月17日", JHRY: "", JHRQ: "", }; keyvalarr3 = { JYJG1_JYJL1: "", DTBZ1: "-", JYJG2_JYJL1: "×", DTBZ2: "-", JYJG3_JYJL1: "×", DTBZ3: "-", JYJG4_JYJL2: "×", DTBZ4: "-", JYJG5_JYJL2: "√", DTBZ5: "-", JYJG6_JYJL3: "√", DTBZ6: "-", JYJG7_JYJL4: "√", DTBZ7: "-", JYJG8_JYJL4: "-", DTBZ8: "-", JYJG9_JYJL4: "√", DTBZ9: "-", JYJG10_JYJL4: "√", DTBZ10: "-", JYJG11_JYJL5: "√", DTBZ11: "-", JYJG12_JYJL6: "-", DTBZ12: "-", JYJG13_JYJL6: "-", DTBZ13: "-", JYJG14_JYJL6: "-", DTBZ14: "-", JYJG15_JYJL6: "-", DTBZ15: "-", JYJG16_JYJL7: "√", DTBZ16: "-", JYJG17_JYJL8: "-", DTBZ17: "-", JYJG18_JYJL8: "-", DTBZ18: "-", JYJG19_JYJL9: "-", DTBZ19: "-", JYJG20_JYJL10: "√", DTBZ20: "-", JYJG21_JYJL11: "√", DTBZ21: "-", JYJG22_JYJL12: "√", DTBZ22: "-", JYJG23_JYJL12: "√", DTBZ23: "-", JYJG24_JYJL12: "-", DTBZ24: "-", JYJG25_JYJL13: "√", DTBZ25: "-", JYJG26_JYJL13: "√", DTBZ26: "-", JYJG27_JYJL13: "√", DTBZ27: "-", JYJG28_JYJL13: "-", DTBZ28: "-", JYJG29_JYJL13: "√", DTBZ29: "-", JYJG30_JYJL14: "-", DTBZ30: "-", JYJG31_JYJL14: "√", DTBZ31: "-", JYJG32_JYJL15: "√", DTBZ32: "-", JYJG33_JYJL15: "-", DTBZ33: "-", JYJG34_JYJL15: "-", DTBZ34: "-", JYJG35_JYJL16: "√", DTBZ35: "-", JYJG36_JYJL17: "-", DTBZ36: "-", JYJG37_JYJL18: "√", DTBZ37: "-", JYJG38_JYJL18: "√", DTBZ38: "-", JYJG39_JYJL18: "√", DTBZ39: "-", JYJG40_JYJL18: "√", DTBZ40: "-", JYJG41_JYJL19: "-", DTBZ41: "-", JYJG42_JYJL20: "-", DTBZ42: "-", }; keyvalarr4 = { JYJG43_JYJL21: "√", DTBZ43: "-", JYJG44_JYJL21: "√", DTBZ44: "-", JYJG45_JYJL21: "-", DTBZ45: "-", JYJG46_JYJL21: "√", DTBZ46: "-", JYJG47_JYJL22: "√", DTBZ47: "-", JYJG48_JYJL22: "√", DTBZ48: "-", JYJG49_JYJL23: "×", DTBZ49: "-", DTSJ503: "≤6", JYJG50_JYJL24: "√", DTBZ50: "-", DTSJ504: "≤45", JYJG51_JYJL24: "√", DTBZ51: "-", JYJG52_JYJL25: "√", DTBZ52: "-", JYJG53_JYJL26: "√", DTBZ53: "-", JYJG54_JYJL26: "√", DTBZ54: "-", JYJG55_JYJL26: "√", DTBZ55: "-", JYJG56_JYJL27: "√", DTBZ56: "-", JYJG57_JYJL27: "√", DTBZ57: "-", JYJG58_JYJL28: "√", DTBZ58: "-", JYJG59_JYJL28: "√", DTBZ59: "-", JYJG60_JYJL29: "√", DTBZ60: "-", DTSJ700: "7", JYJG61_JYJL29: "√", DTBZ61: "-", JYJG62_JYJL29: "√", DTBZ62: "-", JYJG63_JYJL29: "√", DTBZ63: "-", JYJG64_JYJL30: "√", DTBZ64: "-", JYJG65_JYJL30: "√", DTBZ65: "-", JYJG66_JYJL30: "√", DTBZ66: "-", DTSJ702: "45", JYJG67_JYJL31: "√", DTBZ67: "-", DTSJ74: "23", JYJG68_JYJL31: "-", DTBZ68: "-", JYJG69_JYJL32: "√", DTBZ69: "-", JYJG70_JYJL33: "√", DTBZ70: "-", JYJG71_JYJL33: "√", DTBZ71: "-", JYJG72_JYJL34: "√", DTBZ72: "-", JYJG73_JYJL34: "√", DTBZ73: "-", JYJG74_JYJL34: "√", DTBZ74: "-", JYJG75_JYJL34: "√", DTBZ75: "-", JYJG76_JYJL35: "√", DTBZ76: "-", JYJG77_JYJL36: "-", DTBZ77: "-", JYJG78_JYJL36: "-", DTBZ78: "-", JYJG79_JYJL38: "√", DTBZ79: "-", JYJG80_JYJL39: "-", DTBZ80: "-", JYJG81_JYJL39: "√", DTBZ81: "-", JYJG82_JYJL39: "√", DTBZ82: "-", JYJG83_JYJL39: "√", DTBZ83: "-", JYJG84_JYJL40: "-", DTBZ84: "-", JYJG85_JYJL40: "-", DTBZ85: "-", JYJG86_JYJL40: "-", DTBZ86: "-", JYJG87_JYJL40: "√", DTBZ87: "-", JYJG88_JYJL41: "√", DTBZ88: "-", JYJG89_JYJL41: "√", DTBZ89: "-", JYJG90_JYJL42: "√", DTBZ90: "-", JYJG91_JYJL43: "√", DTBZ91: "-", }; } var keyvalArr = { ...keyvalarr1, ...keyvalarr2, ...keyvalarr3, ...keyvalarr4, }; const dat = replaceValuesWithFun(keyvalArr, gett); if (1) { if (1) { if (getdtt("使用单位:") === "") { addstrtip("使用单位名称为空!"); //highlightedFields.push(ddh('使用单位:')) } if (getdtt("设备代码:") === "") { addstrtip("设备代码为空!"); } if (getdtt("设备类别:") === "") { addstrtip("设备类别为空!"); } if (getdtt("检验日期:") === "") { addstrtip("封面检验日期为空!"); } } //概况 if (1) { if (gethtt("使用单位名称") === "") { addstrtip("概况使用单位名称为空!"); } if (gethtt("统一社会信用代码") === "") { addstrtip("统一社会信用代码为空!"); }if (gethtt("安装地点") === "") { addstrtip("安装地点为空!"); } if (gethtt("设备品种") === "") { addstrtip("设备品种为空!"); } if (gethtt("产品型号") === "") { addstrtip("产品型号为空!"); } if (gethtt("产品编号") === "") { addstrtip("产品编号为空!"); } if (gethtt("单位内编号") === "") { addstrtip("单位内编号为空!"); } if (gethtt("使用登记证编号") === "") { addstrtip("使用登记证编号为空!"); } if (gethtt("安全管理人员") === "") { addstrtip("安全管理人员为空!"); }if (gethtt("电话") === "") { addstrtip("安全管理人员联系电话为空!"); } if (gethtt("制造单位名称") === "") { addstrtip("制造单位名称为空!"); } if (gethtt("制造日期") === "") { addstrtip("制造日期为空!"); } if (gethtt("改造单位名称") === "") { addstrtip("改造单位名称为空!"); } if (gethtt("改造日期") === "") { addstrtip("改造日期为空!"); } if (gethtt("维护保养单位名称") === "") { addstrtip("维保单位名称为空!"); } if (gethtt("最近一次制动试验确认日期") === "") { addstrtip("最近一次制动试验确认日期为空!"); } if (gethtt("监督检验日期") === "") { addstrtip("监督检验日期为空!"); } if (gethtt("是否加装电梯") === "") { addstrtip("是否加装电梯信息为空!"); } if (gethtt("是否住宅电梯") === "") { addstrtip("是否住宅电梯信息为空!"); } if (gethtt("下次检验日期") === "") { addstrtip("下次检验日期为空!"); } if (gethtt("额定载重量") === "") { addstrtip("电梯额定载荷为空!"); } if (gethtt("额定速度") === "") { addstrtip("电梯运行速度为空!"); } if (dat.电梯层站 === "") { addstrtip("电梯层站为空!"); } if (dat.电梯站数 === "") { addstrtip("电梯站数为空!"); } if (dat.电梯门数 === "") { addstrtip("电梯门数为空!"); } if (gethtt("控制方式") === "") { addstrtip("控制方式为空!"); } if (gethtt("检验依据") === "") { addstrtip("检验依据为空!"); } if (gethtt("主要检验仪器设备") === "") { addstrtip("主要检验仪器设备为空!"); } if (gethtt("备注") === "") { addstrtip("概况备注为空!"); } if (getdt("XCJYTJ") === "") { addstrtip("现场检验条件为空!"); } if (getdt("XCAQTJ") === "") { addstrtip("现场安全条件为空!"); } if (getdt("内部(全面)检验结论(电类定检)") === "") { addstrtip("检验结论为空!"); } if (getdt("内部(全面)检验日期(电类定检)") === "") { addstrtip("概况检验日期为空!"); } } if (1) { if (gett("JYJG1_JYJL1") === "") { addstrtip("第1项第1个检验结果为空!"); } if (gett("JYJG2_JYJL1") === "") { addstrtip("第1项第2个检验结果为空!"); } if (gett("JYJG3_JYJL1") === "") { addstrtip("第1项第3个检验结果空!"); } if (gett("JYJG4_JYJL2") === "") { addstrtip("第2项第1个检验结果空!"); } if (gett("JYJG5_JYJL2") === "") { addstrtip("第2项第2个检验结果空!"); } if (gett("JYJG6_JYJL3") === "") { addstrtip("第3项第1个检验结果空!"); } if (gett("JYJG7_JYJL4") === "") { addstrtip("第4项第1个检验结果空!"); } if (gett("JYJG8_JYJL4") === "") { addstrtip("第4项第2个检验结果空!"); } if (gett("JYJG9_JYJL4") === "") { addstrtip("第4项第3个检验结果空!"); } if (gett("JYJG10_JYJL4") === "") { addstrtip("第4项第4个检验结果空!"); } if (gett("JYJG11_JYJL5") === "") { addstrtip("第5项第1个检验结果空!"); } } if (1) { if (gett("JYJG12_JYJL6") === "") { addstrtip("第6项第1个检验结果为空!"); } if (gett("JYJG13_JYJL6") === "") { addstrtip("第6项第2个检验结果为空!"); } if (gett("JYJG14_JYJL6") === "") { addstrtip("第6项第3个检验结果为空!"); } if (gett("JYJG15_JYJL6") === "") { addstrtip("第6项第4个检验结果为空!"); } if (gett("JYJG16_JYJL7") === "") { addstrtip("第7项第1个检验结果为空!"); } if (gett("JYJG17_JYJL8") === "") { addstrtip("第8项第1个检验结果为空!"); } if (gett("JYJG18_JYJL8") === "") { addstrtip("第8项第2个检验结果为空!"); } if (gett("JYJG19_JYJL9") === "") { addstrtip("第9项第1个检验结果为空!"); } if (gett("JYJG20_JYJL10") === "") { addstrtip("第10项第1个检验结果为空!"); } } if (1) { if (gett("JYJG21_JYJL11") === "") { addstrtip("第11项第1个检验结果为空!"); } if (gett("JYJG22_JYJL12") === "") { addstrtip("第12项第1个检验结果为空!"); } if (gett("JYJG23_JYJL12") === "") { addstrtip("第12项第2个检验结果为空!"); } if (gett("JYJG24_JYJL12") === "") { addstrtip("第12项第3个检验结果为空!"); } if (gett("JYJG25_JYJL13") === "") { addstrtip("第13项第1个检验结果为空!"); } if (gett("JYJG26_JYJL13") === "") { addstrtip("第13项第2个检验结果为空!"); } if (gett("JYJG27_JYJL13") === "") { addstrtip("第13项第3个检验结果为空!"); } if (gett("JYJG28_JYJL13") === "") { addstrtip("第13项第4个检验结果为空!"); } if (gett("JYJG29_JYJL13") === "") { addstrtip("第13项第5个检验结果为空!"); } if (gett("JYJG30_JYJL14") === "") { addstrtip("第14项第1个检验结果为空!"); } if (gett("JYJG31_JYJL14") === "") { addstrtip("第14项第2个检验结果为空!"); } if (gett("JYJG32_JYJL15") === "") { addstrtip("第15项第1个检验结果为空!"); } if (gett("JYJG33_JYJL15") === "") { addstrtip("第15项第2个检验结果为空!"); } if (gett("JYJG34_JYJL15") === "") { addstrtip("第15项第3个检验结果为空!"); } } if (1) { if (gett("JYJG35_JYJL16") === "") { addstrtip("第16项第1个检验结果为空!"); } if (gett("JYJG36_JYJL17") === "") { addstrtip("第17项第1个检验结果为空!"); } if (gett("JYJG37_JYJL18") === "") { addstrtip("第18项第1个检验结果为空!"); } if (gett("JYJG38_JYJL18") === "") { addstrtip("第18项第2个检验结果为空!"); } if (gett("JYJG39_JYJL18") === "") { addstrtip("第18项第3个检验结果为空!"); } if (gett("JYJG40_JYJL18") === "") { addstrtip("第18项第4个检验结果为空!"); } if (gett("JYJG41_JYJL19") === "") { addstrtip("第19项第1个检验结果为空!"); } if (gett("JYJG42_JYJL20") === "") { addstrtip("第20项第1个检验结果为空!"); } } if (1) { if (gett("JYJG43_JYJL21") === "") { addstrtip("第21项第1个检验结果为空!"); } if (gett("JYJG44_JYJL21") === "") { addstrtip("第21项第2个检验结果为空!"); } if (gett("JYJG45_JYJL21") === "") { addstrtip("第21项第3个检验结果为空!"); } if (gett("JYJG46_JYJL21") === "") { addstrtip("第21项第4个检验结果为空!"); } if (gett("JYJG47_JYJL22") === "") { addstrtip("第22项第1个检验结果为空!"); } if (gett("JYJG48_JYJL22") === "") { addstrtip("第22项第2个检验结果为空!"); } if (gett("JYJG49_JYJL23") === "") { addstrtip("第23项第1个检验结果为空!"); } if (gett("JYJG50_JYJL24") === "") { addstrtip("第24项第1个检验结果为空!"); } if (gett("JYJG51_JYJL24") === "") { addstrtip("第24项第2个检验结果为空!"); } if (gett("JYJG52_JYJL25") === "") { addstrtip("第25项第1个检验结果为空!"); } } if (1) { if (gett("JYJG53_JYJL26") === "") { addstrtip("第26项第1个检验结果为空!"); } if (gett("JYJG54_JYJL26") === "") { addstrtip("第26项第2个检验结果为空!"); } if (gett("JYJG55_JYJL26") === "") { addstrtip("第26项第3个检验结果为空!"); } if (gett("JYJG56_JYJL27") === "") { addstrtip("第27项第1个检验结果为空!"); } if (gett("JYJG57_JYJL27") === "") { addstrtip("第27项第2个检验结果为空!"); } if (gett("JYJG58_JYJL28") === "") { addstrtip("第28项第1个检验结果为空!"); } if (gett("JYJG59_JYJL28") === "") { addstrtip("第28项第2个检验结果为空!"); } if (gett("JYJG60_JYJL29") === "") { addstrtip("第29项第1个检验结果为空!"); } if (gett("JYJG61_JYJL29") === "") { addstrtip("第29项第2个检验结果为空!"); } if (gett("JYJG62_JYJL29") === "") { addstrtip("第29项第3个检验结果为空!"); } if (gett("JYJG63_JYJL29") === "") { addstrtip("第29项第4个检验结果为空!"); } if (gett("JYJG64_JYJL30") === "") { addstrtip("第30项第1个检验结果为空!"); } if (gett("JYJG65_JYJL30") === "") { addstrtip("第30项第2个检验结果为空!"); } if (gett("JYJG66_JYJL30") === "") { addstrtip("第30项第3个检验结果为空!"); } } if (1) { if (gett("JYJG67_JYJL31") === "") { addstrtip("第31项第1个检验结果为空!"); } if (gett("JYJG68_JYJL31") === "") { addstrtip("第31项第2个检验结果为空!"); } if (gett("JYJG69_JYJL32") === "") { addstrtip("第32项第1个检验结果为空!"); } if (gett("JYJG70_JYJL33") === "") { addstrtip("第33项第1个检验结果为空!"); } if (gett("JYJG71_JYJL33") === "") { addstrtip("第33项第2个检验结果为空!"); } if (gett("JYJG72_JYJL34") === "") { addstrtip("第34项第1个检验结果为空!"); } if (gett("JYJG73_JYJL34") === "") { addstrtip("第34项第2个检验结果为空!"); } if (gett("JYJG74_JYJL34") === "") { addstrtip("第34项第3个检验结果为空!"); } if (gett("JYJG75_JYJL34") === "") { addstrtip("第34项第4个检验结果为空!"); } if (gett("JYJG76_JYJL35") === "") { addstrtip("第35项第1个检验结果为空!"); } } if (1) { if (gett("JYJG77_JYJL36") === "") { addstrtip("第36项第1个检验结果为空!"); } if (gett("JYJG78_JYJL36") === "") { addstrtip("第37项第1个检验结果为空!"); } if (gett("JYJG79_JYJL38") === "") { addstrtip("第38项第1个检验结果为空!"); } if (gett("JYJG80_JYJL39") === "") { addstrtip("第39项第1个检验结果为空!"); } if (gett("JYJG81_JYJL39") === "") { addstrtip("第39项第2个检验结果为空!"); } if (gett("JYJG82_JYJL39") === "") { addstrtip("第39项第3个检验结果为空!"); } if (gett("JYJG83_JYJL39") === "") { addstrtip("第39项第4个检验结果为空!"); } if (gett("JYJG84_JYJL40") === "") { addstrtip("第40项第1个检验结果为空!"); } if (gett("JYJG85_JYJL40") === "") { addstrtip("第40项第2个检验结果为空!"); } if (gett("JYJG86_JYJL40") === "") { addstrtip("第40项第3个检验结果为空!"); } if (gett("JYJG87_JYJL40") === "") { addstrtip("第40项第4个检验结果为空!"); } } if (1) { if (gett("JYJG88_JYJL41") === "") { addstrtip("第41项第1个检验结果为空!"); } if (gett("JYJG89_JYJL41") === "") { addstrtip("第41项第2个检验结果为空!"); } if (gett("JYJG90_JYJL42") === "") { addstrtip("第42项第1个检验结果为空!"); } if (gett("JYJG91_JYJL43") === "") { addstrtip("第43项第1个检验结果为空!"); } } if (1) { if ( document.getElementById("17015040141996243").innerText.trim() === "" ) { addstrtip("第24项(1)测量值为空!"); } if ( document.getElementById("1702641013571d39a").innerText.trim() === "" ) { addstrtip("第24项(1)测量值为空!"); } if ( document.getElementById("1702640910772148a").innerText.trim() === "" ) { addstrtip("第24项(1)测量值为空!"); } if ( document.getElementById("1710468205387ca88").innerText.trim() === "" ) { addstrtip("第24项(1)测量值为空!"); } if ( document.getElementById("1701504018295d212").innerText.trim() === "" ) { addstrtip("第24项(1)测量值为空!"); } } } if (1) { var username = document .getElementById("1581261202417784a") .innerText.trim(); if (!/^[\u4e00-\u9fa5\(\)\(\)]{1,39}$/g.test(username)) { addstrtip("注意封面使用单位名称!"); } var usernameGK = document .getElementById("1555396405619039a") .innerText.trim(); if (username != usernameGK) { addstrtip("封面与概况使用单位名称不一致!"); } if (1) { if (gett("设备代码") != "-") { const regex = /^(3110|3120)\d{5,6}(\d{4})\d{5,6}$/; if (regex.test(gett("设备代码"))) { const sbdmfm = gett("设备代码").match(/^(\d{4})(\d{14}|\d{16})$/); if ( /^3110$/.test(sbdmfm[1]) && !/^曳引驱动乘客电梯$/.test(gett("设备分类代码")) ) { addstrtip('封面设备代码3110表示"曳引驱动乘客电梯"!'); } if ( /^3120$/.test(sbdmfm[1]) && !/^曳引驱动载货电梯$/.test(gett("设备分类代码")) ) { addstrtip('封面设备代码3120表示"曳引驱动载货电梯"!'); } } else { addstrtip("封面设备代码格式错误!"); } } } if (!/^曳引与强制驱动电梯$/.test(gett("SHEBEILEIBIE"))) { addstrtip("封面设备类别错误!"); } var jyrq = document .getElementById("1710387041337455d") .innerText.trim() .replace(/年|月|日/g, "-") .slice(0, -1); //封面检验日期 jyrq = YearMonthToYearMonthDay(jyrq); if ( /^\d{4}年\d{1,2}月\d{1,2}日$/.test( document.getElementById("1710387041337455d").innerText.trim() ) ) { } else { addstrtip("封面检验日期格式为xxxx年xx月xx日"); } if (!ZifuchuanIsDate(jyrq)) { addstrtip("封面检验日期格式错误!"); } } if (1) { if (!/^-$/.test(gett("使用单位组织机构代码"))) { if (!/^[^IOZSV]{18}$/.test(gett("使用单位组织机构代码"))) { addstrtip("统一社会信用代码错误!"); } // 检查特定位置的字符是否为"640" const slice = gett("使用单位组织机构代码").substring(2, 5); // 提取第3、4、5位字符 if (slice != "640") { addstrtip("统一社会信用代码" + slice + "显示注册地不在宁夏!"); } } if (!/^(曳引驱动乘客电梯|曳引驱动载货电梯)$/.test(gett("设备分类代码"))) { addstrtip("设备品种错误!"); } if (gett("设备型号") != "不明") { if (!/^[a-zA-Z0-9\s-]+$/gi.test(gett("设备型号"))) { addstrtip("注意型号!"); } } if (gett("设备型号") === "-") { addstrtip("产品型号找不到的填“不明”"); } if (gett("产品编号(出厂编号)") != "不明") { if (!/^[a-z0-9\s\-]+$/gi.test(gett("产品编号(出厂编号)"))) { addstrtip("注意产品编号!"); } } if (gett("产品编号(出厂编号)") === "-") { addstrtip("产品编号找不到的填“不明”"); } if (1) { if (gett("使用证编号") != "-") { if (isValidSYDJFormat(gett("使用证编号"))) { const sbdmfm = gett("使用证编号").match(/^(\d{4})*$/); if ( /^3110$/.test(sbdmfm[1]) && !/^曳引驱动乘客电梯$/.test(gett("设备分类代码")) ) { addstrtip('使用登记证编号3110表示"曳引驱动乘客电梯"!'); } if ( /^3120$/.test(sbdmfm[1]) && !/^曳引驱动载货电梯$/.test(gett("设备分类代码")) ) { addstrtip('使用登记证编号3120表示"曳引驱动载货电梯"!'); } } else { const regex = /^梯(11|12)[宁](A|B|C|D|E)\d{5}[\(\(]\d{2}[\)\)]$/; if (regex.test(gett("使用证编号"))) { const match = gett("使用证编号").match(regex); if (match) { if ( /^11$/.test(match[1]) && !/^曳引驱动乘客电梯$/.test(gett("设备分类代码")) ) { addstrtip('使用登记证编号11表示"曳引驱动乘客电梯"!'); } if ( /^12$/.test(match[1]) && !/^曳引驱动载货电梯$/.test(gett("设备分类代码")) ) { addstrtip('使用登记证编号12表示"曳引驱动载货电梯"!'); } if (!/^A$/.test(match[2])) { addstrtip('使用登记证注册地不在银川"!'); } } } else { addstrtip('使用登记证编号格式错误"!'); } } } } if (!/^[\u4e00-\u9fa5]{2,4}$/g.test(gett("安全管理人员"))) { addstrtip("注意安全管理人员!"); } if (!/^(1[3-9]\d{9}|\d{4}-?\d{7})$/g.test(gett("安全管理人员联系电话"))) { addstrtip("安全管理人员电话不正确!"); } if (1) { if (!/^[\u4e00-\u9fa5]{1,39}$/g.test(gett("制造单位"))) { addstrtip("注意制造单位名称!"); } if (gett("制造日期") === "-") { addstrtip("制造日期查不到填“不明”!"); } else { if (gett("制造日期") != "不明") { var zhizaorq = document .getElementById("1555396405618f688") .innerText.trim() .replace(/年|月|日/g, "-") .slice(0, -1); // 封面检验日期 jyrq = YearMonthToYearMonthDay(jyrq); if (!ZifuchuanIsDate(jyrq)) { addstrtip("制造日期格式错误!"); } } } if (!/^(-|[\u4e00-\u9fa5]{1,39})$/g.test(gett("GZDWMC"))) { addstrtip("注意改造单位名称!"); } if (gett("改造监督检验日期") === "不明") { addstrtip("未进行改造或查不出改造日期填“-”!"); } if ( /^-$/g.test(gett("GZDWMC")) && !/^-$/g.test(gett("改造监督检验日期")) ) { addstrtip("注意改造单位名称与改造日期的关系!"); } if ( !/^-$/g.test(gett("GZDWMC")) && /^-$/g.test(gett("改造监督检验日期")) ) { addstrtip("注意改造单位名称与改造日期的关系!"); } if (!/^-$/g.test(gett("改造监督检验日期"))) { var gaizaorq = document .getElementById("1710388733083adc5") .innerText.trim() .replace(/年|月|日/g, "-") .slice(0, -1); //封面检验日期 gaizaorq = YearMonthToYearMonthDay(gaizaorq); if (!ZifuchuanIsDate(gaizaorq)) { addstrtip("改造日期格式错误!"); } } } if (!/^[\u4e00-\u9fa5\(\)\(\)]{1,39}$/g.test(gett("维保单位名称"))) { addstrtip("注意维保单位名称!"); } var zhidongrq = document .getElementById("1710148356446ba4c") .innerText.trim() .replace(/年|月|日/g, "-") .slice(0, -1); //封面检验日期 zhidongrq = YearMonthToYearMonthDay(zhidongrq); if (!ZifuchuanIsDate(zhidongrq)) { addstrtip("最近一次制动试验确认日期格式错误!"); } var jiandurq = document .getElementById("17101483999266548") .innerText.trim() .replace(/年|月|日/g, "-") .slice(0, -1); //封面检验日期 jiandurq = YearMonthToYearMonthDay(jiandurq); if (!ZifuchuanIsDate(jiandurq)) { addstrtip("监督日期格式错误!"); } if (!/^(是|否)$/.test(gett("是否加装电梯"))) { addstrtip("是否加装错误!"); } if (!/^(是|否)$/.test(gett("是否住宅电梯"))) { addstrtip("是否住宅错误!"); } var gkxiacijianyanriqi = document .getElementById("171038882039234f4") .innerText.trim() .replace(/年|月|日/g, "-") .slice(0, -1); //下次检验日期 if ( !/^\d{4}年\d{2}月$/.test(gett("内部(全面)下次检验日期(电类定检)")) ) { addstrtip("下次检验日期精确到月!"); } gkxiacijianyanriqi = YearMonthToYearMonthDay(gkxiacijianyanriqi); if (!ZifuchuanIsDate(gkxiacijianyanriqi)) { addstrtip("下次检验日期格式错误!"); } if (1) { if (!/^([1-9]\d*(\.\d+)?|0\.\d+)$/.test(gett("电梯额定载荷"))) { addstrtip("额定载荷错误!"); } if (!/^([1-9]\d*(\.\d+)?|0\.\d+)$/.test(gett("电梯运行速度"))) { addstrtip("额定速度错误!"); } if (/^曳引驱动乘客电梯$/.test(gett("设备分类代码"))) { const standardLoads = [450, 630, 800, 1000, 1050, 1250, 1600]; if (!standardLoads.includes(parseFloat(gett("电梯额定载荷")))) { addstrtip("额定载荷不是常见量450, 630, 800, 1000, 1250, 1600!"); } const standardSpeeds = [1, 1.5, 1.75, 2, 2.5]; if (!standardSpeeds.includes(parseFloat(gett("电梯运行速度")))) { addstrtip("额定速度不是常见量1, 1.5, 1.75, 2, 2.5!"); } } if (/^曳引驱动载货电梯$/.test(gett("设备分类代码"))) { const standardLoads = [1000, 1250, 1600, 2000, 3000]; if (!standardLoads.includes(parseFloat(gett("电梯额定载荷")))) { addstrtip("额定载荷不是常见量1000, 1250, 1600, 2000, 3000!"); } const standardSpeeds = [0.5]; if (!standardSpeeds.includes(parseFloat(gett("电梯运行速度")))) { addstrtip("额定速度不是常见量0.5!"); } } } if (1) { const dtcz = document .getElementById("1591338788552be31") .innerText.trim(); const dtzs = document .getElementById("15554041568959913") .innerText.trim(); const dtms = document .getElementById("1555404248649fa78") .innerText.trim(); if ( !( isNormalInteger(dtcz) && isNormalInteger(dtzs) && isNormalInteger(dtms) ) ) { addstrtip("层站门数不是正整数!"); } if ( parseInt(dtcz) < parseInt(dtzs) || parseInt(dtzs) * 2 < parseInt(dtms) ) { addstrtip("注意层站门数是否合理!"); } } if (1) { const validControlTypes = [ "集选控制", "信号控制", "单台集选控制", "两台并联控制", "多台群组控制", ]; if (!validControlTypes.includes(gett("控制方式"))) { addstrtip( "控制方式不是常见控制:集选控制,信号控制,单台集选控制,两台并联控制,多台群组控制!" ); } } if (1) { const gjxjh = validateAndExplainCode(gett("JYYQSB")); const tip = gjxjh.message; let bjtip = "工具箱" + tip; addstrtip(bjtip); } if (1) { if (!/^符合$/.test(gett("XCJYTJ"))) { addstrtip("检验现场条件确认不是“符合”!"); } if (!/^符合$/.test(gett("XCAQTJ"))) { addstrtip("检验现场安全确认不是“符合”!"); } if (!/^合格$/.test(gett("内部(全面)检验结论(电类定检)"))) { addstrtip("检验结论不是“合格”!"); } if ( /^不符合$/.test(gett("XCJYTJ")) && /^合格$/.test(gett("内部(全面)检验结论(电类定检)")) ) { addstrtip("检验结论与检验现场条件确认矛盾!"); } if ( /^不符合$/.test(gett("XCAQTJ")) && /^合格$/.test(gett("内部(全面)检验结论(电类定检)")) ) { addstrtip("检验结论与检验现场安全确认矛盾!"); } } if (1) { if ( /^[合格,整改后合格]$/.test(gett("内部(全面)检验结论(电类定检)")) ) { if ( document.getElementById("1710387041337455d").innerText.trim() === "-" ) { addstrtip("报告结论合格应该有下次检验日期!"); } } if (/^不合格$/.test(gett("内部(全面)检验结论(电类定检)"))) { if ( document.getElementById("1710387041337455d").innerText.trim() !== "-" ) { addstrtip("报告结论不合格下次检验日期为“-”!"); } } } if (1) { var jyrqgk = document .getElementById("1710387111107bbd2") .innerText.trim() .replace(/年|月|日/g, "-") .slice(0, -1); jyrqgk = YearMonthToYearMonthDay(jyrqgk); if (!ZifuchuanIsDate(jyrqgk)) { addstrtip("概况检验日期格式错误!"); } } const manufactureStr = gett("制造日期"); const supervisionStr = gett("安装监督检验日期"); const renovationStr = gett("改造监督检验日期"); const coverInspectionStr = document .getElementById("1710387041337455d") .innerText.trim(); const nextInspectionStr = gett("内部(全面)下次检验日期(电类定检)"); const lastBrakingStr = gett("ZDSYRQ"); const generalInspectionStr = document .getElementById("1710387111107bbd2") .innerText.trim(); if (coverInspectionStr !== generalInspectionStr) { addstrtip("封面检验日期和概况检验日期不一致!"); } const manufactureDate = parseDate(manufactureStr); const supervisionDate = parseDate(supervisionStr); const renovationDate = parseDate(renovationStr); const coverInspectionDate = parseDate(coverInspectionStr); const nextInspectionDate = parseDate(nextInspectionStr); const lastBrakingDate = parseDate(lastBrakingStr); if (1) { if (1) { const now = new Date(); const oneMonthInMillis = 30 * 24 * 60 * 60 * 1000; const diff = now - coverInspectionDate; if (!(diff >= 0 && diff < oneMonthInMillis)) { addstrtip("封面检验日期超出当前日期前一个月范围!"); } if (manufactureDate != null && manufactureDate >= now) { addstrtip("制造日期大于当前日期!"); } if (supervisionDate != null && supervisionDate >= now) { addstrtip("监督日期大于当前日期!"); } if (renovationDate != null && renovationDate >= now) { addstrtip("改造日期大于当前日期!"); } if (coverInspectionDate != null && coverInspectionDate > now) { addstrtip("检验日期大于当前日期!"); } if (lastBrakingDate != null && lastBrakingDate > now) { addstrtip("制动日期大于当前日期!"); } } if (1) { if (manufactureDate != null && supervisionDate != null) { if (!(manufactureDate <= supervisionDate)) { addstrtip("制造日期在监督日期之后!"); } } if (supervisionDate != null && renovationDate != null) { if (!(supervisionDate <= renovationDate)) { addstrtip("监督日期在改造日期之后!"); } } if (renovationDate != null && coverInspectionDate != null) { if (!(renovationDate <= coverInspectionDate)) { addstrtip("改造日期在检验日期之后!"); } } if (coverInspectionDate != null && nextInspectionDate != null) { if (!(coverInspectionDate <= nextInspectionDate)) { addstrtip("检验日期在下次检验日期之后!"); } } if (supervisionDate != null && lastBrakingDate != null) { if (!(supervisionDate <= lastBrakingDate)) { addstrtip("监督检验日期在最近制动日期之后!"); } } if (lastBrakingDate != null && coverInspectionDate != null) { if (!(lastBrakingDate <= coverInspectionDate)) { addstrtip("最近制动日期在检验日期之后!"); } } } if (1) { const serialRegex = /^(3110|3120)\d{5}(\d{4})\d{5}$/; const matchSerial = gett("设备代码").match(serialRegex); if (matchSerial) { const yearFromSerial = parseInt(matchSerial[2], 10); if (manufactureDate != null) { if (yearFromSerial > manufactureDate.getFullYear()) { addstrtip( "封面设备代码中的年份" + matchSerial[2] + "不应在制造日期之后" ); } } if (supervisionDate != null && manufactureDate === null) { if (yearFromSerial > supervisionDate.getFullYear()) { addstrtip( "封面设备代码中的年份" + matchSerial[2] + "不应在监督日期之后" ); } } } } if (1) { const regexsy = /^梯(11|12)[宁](A|B|C|D|E)\d{5}[\(\(](\d{2})[\)\)]$/; const matchsy = gett("使用证编号").match(regexsy); if (matchsy) { const yearShort = parseInt(matchsy[3], 10); const yearFull = yearShort >= 0 && yearShort <= 99 ? 2000 + yearShort : yearShort; const yearDate = new Date(yearFull, 0); if (supervisionDate != null) { if (yearDate < supervisionDate) { addstrtip( "使用登记证编号中的年份" + matchsy[3] + "在监督检验日期之前" ); } } if (manufactureDate != null && supervisionDate === null) { if (yearDate < manufactureDate) { addstrtip( "使用登记证编号中的年份" + matchsy[3] + "在制造检验日期之前" ); } } } } if (1) { const regexsy = /^(3110|3120)\d{6}(\d{4})\d{6}$/; const matchsy = gett("使用证编号").match(regexsy); if (matchsy) { const year = parseInt(matchsy[2], 10); const yearDate = new Date(year, 0); // 0 是一月份 if (supervisionDate != null) { if (yearDate < supervisionDate) { addstrtip( "使用登记证编号中的年份" + matchsy[2] + "在监督检验日期之前" ); } } if (manufactureDate != null && supervisionDate === null) { if (yearDate < manufactureDate) { addstrtip( "使用登记证编号中的年份" + matchsy[2] + "在制造检验日期之前" ); } } } } if (1) { if (supervisionDate != null && coverInspectionDate != null) { let lastBrakingDateCal = calculateBrakeDate( supervisionDate, new Date( coverInspectionDate.getFullYear(), supervisionDate.getMonth(), supervisionDate.getDate() ) ); if (lastBrakingDate != null && lastBrakingDateCal != null) { if ( lastBrakingDateCal.getFullYear() != lastBrakingDate.getFullYear() || lastBrakingDateCal.getMonth() != lastBrakingDate.getMonth() ) { const zjzdjc = elevatorInspection( supervisionDate, lastBrakingDateCal ); let jyztstr = ""; if (lastBrakingDateCal < new Date(2024, 3, 1)) { jyztstr = "检验"; } else { jyztstr = zjzdjc.result; } addstrtip( "注意最近一次制动日期是否应为:" + lastBrakingDateCal.getFullYear() + "年" + (lastBrakingDateCal.getMonth() + 1).toString() + "月,该日期属于" + jyztstr + "年份" ); } } } } if (supervisionDate != null && coverInspectionDate != null) { const yanzhengre = elevatorInspection( supervisionDate, coverInspectionDate ); if (yanzhengre.result != "错误") { if ( !( yanzhengre.date.getFullYear() === nextInspectionDate.getFullYear() && yanzhengre.date.getMonth() === nextInspectionDate.getMonth() ) ) { addstrtip( "注意下次检验日期是否应该是" + yanzhengre.date.getFullYear() + "年" + (yanzhengre.date.getMonth() + 1).toString() + "月" ); } if (yanzhengre.result === "检测") { addstrtip( coverInspectionDate.getFullYear() + "年" + (supervisionDate.getMonth() + 1).toString() + "月应该进行检测,下次检验日期是:" + yanzhengre.date.getFullYear() + "年" + (yanzhengre.date.getMonth() + 1).toString() + "月" ); } if (yanzhengre.result === "检验") { addstrtip( "下次检验日期是:" + yanzhengre.date.getFullYear() + "年" + (yanzhengre.date.getMonth() + 1).toString() + "月" ); } } } } if (1) { if (1) { const specificNumbers = new Set([ 4, 7, 9, 10, 12, 13, 18, 24, 25, 26, 27, 28, 29, 30, 31, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, ]); const normalNumbers = new Set([ 1, 2, 3, 5, 6, 8, 11, 14, 15, 16, 17, 19, 20, 21, 22, 23, 32, 43, ]); const symbolToCheckBHG = "×"; const symbolToCheckWCX = "-"; const symbolToCheckFJHG = "△"; const GJbuhegeJson = getXMKeyValues( dat, specificNumbers, symbolToCheckBHG ); const YBbuhegeJson = getXMKeyValues( dat, normalNumbers, symbolToCheckBHG ); const GJFJHGJson = getXMKeyValues( dat, specificNumbers, symbolToCheckFJHG ); const YBFJHGJson = getXMKeyValues( dat, normalNumbers, symbolToCheckFJHG ); if (Object.keys(GJbuhegeJson).length === 0) { if (Object.keys(YBbuhegeJson).length === 0) { if (gett("内部(全面)检验结论(电类定检)") != "合格") { addstrtip("检验项目全部符合,检验结论应该为“合格”!"); } } else if ( Object.keys(YBbuhegeJson).length + Object.keys(YBFJHGJson).length <= 3 ) { const extractedNumbers = []; for (const key in YBbuhegeJson) { const match = key.match(/JYJL(\d+)/); if (match) { extractedNumbers.push(parseInt(match[1], 10)); } } const uniqueNumbers = [...new Set(extractedNumbers)]; if (!validateString1(dat.DTBZCS3, uniqueNumbers)) { addstrtip( "关键项目全部符合,一般项目不符合监护使用项及整改后符合项共不超过3项,备注有误!备注模板“本记录第1、2、3项的检验结果为不符合,使用单位已经承诺采取安全措施,对电梯实行监护使用(见编号为TZS-DT-2401804的《电梯检验意见通知书》)”,考虑格式、不符合项序号、意见通知书年份等是否有误!" ); } if (gett("内部(全面)检验结论(电类定检)") != "整改后合格") { addstrtip( "关键项目全部符合,一般项目不符合监护使用及整改后符合项共不超过3项,检验结论应该为“整改后合格”!" ); } } else if ( Object.keys(YBbuhegeJson).length + Object.keys(YBFJHGJson).length > 3 ) { addstrtip( "关键项目全部符合,一般项目不符合监护使用项及整改后符合项共超过3项,一般项目都应打“×””!" ); } else if (Object.keys(YBbuhegeJson).length > 3) { if (gett("内部(全面)检验结论(电类定检)") != "不合格") { addstrtip( "关键项目全部符合,一般项目不符合共超过3项,检验结论应该为“不合格”!" ); } } } else { if (gett("内部(全面)检验结论(电类定检)") != "不合格") { addstrtip("关键项目有不符合,检验结论应该为“不合格”!"); } } const xiangmuBeizuJson = checkDTBZValues(dat); if (dat.DTBZ44 != "") { if (Object.keys(xiangmuBeizuJson).length > 1) { addstrtip("除对重块备注外仍有检验项目备注不是空!"); } } else if (Object.keys(xiangmuBeizuJson).length > 0) { addstrtip("除对重块备注外仍有检验项目备注不是空!"); } } if (1) { if (dat.JYJG1_JYJL1 === "×") { addstrtip( "备注应说明“未注册,请持不合格报告到市民大厅办理注册后重新报检!”" ); } if (dat.JYJG8_JYJL4 === "-") { if (parseFloat(dat.电梯运行速度) > 1) { addstrtip("电梯速度与缓冲器类型不匹配!"); } } if (supervisionDate != null) { const curdate = new Date(); if (curdate.getFullYear() - supervisionDate.getFullYear() > 14) { if (dat.JYJG11_JYJL5 === "-") { addstrtip("超过15年的电梯应检验第5项接地故障保护!"); } } if (curdate.getFullYear() - supervisionDate.getFullYear() < 15) { if (dat.JYJG11_JYJL5 != "-") { addstrtip("不超过15年的第5项电梯接地故障保护不需要检验!"); } } } if (supervisionDate != null) { if (supervisionDate < new Date(2017, 10, 1)) { if ( dat.JYJG12_JYJL6 != "-" || dat.JYJG13_JYJL6 != "-" || dat.JYJG14_JYJL6 != "-" || dat.JYJG15_JYJL6 != "-" ) { addstrtip("注意2017.10.1以前的电梯没有第6项旁路装置!"); } } if (supervisionDate >= new Date(2017, 10, 1)) { if ( dat.JYJG12_JYJL6 === "-" || dat.JYJG13_JYJL6 === "-" || dat.JYJG14_JYJL6 === "-" || dat.JYJG15_JYJL6 === "-" ) { addstrtip("注意2017.10.1以后的电梯有第6项旁路装置!"); } } } if (supervisionDate != null) { if (supervisionDate < new Date(2017, 10, 1)) { if (dat.JYJG16_JYJL7 != "-") { addstrtip( "注意2017.10.1以前的电梯不检验第7项制动器状态监测功能!" ); } } if (supervisionDate >= new Date(2017, 10, 1)) { if (dat.JYJG16_JYJL7 === "-") { addstrtip( "注意2017.10.1以后的电梯应检验第7项制动器状态监测功能!" ); } } } } if (1) { if (1) { if (parseInt(dat.电梯层站) > 7) { if (dat.JYJG20_JYJL10 === "-") { addstrtip("注意提升高度大于30m需要设置第10项紧急报警装置!"); } } else if (parseInt(dat.电梯层站) <= 7) { if (dat.JYJG20_JYJL10 != "-") { addstrtip( "注意提升高度小于30m可能不需要设置第10项紧急报警装置!" ); } } } if (supervisionDate != null) { if (supervisionDate < new Date(2023, 4, 2)) { if (dat.JYJG22_JYJL12 != "-") { addstrtip("未按照TSG T7001-2023监督检验的电梯,12-1不检验!"); } } if (supervisionDate >= new Date(2023, 4, 2)) { if (dat.JYJG22_JYJL12 === "-") { addstrtip("按照TSG T7001-2023监督检验的电梯,12-1需要检验!"); } } } if (manufactureDate != null) { if (manufactureDate < new Date(2004, 1, 1)) { if (dat.JYJG28_JYJL13 != "-") { addstrtip( "按照GB7588-1995及更早标准生产的电梯,如果未依据TSG T7001、2023检验,第13(4)是否不检验!" ); } } if (manufactureDate >= new Date(2004, 1, 1)) { if (dat.JYJG28_JYJL13 === "-") { addstrtip( "按照GB7588-2003及之后新标准生产的电梯,第13(4)是否应检验!" ); } } } if (1) { if (dat.JYJG30_JYJL14 != "-" || dat.JYJG31_JYJL14 != "-") { if ( dat.JYJG32_JYJL15 != "-" || dat.JYJG33_JYJL15 != "-" || dat.JYJG34_JYJL15 != "-" ) { addstrtip("14、15钢丝绳和包覆带有同时勾选!"); } } if (supervisionDate != null) { const curdate = new Date(); if (curdate.getFullYear() - supervisionDate.getFullYear() < 15) { if (dat.JYJG30_JYJL14 != "-" || dat.JYJG31_JYJL14 != "-") { addstrtip("不超过15年的电梯14项钢丝绳不需要检验!"); } } } if (supervisionDate != null) { const curdate = new Date(); if (curdate.getFullYear() - supervisionDate.getFullYear() < 15) { if ( dat.JYJG32_JYJL15 != "-" || dat.JYJG33_JYJL15 != "-" || dat.JYJG34_JYJL15 != "-" ) { addstrtip("不超过15年的电梯15项包覆带不需要检验!"); } } } if (supervisionDate != null) { const curdate = new Date(); if (curdate.getFullYear() - supervisionDate.getFullYear() > 14) { if (dat.JYJG30_JYJL14 === "-" && dat.JYJG31_JYJL14 === "-") { if ( dat.JYJG32_JYJL15 === "-" || dat.JYJG33_JYJL15 === "-" || dat.JYJG34_JYJL15 === "-" ) { addstrtip("14、15钢丝绳和包覆带至少选一类!"); } } } } if (supervisionDate != null) { if (supervisionDate < new Date(2023, 4, 2)) { if (dat.JYJG33_JYJL15 != "-" || dat.JYJG34_JYJL15 != "-") { addstrtip( "未按照TSG T7001-2023监督检验的电梯,15-2、3不检验!" ); } } if (supervisionDate >= new Date(2023, 4, 2)) { if (dat.JYJG33_JYJL15 === "-" || dat.JYJG34_JYJL15 === "-") { addstrtip( "按照TSG T7001-2023监督检验的电梯,15-2、3需要检验!" ); } } } } if (supervisionDate != null) { const curdate = new Date(); if (curdate.getFullYear() - supervisionDate.getFullYear() > 14) { if (dat.JYJG35_JYJL16 === "-") { addstrtip("超过15年的电梯应检验第16项悬挂装置端部固定!"); } } if (curdate.getFullYear() - supervisionDate.getFullYear() < 15) { if (dat.JYJG35_JYJL16 != "-") { addstrtip("不超过15年的第16项悬挂装置端部固定不需要检验!"); } } } if (1) { if ( !( (dat.JYJG37_JYJL18 === "-" && dat.JYJG38_JYJL18 === "-" && dat.JYJG39_JYJL18 === "-" && dat.JYJG40_JYJL18 === "-") || (dat.JYJG37_JYJL18 != "-" && dat.JYJG38_JYJL18 != "-" && dat.JYJG39_JYJL18 != "-" && dat.JYJG40_JYJL18 != "-") ) ) { addstrtip("第18项全部有或者无!"); } if ( dat.JYJG37_JYJL18 != "-" && dat.JYJG38_JYJL18 != "-" && dat.JYJG39_JYJL18 != "-" && dat.JYJG40_JYJL18 != "-" ) { if (dat.JYJG37_JYJL18 === "√" || dat.JYJG37_JYJL18 === "△") { if (parseFloat(dat.电梯运行速度) > 1.75) { addstrtip("速度大于1.75,18项(1)勾选错误!"); } } if (dat.JYJG37_JYJL18 === "×") { if (parseFloat(dat.电梯运行速度) <= 1.75) { addstrtip("速度小于1.75,18项(1)勾选错误!"); } } } } } if (1) { if (dat.JYJG44_JYJL21 === "√") { if ( !/^\d+(\.\d+)?\s*(块|厘米|cm|毫米|mm|米|m)$/i.test(dat.DTBZ44) ) { addstrtip("第21(2)对重块备注信息填写错误!"); } } if (supervisionDate != null) { if (supervisionDate < new Date(2023, 4, 2)) { if (dat.JYJG49_JYJL23 != "-") { addstrtip("未按照TSG T7001-2023监督检验的电梯,第23项不检验!"); } } if (supervisionDate >= new Date(2023, 4, 2)) { if (dat.JYJG49_JYJL23 === "-") { addstrtip("按照TSG T7001-2023监督检验的电梯,第23项需要检验!"); } } } if ( (dat.JYJG50_JYJL24 === "-" && dat.DTSJ503 != "-") || (dat.JYJG50_JYJL24 != "-" && dat.DTSJ503 === "-") ) { addstrtip("第24项门间隙(1)测量数据与结果矛盾!"); } if ( (dat.JYJG51_JYJL24 === "-" && dat.DTSJ504 != "-") || (dat.JYJG51_JYJL24 != "-" && dat.DTSJ504 === "-") ) { addstrtip("第24项门间隙(2)测量数据与结果矛盾!"); } if (supervisionDate != null) { const curdate = new Date(); if (curdate.getFullYear() - supervisionDate.getFullYear() > 14) { if ( dat.JYJG50_JYJL24 === "-" || dat.JYJG51_JYJL24 === "-" || dat.DTSJ503 === "-" || dat.DTSJ504 === "-" ) { addstrtip("超过15年的电梯应检验第24项门间隙!"); } else { if (dat.设备分类代码 === "曳引驱动乘客电梯") { if (/^([1-9]\d*(\.\d+)?|0\.\d+)$/.test(dat.DTSJ503)) { if ( parseFloat(dat.DTSJ503) <= 6 && parseFloat(dat.DTSJ503) >= 0 ) { if (dat.JYJG50_JYJL24 === "×") { addstrtip( "第24项门间隙(1)实测值:" + dat.DTSJ503 + "应为符合!" ); } } else if (parseFloat(dat.DTSJ503) > 6) { if (dat.JYJG50_JYJL24 != "×") { addstrtip( "第24项门间隙(1)实测值:" + dat.DTSJ503 + "应为不符合!" ); } } } else if (/^≤6$/.test(dat.DTSJ503)) { if (dat.JYJG50_JYJL24 === "×") { addstrtip( "第24项门间隙(1)目测值:" + dat.DTSJ503 + "应为符合!" ); } } else { addstrtip("第24项门间隙(1)测量值格式错误!"); } } else if (dat.设备分类代码 === "曳引驱动载货电梯") { if (/^([1-9]\d*(\.\d+)?|0\.\d+)$/.test(dat.DTSJ503)) { if ( parseFloat(dat.DTSJ503) <= 10 && parseFloat(dat.DTSJ503) >= 0 ) { if (dat.JYJG50_JYJL24 === "×") { addstrtip( "第24项门间隙(1)实测值:" + dat.DTSJ503 + "应为符合!" ); } } else if (parseFloat(dat.DTSJ503) > 10) { if (dat.JYJG50_JYJL24 != "×") { addstrtip( "第24项门间隙(1)实测值:" + dat.DTSJ503 + "应为不符合!" ); } } } else if (/^≤10$/.test(dat.DTSJ503)) { if (dat.JYJG50_JYJL24 === "×") { addstrtip( "第24项门间隙(1)目测值:" + dat.DTSJ503 + "应为符合!" ); } else { addstrtip("第24项门间隙(1)测量值格式错误!"); } } } if (/^([1-9]\d*(\.\d+)?|0\.\d+)$/.test(dat.DTSJ504)) { if (parseFloat(dat.DTSJ504) <= 30) { if (dat.JYJG51_JYJL24 === "×") { addstrtip( "第24项门间隙(2)实测值:" + dat.DTSJ504 + "应为符合!" ); } } else if ( parseFloat(dat.DTSJ504) > 30 && parseFloat(dat.DTSJ504) <= 45 ) { if (dat.JYJG51_JYJL24 === "×") { addstrtip( "若为中分门,第24项门间隙(2)实测值:" + dat.DTSJ504 + "应为符合!" ); } else if (dat.JYJG51_JYJL24 != "×") { addstrtip( "若为旁开门,第24项门间隙(2)实测值:" + dat.DTSJ504 + "应为不符合!" ); } } else { if (dat.JYJG51_JYJL24 != "×") { addstrtip( "第24项门间隙(2)实测值:" + dat.DTSJ504 + "应为不符合!" ); } } } else if (dat.DTSJ504 === "≤45") { if (dat.JYJG51_JYJL24 === "×") { addstrtip( "第24项门间隙(2)实测值:" + dat.DTSJ504 + "应为符合!" ); } } else { addstrtip("第24项门间隙(2)实测值格式错误!"); } } } if (curdate.getFullYear() - supervisionDate.getFullYear() < 15) { if ( dat.JYJG50_JYJL24 != "-" || dat.JYJG51_JYJL24 != "-" || dat.DTSJ503 != "-" || dat.DTSJ504 != "-" ) { addstrtip("不超过15年的第24项门间隙不需要检验!"); } } } if (supervisionDate != null) { if (supervisionDate < new Date(2017, 10, 1)) { if (dat.JYJG55_JYJL26 != "-") { addstrtip( "注意2017.10.1以前的电梯不检验第26项(3)层门啮合标记!" ); } } if (supervisionDate >= new Date(2017, 10, 1)) { if (dat.JYJG55_JYJL26 === "-") { addstrtip( "注意2017.10.1以后的电梯应检验第26项(3)层门啮合标记!" ); } } } if (supervisionDate != null) { if (supervisionDate < new Date(2017, 10, 1)) { if (dat.JYJG59_JYJL28 != "-") { addstrtip("注意2017.10.1以前的电梯不检验第28项(2)紧急开锁!"); } } if (supervisionDate >= new Date(2017, 10, 1)) { if (dat.JYJG59_JYJL28 === "-") { addstrtip("注意2017.10.1以后的电梯应检验第28项(2)紧急开锁!"); } } } if ( (dat.JYJG61_JYJL29 === "-" && dat.DTSJ700 != "-") || (dat.JYJG61_JYJL29 != "-" && dat.DTSJ700 === "-") ) { addstrtip("第29项门锁紧(2)测量数据与结果矛盾!"); } if (/^([1-9]\d*(\.\d+)?|0\.\d+)$/.test(dat.DTSJ700)) { if (dat.JYJG61_JYJL29 === "√" || dat.JYJG61_JYJL29 === "△") { if (parseFloat(dat.DTSJ700) > 7) { addstrtip("第29项锁紧啮合深度测量数据显示结果应为不符合!"); } } if (dat.JYJG61_JYJL29 === "×") { if (parseFloat(dat.DTSJ700) <= 7) { addstrtip("第29项锁紧啮合深度测量数据显示结果应为符合!"); } } } else { addstrtip("第29项锁紧啮合深度测量数值格式错误!"); } } if (1) { if (1) { if ( (dat.JYJG67_JYJL31 === "-" && dat.DTSJ702 != "-") || (dat.JYJG67_JYJL31 != "-" && dat.DTSJ702 === "-") ) { addstrtip("第31项平衡系数(1)测量数据与结果矛盾!"); } if ( (dat.JYJG68_JYJL31 === "-" && dat.DTSJ74 != "-") || (dat.JYJG68_JYJL31 != "-" && dat.DTSJ74 === "-") ) { addstrtip("第31项平衡系数(2)测量数据与结果矛盾!"); } if (dat.JYJG90_JYJL42 != "-") { if (/^([1-9]\d*(\.\d+)?|0\.\d+)$/.test(dat.DTSJ702)) { if (dat.JYJG67_JYJL31 === "√" || dat.JYJG67_JYJL31 === "△") { if ( parseFloat(dat.DTSJ702) < 40 || parseFloat(dat.DTSJ702) > 50 ) { addstrtip("第31项平衡系数(1)测量数据显示结果应为不符合!"); } } if (dat.JYJG67_JYJL31 === "×") { if ( parseFloat(dat.DTSJ702) >= 40 && parseFloat(dat.DTSJ702) <= 50 ) { addstrtip("第31项平衡系数(1)测量数据显示结果应为符合!"); } } if (dat.JYJG67_JYJL31 === "-") { addstrtip("第31项平衡系数(1)测量数据与结果矛盾!"); } if (dat.JYJG67_JYJL31 === "×") { const rs32_34 = dat.JYJG69_JYJL32 !== "-" || dat.JYJG70_JYJL33 !== "-" || dat.JYJG71_JYJL33 !== "-" || dat.JYJG72_JYJL34 !== "-" || dat.JYJG73_JYJL34 !== "-" || dat.JYJG74_JYJL34 !== "-" || dat.JYJG75_JYJL34 !== "-"; const rs35_39 = dat.JYJG76_JYJL35 !== "-" || dat.JYJG77_JYJL36 !== "-" || dat.JYJG78_JYJL36 !== "-" || dat.JYJG79_JYJL38 !== "-" || dat.JYJG80_JYJL39 !== "-" || dat.JYJG81_JYJL39 !== "-" || dat.JYJG82_JYJL39 !== "-" || dat.JYJG83_JYJL39 !== "-"; const rs40_43 = dat.JYJG84_JYJL40 !== "-" || dat.JYJG85_JYJL40 !== "-" || dat.JYJG86_JYJL40 !== "-" || dat.JYJG87_JYJL40 !== "-" || dat.JYJG88_JYJL41 !== "-" || dat.JYJG89_JYJL41 !== "-" || dat.JYJG90_JYJL42 !== "-" || dat.JYJG91_JYJL43 !== "-"; if (rs32_34 || rs35_39 || rs40_43) { addstrtip("平衡系数不合格,第32-43项应为“-”!"); } } } else { addstrtip("第31项平衡系数(1)测量数值格式错误!"); } const phxs2 = document .getElementById("1701504018295d212") .innerText.trim(); if (phxs2 != "-" || dat.JYJG68_JYJL31 != "-") { addstrtip("制动试验时只进行第31项(1)的检验!"); } } else { if (dat.DTSJ702 != "-" || dat.JYJG67_JYJL31 != "-") { addstrtip("没有制动试验时只进行第31项(2)的检验!"); } const phxs22 = document .getElementById("1701504018295d212") .innerText.trim(); if (/^([1-9]\d*(\.\d+)?|0\.\d+)$/.test(phxs22)) { if (dat.JYJG68_JYJL31 === "√" || dat.JYJG68_JYJL31 === "△") { if (parseFloat(phxs22) < 40 || parseFloat(phxs22) > 50) { addstrtip("第31项平衡系数(2)测量数据显示结果应为不符合!"); } } if (dat.JYJG68_JYJL31 === "×") { if (parseFloat(phxs22) >= 40 && parseFloat(phxs22) <= 50) { addstrtip("第31项平衡系数(2)测量数据显示结果应为符合!"); } } if (dat.JYJG68_JYJL31 === "-") { addstrtip("第31项平衡系数(2)测量数据与结果矛盾!"); } if (dat.JYJG68_JYJL31 === "×") { const rs32_34 = dat.JYJG69_JYJL32 !== "-" || dat.JYJG70_JYJL33 !== "-" || dat.JYJG71_JYJL33 !== "-" || dat.JYJG72_JYJL34 !== "-" || dat.JYJG73_JYJL34 !== "-" || dat.JYJG74_JYJL34 !== "-" || dat.JYJG75_JYJL34 !== "-"; const rs35_39 = dat.JYJG76_JYJL35 !== "-" || dat.JYJG77_JYJL36 !== "-" || dat.JYJG78_JYJL36 !== "-" || dat.JYJG79_JYJL38 !== "-" || dat.JYJG80_JYJL39 !== "-" || dat.JYJG81_JYJL39 !== "-" || dat.JYJG82_JYJL39 !== "-" || dat.JYJG83_JYJL39 !== "-"; const rs40_43 = dat.JYJG84_JYJL40 !== "-" || dat.JYJG85_JYJL40 !== "-" || dat.JYJG86_JYJL40 !== "-" || dat.JYJG87_JYJL40 !== "-" || dat.JYJG88_JYJL41 !== "-" || dat.JYJG89_JYJL41 !== "-" || dat.JYJG90_JYJL42 !== "-" || dat.JYJG91_JYJL43 !== "-"; if (rs32_34 || rs35_39 || rs40_43) { addstrtip("平衡系数不合格,第32-43项应为“-”!"); } } } else { if (/^40-50$/.test(phxs22)) { if (dat.JYJG68_JYJL31 === "×") { addstrtip('第31项平衡系数(2)"40-50"表明结果应为符合!'); } } else { addstrtip("第31项平衡系数(2)测量数值格式错误!"); } } } } } if (manufactureDate != null) { if (manufactureDate < new Date(2004, 1, 1)) { if ( dat.JYJG80_JYJL39 != "-" || dat.JYJG81_JYJL39 != "-" || dat.JYJG82_JYJL39 != "-" || dat.JYJG83_JYJL39 != "-" ) { addstrtip("注意2004.1.1之前生产的电梯,上行超速保护是否不检验!"); } } if (manufactureDate >= new Date(2004, 1, 1)) { if ( dat.JYJG80_JYJL39 === "-" || dat.JYJG81_JYJL39 === "-" || dat.JYJG82_JYJL39 === "-" || dat.JYJG83_JYJL39 === "-" ) { addstrtip( "注意2004.1.1之后生产的电梯,上行超速保护是否需要检验!" ); } } } if (1) { if (manufactureDate != null) { if (manufactureDate < new Date(2016, 7, 1)) { if ( dat.JYJG84_JYJL40 != "-" || dat.JYJG85_JYJL40 != "-" || dat.JYJG86_JYJL40 != "-" || dat.JYJG87_JYJL40 != "-" ) { addstrtip( "注意2016.7.1之前生产的电梯,轿厢意外移动是否不检验!" ); } } if (manufactureDate >= new Date(2016, 7, 1)) { if ( dat.JYJG84_JYJL40 === "-" || dat.JYJG85_JYJL40 === "-" || dat.JYJG86_JYJL40 === "-" || dat.JYJG87_JYJL40 === "-" ) { addstrtip( "注意2016.7.1之后生产的电梯,轿厢意外移动是否需要检验!" ); } } } if (lastBrakingDate != null) { if (lastBrakingDate.getFullYear() === new Date().getFullYear()) { if (dat.JYJG90_JYJL42 === "-") { addstrtip("最近制动试验是在今年,第42项应为符合!"); } } if (lastBrakingDate.getFullYear() != new Date().getFullYear()) { if (dat.JYJG90_JYJL42 != "-") { addstrtip("最近制动试验不在今年,第42项应为“-”!"); } } } } } } if (1) { if (strtip.trim() === "") { strtip = "未发现问题"; } input.value = strtip + "\n\n" + strinput; strtip = ""; strinput = ""; tipnum = 0; } } function StringToDate(str) { var strDate = str.split(" "); var strDatepart = strDate[0].split("-"); var dtDate = new Date(strDatepart[0], strDatepart[1] - 1, strDatepart[2]); return dtDate; } function YearMonthToYearMonthDay(str) { if (str.length === 7) { str = str.concat("-01"); } return str.trim(); } function ZifuchuanIsDate(strdate) { if (isNaN(strdate) && !isNaN(Date.parse(strdate))) { return true; } else { return false; } } function addstrtip(str) { strtip = strtip.concat("\n"); tipnum = tipnum + 1; strtip = strtip.concat(tipnum.toString()); strtip = strtip.concat("、"); strtip = strtip.concat(str); } function isNormalInteger(str) { var n = Math.floor(Number(str)); return n !== Infinity && String(n) === str && n >= 0; } function isValidSBDMFormat(text) { const regex = /^(3110|3120)\d{6}(\d{4})\d{6}$/; if (regex.test(text)) { const match = text.match(regex); if (match) { var year = parseInt(match[2], 10); if (year >= 2000 && year <= 2100) { return true; } else { return false; } } } else { return false; } } function parseDate(dateStr) { const dateRegex = /^(\d{4})年(\d{1,2})月(\d{1,2})?日?$/; const match = dateStr.match(dateRegex); if (!match) { return null; } const year = parseInt(match[1], 10); const month = parseInt(match[2], 10) - 1; const day = match[3] ? parseInt(match[3], 10) : 1; return new Date(year, month, day); } function elevatorInspectionStr(supervisionDateStr, queryYear) { const dateRegex = /^(\d{4})年(\d{1,2})月/; const match = supervisionDateStr.match(dateRegex); if (match) { const supervisionYear = parseInt(match[1], 10); const supervisionMonth = parseInt(match[2], 10); const inspectionYears = [1, 4, 7, 9, 11, 13, 15]; let inspectionDates = []; inspectionYears.forEach((year) => { if (supervisionYear + year <= queryYear) { inspectionDates.push(supervisionYear + year); } }); if (queryYear - supervisionYear > 15) { for (let year = supervisionYear + 16; year <= queryYear; year++) { inspectionDates.push(year); } } if (inspectionDates.includes(queryYear)) { return { result: "检验", year: queryYear, month: supervisionMonth }; } else { return { result: "检测", year: queryYear, month: supervisionMonth }; } } else { return { result: "错误", year: 0, month: 0 }; } } function elevatorInspection(supervisionDate, queryDate) { if (supervisionDate >= queryDate) { return { result: "错误", date: null }; } if ( new Date( queryDate.getFullYear(), supervisionDate.getMonth(), supervisionDate.getDate() ) < new Date(2023, 3, 1) ) { return { result: "检验", date: new Date( queryDate.getFullYear() + 1, supervisionDate.getMonth(), supervisionDate.getDate() ), }; } else { const supervisionYear = supervisionDate.getFullYear(); const supervisionMonth = supervisionDate.getMonth(); const queryYear = queryDate.getFullYear(); const inspectionIntervals = [1, 4, 7, 9, 11, 13, 15]; let inspectionYears = new Set(); for (let year = supervisionYear; year <= queryYear + 15; year++) { if ( year - supervisionYear > 15 || inspectionIntervals.includes(year - supervisionYear) ) { inspectionYears.add(year); } } let inspectionStatus = inspectionYears.has(queryYear) ? "检验" : "检测"; let nextInspectionYear = [...inspectionYears].find( (year) => year > queryYear ); let nextInspectionDate = nextInspectionYear ? new Date(nextInspectionYear, supervisionMonth, 1) : null; return { result: inspectionStatus, date: nextInspectionDate }; } } function isValidSYDJFormat(text) { const regex = /^(3110|3120)\d{6}(\d{4})\d{6}$/; if (regex.test(text)) { const match = text.match(regex); if (match) { var year = parseInt(match[2], 10); if (year >= 2000 && year <= 2100) { return true; } else { return false; } } } else { return false; } } function calculateBrakeDate(initialDate, queryDate) { const brakeIntervalBefore2024 = 5; const brakeIntervalAfter2024 = 6; let resultDate = new Date(initialDate.getTime()); let resultDatetemp = null; let currentYear = 0; while (resultDate <= queryDate) { resultDatetemp = new Date(resultDate.getTime()); currentYear = resultDate.getFullYear(); if (resultDate < new Date(2013, 0, 1)) { resultDate.setFullYear(2018); } else if (resultDate < new Date(2019, 3, 1)) { resultDate.setFullYear(currentYear + brakeIntervalBefore2024); } else { resultDate.setFullYear(currentYear + brakeIntervalAfter2024); } } return resultDatetemp; } function getXMKeyValues(jsonData, specificNumbers, symbolToCheck) { const regex = /^JYJG(\d+)_JYJL(\d+)$/; let validKeyValues = {}; for (let key in jsonData) { const match = key.match(regex); if (match) { const value = jsonData[key]; const number = parseInt(match[2], 10); if (value === symbolToCheck && specificNumbers.has(number)) { validKeyValues[key] = value; } } } return validKeyValues; } function checkDTBZValues(jsonData) { const regex = /^DTBZ(\d+)$/; let results = []; for (let key in jsonData) { const match = key.match(regex); if (match) { const number = parseInt(match[1], 10); if (number >= 1 && number <= 91) { if (jsonData[key] !== "") { results.push({ key, value: jsonData[key] }); } } } } return results; } function getdtt(label) { var labelEl = Array.from(document.getElementsByTagName("span")).find( (el) => el.textContent === label ); var widgetFieldEl = labelEl.parentElement; while (!widgetFieldEl.classList.contains("widget-field")) { widgetFieldEl = widgetFieldEl.parentElement; } return widgetFieldEl.nextElementSibling.innerText.trim(); } function gethtt(label) { var labelEl = Array.from(document.getElementsByTagName("td")).find( (el) => el.textContent.trim() === label ); return labelEl.nextElementSibling.innerText.trim(); } function getdt(label) { var labelEl = Array.from(document.getElementsByTagName("span")).find( (el) => el.textContent === label ); var widgetFieldEl = labelEl.parentElement; while (!widgetFieldEl.classList.contains("widget-field")) { widgetFieldEl = widgetFieldEl.parentElement; } return widgetFieldEl.innerText.trim(); } function getht(label) { var labelEl = Array.from(document.getElementsByTagName("td")).find( (el) => el.textContent.trim() === label ); return labelEl.innerText.trim(); } function gett(labelText) { var label = document.evaluate( "//label[contains(., '" + labelText + "')]", document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null ).singleNodeValue; if (label) { var span = label.nextElementSibling; if (span && span.classList.contains("widget-content")) { return span.textContent || span.innerText; } } return null; } function replaceValuesWithFun(jn, fun) { for (var key in jn) { if (jn.hasOwnProperty(key)) { var value = jn[key]; var funResult = fun(key); if (funResult !== null) { jn[key] = funResult; } } } return jn; } function validateAndExplainCode(input) { const regex = /^详见((JD\d{1}\d{2}|SZSJD\d{2}|WZJD\d{2}|ZWJD\d{2}|GYJD\d{2}))号工具箱$/; const match = input.match(regex); if (!match) { return { isValid: false, message: "输入格式不正确。" }; } const code = match[1]; let department = ""; let sequence = parseInt(code.slice(-2), 10); if (/^JD1\d{2}$/.test(code)) { department = "机电一部"; if (sequence > 10) return { isValid: false, message: "机电一部顺序号超出范围。" }; } else if (/^JD2\d{2}$/.test(code)) { department = "机电二部"; if (sequence < 1 || sequence > 4) return { isValid: false, message: "机电二部顺序号超出范围。" }; } else if (/^JD3\d{2}$/.test(code)) { department = "机电三部"; if (sequence > 8) return { isValid: false, message: "机电三部顺序号超出范围。" }; } else if (/^SZSJD\d{2}$/.test(code)) { department = "石嘴山分院"; if (sequence > 3) return { isValid: false, message: "石嘴山分院顺序号超出范围。" }; } else if (/^WZJD\d{2}$/.test(code)) { department = "吴忠分院"; if (sequence > 3) return { isValid: false, message: "吴忠分院顺序号超出范围。" }; } else if (/^ZWJD\d{2}$/.test(code)) { department = "中卫分院"; if (sequence > 3) return { isValid: false, message: "中卫分院顺序号超出范围。" }; } else if (/^GYJD\d{2}$/.test(code)) { department = "固原分院"; if (sequence > 3) return { isValid: false, message: "固原分院顺序号超出范围。" }; } else { return { isValid: false, message: "未知的编码部分。" }; } return { isValid: true, message: `编码${code}表示${department},序号${sequence}。`, }; } function validateString(str) { const currentYearSuffix = new Date().getFullYear().toString().slice(-2); const regex = /^本记录第([\d+、,]+)项的检验结果为不符合使用单位已经承诺采取安全措施,对电梯实行监护使用(见编号为TZS-DT-${currentYearSuffix}\d{5}的《电梯检验意见通知书》)$/; const match = str.match(regex); if (!match) { return false; } const numbersStr = match[1]; const numbers = numbersStr .split(/[\d+、,]+/) .filter((n) => n !== "") .map(Number); const isValidNumbers = numbers.every((num) => num >= 1 && num <= 43); const xx4Match = str.match(/TZS-DT-${currentYearSuffix}(\d{5})/); const isValidXX4 = xx4Match && xx4Match[1].length === 5; return isValidNumbers && isValidXX4; } function validateString1(str, ssz) { const items = ssz.join("[、,]"); const itemPattern = `第${items}项`; const year = new Date().getFullYear().toString().slice(-2); const regex = new RegExp( `^本记录${itemPattern}的检验结果为不符合[,,]使用单位已经承诺采取安全措施[,,]对电梯实行监护使用[((]见编号为TZS-DT-${year}\\d{5}的《电梯检验意见通知书》[))]$` ); return regex.test(str); } })();