库存监控与补货提醒

Polar Sponsor
爱发电 赞助
.NET 9.0

库存监控与补货提醒技能。基于Excel台账(美兰中心C+服务.xlsx)监控库存,计算可用月数并提醒。触发方式:实时监听出入库、定时每日09:00检查、手动@企服助手 库存检查。

库存监控与补货提醒技能 (Inventory Monitor Skill)

功能概述

库存监控与补货提醒技能 (Inventory Monitor Skill)是一项面向实际任务的技能,主要用于本技能用于实时监控园区库存物资的水位,基于中集金地美兰中心真实Excel台账,自动计算可用月数,当库存低于安全阈值时生成补货提醒并推送到企微;数据源配置;

核心要点

  • 数据文件 : /Users/mac/美兰中心C+服务.xlsx;
  • 工作表映射;
  • 秩序环境库存;

使用与执行

📦库存管理📦秩序环境;主数据源(日常消耗品)。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。

结果检查与注意事项

实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。

库存监控与补货提醒技能 (Inventory Monitor Skill)

功能概述

本技能用于实时监控园区库存物资的水位,基于中集金地美兰中心真实Excel台账,自动计算可用月数,当库存低于安全阈值时生成补货提醒并推送到企微。

数据源配置

数据文件: /Users/mac/美兰中心C+服务.xlsx

工作表映射:

功能模块 工作表名 用途
秩序环境库存 📦库存管理📦秩序环境 主数据源(日常消耗品)
固定资产库存 📦库存管理📦固定资产 补充数据(固定资产)
工程库存 📦库存管理📦工程 补充数据(工程工具)

数据接口(真实Excel字段映射)

秩序环境库存表字段(11个)

关键字段:

Excel列序号 字段名 类型 说明 示例值
1 名称 TEXT 物资名称 香薰液
2 规格/单位 TEXT 规格 桶 / 5片/包
3 总库存 NUMERIC 总量 9
4 可用月数 NUMERIC/TEXT 计算字段 9 或 "计算错误"
5 图片 TEXT 图片链接 (可选)
6 入库 NUMERIC 入库数量 0
7 出库 NUMERIC 出库数量 0
8 部门 TEXT 所属部门 环境 / 安管
9 现库存 NUMERIC 当前库存 9
10 月使用量 NUMERIC 月消耗量 1
11 备注 TEXT 备注 常用物资

固定资产库存表字段(11个)

Excel列序号 字段名 用途
1 名称 物资名称
2 规格/单位 规格
3 总库存 总量
4 图片 图片链接
5 现库存 当前库存
6 入库 入库数量
7 入库日期 入库时间
8 出库 出库数量
9 出库日期 出库时间
10 部门 所属部门
11 备注 备注

核心逻辑

1. 库存水位计算

def calculate_inventory_status():
    """
    计算所有物资的库存水位
    
    Returns:
        dict: 分级库存状态
    """
    wb = openpyxl.load_workbook('/Users/mac/美兰中心C+服务.xlsx')
    
    inventory_status = {
        "缺货": [],     # 可用月数 ≤ 0
        "预警": [],     # 可用月数 ≤ 2
        "关注": [],     # 可用月数 ≤ 3
        "正常": []      # 可用月数 > 3
    }
    
    # 1. 检查秩序环境库存
    ws_env = wb['📦库存管理📦秩序环境']
    
    for row in ws_env.iter_rows(min_row=2, values_only=True):
        name = row[0]           # 名称
        spec = row[1]           # 规格/单位
        current_stock = row[8]  # 现库存
        monthly_usage = row[9]  # 月使用量
        
        # 计算可用月数
        if monthly_usage and monthly_usage > 0:
            available_months = current_stock / monthly_usage
        else:
            available_months = 999  # 无使用量,视为无限
        
        # 分级归档
        item = {
            "名称": name,
            "规格/单位": spec,
            "现库存": current_stock,
            "月使用量": monthly_usage,
            "可用月数": f"{available_months:.1f}",
            "部门": row[7]
        }
        
        if available_months <= 0:
            inventory_status["缺货"].append(item)
        elif available_months <= 2:
            inventory_status["预警"].append(item)
        elif available_months <= 3:
            inventory_status["关注"].append(item)
        else:
            inventory_status["正常"].append(item)
    
    return inventory_status

2. 补货提醒生成

def generate_replenishment_alert():
    """
    生成补货提醒清单
    
    Returns:
        list: 需要补货的物资列表
    """
    inventory_status = calculate_inventory_status()
    
    alerts = []
    
    # 1. 缺货物资(紧急)
    for item in inventory_status["缺货"]:
        alerts.append({
            "物资名称": item["名称"],
            "规格": item["规格/单位"],
            "当前库存": item["现库存"],
            "月使用量": item["月使用量"],
            "可用月数": item["可用月数"],
            "紧急程度": "🚨 缺货",
            "建议采购量": f"{item['月使用量'] * 3}(3个月用量)" if item["月使用量"] else "建议采购"
        })
    
    # 2. 预警物资(高优先级)
    for item in inventory_status["预警"]:
        alerts.append({
            "物资名称": item["名称"],
            "规格": item["规格/单位"],
            "当前库存": item["现库存"],
            "月使用量": item["月使用量"],
            "可用月数": item["可用月数"],
            "紧急程度": "⚠️ 预警",
            "建议采购量": f"{item['月使用量'] * 2}(2个月用量)" if item["月使用量"] else "建议采购"
        })
    
    # 3. 关注物资(中优先级)
    for item in inventory_status["关注"]:
        alerts.append({
            "物资名称": item["名称"],
            "规格": item["规格/单位"],
            "当前库存": item["现库存"],
            "月使用量": item["月使用量"],
            "可用月数": item["可用月数"],
            "紧急程度": "📢 关注",
            "建议采购量": f"{item['月使用量'] * 1}(1个月用量)" if item["月使用量"] else "建议采购"
        })
    
    return alerts

3. 出入库记录更新

def update_stock_transaction(item_name, transaction_type, quantity, department):
    """
    更新出入库记录
    
    Args:
        item_name: 物资名称
        transaction_type: 类型(入库/出库)
        quantity: 数量
        department: 部门
    
    Returns:
        bool: 更新是否成功
    """
    wb = openpyxl.load_workbook('/Users/mac/美兰中心C+服务.xlsx')
    ws_env = wb['📦库存管理📦秩序环境']
    
    # 查找物资
    for row_idx in range(2, ws_env.max_row + 1):
        if ws_env.cell(row=row_idx, column=1).value == item_name:
            # 更新库存
            current_stock = ws_env.cell(row=row_idx, column=9).value
            
            if transaction_type == "入库":
                new_stock = current_stock + quantity
                ws_env.cell(row=row_idx, column=9).value = new_stock
                ws_env.cell(row=row_idx, column=6).value = quantity  # 入库
            elif transaction_type == "出库":
                new_stock = current_stock - quantity
                ws_env.cell(row=row_idx, column=9).value = new_stock
                ws_env.cell(row=row_idx, column=7).value = quantity  # 出库
            
            # 更新可用月数
            monthly_usage = ws_env.cell(row=row_idx, column=10).value
            if monthly_usage and monthly_usage > 0:
                available_months = new_stock / monthly_usage
                ws_env.cell(row=row_idx, column=4).value = available_months
            
            # 保存Excel
            wb.save('/Users/mac/美兰中心C+服务.xlsx')
            
            return True
    
    return False

库存监控推送模板

每日库存检查

━━━━━━━━━━━━━━━
【库存监控日报】2026-05-28

━━━ 🚨 缺货物资 ━━━
{缺货清单}

━━━ ⚠️ 预警物资 ━━━
{预警清单}

━━━ 📢 关注物资 ━━━
{关注清单}

━━━ 统计 ━━━
物资总数:XX个
缺货:XX个 | 预警:XX个 | 关注:XX个

⚡ 操作链接:[腾讯文档-库存管理]
━━━━━━━━━━━━━━━

紧急补货提醒

⚠️⚠️⚠️ 【紧急补货提醒】⚠️⚠️⚠️

物资名称:{name}
规格:{spec}
当前库存:{current_stock}
月使用量:{monthly_usage}
可用月数:{available_months}

建议采购量:{purchase_quantity}

@采购人员 请尽快安排采购

━━━━━━━━━━━━━━━

执行流程

Step 1 → 读取Excel库存管理表
         工作表:📦库存管理📦秩序环境
         字段:名称、现库存、月使用量

Step 2 → 计算可用月数
         可用月数 = 现库存 / 月使用量
         特殊情况:月使用量=0 → 视为无限

Step 3 → 分级判断
         ├─ 可用月数 ≤ 0  → 缺货
         ├─ 可用月数 ≤ 2  → 预警
         ├─ 可用月数 ≤ 3  → 关注
         └─ 可用月数 > 3  → 正常

Step 4 → 生成补货提醒
         缺货 → 紧急采购(3个月用量)
         预警 → 高优先级(2个月用量)
         关注 → 中优先级(1个月用量)

Step 5 → 推送企微
         发送给采购人员

定时任务配置

{
  "name": "库存监控检查",
  "schedule": {
    "kind": "cron",
    "expr": "0 9 * * *",
    "tz": "Asia/Shanghai"
  },
  "payload": {
    "kind": "agentTurn",
    "message": "检查所有物资的库存水位,生成补货提醒并推送到企微"
  },
  "sessionTarget": "isolated"
}

手动触发方式

  1. 企微 @提及: @企服助手 库存检查
  2. OpenClaw指令: 检查库存
  3. 出入库操作: 入库 {物资名称} {数量} / 出库 {物资名称} {数量}

配置参数

{
  "inventory_monitor": {
    "excel_path": "/Users/mac/美兰中心C+服务.xlsx",
    "sheets": {
      "秩序环境": "📦库存管理📦秩序环境",
      "固定资产": "📦库存管理📦固定资产",
      "工程": "📦库存管理📦工程"
    },
    "alert_thresholds": {
      "缺货": 0,
      "预警": 2,
      "关注": 3
    },
    "wecom_webhook": "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxx"
  }
}

使用示例

示例1:检查库存

用户输入: @企服助手 库存检查

输出:

━━━━━━━━━━━━━━━
【库存监控日报】2026-05-28

━━━ 🚨 缺货物资 ━━━
无

━━━ ⚠️ 预警物资 ━━━
1. 洗手液
   规格:桶 | 现库存:2
   月使用量:1 | 可用月数:2.0
   建议采购量:2(2个月用量)

━━━ 📢 关注物资 ━━━
1. 香片
   规格:5片/包 | 现库存:60
   月使用量:11 | 可用月数:5.5

━━━ 统计 ━━━
物资总数:8个
预警:1个 | 关注:1个 | 正常:6个

⚡ 操作链接:[腾讯文档-库存管理]
━━━━━━━━━━━━━━━

示例2:出入库操作

用户输入: @企服助手 入库 洗手液 5

输出:

━━━━━━━━━━━━━━━
【入库操作成功】

物资名称:洗手液
入库数量:5桶
更新后库存:7桶
可用月数:7.0

⚡ 操作链接:[腾讯文档-库存管理]
━━━━━━━━━━━━━━━

后续扩展接口

  1. 库存预测 - 基于历史消耗数据预测未来需求
  2. 自动采购单 - 当库存低于阈值时自动生成采购单
  3. 供应商管理 - 维护供应商信息,快速下单
  4. 成本分析 - 分析物资消耗成本,优化采购策略

注意事项

  1. 数据准确性 - 出入库记录需要及时更新
  2. 月使用量更新 - 定期更新月使用量数据
  3. 采购周期 - 考虑采购周期,提前安排补货
  4. 保质期管理 - 某些物资有保质期,需要特殊管理

当前状态: 技能已调整,数据源已映射到真实Excel库存管理表(3个工作表)。

核心改进: 从独立的知识库查询 → 改为直接读取Excel库存管理表 + 水位计算逻辑。

相关专题

更多
Go-Zero API开发使用教程
Go-Zero API开发使用教程

本专题聚焦Go-Zero的API开发,拆解.api描述文件的语法结构、路由与分组定义、参数绑定与校验规则,说明统一响应体、JWT鉴权、跨域与接口文档生成的落地方式,并给出网关聚合与接口测试的实践建议。

2026.11.12

0

15

Go-Zero安装与goctl环境配置教程
Go-Zero安装与goctl环境配置教程

本专题围绕Go-Zero的安装与工具链配置展开,讲清Go版本要求、goctl安装方式、代理镜像、protoc依赖与环境变量设置,说明多版本共存、升级回退与CI流水线安装的做法,并整理安装阶段的常见报错与验证步骤。

2026.11.12

0

15

Go-Zero零基础入门教程
Go-Zero零基础入门教程

本专题整理Go-Zero的入门知识,从框架定位、环境准备到跑通第一个API服务,讲清目录分层、配置加载、日志与中间件的基本用法,并对比Gin、Kratos的差异,帮助Go开发者建立整体认知,判断它是否适合当前项目。

2026.11.12

0

15

Postman身份认证怎么配置
Postman身份认证怎么配置

本专题从实际API接口调试场景出发,讲解Postman身份认证的完整配置流程,包括常见认证协议介绍、授权参数设置、访问令牌填写、OAuth 2.0授权及认证失败排查,帮助用户正确完成接口授权与访问验证。

2026.11.06

0

12

Postman请求头Headers怎么设置
Postman请求头Headers怎么设置

围绕Postman HTTP请求头配置展开,讲解Headers选项的具体使用方式,包括Key和Value参数填写、请求头信息添加、常见Header字段设置及请求头修改方法,帮助用户解决接口调试过程中遇到的请求头配置问题。

2026.11.06

0

13

Postman接口请求发送教程
Postman接口请求发送教程

详细介绍Postman接口请求的创建与发送方法,涵盖GET和POST请求、URL配置、请求参数、Headers请求头、Body请求体设置以及响应结果查看,帮助用户掌握Postman接口请求的完整操作流程。

2026.11.06

0

10

DBeaver怎么导入数据
DBeaver怎么导入数据

DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。

2026.11.05

0

12

DBeaver安全防护教程大全
DBeaver安全防护教程大全

DBeaver安全防护专题,围绕数据库连接安全、账号密码保护和访问权限管理展开,整理SSL/TLS加密连接、SSH隧道、数据库凭据保存及证书验证等配置方法,同时介绍敏感信息保护、远程连接风险和高权限账号使用等注意事项,帮助用户提高数据库日常管理的安全性。

2026.11.05

0

12

DBeaver连接创建与配置教程
DBeaver连接创建与配置教程

本专题聚焦DBeaver数据库连接配置与管理,覆盖从新建连接、选择数据库类型到填写连接参数和验证连接的完整流程。针对MySQL、PostgreSQL、SQL Server等常见数据库,整理相应的连接设置方法,并提供驱动缺失、认证失败和连接异常等问题的排查方向。

2026.11.04

0

16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.7万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 134.3万人学习