⏰ 督办提醒 ✅ 有 {{whAlerts.todo}} 张申请待我审批 📦 {{whAlerts.overdue || whAlerts.mine_overdue}} 件物资超期未还 {{r.overdue? '已逾期' : '剩'+r.left+'天'}} · {{r.title}}({{r.due}})
生态链 · 个人工作台
🕒 {{clock}} ⏱ 计时 {{fmtDur(timerElapsed)}}
{{user.display_name}}({{user.role}})
{{calYear}} 年 {{calMonth}} 月
一二三四五六日
{{d.day}}
🎓{{c.title}}{{c.headcount}}人 {{whoLabel(t.creator)}}{{t.topic}}⏰📝📅 +{{dayMore(d.date, logLimit(d.date))}}
已完成 进行中 未完成 ⏰ 临近截止 🎓 培训班(排期,不计入完成率) (日历内文字为主题,颜色对应完成情况;⏰ 为 3 天内到期未办结;每条开头的标签是创建者,「我」是你自己,橙色标签是同事的条目)

{{selectedDate}} 当日工作

{{calMineOnly ? '👤 只看我的' : '👥 全员共享'}} 共 {{dayLogs.length}} 条
🎓 当日课程({{dayCourses.length}} 个班)
第 {{crsDayNo(c, selectedDate)}}/{{c.days}} 天 {{c.title}} {{c.phase_label}} 🏫 {{c.room || '教室未定'}} 👥 {{c.headcount || 0}} 人 👤 {{c.teacher}} 🏢 {{c.organizer}}
{{x.start_time || '—'}}{{x.end_time ? '–' + x.end_time : ''}}{{x.content}}({{x.teacher}})
当天没有细分课程(整体排期)
📅 当日会议({{dayMeetings.length}})
{{m.time}} {{m.title}} 👤{{whoLabel(m.creator)}} {{m.status==='created'?'已建会':(m.status==='requested'?'已预约':'待创建')}}
日期 主题 完成情况 负责人 操作
{{w.date.slice(5)}} 📝 ⏰{{w.due_date}} 👤{{whoLabel(w.creator)}} ({{w.note}}) {{w.owner || '—'}}
当日暂无记录
  • 📅🔐{{n.shared ? '共享' : '私有'}}{{n.title}}
    👤{{whoLabel(n.creator)}} · {{n.category}} · {{shortTime(n.updated_at)}} · {{n.log_date.slice(5)}}
👤 这是 {{curNote.creator}} 共享的笔记(只读)—— 可以查看和导出,只有创建者本人能修改
{{curNote.shared ? '🤝' : '🔒'}} {{curNote.shared ? '已共享给全员' : '仅自己可见'}} {{curNote.shared ? '同事能在记事本里只读查看,日历上也能看到' : '不会出现在同事的记事本、日历和统计里'}}
📅 联动日历 ⏰ 截止 {{curNote.status_locked ? '状态已锁定:以下拉框手动选择为准' : (curNote.log_date ? '完成状态由正文栏目(已完成/进行中/未完成)自动判定,也可下拉手动改' : '填日期后,本笔记会显示在日历与日志上')}}
{{noteMsg || (curNote.mine===0 ? '只读' : '自动保存')}}
从左侧选择或新建笔记
{{stat.total}}
总记录
{{stat.done}}
已完成
{{stat.doing}}
进行中
{{stat.pending}}
未完成
{{rate}}%
完成率

{{statView==='day'?'每日分布':statView==='week'?'每周分布':'每月分布'}}

{{statView==='day'? row[0].slice(5): row[0]}}
✓{{row[1].done}} ⏳{{row[1].doing||0}} ✗{{row[1].pending}}
暂无数据

跨月完成率趋势(近 12 个月)

{{t.month}}
{{t.rate}}%
暂无数据
工作日志取自本人;考试/问卷为全站汇总
🌐 访问入口按你所在的网络选用对应地址
{{ e.current ? '你当前' : '局域网' }} {{ e.url }}
{{ netinfo.public_current ? '你当前' : '公网' }} {{ netinfo.public_url }}
公网 未启用(启动 _tunnel\cloudflared 后自动出现)
📅 工作日志
{{dash.work.rate}}%
完成率({{dash.work.year}})
总记录{{dash.work.total}}
已完成{{dash.work.done}}
进行中{{dash.work.doing}}
未完成{{dash.work.pending}}
📝 线上考试
{{pct(dash.exam.pass_rate)}}%
平均及格率
考试场次{{dash.exam.exams}}
参考人次{{dash.exam.attempts}}
已阅卷{{dash.exam.graded}}
平均分{{dash.exam.avg}}
📋 问卷
{{pct(dash.survey.completion)}}%
平均有效率
问卷数{{dash.survey.surveys}}
回收份数{{dash.survey.responses}}
有效份数{{dash.survey.valid}}
已发布{{dash.survey.published}}

工作日志 · 每月完成分布

{{row[0].slice(5)}}
✓{{row[1].done}} ⏳{{row[1].doing||0}} ✗{{row[1].pending}}
暂无数据
当前账号无"报告导出"权限,请联系管理员。
{{repErr}}

📝 离线文档生成

⚠️ 当前服务端是旧版本{{buildInfo ? ('('+buildInfo+')') : '(读不到版本号)'}}, PDF 导入 / 课程表编辑 / 预览 等新功能尚未生效。请关闭那个黑色命令行窗口,再重新双击 「启动.bat」 重启即可。
本模板关键词为全员共享一份,保存后所有人看到的都是这一份内容(与原来改 keywords.txt 效果一致)。
📋 导入参考文档Word / PDF
✓ {{refName}}
支持 .docx / .pdf / .doc / .txt / .md。导入后下方显示原文可对照;点「⚡ 智能预填」会把文档中已识别的内容自动填入表单(含课程表),再自行微调即可。
参考文档原文(对照用)
{{refText}}
📊 导入 Excel 设备表
✓ 已导入 {{devCount}} 行
支持 .xlsx / .csv。导入后自动识别列(设备名称/规格/数量/位置/责任人等),生成时以表格插入“设备清单”专章;表头不识别时按原表头生成。
{{h}}
{{c}}
📋 表格字段:每行一条记录,列之间用 | 分隔,首行为表头(请勿删改表头行)。
默认(往期内容):{{docDefaults[f]}}
{{c}} 操作
暂无课程行,点下方「+ 添加一行」开始
共 {{docSched.length}} 行
格式: 服务端缺少 PDF 引擎,暂时只能选 Word
{{docMsg}}
服务端:{{buildInfo||'—'}}

🛡 安防监控

🎥 CH{{c.channel}}
连接中…
⚠ 无法连接
已停用
{{c.name}}
{{c.platform || '—'}}
{{c.enabled?'启用':'停用'}} 📷 🔄
暂无摄像机。管理员点右上"管理摄像机"→"海康设备快速添加"批量接入 NVR 通道,或点"▶ 演示流"先看看效果。
⚠ {{pbErr}}
00:0006:0012:0018:0024:00
{{Math.max(1,Math.round(s.duration/60))}}′
点击时间轴上的录像段即可回放(拉取海康设备端录像)
⚠ {{pbErr}}
选择通道与日期后点击"检索录像",即可查看海康 NVR 设备端的历史录像。

🏨 客房房态动态系统

{{roomRunning?'● 运行中':'○ 未启动'}}
{{roomMsg || '客房系统尚未启动,点击右上"启动客房系统"一键拉起。'}}

📝 WPS 编辑

Word / Excel / PPT 三类文档统一入口 —— 点开即用本机 WPS 编辑,按 Ctrl+S 自动回传新版本

{{hsync.label}} · {{hsync.detail}}
{{hsyncHint}}
{{offScope==='public' ? '新建会存到我的个人区' : '新建空白文档'}}
{{offMsg}}
文档名 版本 大小 最后更新 操作
{{d.kind==='word'?'W':(d.kind==='excel'?'X':'P')}} {{d.name}} {{offScope==='public' ? (d.zone || d.category) : d.category}} v{{d.versions}} {{fmtSize(d.size)}} {{(d.updated_at||'').slice(5,16)}}
📄

{{offBusy ? '读取中…' : '这里还没有 Office 文档'}}

点上面三张卡新建一份,或到 🗄 存储 上传已有文件

首次使用需在这台电脑安装 P1 文档助手(一次性,双击 install.bat,无需管理员权限), 点此下载

最近编辑过

🗄 存储归类

存储后端
{{storeStatus.backend==='local'?'本地磁盘':'对象存储 (MinIO)'}}
storage_data/(零依赖降级)
bucket:{{storeStatus.bucket}}
个人配额
{{fmtSize(storeStatus.used)}} / {{storeStatus.quota?fmtSize(storeStatus.quota):'不限'}}
临时账号
限公共区只读+上传
{{storeStatus.scoped_zone}} · {{storeStatus.temp_expires}} 到期
当前范围
{{scopeName(storeScope)}}
共 {{storeItems.length}} 个文件
{{storeMsg}}
周期归档:
共 {{storeItems.length}} 文件 / {{storeFolders.length}} 文件夹 已选 {{storeSelected.length}}
勾选文件后可批量移动 / 打包下载 / 删除
📁
{{f}}
文件夹
{{fileIcon(it.name)}} {{extOf(it.name)}}
{{it.name}}
{{fmtSize(it.size)}}
👤 {{it.owner_name||'同事'}}
暂无文件
选名称大小更新时间操作
📁 {{f}}/ — 文件夹
{{fileIcon(it.name)}} {{it.name}} 👤{{it.mine ? '我' : (it.owner_name||'同事')}} {{fmtSize(it.size)}} {{it.created_at||''}}
暂无文件
「{{storeSel}}」版本历史
版本大小时间操作
{{v.version}} {{fmtSize(v.size)}} {{v.created_at}}
无版本
📥 松开鼠标即可上传到「{{storeDir||'根目录'}}」

📅 预约会议

与日历/日志联动 · 每天 18:00 自动为次日会议建会
待创建 {{meetingStats.pending}} 已预约 {{meetingStats.requested}} 已建会 {{meetingStats.created}} 共 {{meetings.length}} 场
{{m.date}} {{m.time}} {{m.status==='pending'?'待创建':(m.status==='requested'?'已预约':'已建会')}}
{{m.title}}
⏱ {{m.duration}} 分钟 👥 {{m.attendees}} {{m.tag}}
会议号:{{m.meeting_no}} 🔗 入会链接 连接器未配置,待建会
{{m.note}}
暂无预约会议。点右上「+ 新建预约」,填好日期时间后「⚡ 一键预约」即可。

📦 仓库管理

设备 / 配件 / 易耗品三本台账 · 借用与领用双闭环 · 每一步操作都留审计痕迹

{{whMsg}}
{{whTab==='apply' ? '📝 我的申请' : '✅ 待我审批'}} 共 {{whOrders.length}} 张
{{whScopeLabel}} · 共 {{whItems.length}} 条
台账 品类 / 型号 名称 / 规格 编号 库存 状态 库位 操作
{{whCatName(it.cat)}} {{it.cat_path}} 未分类 · {{it.model}} {{it.name}} {{it.spec}} {{it.code || '—'}} {{it.qty}}{{it.unit}} / {{it.max_qty}} {{it.status==='idle'?'在库':(it.status==='borrowed'?'借出中':(it.status==='repair'?'维修中':'已报废'))}} 低库存 积压 {{it.location || '—'}}
{{whEmptyText}}{{ whCan('manage') ? (whCat ? '点右上「+ 新增物资」建账,台账分类已按当前子项预选。' : '点右上「+ 新增物资」建第一本账。') : '请联系仓库管理员建档。' }}
在借 {{whSummary.lend_open || 0}} 条 · 共 {{whLend.length}} 条
单号 物资 数量 借用人 借出时间 约定归还 实际归还 状态
{{o.no}} {{o.item_name}}{{o.purpose}} {{o.qty}} {{whoLabel(o.applicant_name)}} {{(o.approved_at || o.created_at || '').slice(0,16) || '—'}} {{o.expect_return || '—'}} 超期 {{o.overdue_days}} 天 {{(o.returned_at || '').slice(0,16) || '—'}} {{o.returned_by_name}} {{o.status_label}} ⚠ ›
还没有设备借用记录。
这本账不按人过滤:谁借了什么、什么时候该还、实际什么时候还的,全都在这里,离职交接和年度盘点直接看这一页。
共 {{whOrders.length}} 张工单
{{o.kind_label}} {{o.no}} 批量
{{o.status_label}}
{{o.item_name}} × {{o.qty}} {{o.purpose}}
发起 {{(o.created_at||'').slice(5,16)}} 预计归还 {{o.expect_return}} ⚠ 已超期 {{o.overdue_days}} 天 今天到期 审批人 {{o.approver_name}} 驳回原因:{{o.reject_reason}}
等待主管确认归还… 等待主管审批…
借用流程:发起申请 → 主管批准 → 借用人归还 → 主管确认 → 已归还 |  领用流程:发起申请 → 后勤主管确认即完成(已领用)。 每张单子右下角「流程 ›」能看到每一步是谁办的、什么时候办的。
还没有申请记录。
待审批 {{whSummary.todo || 0}} 张(含待确认归还)
{{o.kind_label}} {{o.no}} 批量
{{o.status_label}}
{{o.item_name}} × {{o.qty}} {{o.purpose}}
申请人 {{whoLabel(o.applicant_name)}} {{o.dept}} 发起 {{(o.created_at||'').slice(5,16)}} 预计归还 {{o.expect_return}} ⚠ 已超期 {{o.overdue_days}} 天 今天到期 归还于 {{(o.returned_at||'').slice(5,16)}}
没有待处理的申请。
全员可见 · 共 {{whUsage.length}} 条
使用日期 易耗品 数量 领用人 使用地点 用途 / 说明 操作
{{u.used_at}} {{u.item_name}} {{u.qty}}{{u.unit}} {{whoLabel(u.user_name)}} {{u.place || '—'}} {{u.purpose || u.note || '—'}}
还没有使用记录。
只追加、不可改 · 共 {{whAudit.length}} 条
还没有操作记录。
审计口径:新增/编辑/删除物资、入库/报废/盘点、发起/批准/驳回/归还/闭环工单、登记与修改使用记录、角色增删改与成员调整,全部落库,任何人对台账做的改动都能追到人、时间和来源。
角色只管仓库;全局权限仍在「用户管理」里分配
{{r.name}} {{r.note}}
{{p}} 未授权
成员 {{r.members.length}} 人 {{whoLabel(m.display_name || m.username)}} 尚未分配成员
还没有仓库角色。建议先建「后勤主管」(审批 + 入库 + 台账维护)和「普通领用」(查看 + 申请 + 领用)。