feat: 健康体检原型调整(检中侧边栏员工预约跟踪更名员工预约体检跟踪,已选项目页筛选项合并单位部门并精简日期筛选项、新增医院体检状态列、移除同步预约按钮,特殊项目/大病/指标异常等页面统一新增员工编号筛选与列,体检编号更名体检编码,系统体检状态选项补齐未体检,胃肠镜特殊项目页体检年份改为下拉默认当年)

This commit is contained in:
liuyunqin
2026-09-03 20:01:27 +08:00
parent 3a838d04a2
commit 2213106961
18 changed files with 107 additions and 121 deletions
@@ -3,7 +3,7 @@
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>健康体检 - 员工预约跟踪 | 健康CQ原型</title>
<title>健康体检 - 员工预约体检跟踪 | 健康CQ原型</title>
<style>
*{box-sizing:border-box;margin:0;padding:0;}
@@ -148,7 +148,7 @@
常规体检
</div>
<div class="sidebar-subgroup__body">
<a href="mid-appointment-track.html" class="sidebar-item active">员工预约跟踪</a>
<a href="mid-appointment-track.html" class="sidebar-item active">员工预约体检跟踪</a>
<a href="mid-selected-items.html" class="sidebar-item">已选项目员工信息</a>
<a href="mid-participation.html" class="sidebar-item">已参检员工信息</a>
<a href="mid-unit-appointment.html" class="sidebar-item">单位预约人数统计</a>
@@ -273,7 +273,7 @@
<!-- 数据表格 -->
<div class="table-card">
<div class="table-card__header">
<div class="table-card__title">员工预约跟踪列表</div>
<div class="table-card__title">员工预约体检跟踪列表</div>
</div>
<div class="table-card__content">
<table>
@@ -115,7 +115,7 @@
常规体检
</div>
<div class="sidebar-subgroup__body">
<a href="mid-appointment-track.html" class="sidebar-item">员工预约跟踪</a>
<a href="mid-appointment-track.html" class="sidebar-item">员工预约体检跟踪</a>
<a href="mid-selected-items.html" class="sidebar-item">已选项目员工信息</a>
<a href="mid-participation.html" class="sidebar-item">已参检员工信息</a>
<a href="mid-unit-appointment.html" class="sidebar-item">单位预约人数统计</a>
@@ -146,7 +146,7 @@
常规体检
</div>
<div class="sidebar-subgroup__body">
<a href="mid-appointment-track.html" class="sidebar-item">员工预约跟踪</a>
<a href="mid-appointment-track.html" class="sidebar-item">员工预约体检跟踪</a>
<a href="mid-selected-items.html" class="sidebar-item">已选项目员工信息</a>
<a href="mid-participation.html" class="sidebar-item">已参检员工信息</a>
<a href="mid-unit-appointment.html" class="sidebar-item">单位预约人数统计</a>
@@ -120,7 +120,7 @@
常规体检
</div>
<div class="sidebar-subgroup__body">
<a href="mid-appointment-track.html" class="sidebar-item">员工预约跟踪</a>
<a href="mid-appointment-track.html" class="sidebar-item">员工预约体检跟踪</a>
<a href="mid-selected-items.html" class="sidebar-item">已选项目员工信息</a>
<a href="mid-participation.html" class="sidebar-item">已参检员工信息</a>
<a href="mid-unit-appointment.html" class="sidebar-item">单位预约人数统计</a>
@@ -159,12 +159,6 @@
<option>请选择</option><option>公司机关</option><option>第一采油厂</option><option>第二采油厂</option><option>第三采油厂</option>
</select>
</div>
<div class="filter-item">
<label>体检计划:</label>
<select class="filter-select">
<option>请选择</option><option>2026年度职工常规体检</option><option>2026年度胃肠镜专项体检</option>
</select>
</div>
<div class="filter-item">
<label>体检医院:</label>
<select class="filter-select">
@@ -115,7 +115,7 @@
常规体检
</div>
<div class="sidebar-subgroup__body">
<a href="mid-appointment-track.html" class="sidebar-item">员工预约跟踪</a>
<a href="mid-appointment-track.html" class="sidebar-item">员工预约体检跟踪</a>
<a href="mid-selected-items.html" class="sidebar-item">已选项目员工信息</a>
<a href="mid-participation.html" class="sidebar-item">已参检员工信息</a>
<a href="mid-unit-appointment.html" class="sidebar-item">单位预约人数统计</a>
@@ -115,7 +115,7 @@
常规体检
</div>
<div class="sidebar-subgroup__body">
<a href="mid-appointment-track.html" class="sidebar-item">员工预约跟踪</a>
<a href="mid-appointment-track.html" class="sidebar-item">员工预约体检跟踪</a>
<a href="mid-selected-items.html" class="sidebar-item">已选项目员工信息</a>
<a href="mid-participation.html" class="sidebar-item">已参检员工信息</a>
<a href="mid-unit-appointment.html" class="sidebar-item">单位预约人数统计</a>
@@ -119,7 +119,7 @@
常规体检
</div>
<div class="sidebar-subgroup__body">
<a href="mid-appointment-track.html" class="sidebar-item">员工预约跟踪</a>
<a href="mid-appointment-track.html" class="sidebar-item">员工预约体检跟踪</a>
<a href="mid-selected-items.html" class="sidebar-item">已选项目员工信息</a>
<a href="mid-participation.html" class="sidebar-item">已参检员工信息</a>
<a href="mid-unit-appointment.html" class="sidebar-item">单位预约人数统计</a>
@@ -138,7 +138,7 @@
常规体检
</div>
<div class="sidebar-subgroup__body">
<a href="mid-appointment-track.html" class="sidebar-item">员工预约跟踪</a>
<a href="mid-appointment-track.html" class="sidebar-item">员工预约体检跟踪</a>
<a href="mid-selected-items.html" class="sidebar-item">已选项目员工信息</a>
<a href="mid-participation.html" class="sidebar-item active">已参检员工信息</a>
<a href="mid-unit-appointment.html" class="sidebar-item">单位预约人数统计</a>
@@ -195,10 +195,14 @@
<label>身份证号:</label>
<input class="filter-input" type="text" placeholder="请输入" style="width:180px;min-width:unset;">
</div>
<div class="filter-item">
<label>体检编码:</label>
<input class="filter-input" type="text" placeholder="请输入" style="width:150px;min-width:unset;">
</div>
<div class="filter-item">
<label>系统体检状态:</label>
<select class="filter-select">
<option>请选择</option><option>体检</option><option>体检中</option>
<option>请选择</option><option>体检</option><option>体检中</option><option>已体检</option>
</select>
</div>
<div class="filter-item">
@@ -243,7 +247,7 @@
<table>
<thead>
<tr>
<th style="min-width:36px;"><input type="checkbox" id="checkAll" title="全选"></th><th>序号</th><th>单位</th><th>部门</th><th>姓名</th><th>员工编号</th><th>身份证号</th><th>体检编</th><th>系统体检状态</th><th>医院体检状态</th><th>体检医院</th><th>体检年份</th><th>体检计划</th><th>预约日期</th><th>体检日期</th><th>已检项/全部</th><th>操作</th>
<th style="min-width:36px;"><input type="checkbox" id="checkAll" title="全选"></th><th>序号</th><th>单位</th><th>部门</th><th>姓名</th><th>员工编号</th><th>身份证号</th><th>体检编</th><th>系统体检状态</th><th>医院体检状态</th><th>体检医院</th><th>体检年份</th><th>体检计划</th><th>预约日期</th><th>体检日期</th><th>已检项/全部</th><th>操作</th>
</tr>
</thead>
<tbody>
@@ -279,7 +283,7 @@
<div class="info-item"><div class="info-item__label">姓名</div><div class="info-item__value">王旭</div></div>
<div class="info-item"><div class="info-item__label">单位部门</div><div class="info-item__value">公司机关 / 办公室</div></div>
<div class="info-item"><div class="info-item__label">体检医院</div><div class="info-item__value">延安医院</div></div>
<div class="info-item"><div class="info-item__label">体检编</div><div class="info-item__value">80038237</div></div>
<div class="info-item"><div class="info-item__label">体检编</div><div class="info-item__value">80038237</div></div>
<div class="info-item"><div class="info-item__label">体检总费用</div><div class="info-item__value">1280.00 元</div></div>
<div class="info-item"><div class="info-item__label">体检日期</div><div class="info-item__value">2025-07-22</div></div>
<div class="info-item"><div class="info-item__label">体检状态</div><div class="info-item__value">已体检</div></div>
@@ -138,7 +138,7 @@
常规体检
</div>
<div class="sidebar-subgroup__body">
<a href="mid-appointment-track.html" class="sidebar-item">员工预约跟踪</a>
<a href="mid-appointment-track.html" class="sidebar-item">员工预约体检跟踪</a>
<a href="mid-selected-items.html" class="sidebar-item active">已选项目员工信息</a>
<a href="mid-participation.html" class="sidebar-item">已参检员工信息</a>
<a href="mid-unit-appointment.html" class="sidebar-item">单位预约人数统计</a>
@@ -172,15 +172,9 @@
</select>
</div>
<div class="filter-item">
<label>单位:</label>
<label>单位部门</label>
<select class="filter-select">
<option>请选择单位</option><option>公司机关</option><option>第一采油厂</option><option>第二采油厂</option><option>第三采油厂</option>
</select>
</div>
<div class="filter-item">
<label>部门:</label>
<select class="filter-select">
<option>请选择部门</option><option>办公室</option><option>发展计划部</option><option>企管法规部</option><option>地质研究所</option>
<option>请选择单位部门</option><option>公司机关</option><option>第一采油厂</option><option>第二采油厂</option><option>第三采油厂</option>
</select>
</div>
<div class="filter-item">
@@ -218,17 +212,9 @@
</select>
</div>
<div class="filter-item">
<label>预约日期</label>
<input class="filter-input" type="date" style="width:150px;min-width:unset;">
</div>
<div class="filter-item">
<label>体检日期:</label>
<input class="filter-input" type="date" style="width:150px;min-width:unset;">
</div>
<div class="filter-item">
<label>前置机构体检状态:</label>
<label>前置机体检状态</label>
<select class="filter-select">
<option>请选择前置机体检状态</option><option>未体检</option><option>体检中</option><option>已体检</option>
<option>请选择前置机体检状态</option><option>未体检</option><option>体检中</option><option>已体检</option>
</select>
</div>
<button class="btn btn-primary">
@@ -268,10 +254,6 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none"><rect x="2" y="2" width="10" height="10" rx="1.5" stroke="currentColor" stroke-width="1.4"/><path d="M4 5h6M4 7.5h4" stroke="currentColor" stroke-width="1.2" stroke-linecap="round"/></svg>
查看导出任务
</button>
<button class="btn btn-default" id="btnSync">
<svg width="14" height="14" viewBox="0 0 14 14" fill="none"><path d="M7 1v8M4 6l3 3 3-3" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/><path d="M2 11v2h10v-2" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>
同步医院体检预约信息
</button>
</div>
<!-- 数据表格 -->
@@ -283,13 +265,13 @@
<table>
<thead>
<tr>
<th style="min-width:36px;"><input type="checkbox" id="checkAll" title="全选"></th><th>姓名</th><th>单位</th><th>部门</th><th>体检编码</th><th>手机号码</th><th>医院名称</th><th>员工编号</th><th>身份证号</th><th>体检预约信息</th><th>预约状态</th><th>预约日期</th><th>系统体检状态</th><th>前置机预约状态</th><th>体检日期</th><th>操作</th>
<th style="min-width:36px;"><input type="checkbox" id="checkAll" title="全选"></th><th>姓名</th><th>单位</th><th>部门</th><th>体检编码</th><th>手机号码</th><th>医院名称</th><th>员工编号</th><th>身份证号</th><th>体检预约信息</th><th>预约状态</th><th>预约日期</th><th>医院体检状态</th><th>系统体检状态</th><th>前置机预约状态</th><th>体检日期</th><th>操作</th>
</tr>
</thead>
<tbody>
<tr><td class="row-check"><input type="checkbox" class="row-checkbox"></td><td>王旭</td><td>公司机关</td><td>办公室</td><td>TJ00687345</td><td>18811391195</td><td>兴隆园医院</td><td>342423</td><td>430626198502560029</td><td>预约成功</td><td><span class="tag tag-green">已预约</span></td><td>2026-03-10</td><td><span class="tag tag-orange">未体检</span></td><td><span class="tag tag-green">已预约</span></td><td>2026-03-12</td><td><span class="link" onclick="openDetailModal()">详情</span> <span class="link" style="color:var(--danger);">删除</span></td></tr>
<tr><td class="row-check"><input type="checkbox" class="row-checkbox"></td><td>张武</td><td>公司机关</td><td>政策研究室</td><td>TJ00687264</td><td>15121908360</td><td>兴隆园医院</td><td>324321</td><td>430626198806120037</td><td>预约成功</td><td><span class="tag tag-green">已预约</span></td><td>2026-03-10</td><td><span class="tag tag-orange">未体检</span></td><td><span class="tag tag-green">已预约</span></td><td>2026-03-11</td><td><span class="link" onclick="openDetailModal()">详情</span> <span class="link" style="color:var(--danger);">删除</span></td></tr>
<tr><td class="row-check"><input type="checkbox" class="row-checkbox"></td><td>赵芳</td><td>第二采油厂</td><td>地质研究所</td><td>TJ00687302</td><td>13744705644</td><td>泾河医院</td><td>512336</td><td>610402198109230028</td><td>-</td><td><span class="tag tag-orange">未预约</span></td><td>-</td><td><span class="tag tag-orange">未体检</span></td><td><span class="tag tag-orange">未预约</span></td><td>-</td><td><span class="link" onclick="openDetailModal()">详情</span> <span class="link" style="color:var(--danger);">删除</span></td></tr>
<tr><td class="row-check"><input type="checkbox" class="row-checkbox"></td><td>王旭</td><td>公司机关</td><td>办公室</td><td>TJ00687345</td><td>18811391195</td><td>兴隆园医院</td><td>342423</td><td>430626198502560029</td><td>预约成功</td><td><span class="tag tag-green">已预约</span></td><td>2026-03-10</td><td><span class="tag tag-blue">体检中</span></td><td><span class="tag tag-orange">未体检</span></td><td><span class="tag tag-green">已预约</span></td><td>2026-03-12</td><td><span class="link" onclick="openDetailModal()">详情</span> <span class="link" style="color:var(--danger);">删除</span></td></tr>
<tr><td class="row-check"><input type="checkbox" class="row-checkbox"></td><td>张武</td><td>公司机关</td><td>政策研究室</td><td>TJ00687264</td><td>15121908360</td><td>兴隆园医院</td><td>324321</td><td>430626198806120037</td><td>预约成功</td><td><span class="tag tag-green">已预约</span></td><td>2026-03-10</td><td><span class="tag tag-blue">体检中</span></td><td><span class="tag tag-orange">未体检</span></td><td><span class="tag tag-green">已预约</span></td><td>2026-03-11</td><td><span class="link" onclick="openDetailModal()">详情</span> <span class="link" style="color:var(--danger);">删除</span></td></tr>
<tr><td class="row-check"><input type="checkbox" class="row-checkbox"></td><td>赵芳</td><td>第二采油厂</td><td>地质研究所</td><td>TJ00687302</td><td>13744705644</td><td>泾河医院</td><td>512336</td><td>610402198109230028</td><td>-</td><td><span class="tag tag-orange">未预约</span></td><td>-</td><td>-</td><td><span class="tag tag-orange">未体检</span></td><td><span class="tag tag-orange">未预约</span></td><td>-</td><td><span class="link" onclick="openDetailModal()">详情</span> <span class="link" style="color:var(--danger);">删除</span></td></tr>
</tbody>
</table>
</div>
@@ -452,10 +434,10 @@ function batchSetRows(handler,emptyMsg){
checked.forEach(function(cb){handler(cb.closest('tr'));});
}
document.getElementById('btnBatchDone').addEventListener('click',function(){
batchSetRows(function(tr){setRowStatus(tr,12,'已体检');},'请先勾选需要操作的员工');
batchSetRows(function(tr){setRowStatus(tr,13,'已体检');},'请先勾选需要操作的员工');
});
document.getElementById('btnBatchUndone').addEventListener('click',function(){
batchSetRows(function(tr){setRowStatus(tr,12,'未体检');},'请先勾选需要操作的员工');
batchSetRows(function(tr){setRowStatus(tr,13,'未体检');},'请先勾选需要操作的员工');
});
document.getElementById('btnBatchCancel').addEventListener('click',function(){
batchSetRows(function(tr){setRowStatus(tr,10,'已取消预约');},'请先勾选需要操作的员工');
@@ -115,7 +115,7 @@
常规体检
</div>
<div class="sidebar-subgroup__body">
<a href="mid-appointment-track.html" class="sidebar-item">员工预约跟踪</a>
<a href="mid-appointment-track.html" class="sidebar-item">员工预约体检跟踪</a>
<a href="mid-selected-items.html" class="sidebar-item">已选项目员工信息</a>
<a href="mid-participation.html" class="sidebar-item">已参检员工信息</a>
<a href="mid-unit-appointment.html" class="sidebar-item active">单位预约人数统计</a>
@@ -104,7 +104,7 @@
常规体检
</div>
<div class="sidebar-subgroup__body">
<a href="mid-appointment-track.html" class="sidebar-item">员工预约跟踪</a>
<a href="mid-appointment-track.html" class="sidebar-item">员工预约体检跟踪</a>
<a href="mid-selected-items.html" class="sidebar-item">已选项目员工信息</a>
<a href="mid-participation.html" class="sidebar-item">已参检员工信息</a>
<a href="mid-unit-appointment.html" class="sidebar-item">单位预约人数统计</a>
@@ -221,6 +221,10 @@
<label>姓名:</label>
<input class="filter-input" type="text" id="f-name" placeholder="请输入姓名">
</div>
<div class="filter-item">
<label>员工编号:</label>
<input class="filter-input" type="text" id="f-empno" placeholder="请输入员工编号">
</div>
<div class="filter-item">
<label>身份证号:</label>
<input class="filter-input" type="text" id="f-idcard" placeholder="请输入身份证号">
@@ -275,6 +279,7 @@
<thead>
<tr>
<th>姓名</th>
<th>员工编号</th>
<th>身份证号</th>
<th>单位</th>
<th>部门</th>
@@ -307,22 +312,22 @@
<script>
/* ============ 数据 ============ */
/* [姓名, 身份证号, 单位, 部门, 医院名称, 体检年份, 勾选状态, 勾选病种数] */
/* [姓名, 员工编号, 身份证号, 单位, 部门, 医院名称, 体检年份, 勾选状态, 勾选病种数] */
var rows=[
['王军文','642103197412105210','第六采油厂','生产保障大队','宁夏宝石花医院','2025','部分勾选',3],
['郭锋','642103197601275235','第六采油厂','武峁子采油作业区','宁夏宝石花医院','2025','部分勾选',4],
['周扬','642103198907275216','第六采油厂','武峁子采油作业区','宁夏宝石花医院','2025','部分勾选',2],
['张兴文','622821197512150016','第六采油厂','武峁子采油作业区','宁夏宝石花医院','2025','部分勾选',3],
['李长青','640382198608185215','第六采油厂','武峁子采油作业区','宁夏宝石花医院','2025','部分勾选',3],
['施亚亮','642103198010295212','第六采油厂','生产保障大队','宁夏宝石花医院','2025','部分勾选',4],
['袁雪利','642101197909030549','第六采油厂','武峁子采油作业区','宁夏宝石花医院','2025','部分勾选',4],
['李星','640382199212225123','第六采油厂','武峁子采油作业区','宁夏宝石花医院','2025','部分勾选',2],
['刘军','642103199108065217','第六采油厂','武峁子采油作业区','宁夏宝石花医院','2025','部分勾选',1],
['张亮','642103198304055230','第六采油厂','安边采油作业区','宁夏宝石花医院','2025','部分勾选',2],
['高建峰','642103198705205211','第六采油厂','井诺采油作业区','宁夏宝石花医院','2025','全部勾选',5],
['马晓燕','640382199003158246','第六采油厂','生产保障大队','庆阳医院','2025','部分勾选',2],
['白学东','642103197806015239','第六采油厂','安边采油作业区','庆阳医院','2024','部分勾选',3],
['柴永军','622821198211030015','第六采油厂','井诺采油作业区','庆阳医院','2024','全部勾选',4]
['王军文','341122','642103197412105210','第六采油厂','生产保障大队','宁夏宝石花医院','2025','部分勾选',3],
['郭锋','442156','642103197601275235','第六采油厂','武峁子采油作业区','宁夏宝石花医院','2025','部分勾选',4],
['周扬','556123','642103198907275216','第六采油厂','武峁子采油作业区','宁夏宝石花医院','2025','部分勾选',2],
['张兴文','330145','622821197512150016','第六采油厂','武峁子采油作业区','宁夏宝石花医院','2025','部分勾选',3],
['李长青','612345','640382198608185215','第六采油厂','武峁子采油作业区','宁夏宝石花医院','2025','部分勾选',3],
['施亚亮','489210','642103198010295212','第六采油厂','生产保障大队','宁夏宝石花医院','2025','部分勾选',4],
['袁雪利','375218','642101197909030549','第六采油厂','武峁子采油作业区','宁夏宝石花医院','2025','部分勾选',4],
['李星','528341','640382199212225123','第六采油厂','武峁子采油作业区','宁夏宝石花医院','2025','部分勾选',2],
['刘军','416239','642103199108065217','第六采油厂','武峁子采油作业区','宁夏宝石花医院','2025','部分勾选',1],
['张亮','390154','642103198304055230','第六采油厂','安边采油作业区','宁夏宝石花医院','2025','部分勾选',2],
['高建峰','468213','642103198705205211','第六采油厂','井诺采油作业区','宁夏宝石花医院','2025','全部勾选',5],
['马晓燕','551027','640382199003158246','第六采油厂','生产保障大队','庆阳医院','2025','部分勾选',2],
['白学东','328901','642103197806015239','第六采油厂','安边采油作业区','庆阳医院','2024','部分勾选',3],
['柴永军','471236','622821198211030015','第六采油厂','井诺采油作业区','庆阳医院','2024','全部勾选',4]
];
/* 记录数据 */
var selectRecords=[
@@ -336,7 +341,7 @@ var exportRecords=[
['员工病种导出_2025-11-05.xlsx','2025-11-05 09:22:40','系统管理员','成功'],
['员工病种导出_2025-10-28.xlsx','2025-10-28 14:20:05','李红','已过期']
];
var state={name:'',idcard:'',status:'',year:'2025',unit:'',dept:'',hospital:'',page:1,pageSize:10};
var state={name:'',empno:'',idcard:'',status:'',year:'2025',unit:'',dept:'',hospital:'',page:1,pageSize:10};
/* ============ 初始化下拉 ============ */
function uniq(col){var s=[];rows.forEach(function(r){if(s.indexOf(r[col])===-1)s.push(r[col]);});return s;}
@@ -345,14 +350,15 @@ function fillSelect(id,list,placeholder){
list.forEach(function(v){var opt=document.createElement('option');opt.value=v;opt.textContent=v;sel.appendChild(opt);});
}
function initOptions(){
fillSelect('f-unit',uniq(2));
fillSelect('f-dept',uniq(3));
fillSelect('f-hospital',uniq(4));
fillSelect('f-unit',uniq(3));
fillSelect('f-dept',uniq(4));
fillSelect('f-hospital',uniq(5));
}
/* ============ 查询/重置 ============ */
function doQuery(){
state.name=document.getElementById('f-name').value.trim();
state.empno=document.getElementById('f-empno').value.trim();
state.idcard=document.getElementById('f-idcard').value.trim();
state.status=document.getElementById('f-status').value;
state.year=document.getElementById('f-year').value.trim();
@@ -363,12 +369,12 @@ function doQuery(){
renderTable();
}
function doReset(){
['f-name','f-idcard'].forEach(function(id){document.getElementById(id).value='';});
['f-name','f-empno','f-idcard'].forEach(function(id){document.getElementById(id).value='';});
document.getElementById('f-year').value='';
['f-status','f-unit','f-dept','f-hospital'].forEach(function(id){
var s=document.getElementById(id);s.value='';s.classList.add('placeholder');
});
state.name='';state.idcard='';state.status='';state.year='';state.unit='';state.dept='';state.hospital='';
state.name='';state.empno='';state.idcard='';state.status='';state.year='';state.unit='';state.dept='';state.hospital='';
state.page=1;
renderTable();
}
@@ -378,12 +384,13 @@ function filteredRows(){
var list=[];
rows.forEach(function(r,i){
if(state.name&&r[0].indexOf(state.name)===-1)return;
if(state.idcard&&r[1].indexOf(state.idcard)===-1)return;
if(state.status&&r[6]!==state.status)return;
if(state.year&&r[5]!==state.year)return;
if(state.unit&&r[2]!==state.unit)return;
if(state.dept&&r[3]!==state.dept)return;
if(state.hospital&&r[4]!==state.hospital)return;
if(state.empno&&r[1].indexOf(state.empno)===-1)return;
if(state.idcard&&r[2].indexOf(state.idcard)===-1)return;
if(state.status&&r[7]!==state.status)return;
if(state.year&&r[6]!==state.year)return;
if(state.unit&&r[3]!==state.unit)return;
if(state.dept&&r[4]!==state.dept)return;
if(state.hospital&&r[5]!==state.hospital)return;
list.push(i);
});
return list;
@@ -408,11 +415,12 @@ function renderTable(){
+'<td>'+r[3]+'</td>'
+'<td>'+r[4]+'</td>'
+'<td>'+r[5]+'</td>'
+'<td>'+statusTag(r[6])+'</td>'
+'<td><span class="link" onclick="showDiseaseList('+i+')">'+r[7]+'</span></td>'
+'<td>'+r[6]+'</td>'
+'<td>'+statusTag(r[7])+'</td>'
+'<td><span class="link" onclick="showDiseaseList('+i+')">'+r[8]+'</span></td>'
+'<td><span class="link-danger" onclick="deleteRow('+i+')">删除</span></td>'
+'</tr>';
}).join(''):'<tr><td colspan="9"><div class="empty-tip">暂无数据</div></td></tr>';
}).join(''):'<tr><td colspan="10"><div class="empty-tip">暂无数据</div></td></tr>';
renderPagination(list.length,totalPages);
}
@@ -503,7 +511,7 @@ var DISEASE_POOL=[
];
function showDiseaseList(i){
var r=rows[i],html='';
for(var k=0;k<r[7];k++){
for(var k=0;k<r[8];k++){
var d=DISEASE_POOL[(i*5+k*3)%DISEASE_POOL.length];
html+='<tr><td>'+(k+1)+'</td><td>'+d[0]+'</td><td>'+d[1]+'</td></tr>';
}
@@ -185,6 +185,10 @@
<label>姓名:</label>
<input class="filter-input" type="text" placeholder="请输入姓名" style="width:200px;min-width:unset;">
</div>
<div class="filter-item">
<label>员工编号:</label>
<input class="filter-input" type="text" placeholder="请输入员工编号" style="width:200px;min-width:unset;">
</div>
<div class="filter-item">
<label>身份证号:</label>
<input class="filter-input" type="text" placeholder="请输入身份证号" style="width:200px;min-width:unset;">
@@ -223,28 +227,28 @@
<table>
<thead>
<tr>
<th>序号</th><th>姓名</th><th>单位</th><th>部门</th><th>医院名称</th><th>身份证号</th><th>手机号</th><th>体检日期</th><th>大病分类</th><th>是否开启消息通知</th><th>是否已发送短信</th><th>操作</th>
<th>序号</th><th>姓名</th><th>员工编号</th><th>单位</th><th>部门</th><th>医院名称</th><th>身份证号</th><th>手机号</th><th>体检日期</th><th>大病分类</th><th>是否开启消息通知</th><th>是否已发送短信</th><th>操作</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td><td>王旭</td><td>公司机关</td><td>办公室</td><td>延安医院</td><td>430626198502560029</td><td>13812346621</td><td>2026-03-10</td><td>恶性肿瘤</td><td><span class="switch"><input type="checkbox" checked><span class="switch__slider"></span></span></td><td><span class="tag tag-green"></span></td>
<td>1</td><td>王旭</td><td>342423</td><td>公司机关</td><td>办公室</td><td>延安医院</td><td>430626198502560029</td><td>13812346621</td><td>2026-03-10</td><td>恶性肿瘤</td><td><span class="switch"><input type="checkbox" checked><span class="switch__slider"></span></span></td><td><span class="tag tag-green"></span></td>
<td><span class="link">编辑</span><span class="link" style="margin-left:12px;">删除</span><span class="link" style="margin-left:12px;">发送短信</span></td>
</tr>
<tr>
<td>2</td><td>张丽娟</td><td>公司机关</td><td>财务部</td><td>长安医院</td><td>430626198805120046</td><td>13912343078</td><td>2026-03-11</td><td>心脑血管疾病</td><td><span class="switch"><input type="checkbox" checked><span class="switch__slider"></span></span></td><td><span class="tag tag-red"></span></td>
<td>2</td><td>张丽娟</td><td>328845</td><td>公司机关</td><td>财务部</td><td>长安医院</td><td>430626198805120046</td><td>13912343078</td><td>2026-03-11</td><td>心脑血管疾病</td><td><span class="switch"><input type="checkbox" checked><span class="switch__slider"></span></span></td><td><span class="tag tag-red"></span></td>
<td><span class="link">编辑</span><span class="link" style="margin-left:12px;">删除</span><span class="link" style="margin-left:12px;">发送短信</span></td>
</tr>
<tr>
<td>3</td><td>李国强</td><td>生产一部</td><td>运行车间</td><td>延安医院</td><td>430626197911200017</td><td>13712345540</td><td>2026-03-12</td><td>糖尿病及并发症</td><td><span class="switch"><input type="checkbox"><span class="switch__slider"></span></span></td><td><span class="tag tag-red"></span></td>
<td>3</td><td>李国强</td><td>417203</td><td>生产一部</td><td>运行车间</td><td>延安医院</td><td>430626197911200017</td><td>13712345540</td><td>2026-03-12</td><td>糖尿病及并发症</td><td><span class="switch"><input type="checkbox"><span class="switch__slider"></span></span></td><td><span class="tag tag-red"></span></td>
<td><span class="link">编辑</span><span class="link" style="margin-left:12px;">删除</span><span class="link" style="margin-left:12px;">发送短信</span></td>
</tr>
<tr>
<td>4</td><td>陈慧敏</td><td>生产二部</td><td>检修班</td><td>西南医院</td><td>430626198302140028</td><td>13512348802</td><td>2026-03-12</td><td>慢性肾病</td><td><span class="switch"><input type="checkbox" checked><span class="switch__slider"></span></span></td><td><span class="tag tag-green"></span></td>
<td>4</td><td>陈慧敏</td><td>509126</td><td>生产二部</td><td>检修班</td><td>西南医院</td><td>430626198302140028</td><td>13512348802</td><td>2026-03-12</td><td>慢性肾病</td><td><span class="switch"><input type="checkbox" checked><span class="switch__slider"></span></span></td><td><span class="tag tag-green"></span></td>
<td><span class="link">编辑</span><span class="link" style="margin-left:12px;">删除</span><span class="link" style="margin-left:12px;">发送短信</span></td>
</tr>
<tr>
<td>5</td><td>赵明辉</td><td>公司机关</td><td>安全环保部</td><td>大坪医院</td><td>430626197509030035</td><td>13612341194</td><td>2026-03-13</td><td>肝硬化</td><td><span class="switch"><input type="checkbox" checked><span class="switch__slider"></span></span></td><td><span class="tag tag-red"></span></td>
<td>5</td><td>赵明辉</td><td>371840</td><td>公司机关</td><td>安全环保部</td><td>大坪医院</td><td>430626197509030035</td><td>13612341194</td><td>2026-03-13</td><td>肝硬化</td><td><span class="switch"><input type="checkbox" checked><span class="switch__slider"></span></span></td><td><span class="tag tag-red"></span></td>
<td><span class="link">编辑</span><span class="link" style="margin-left:12px;">删除</span><span class="link" style="margin-left:12px;">发送短信</span></td>
</tr>
</tbody>
@@ -170,6 +170,10 @@
<label>姓名:</label>
<input class="filter-input" type="text" placeholder="请输入姓名" style="width:200px;min-width:unset;">
</div>
<div class="filter-item">
<label>员工编号:</label>
<input class="filter-input" type="text" placeholder="请输入员工编号" style="width:200px;min-width:unset;">
</div>
<div class="filter-item">
<label>身份证号:</label>
<input class="filter-input" type="text" placeholder="请输入身份证号" style="width:200px;min-width:unset;">
@@ -232,28 +236,28 @@
<table>
<thead>
<tr>
<th>序号</th><th>姓名</th><th>身份证号</th><th>手机号</th><th>重大异常描述</th><th>APP已通知</th><th>APP通知时间</th><th>APP通知已读</th><th>APP通知已读时间</th><th>短信已通知</th><th>短信通知时间</th><th>操作</th>
<th>序号</th><th>姓名</th><th>员工编号</th><th>身份证号</th><th>手机号</th><th>重大异常描述</th><th>APP已通知</th><th>APP通知时间</th><th>APP通知已读</th><th>APP通知已读时间</th><th>短信已通知</th><th>短信通知时间</th><th>操作</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td><td>王旭</td><td>430626198502560029</td><td>13812346621</td><td>空腹血糖 14.2 mmol/L↑,糖化血红蛋白 9.8%↑,提示糖尿病可能</td><td><span class="tag tag-green"></span></td><td>2026-03-15 09:20:36</td><td><span class="tag tag-green"></span></td><td>2026-03-15 10:05:12</td><td><span class="tag tag-green"></span></td><td>2026-03-15 09:21:02</td>
<td>1</td><td>王旭</td><td>342423</td><td>430626198502560029</td><td>13812346621</td><td>空腹血糖 14.2 mmol/L↑,糖化血红蛋白 9.8%↑,提示糖尿病可能</td><td><span class="tag tag-green"></span></td><td>2026-03-15 09:20:36</td><td><span class="tag tag-green"></span></td><td>2026-03-15 10:05:12</td><td><span class="tag tag-green"></span></td><td>2026-03-15 09:21:02</td>
<td><span class="link">删除</span></td>
</tr>
<tr>
<td>2</td><td>张丽娟</td><td>430626198805120046</td><td>13912343078</td><td>胸部CT示右肺上叶结节 12mm,建议进一步检查</td><td><span class="tag tag-green"></span></td><td>2026-03-15 09:22:18</td><td><span class="tag tag-red"></span></td><td></td><td><span class="tag tag-red"></span></td><td></td>
<td>2</td><td>张丽娟</td><td>328845</td><td>430626198805120046</td><td>13912343078</td><td>胸部CT示右肺上叶结节 12mm,建议进一步检查</td><td><span class="tag tag-green"></span></td><td>2026-03-15 09:22:18</td><td><span class="tag tag-red"></span></td><td></td><td><span class="tag tag-red"></span></td><td></td>
<td><span class="link">删除</span></td>
</tr>
<tr>
<td>3</td><td>李国强</td><td>430626197911200017</td><td>13712345540</td><td>血压 178/112 mmHg↑,心电图示左心室高电压</td><td><span class="tag tag-red"></span></td><td></td><td><span class="tag tag-red"></span></td><td></td><td><span class="tag tag-red"></span></td><td></td>
<td>3</td><td>李国强</td><td>417203</td><td>430626197911200017</td><td>13712345540</td><td>血压 178/112 mmHg↑,心电图示左心室高电压</td><td><span class="tag tag-red"></span></td><td></td><td><span class="tag tag-red"></span></td><td></td><td><span class="tag tag-red"></span></td><td></td>
<td><span class="link">删除</span></td>
</tr>
<tr>
<td>4</td><td>陈慧敏</td><td>430626198302140028</td><td>13512348802</td><td>甲胎蛋白 458 ng/mL↑,肝脏超声示占位性病变</td><td><span class="tag tag-green"></span></td><td>2026-03-16 14:02:45</td><td><span class="tag tag-green"></span></td><td>2026-03-16 15:30:08</td><td><span class="tag tag-green"></span></td><td>2026-03-16 14:03:20</td>
<td>4</td><td>陈慧敏</td><td>509126</td><td>430626198302140028</td><td>13512348802</td><td>甲胎蛋白 458 ng/mL↑,肝脏超声示占位性病变</td><td><span class="tag tag-green"></span></td><td>2026-03-16 14:02:45</td><td><span class="tag tag-green"></span></td><td>2026-03-16 15:30:08</td><td><span class="tag tag-green"></span></td><td>2026-03-16 14:03:20</td>
<td><span class="link">删除</span></td>
</tr>
<tr>
<td>5</td><td>赵明辉</td><td>430626197509030035</td><td>13612341194</td><td>总胆红素 68 μmol/L↑,转氨酶升高 3 倍,提示肝功能异常</td><td><span class="tag tag-red"></span></td><td></td><td><span class="tag tag-red"></span></td><td></td><td><span class="tag tag-green"></span></td><td>2026-03-16 16:40:55</td>
<td>5</td><td>赵明辉</td><td>371840</td><td>430626197509030035</td><td>13612341194</td><td>总胆红素 68 μmol/L↑,转氨酶升高 3 倍,提示肝功能异常</td><td><span class="tag tag-red"></span></td><td></td><td><span class="tag tag-red"></span></td><td></td><td><span class="tag tag-green"></span></td><td>2026-03-16 16:40:55</td>
<td><span class="link">删除</span></td>
</tr>
</tbody>
@@ -265,13 +265,6 @@
<option>采油三厂</option>
</select>
</div>
<div class="filter-item">
<label>体检计划:</label>
<select class="filter-select" style="min-width:160px;">
<option>请选择</option>
<option>2026年度常规体检</option>
</select>
</div>
<div class="filter-item">
<label>姓名:</label>
<input class="filter-input" type="text" placeholder="请输入" style="min-width:120px;">
@@ -245,12 +245,6 @@
<option>请选择</option>
</select>
</div>
<div class="filter-item">
<label>体检计划:</label>
<select class="filter-select" style="min-width:160px;">
<option>请选择体检计划</option>
</select>
</div>
<div class="filter-item">
<label>医院选择:</label>
<select class="filter-select" style="min-width:160px;">
@@ -282,7 +276,7 @@
<div class="filter-item">
<label>系统体检状态:</label>
<select class="filter-select" style="min-width:160px;">
<option>请选择系统体检状态</option>
<option>请选择系统体检状态</option><option>未体检</option><option>体检中</option><option>已体检</option>
</select>
</div>
<button class="btn btn-primary">查询</button>
@@ -253,7 +253,7 @@
<div class="filter-bar">
<div class="filter-item">
<label>体检年份:</label>
<input class="filter-input" type="text" placeholder="2026" style="min-width:100px;" value="2026">
<select class="filter-select plan-year" style="min-width:100px;"></select>
</div>
<div class="filter-item">
<label>单位部门:</label>
@@ -261,12 +261,6 @@
<option>请选择</option>
</select>
</div>
<div class="filter-item">
<label>体检计划:</label>
<select class="filter-select" style="min-width:160px;">
<option>请选择体检计划</option>
</select>
</div>
<div class="filter-item">
<label>医院选择:</label>
<select class="filter-select" style="min-width:160px;">
@@ -304,7 +298,7 @@
<div class="filter-item">
<label>系统体检状态:</label>
<select class="filter-select" style="min-width:160px;">
<option>请选择系统体检状态</option>
<option>请选择系统体检状态</option><option>未体检</option><option>体检中</option><option>已体检</option>
</select>
</div>
<button class="btn btn-primary">查询</button>
@@ -700,6 +694,21 @@ function saveAddModal(){
renumberRows();
closeAddModal();
}
/* 体检年份下拉,默认当年 */
(function(){
var year = new Date().getFullYear();
document.querySelectorAll('.plan-year').forEach(function(sel){
sel.innerHTML = '';
for(var y = year - 3; y <= year + 1; y++){
var opt = document.createElement('option');
opt.value = y;
opt.textContent = y + '年';
if(y === year) opt.selected = true;
sel.appendChild(opt);
}
});
})();
</script>
</body>
</html>
@@ -265,12 +265,6 @@
<option>请选择单位部门</option>
</select>
</div>
<div class="filter-item">
<label>体检计划:</label>
<select class="filter-select" style="min-width:160px;">
<option>请选择体检计划</option>
</select>
</div>
<div class="filter-item">
<label>医院选择:</label>
<select class="filter-select" style="min-width:160px;">