From f8d2dae78cf7ddc7278a6a3a915aa2aa30bc76b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E6=98=B1=E8=BE=BE?= Date: Tue, 29 Jul 2025 18:00:03 +0800 Subject: [PATCH] =?UTF-8?q?feat(risk-history):=20=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E9=A3=8E=E9=99=A9=E7=AD=9B=E6=9F=A5=E7=BB=93=E6=9E=9C=E6=98=BE?= =?UTF-8?q?=E7=A4=BA=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 增加筛查中状态的显示 - 根据 checkStatus 字段判断风险状态 - 优化无风险和有风险的显示文案 - 添加筛查中的 loading 状态 --- public/bpic_eli/loading.png | Bin 0 -> 744 bytes public/bpic_eli/risk_history.html | 384 ++++++++++++++++-------------- 2 files changed, 200 insertions(+), 184 deletions(-) create mode 100644 public/bpic_eli/loading.png diff --git a/public/bpic_eli/loading.png b/public/bpic_eli/loading.png new file mode 100644 index 0000000000000000000000000000000000000000..de877941ebf5c041674859f02f9861918108fbf4 GIT binary patch literal 744 zcmVP)P000>X1^@s6#OZ}&00001b5ch_0Itp) z=>Px%qDe$SR7gv$)=kLNRTKvBpXefq5G5%o!d8(KqNIi*E`p-KP{fp!1T{Y+@>P=v z+5}~ysFaw9VwhT?l`9opDM6Z)AS$}C#PIDyLJ{1F_sG3)`|CT*IG)YSoVn*b_k2C) z_S3#RimjN4qga4{+cEFg;?OkA!WJCDdsttcUyLvD8s=g*zQ32hzCadc2Vrv)PvQ-1 zZh-7f0GBW@>*ry66R0ncBY3GgJOw}DM@-1yLpKQlROBFDZ5L!IzQ~8;repC}{yiMO z=kF2W$rRyZ`S+rn-v8m0NCsdZUce{VgtsvotMNyR+C808x+>M?L{8N^_y9j+I&Kw^ zxA0ZvXePdGr*j%-qEWuCbhELmfP9|XF>X-gU4*VvS&p@pQFLQZ0eLEi8@c@xFXD2i z2q|6R=XmPO$FqIZ@=D!ZgAlW^A6M@KpqLEB>$&T$g)%@M%54`QKj6+ET}t?xntdGz zkZ&*}JN+$pRF@deU_^GZJ3#(UEgK;g8G`@1Knaffr?T&DMsh0EWK(T0FO^JG&1j@a>>JZxq0KhKw`s{eI758XY%VL zQdl>~E}X~UtelT+?SjO)VB{F6k8vTTs|Jq$%WEYr@L?v`AlSR4)sv`sxPEsX%j>zV ach_yhmw#FxEmwyC0000' - : '') + + ? navItem.checkStatus === 2? '' : '' + : navItem.checkStatus === 2?'':'') + navItem.taSubmitDate + (navItem.hasRisk === 1 - ? '【有风险】' - : '【无风险】'); + ? '' + (navItem.checkStatus === 2 ? '【有风险】' : '【筛查中】') + '' + : '' + (navItem.checkStatus === 2 ? '【无风险】' : '【无风险】') + ''); a.onclick = (function(index, item) { return function() { @@ -931,215 +932,230 @@ // 获取详情 getDetail: function(navItem) { - // 从URL获取taCode - StateManager.resultId = navItem.id; - var taCode = Utils.getQueryParam('taCode') || StateManager.navCheckRecord.taCode; + console.log(navItem) + if(navItem.checkStatus === 2){ + // 从URL获取taCode + StateManager.resultId = navItem.id; + var taCode = Utils.getQueryParam('taCode') || StateManager.navCheckRecord.taCode; - // 🔹 调用详情接口(假设用 recordId 查询) - Config.serviceUrl.queryDetail.data = { - resultId: navItem.id, - recordId: navItem.recordId, - taCode: taCode - }; + // 🔹 调用详情接口(假设用 recordId 查询) + Config.serviceUrl.queryDetail.data = { + resultId: navItem.id, + recordId: navItem.recordId, + taCode: taCode + }; - var time = document.getElementById('time'); - time.innerHTML = ''; + var time = document.getElementById('time'); + time.innerHTML = ''; - // 添加加载提示 - var resultDom = document.getElementById('detail-container'); - resultDom.innerHTML = - '
正在加载详情...
'; + // 添加加载提示 + var resultDom = document.getElementById('detail-container'); + resultDom.innerHTML = + '
正在加载详情...
'; - DOMHandler.setServiceUrl( - Config.serviceUrl.queryDetail, - Config.serviceUrl.queryDetail.data, - function(detailData) { - try { - var detailJson = JSON.parse(detailData); - var result = detailJson.content.content.ruleTypeList; - var fileStorageInfoList = - detailJson.content.content.fileBizTypeDictList; + DOMHandler.setServiceUrl( + Config.serviceUrl.queryDetail, + Config.serviceUrl.queryDetail.data, + function(detailData) { + try { + var detailJson = JSON.parse(detailData); + var result = detailJson.content.content.ruleTypeList; + var fileStorageInfoList = + detailJson.content.content.fileBizTypeDictList; - time.innerHTML = - (StateManager.navCheckRecord.taLatestSubmitDate || '未知时间') + - ' 共【' + - (result ? result.length : 0) + - '】条风险提示'; + time.innerHTML = + (StateManager.navCheckRecord.taLatestSubmitDate || '未知时间') + + ' 共【' + + (result ? result.length : 0) + + '】条风险提示'; - var arrs = []; - if (result && result.length > 0) { - result[0].tabName = '风险筛查结果'; - for (var i = 0; i < result.length; i++) { - arrs.push(result[i]); + var arrs = []; + if (result && result.length > 0) { + result[0].tabName = '风险筛查结果'; + for (var i = 0; i < result.length; i++) { + arrs.push(result[i]); + } } - } - if (fileStorageInfoList && fileStorageInfoList.length > 0) { - fileStorageInfoList[0].tabName = '影像件'; - for (var i = 0; i < fileStorageInfoList.length; i++) { - arrs.push(fileStorageInfoList[i]); - } - } - - if (arrs.length === 0) { - resultDom.innerHTML = - '

暂无风险

'; - return; - } - - resultDom.innerHTML = ''; - - // 开始生成页面 - for (var ind = 0; ind < arrs.length; ind++) { - var resultDetail = arrs[ind]; - - // 设置标题 - var docH4 = document.createElement('h4'); - if (resultDetail.tabName) { - docH4.innerHTML = resultDetail.tabName; - docH4.className = 'section-title'; - resultDom.appendChild(docH4); + if (fileStorageInfoList && fileStorageInfoList.length > 0) { + fileStorageInfoList[0].tabName = '影像件'; + for (var i = 0; i < fileStorageInfoList.length; i++) { + arrs.push(fileStorageInfoList[i]); + } } - var treeItem = document.createElement('div'); - treeItem.className = 'tree-item-header '; - // 添加降级样式 - treeItem.style.background = '#f0f4fa'; - treeItem.style.cursor = 'pointer'; - // treeItem.style.border = '1px solid #d6dde6'; + if (arrs.length === 0) { + resultDom.innerHTML = + '

暂无风险

'; + return; + } - // 创建img元素而不是使用innerHTML,提高IE8兼容性 - var treeIcon = document.createElement('img'); - treeIcon.src = './toRight.png'; - treeIcon.className = 'tree-icon'; - treeIcon.alt = ''; - // 为IE8添加特殊属性 - treeIcon.setAttribute('alt', ''); - treeIcon.style.verticalAlign = 'middle'; - treeIcon.style.marginRight = '10px'; + resultDom.innerHTML = ''; - var textNode = document.createTextNode(resultDetail.typeName - ? resultDetail.typeName - : resultDetail.dictLabel); + // 开始生成页面 + for (var ind = 0; ind < arrs.length; ind++) { + var resultDetail = arrs[ind]; - treeItem.appendChild(treeIcon); - treeItem.appendChild(textNode); + // 设置标题 + var docH4 = document.createElement('h4'); + if (resultDetail.tabName) { + docH4.innerHTML = resultDetail.tabName; + docH4.className = 'section-title'; + resultDom.appendChild(docH4); + } - resultDom.appendChild(treeItem); + var treeItem = document.createElement('div'); + treeItem.className = 'tree-item-header '; + // 添加降级样式 + treeItem.style.background = '#f0f4fa'; + treeItem.style.cursor = 'pointer'; + // treeItem.style.border = '1px solid #d6dde6'; - // 设置二级标题子元素 - var resultContainer = document.createElement('div'); - resultContainer.className = 'result-container-item'; - resultContainer.id = 'result-container-' + ind; - // 默认隐藏内容,点击标题展开 - resultContainer.style.display = 'none'; + // 创建img元素而不是使用innerHTML,提高IE8兼容性 + var treeIcon = document.createElement('img'); + treeIcon.src = './toRight.png'; + treeIcon.className = 'tree-icon'; + treeIcon.alt = ''; + // 为IE8添加特殊属性 + treeIcon.setAttribute('alt', ''); + treeIcon.style.verticalAlign = 'middle'; + treeIcon.style.marginRight = '10px'; - var childItemUl = document.createElement('ul'); - childItemUl.className = 'result-container-item-child-ul'; + var textNode = document.createTextNode(resultDetail.typeName + ? resultDetail.typeName + : resultDetail.dictLabel); - if (resultDetail.children && resultDetail.children.length > 0) { - for ( - var childIndex = 0; - childIndex < resultDetail.children.length; - childIndex++ - ) { - var child = resultDetail.children[childIndex]; + treeItem.appendChild(treeIcon); + treeItem.appendChild(textNode); - var childItem = document.createElement('li'); - childItem.className = 'result-container-item-child'; - childItem.innerHTML = - '' + - Number(childIndex + 1) + - '' + - ((child.warning ? child.warning : child.fileName) || - '未知项目'); + resultDom.appendChild(treeItem); - childItem.style.cursor = 'pointer'; - // 为不支持某些CSS属性的浏览器添加兼容样式 - childItem.style.listStyle = 'none'; - childItem.style.marginLeft = '0px'; + // 设置二级标题子元素 + var resultContainer = document.createElement('div'); + resultContainer.className = 'result-container-item'; + resultContainer.id = 'result-container-' + ind; + // 默认隐藏内容,点击标题展开 + resultContainer.style.display = 'none'; - // 为IE8添加特殊样式 - childItem.style.border = '1px solid #eee'; + var childItemUl = document.createElement('ul'); + childItemUl.className = 'result-container-item-child-ul'; - childItem.onclick = (function(index, item) { - return function() { - if (item.filePath) { - window.open( - Config.ipConfig.ip + - Config.serviceUrl.download.url + - '?fileId=' + - item.id - ); - } else { - // alert('该文件暂无链接') - } - }; - })(childIndex, child); - childItemUl.appendChild(childItem); + if (resultDetail.children && resultDetail.children.length > 0) { + for ( + var childIndex = 0; + childIndex < resultDetail.children.length; + childIndex++ + ) { + var child = resultDetail.children[childIndex]; + var childItem = document.createElement('li'); + childItem.className = 'result-container-item-child'; + childItem.innerHTML = + '' + + Number(childIndex + 1) + + '' + + ((child.warning ? child.warning : child.fileName) || + '未知项目'); + + childItem.style.cursor = 'pointer'; + // 为不支持某些CSS属性的浏览器添加兼容样式 + childItem.style.listStyle = 'none'; + childItem.style.marginLeft = '0px'; + + // 为IE8添加特殊样式 + childItem.style.border = '1px solid #eee'; + + childItem.onclick = (function(index, item) { + return function() { + if (item.filePath) { + window.open( + Config.ipConfig.ip + + Config.serviceUrl.download.url + + '?fileId=' + + item.id + ); + } else { + // alert('该文件暂无链接') + } + }; + })(childIndex, child); + childItemUl.appendChild(childItem); + + resultContainer.appendChild(childItemUl); + } + } else { + var emptyLi = document.createElement('li'); + emptyLi.innerHTML = '暂无数据'; + emptyLi.style.color = '#95a5a6'; + emptyLi.style.fontStyle = 'italic'; + childItemUl.appendChild(emptyLi); resultContainer.appendChild(childItemUl); } - } else { - var emptyLi = document.createElement('li'); - emptyLi.innerHTML = '暂无数据'; - emptyLi.style.color = '#95a5a6'; - emptyLi.style.fontStyle = 'italic'; - childItemUl.appendChild(emptyLi); - resultContainer.appendChild(childItemUl); - } - resultDom.appendChild(resultContainer); + resultDom.appendChild(resultContainer); - // 绑定点击事件展开/收起内容 - treeItem.onclick = (function(index, item, iconElement) { - return function() { - var resultContainer = document.getElementById( - 'result-container-' + index - ); - if (resultContainer.style.display === 'none') { - resultContainer.style.display = 'block'; - // 使用setAttribute提高IE8兼容性 - iconElement.setAttribute('src', './toDown.png'); - } else { - resultContainer.style.display = 'none'; - iconElement.setAttribute('src', './toRight.png'); - } - }; - })(ind, resultDetail, treeIcon); - - resultDom.style.minHeight = 30 * arrs.length + 'px'; - resultDom.style.overflowY = 'auto'; - - // 如果arrs有结果,默认打开第一个result-container-0 - if (arrs.length > 0) { - // 使用setTimeout确保DOM完全渲染后再触发点击 - setTimeout(function() { - var firstTreeItem = - resultDom.querySelector('.tree-item-header') || - resultDom.getElementsByClassName('tree-item-header')[0]; - var firstResultContainer = - resultDom.querySelector('#result-container-0') || - resultDom.getElementById('result-container-0'); - - if (firstTreeItem && firstResultContainer) { - // 显示第一个结果容器 - firstResultContainer.style.display = 'block'; - // 更新第一个树项的图标为展开状态 - var firstIcon = firstTreeItem.getElementsByTagName('img')[0]; - if (firstIcon) { - firstIcon.setAttribute('src', './toDown.png'); + // 绑定点击事件展开/收起内容 + treeItem.onclick = (function(index, item, iconElement) { + return function() { + var resultContainer = document.getElementById( + 'result-container-' + index + ); + if (resultContainer.style.display === 'none') { + resultContainer.style.display = 'block'; + // 使用setAttribute提高IE8兼容性 + iconElement.setAttribute('src', './toDown.png'); + } else { + resultContainer.style.display = 'none'; + iconElement.setAttribute('src', './toRight.png'); } - } - }, 0); + }; + })(ind, resultDetail, treeIcon); + + resultDom.style.minHeight = 30 * arrs.length + 'px'; + resultDom.style.overflowY = 'auto'; + + // 如果arrs有结果,默认打开第一个result-container-0 + if (arrs.length > 0) { + // 使用setTimeout确保DOM完全渲染后再触发点击 + setTimeout(function() { + var firstTreeItem = + resultDom.querySelector('.tree-item-header') || + resultDom.getElementsByClassName('tree-item-header')[0]; + var firstResultContainer = + resultDom.querySelector('#result-container-0') || + resultDom.getElementById('result-container-0'); + + if (firstTreeItem && firstResultContainer) { + // 显示第一个结果容器 + firstResultContainer.style.display = 'block'; + // 更新第一个树项的图标为展开状态 + var firstIcon = firstTreeItem.getElementsByTagName('img')[0]; + if (firstIcon) { + firstIcon.setAttribute('src', './toDown.png'); + } + } + }, 0); + } } + } catch (e) { + console.error('Detail parse error:', e); + resultDom.innerHTML = + '
加载详情失败,请稍后重试
'; } - } catch (e) { - console.error('Detail parse error:', e); - resultDom.innerHTML = - '
加载详情失败,请稍后重试
'; } - } - ); + ); + } else { + // 添加加载提示 + var resultDom = document.getElementById('detail-container'); + resultDom.innerHTML = + '
\n' + + ' 加载中\n' + + ' 正在筛查中...\n' + + '
'; + return false + + } + } };