feat: 场所管理模块命名与功能完善

- 菜单名称:食堂管理 → 场所管理
- 表单字段统一改为"场所"相关命名
- 表格列顺序调整:场所编号、场所名称、场所类型、所属单位、详细地址
- 新增"场所类型"列和字段(食堂/餐厅)
- 新增/编辑页面添加类型单选框
- 详情抽屉字段顺序调整并新增类型展示
- 更新 CHANGELOG

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-05-26 09:27:25 +08:00
co-authored by Claude Haiku 4.5
parent dc9b939f46
commit 9cdfd6c46c
4232 changed files with 797481 additions and 4322 deletions
+58
View File
@@ -0,0 +1,58 @@
一级菜单|二级菜单|三级菜单|菜单功能描述
档案|个人监测数据||将员工历年产生的五类人群划分、健康排查、穿戴监测数据、体重监测数据进行归档,整体进行查看
|单位报表数据||将各单位历年产生的相关数据进行归档,包含穿戴设备、体重监测设备入库及分配情况、环境监测设备及布放位置等信息,整体进行查看
|算法模型||管理员可以在此查看该业务板块涉及到的算法模型说明文件。
健康排查|排查问卷|问题分类|管理员配置问卷问题分类信息。
||积分规则|管理员设置积分规则
||模板信息|管理员配置问卷问题模板信息,关联用户分类和问题分类
||问题管理|管理员配置问卷问题信息,配置所属问题分类
|格言管理||管理员配置格言相关知识信息
|排查记录|用户排查|管理员查看员工填写的问卷排查信息,详细排查记录
||部门排查|管理员以部门为维度,统计每个部门排查的人数
穿戴监测|工具管理||健康监测工具管理主要包含管理员对工具的新增,入库导入,列表支持工具编码绑定状态等搜索;工具绑定支持单个设备绑定和批量导出绑定,同时支持查看设备的绑定记录
|绑定记录||此功能是系统对管理员提供健康监测工具绑定用户的操作记录查询,导出功能,支持单位和员工信息的筛选
|用户数据||管理员查看员工的监测工具上报数据,列表可查看各项指标的最新值,数据详情中可根据时间范围查看具体监测项的趋势变化和历史明细数据
|异常事件||管理员查看员工检测指标(一键告警,体温异常,心率异常,血氧异常,压力异常)告警数据以及告警位置,支持查看全时段历史异常数据
|通知消息||管理员可通过后台给佩戴健康监测工具的员工发送消息通知,通知范围提供全员通知和指定员工两种模式
|部门数据统计||数据列表以单位或作业区为维度统计该单位下穿戴设备的佩戴情况和数据异常人数支持数据导出;明细数据可查看该单位下每位员工每天的穿戴设备佩戴记录,同时支持数据导出
|个人数据统计||以天为维度查看每位员工当天的统计数据(主要统计各类监测数据的最大值,最小值,平均值,数据总量等)
体重监测|体重秤|设备管理|系统提供针对管理员进行身高体重秤设备的新增和导入功能,列表支持设备信息的搜索;注:体重秤目前仅支持两个厂商(数字味道、上禾电子)的设备,每个厂商的数据对接渠道不同
||设备监测|管理员可以通过列表页查看每个身高体重秤的使用频率统计并可根据使用频率排序,数据明细中可查看具体每次的使用测量记录,支持员工实名和员工匿名两个维度的查询
||设备统计|管理员查看单位、个人两种维度的身高体重大秤统计信息
|蓝牙称|设备管理|系统提供针对管理员进行个人体重秤设备的新增和导入功能,列表支持设备信息和人员信息的搜索;绑定管理支持设备绑定员工和解绑员工,同时支持批量导入绑定信息
||设备监测|管理员可以通过列表页查看每个体脂称的最新测量数据,数据明细中支持查看每个秤的历史使用情况和员工体重变化趋势
||设备统计|管理员查看单位、个人两种维度的个人体重小秤统计信息
|体脂仪|设备管理|系统针对管理员提供体脂仪设备的新增和导入功能,列表支持设备信息的搜索
||设备监测|管理员可通过列表页查看每个体脂仪的使用频率统计并可根据使用频率排序,数据明细中可查看具体每次的使用测量记录,支持员工实名和员工匿名两个维度的查询
||设备统计|管理员查看单位、个人两种维度的人体成分仪统计信息
|运动器械|设备管理|系统针对管理员提供运动设备的新增和导入导出功能,列表支持设备信息的搜索
||设备监测|管理员可通过列表页查看每个体脂仪的使用频率统计并可根据使用频率排序,数据明细中可查看具体每次的使用测量记录,支持员工实名和员工匿名两个维度的查询
||设备统计|管理员查看单位、个人两种维度的运动器械统计信息
|员工数据||管理员可以用过列表形式查看员工最新的监测数据,包含测量时间、测量设备、身高、体重、BMI、体脂率,点击测量记录可以查看员工详细的测量历史记录信息
环境监测|室内空气|设备列表|管理员维护室内环境监测设备的信息,列表查看所有设备,支持切换地图展示方式
||设备分类|管理员维护室内环境监测设备分类信息,统一设置不同监测指标的阈值
||数据监测|管理员查看室内环境监测设备的最新监测数据,点开详情查看不同监测指标近30日的变化趋势
||异常报警|管理员查看室内环境监测设备的指标异常报警信息
||应用记录|管理员查看移动端在室内环境模块点击查看的次数
||历史数据|管理员查看室内环境监测设备的历史监测数据和历史异常数据
|室外空气|设备列表|管理员维护室外环境监测设备的信息,列表查看所有设备,支持切换地图展示方式
||设备分类|管理员维护室外环境监测设备分类信息,统一设置不同监测指标的阈值
||数据监测|管理员查看室外环境监测设备的最新监测数据,点开详情查看不同监测指标近30日的变化趋势
||异常报警|管理员查看室外环境监测设备的指标异常报警信息
||应用记录|管理员查看移动端在室外环境模块点击查看的次数
||历史数据|管理员查看室外环境监测设备的历史监测数据和历史异常数据
|水质监测|设备列表|管理员维护水质监测设备的信息,列表查看所有设备,支持切换地图展示方式。
||设备分类|管理员维护水质监测设备分类信息,统一设置不同监测指标的阈值
||数据监测|管理员查看水质监测设备的最新监测数据,点开详情查看不同监测指标近30日的变化趋势
||异常报警|管理员查看水质监测设备的指标异常报警信息
||应用记录|管理员查看移动端在水质监测模块点击查看的次数
||历史数据|管理员查看水质监测设备的历史监测数据和历史异常数据
|花粉监测|设备列表|管理员维护花粉监测设备的信息,列表查看所有设备,支持切换地图展示方式。
||设备分类|管理员维护花粉监测设备分类信息,统一设置不同监测指标的阈值
||数据监测|管理员查看花粉监测设备的最新监测数据,点开详情查看不同监测指标近30日的变化趋势
||异常报警|管理员查看花粉监测设备的指标异常报警信息
||应用记录|管理员查看移动端在花粉监测模块点击查看的次数
||历史数据|管理员查看花粉监测设备的历史监测数据和历史异常数据
||知识科普|管理员维护移动端花粉监测模块显示的科普资源信息
异常事件|系统脏数据||生命体征不可能值(如心率 0 bpm 且有运动步数,血氧 > 100%)或设备连接异常数据(如心电波形数据丢失/断续)等情形被定义为系统脏数据。处理方案包括双重保障措施:首先,在业务系统中对数据质量进行严格控制,作为第一道保障;其次,将业务数据汇总至数据中台后进行清洗、质量筛查,中台标记异常数据并将问题数据回传给业务系统。系统将于实时向管理员(系统运维/数据专员)推送告警。
|结果异常||生命体征告警(如静息心率 > 100 bpm,血氧 < 90%,血压 > 140/90 mmHg)或设备长时间失联(如 24小时无数据上传)被定义为结果异常。数据入库后,中台根据医学/业务模型分析,判定为风险或异常,生成待办工单或预警。系统将于实时(针对高危)或每日定时(针对一般指标)向用户(本人)及管理员(医生/健康专员)推送。
+16 -9
View File
@@ -2,7 +2,7 @@
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>营养管理 - 新增食堂 | 健康长庆原型</title>
<title>营养管理 - 新增场所 | 健康长庆原型</title>
<style>
*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:-apple-system,BlinkMacSystemFont,'PingFang SC','Microsoft YaHei',sans-serif;background:#F5F7FA;color:#333;min-width:1280px;}
@@ -108,7 +108,7 @@ body{font-family:-apple-system,BlinkMacSystemFont,'PingFang SC','Microsoft YaHei
<!-- 侧边栏 -->
<aside class="sidebar">
<div class="sidebar-menu__title">营养用餐</div>
<a href="din-canteen.html" class="sidebar-item active"><span class="mi">🏢</span>食堂管理</a>
<a href="din-canteen.html" class="sidebar-item active"><span class="mi">🏢</span>场所管理</a>
<a href="din-dict-mgmt.html" class="sidebar-item"><span class="mi">📖</span>字典管理</a>
<a href="prod-qc-nutrition.html" class="sidebar-item"><span class="mi">🔬</span>营养检验</a>
<a href="din-ingredient.html" class="sidebar-item"><span class="mi">🥦</span>食物成分</a>
@@ -149,9 +149,9 @@ body{font-family:-apple-system,BlinkMacSystemFont,'PingFang SC','Microsoft YaHei
<main class="main">
<!-- 面包屑 -->
<div class="breadcrumb">
<a href="din-canteen.html">食堂管理</a>
<a href="din-canteen.html">场所管理</a>
<span class="breadcrumb__sep">/</span>
<span>新增食堂</span>
<span>新增场所</span>
</div>
<!-- 基本信息表单 -->
@@ -159,16 +159,23 @@ body{font-family:-apple-system,BlinkMacSystemFont,'PingFang SC','Microsoft YaHei
<div class="form-card__title">基本信息</div>
<div class="form-grid">
<div class="form-group">
<label class="form-label">食堂名称<span class="required">*</span></label>
<input class="form-input" placeholder="请输入食堂名称">
<label class="form-label">场所名称<span class="required">*</span></label>
<input class="form-input" placeholder="请输入场所名称">
</div>
<div class="form-group">
<label class="form-label">食堂编号</label>
<label class="form-label">场所编号</label>
<input class="form-input" value="系统自动生成" disabled>
</div>
<div class="form-group">
<label class="form-label">食堂所属单位<span class="required">*</span></label>
<label class="form-label">场所类型<span class="required">*</span></label>
<div class="radio-group">
<label class="radio-item"><input type="radio" name="type" value="canteen" checked> 食堂</label>
<label class="radio-item"><input type="radio" name="type" value="restaurant"> 餐厅</label>
</div>
</div>
<div class="form-group">
<label class="form-label">场所所属单位<span class="required">*</span></label>
<select class="form-select">
<option value="">请选择所属单位</option>
<option>长庆油田总部</option>
@@ -274,7 +281,7 @@ document.querySelector('.map-mock').addEventListener('click',function(e){
});
function handleSave(){
alert('【交互说明】点击保存后,校验必填项,通过后保存并返回食堂列表页');
alert('【交互说明】点击保存后,校验必填项,通过后保存并返回场所列表页');
}
</script>
</body>
+1 -1
View File
@@ -111,7 +111,7 @@ tr:hover td{background:#FAFAFA;}
<!-- 侧边栏 -->
<aside class="sidebar">
<div class="sidebar-menu__title">营养用餐</div>
<a href="din-canteen.html" class="sidebar-item active"><span class="mi">🏢</span>食堂管理</a>
<a href="din-canteen.html" class="sidebar-item active"><span class="mi">🏢</span>场所管理</a>
<a href="din-dict-mgmt.html" class="sidebar-item"><span class="mi">📖</span>字典管理</a>
<a href="prod-qc-nutrition.html" class="sidebar-item"><span class="mi">🔬</span>营养检验</a>
<a href="din-ingredient.html" class="sidebar-item"><span class="mi">🥦</span>食物成分</a>
+21 -20
View File
@@ -2,7 +2,7 @@
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>营养管理 - 食堂管理 | 健康长庆原型</title>
<title>营养管理 - 场所管理 | 健康长庆原型</title>
<style>
*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:-apple-system,BlinkMacSystemFont,'PingFang SC','Microsoft YaHei',sans-serif;background:#F5F7FA;color:#333;min-width:1280px;}
@@ -107,7 +107,7 @@ tbody tr:hover td.td-actions{background:#F8FBFF;}
<!-- 侧边栏 -->
<aside class="sidebar">
<div class="sidebar-menu__title">营养用餐</div>
<a href="din-canteen.html" class="sidebar-item active"><span class="mi">🏢</span>食堂管理</a>
<a href="din-canteen.html" class="sidebar-item active"><span class="mi">🏢</span>场所管理</a>
<a href="din-dict-mgmt.html" class="sidebar-item"><span class="mi">📖</span>字典管理</a>
<a href="prod-qc-nutrition.html" class="sidebar-item"><span class="mi">🔬</span>营养检验</a>
<a href="din-ingredient.html" class="sidebar-item"><span class="mi">🥦</span>食物成分</a>
@@ -148,8 +148,8 @@ tbody tr:hover td.td-actions{background:#F8FBFF;}
<main class="main">
<!-- 筛选栏 -->
<div class="filter-bar">
<div class="filter-item"><label>食堂名称</label><input class="filter-input" placeholder="请输入食堂名称"></div>
<div class="filter-item"><label>食堂编号</label><input class="filter-input" placeholder="请输入食堂编号"></div>
<div class="filter-item"><label>场所名称</label><input class="filter-input" placeholder="请输入场所名称"></div>
<div class="filter-item"><label>场所编号</label><input class="filter-input" placeholder="请输入场所编号"></div>
<div class="filter-item"><label>所属单位</label>
<select class="filter-select">
<option value="">全部</option>
@@ -166,7 +166,7 @@ tbody tr:hover td.td-actions{background:#F8FBFF;}
<!-- 操作按钮 -->
<div class="action-bar">
<a href="din-canteen-add.html" class="btn btn-primary" style="text-decoration:none;"> 新增食堂</a>
<a href="din-canteen-add.html" class="btn btn-primary" style="text-decoration:none;"> 新增场所</a>
<button class="btn btn-success">📥 导出列表数据</button>
<button class="btn btn-default">📋 查看导出任务</button>
</div>
@@ -174,15 +174,15 @@ tbody tr:hover td.td-actions{background:#F8FBFF;}
<!-- 表格 -->
<div class="table-card">
<div class="table-card__header">
<div class="table-card__title">食堂列表</div>
<div class="table-card__title">场所列表</div>
<div class="table-card__actions"><span style="font-size:var(--font-xs);color:var(--text-secondary);">共 5 条</span></div>
</div>
<div class="table-card__content">
<table>
<thead><tr><th>食堂名称</th><th>食堂编号</th><th>所属单位</th><th>详细地址</th><th>操作</th></tr></thead>
<thead><tr><th>场所编号</th><th>场所名称</th><th>场所类型</th><th>所属单位</th><th>详细地址</th><th>操作</th></tr></thead>
<tbody>
<tr>
<td>总部一号食堂</td><td>ST-2026-001</td><td>长庆油田总部</td><td>陕西省西安市未央区凤城八路总部基地A区</td>
<td>ST-2026-001</td><td>总部一号食堂</td><td><span class="tag tag-blue">食堂</span></td><td>长庆油田总部</td><td>陕西省西安市未央区凤城八路总部基地A区</td>
<td class="td-actions">
<span class="link" onclick="openDrawer(0)">详情</span>
<a class="link" href="din-canteen-line.html?id=1&name=总部一号食堂">餐线管理</a>
@@ -191,7 +191,7 @@ tbody tr:hover td.td-actions{background:#F8FBFF;}
</td>
</tr>
<tr>
<td>总部二号食堂</td><td>ST-2026-002</td><td>长庆油田总部</td><td>陕西省西安市未央区凤城八路总部基地B区</td>
<td>ST-2026-002</td><td>总部二号食堂</td><td><span class="tag tag-blue">食堂</span></td><td>长庆油田总部</td><td>陕西省西安市未央区凤城八路总部基地B区</td>
<td class="td-actions">
<span class="link" onclick="openDrawer(1)">详情</span>
<a class="link" href="din-canteen-line.html?id=2&name=总部二号食堂">餐线管理</a>
@@ -200,7 +200,7 @@ tbody tr:hover td.td-actions{background:#F8FBFF;}
</td>
</tr>
<tr>
<td>采油一厂职工食堂</td><td>ST-2026-003</td><td>采油一厂</td><td>陕西省延安市安塞区采油一厂生活区</td>
<td>ST-2026-003</td><td>采油一厂职工食堂</td><td><span class="tag tag-blue">食堂</span></td><td>采油一厂</td><td>陕西省延安市安塞区采油一厂生活区</td>
<td class="td-actions">
<span class="link" onclick="openDrawer(2)">详情</span>
<a class="link" href="din-canteen-line.html?id=3&name=采油一厂职工食堂">餐线管理</a>
@@ -209,7 +209,7 @@ tbody tr:hover td.td-actions{background:#F8FBFF;}
</td>
</tr>
<tr>
<td>采油二厂综合食堂</td><td>ST-2026-004</td><td>采油二厂</td><td>甘肃省庆阳市庆城县采油二厂驻地</td>
<td>ST-2026-004</td><td>采油二厂综合食堂</td><td><span class="tag tag-blue">食堂</span></td><td>采油二厂</td><td>甘肃省庆阳市庆城县采油二厂驻地</td>
<td class="td-actions">
<span class="link" onclick="openDrawer(3)">详情</span>
<a class="link" href="din-canteen-line.html?id=4&name=采油二厂综合食堂">餐线管理</a>
@@ -218,7 +218,7 @@ tbody tr:hover td.td-actions{background:#F8FBFF;}
</td>
</tr>
<tr>
<td>采气一厂营养餐厅</td><td>ST-2026-005</td><td>采气一厂</td><td>陕西省榆林市靖边县采气一厂作业区</td>
<td>ST-2026-005</td><td>采气一厂营养餐厅</td><td><span class="tag tag-green">餐厅</span></td><td>采气一厂</td><td>陕西省榆林市靖边县采气一厂作业区</td>
<td class="td-actions">
<span class="link" onclick="openDrawer(4)">详情</span>
<a class="link" href="din-canteen-line.html?id=5&name=采气一厂营养餐厅">餐线管理</a>
@@ -237,7 +237,7 @@ tbody tr:hover td.td-actions{background:#F8FBFF;}
<div class="drawer-mask" id="drawerMask" onclick="closeDrawer()"></div>
<div class="drawer" id="drawer">
<div class="drawer__header">
<span class="drawer__title">食堂详情</span>
<span class="drawer__title">场所详情</span>
<span class="drawer__close" onclick="closeDrawer()">&times;</span>
</div>
<div class="drawer__body" id="drawerBody"></div>
@@ -249,18 +249,19 @@ function toggleSubgroup(header){header.parentElement.classList.toggle('open');}
/* 详情数据 */
var canteens=[
{name:'总部一号食堂',code:'ST-2026-001',unit:'长庆油田总部',address:'陕西省西安市未央区凤城八路总部基地A区',leader:'张建国',phone:'138****1001',terminal:'是'},
{name:'总部二号食堂',code:'ST-2026-002',unit:'长庆油田总部',address:'陕西省西安市未央区凤城八路总部基地B区',leader:'李红梅',phone:'139****2002',terminal:'是'},
{name:'采油一厂职工食堂',code:'ST-2026-003',unit:'采油一厂',address:'陕西省延安市安塞区采油一厂生活区',leader:'王志强',phone:'137****3003',terminal:'否'},
{name:'采油二厂综合食堂',code:'ST-2026-004',unit:'采油二厂',address:'甘肃省庆阳市庆城县采油二厂驻地',leader:'刘文静',phone:'136****4004',terminal:'是'},
{name:'采气一厂营养餐厅',code:'ST-2026-005',unit:'采气一厂',address:'陕西省榆林市靖边县采气一厂作业区',leader:'陈伟',phone:'135****5005',terminal:'否'}
{name:'总部一号食堂',code:'ST-2026-001',type:'食堂',unit:'长庆油田总部',address:'陕西省西安市未央区凤城八路总部基地A区',leader:'张建国',phone:'138****1001',terminal:'是'},
{name:'总部二号食堂',code:'ST-2026-002',type:'食堂',unit:'长庆油田总部',address:'陕西省西安市未央区凤城八路总部基地B区',leader:'李红梅',phone:'139****2002',terminal:'是'},
{name:'采油一厂职工食堂',code:'ST-2026-003',type:'食堂',unit:'采油一厂',address:'陕西省延安市安塞区采油一厂生活区',leader:'王志强',phone:'137****3003',terminal:'否'},
{name:'采油二厂综合食堂',code:'ST-2026-004',type:'食堂',unit:'采油二厂',address:'甘肃省庆阳市庆城县采油二厂驻地',leader:'刘文静',phone:'136****4004',terminal:'是'},
{name:'采气一厂营养餐厅',code:'ST-2026-005',type:'餐厅',unit:'采气一厂',address:'陕西省榆林市靖边县采气一厂作业区',leader:'陈伟',phone:'135****5005',terminal:'否'}
];
function openDrawer(idx){
var d=canteens[idx];
document.getElementById('drawerBody').innerHTML=
'<div class="detail-row"><div class="detail-label">食堂名称</div><div class="detail-value">'+d.name+'</div></div>'+
'<div class="detail-row"><div class="detail-label">食堂编号</div><div class="detail-value">'+d.code+'</div></div>'+
'<div class="detail-row"><div class="detail-label">场所编号</div><div class="detail-value">'+d.code+'</div></div>'+
'<div class="detail-row"><div class="detail-label">场所名称</div><div class="detail-value">'+d.name+'</div></div>'+
'<div class="detail-row"><div class="detail-label">场所类型</div><div class="detail-value"><span class="tag '+(d.type==='食堂'?'tag-blue':'tag-green')+'">'+d.type+'</span></div></div>'+
'<div class="detail-row"><div class="detail-label">所属单位</div><div class="detail-value">'+d.unit+'</div></div>'+
'<div class="detail-row"><div class="detail-label">详细地址</div><div class="detail-value">'+d.address+'</div></div>'+
'<div class="detail-row"><div class="detail-label">负责人</div><div class="detail-value">'+d.leader+'</div></div>'+
+23
View File
@@ -1,5 +1,28 @@
# 营养用餐管理端 CHANGELOG
## [2026-05-26]
### 优化 — 场所管理模块命名与功能完善
- **`din-canteen.html`** 场所管理(原食堂管理)
- 菜单名称:食堂管理 → 场所管理
- 页面标题、表格标题、按钮文案中的"食堂"统一改为"场所"
- 筛选栏字段:食堂名称 → 场所名称,食堂编号 → 场所编号
- 表格列顺序调整:场所编号、场所名称、**场所类型**、所属单位、详细地址、操作
- 新增"场所类型"列,显示"食堂"或"餐厅"标签(蓝色/绿色区分)
- 详情抽屉标题:食堂详情 → 场所详情
- 详情抽屉字段顺序调整:场所编号、场所名称、场所类型、所属单位、详细地址、负责人、负责人电话、使用三减终端
- **`din-canteen-add.html`** 新增/编辑场所
- 页面标题:新增食堂 → 新增场所
- 面包屑导航:食堂管理 → 场所管理,新增食堂 → 新增场所
- 表单字段:食堂名称 → 场所名称,食堂编号 → 场所编号,食堂所属单位 → 场所所属单位
- 新增"场所类型"单选框字段(食堂/餐厅),位置在场所编号之后
- 保存提示文案:返回食堂列表页 → 返回场所列表页
- **`din-canteen-line.html`** 餐线管理
- 侧边栏菜单:食堂管理 → 场所管理
## [2026-05-25]
### 修复 — 绿色种采 · 土地环境页面结构修正
File diff suppressed because it is too large Load Diff