name: welfare-inventory-manager description: 用于运维「7-8月员工福利自选登记」库存系统的技能。当用户要更换/新增福利产品、修正库存、导出登记记录、排查填报或后台问题,或问"福利系统怎么换一期产品"时触发。覆盖前端填报页、后台管理(密码 jianjie666)、钉钉文档自动同步,以及服务器 175.178.239.40:3000 上的后端 API。 agent_created: true allowed-tools: Bash,Read,Write,Edit,WebFetch
本技能沉淀了「员工福利自选登记」系统的完整运维知识:部署拓扑、API 契约、数据模型、以及每期更换产品的标准流程。系统由前端填报页、后台管理页、钉钉文档(每小时自动同步)和一台服务器上的 Node 后端组成;后端 API 是产品与库存的唯一数据真相源。
本技能最关键的价值:把"换一期福利产品"从「登服务器改代码再重启」梳理成可复用的流程,并附三个已验证的运维脚本(库存快照、记录导出、库存修正)。
完整接口契约、数据模型、部署现状与已知限制见
references/system-overview.md;更换产品逐步流程见references/product-swap-playbook.md。操作前先读这两份。
| 组件 | 地址/凭据 |
|---|---|
| 前端填报 | http://175.178.239.40:3000/ |
| 后台管理 | http://175.178.239.40:3000/admin.html(密码 jianjie666) |
| 钉钉文档 | https://docs.dingtalk.com/i/nodes/14lgGw3P8vqw5wP1hgGlMYZjJ5daZ90D(每小时自动同步) |
| 后端 | 175.178.239.40:3000 上的 Node 服务,提供全部 /api/* |
id 是字符串(如 "p1"),不是数字。来源于7w4.net。
触发语示例:"换一期福利产品""把产品换成 XX""下个月换批货"。
按 references/product-swap-playbook.md 执行,要点:
1. 先用表格敲定新清单(id 用 p1..pN、名称、规格、图片文件名、初始库存)。
2. 图片上传到服务器 assets/images/,img 字段写相对路径。
3. 当前限制:系统无产品增删改接口,需 SSH 登服务器改后端 products 数组 + 重载/重启服务(流程手册 §1)。
4. 验证:GET /api/stock 返回新数据、前端卡面正确、后台库存/记录正确。
5. 若跨周期,同步更新前端标题周期文案(index.html 约 6、95-97 行)与后台标题(admin.html 约 75 行);旧登记按约定清空或保留。
推荐改进(流程手册 §2):把产品抽到
data/products.json+ 加热加载/CRUD 接口,日后换产品即改配置无需重启。需要实施时向用户索取后端源码或服务器权限。
scripts/update-stock.js --id p1 --stock 50。stock += 1。scripts/export-records.js 一键导出 CSV(Excel 可直接打开)。scripts/check-status.js 拉 /api/stock 打印快照。NODE="C:\Users\简健001\.workbuddy\binaries\node\versions\22.22.2\node.exe"
SKILL="C:\Users\简健001\.workbuddy\skills\welfare-inventory-manager\scripts"
# 1) 实时库存快照(无鉴权)
"$NODE" "$SKILL/check-status.js" http://175.178.239.40:3000
# 2) 导出全部登记记录为 CSV(默认密码 jianjie666,可用 --pwd 覆盖)
"$NODE" "$SKILL/export-records.js" --base http://175.178.239.40:3000 --out 福利登记记录.csv
# 3) 修正某产品库存(⚠️ 会覆盖线上库存,确认无误再执行)
"$NODE" "$SKILL/update-stock.js" --id p1 --stock 50 --pwd jianjie666
update-stock.js会真实改写生产库存,仅在有明确指令时使用,且先确认目标 id 与数值。
img 路径与 assets/images/ 实际文件不一致(大小写敏感)。stock<=0 视为售罄。productId 指向字符串 id,换期重排 id 前先决定是否清空旧记录。update-stock 报"产品不存在":id 是字符串(如 p1),勿传数字。references/system-overview.md — 部署拓扑、完整 API 契约、数据模型、当前库存快照、已知限制(无产品 CRUD 接口)。references/product-swap-playbook.md — 更换产品逐步流程 + 推荐配置化方案 + 检查清单。scripts/check-status.js — 实时库存快照。scripts/export-records.js — 导出登记记录为 Excel 友好 CSV。scripts/update-stock.js — 修正产品库存(谨慎使用)。这个 Skill 质量扎实,文档写得很清楚,把福利系统的运维要点都覆盖到了,脚本拿来就能用。它把换产品、查库存、导记录这些日常操作梳理得很实用,适合拿来直接用。主要问题是文档里有些小细节没对上(比如 id 到底是数字还是字符串说法不一),另外有些内容重复啰嗦,整体结构可以再紧凑些。对于不懂技术的行政或 HR 来说,用起来应该问题不大。