# SKILL_REGISTRY.md — Skill 与脚本溯源登记表 > 规则:所有新建 skill 和脚本必须在此登记。需求不清晰时先确认再动手。 > 每次修改时在对应条目下追加变更记录。 --- ## Skills(`~/.openclaw/workspace/skills/`) ### phone-chapter-query - **创建来源:** 李承龙(`ou_e63ce6b760ad39382852472f28fbe2a2`) - **需求描述:** 通过手机号文件批量查询用户课时完成记录,匹配瓦拉账号,输出报表并自动发送到指定飞书群 - **功能说明:** 从 Excel/CSV 提取手机号 → 脱敏匹配 account_id → 查询课时完成记录(含耗时)→ 生成 xlsx → 发送到群 - **创建时间:** 2026-04-20 - **变更记录:** - 2026-04-20 | 新增「自动发送到群 oc_616882799f1910b85a248b74f44c3be5」功能 | 李承龙 ### vala-order-amortization-stat - **创建来源:** 李承龙(`ou_e63ce6b760ad39382852472f28fbe2a2`) - **需求描述:** 统计指定账期内的订单均摊收入、退费冲销,按天计算均摊金额,支持部分退费场景 - **功能说明:** 订单均摊结算统计,含 summary 和 detail 两个维度,支持跨月退费计税 - **创建时间:** 2026-05-06 - **变更记录:** - 2026-05-28 | 计税时机改为「下单即计税」、退后订单历史累计摊销仅统计账期内退费订单 | 李承龙 - 2026-06-18 | 退费规则更新:同时按 out_trade_no 和 trade_no 关联退费表、退费金额 SUM 累加、order_status=4 直接视为退费、order_status=3 需退费表有记录才视为退费 | 李承龙 ### welfare-user-list - **创建来源:** 李承龙(`ou_e63ce6b760ad39382852472f28fbe2a2`) - **需求描述:** 统计拥有两个年包课包的福利品发放用户,关联收货地址 - **功能说明:** 三步流程(SQL查询→地址查询→合并Excel),输出三个 Sheet(用户名单/统计汇总/地址汇总) - **创建时间:** 2026-05-19 ### refund-user-learning-analysis - **创建来源:** 来源不可追溯(创建于 2026-04-15 之前) - **需求描述:** 统计退费用户在 U0 阶段的学习表现 - **功能说明:** 分析退费用户的 Review 正确率/用时、Summary 参与/完成、Challenge 各维度成绩,生成多 Sheet Excel - **创建时间:** 约 2026-04 ### vala-component-practice-stat - **创建来源:** 来源不可追溯(创建于 2026-04-13 之前) - **需求描述:** 统计组件练习的 Oops 率和退出率 - **功能说明:** 自动剔除测试账号、分 L1/L2 等级、样本量不足自动补充历史记录、导出多 Sheet Excel - **创建时间:** 约 2026-04 ### feishu-file-sender - **创建来源:** 小溪自主创建(通用工具) - **需求描述:** 通过飞书 API 发送本地文件,绕过内置 message 工具附件限制 - **功能说明:** 支持最大 30MB 文件传输,支持 Excel/PDF/Word/PPT/Markdown/图片/音视频 - **创建时间:** 约 2026-03 ### feishu-wiki-access - **创建来源:** 小溪自主创建(通用工具) - **需求描述:** 飞书知识库接入配置 - **功能说明:** 帮助配置飞书知识库只读访问权限 - **创建时间:** 约 2026-03 ### feishu-wiki-content-reader - **创建来源:** 小溪自主创建(通用工具) - **需求描述:** 批量读取知识库文档内容 - **功能说明:** 读取指定文档及其所有子文档内容,支持结构化提取 - **创建时间:** 约 2026-03 ### find-skills - **创建来源:** 小溪自主创建(通用工具) - **需求描述:** 搜索和安装社区技能包 - **功能说明:** 通过 `npx skills` 查找和安装技能 - **创建时间:** 约 2026-03 ### self-improving-agent - **创建来源:** 小溪自主创建(自我改进) - **需求描述:** 记录错误和经验,持续优化 - **功能说明:** 分类记录错误/修正/功能请求/最佳实践,支持复盘和知识沉淀 - **创建时间:** 约 2026-03 ### skill-builder - **创建来源:** 小溪自主创建(技能构建模板) - **需求描述:** 创建高质量技能的模板和规范 - **功能说明:** 提供技能目录结构、SKILL.md 模板、安全规范等 - **创建时间:** 约 2026-03 ### timed-reminder - **创建来源:** 小溪自主创建(通用工具) - **需求描述:** 定时提醒功能 - **功能说明:** 创建和管理定时提醒 - **创建时间:** 约 2026-03 --- ## Scripts(`~/.openclaw/workspace/scripts/`) ### 行课查询/自动回填(已废弃,2026-06-04 陈逸鸫确认删除) | 脚本 | 创建来源 | 需求描述 | 创建时间 | 状态 | |------|---------|---------|---------|------| | `auto_xingke_query.py` | 陈逸鸫确认流程,李承龙确认匹配规则 | 定时巡检飞书表格,手机号→ID匹配→课时记录→回填 | 2026-05-29 | ❌ 已删除 | | `auto_xingke_query_v2.py` | 同上 | V2 版本优化 | 2026-06-01 | ❌ 已删除 | | `batch_course_records.py` | 同上 | 批量课程记录(简化版) | 2026-05-27 | ❌ 已删除 | | `write_course_results.py` | 行课回填流程 | 写入课程查询结果到飞书表格 | 2026-05-27 | ❌ 已删除 | | `write_id_results.py` | 行课回填流程 | 写入 ID 匹配结果到飞书表格 | 2026-05-27 | ❌ 已删除 | | `batch_course_record_query.py` | 同上 | 批量课程记录查询 | 2026-06-01 | | `batch_phone_to_id.py` | 李承龙 | 批量手机号转 account_id | 2026-06-01 | | `phone_encrypt.py` | 李承龙 | 手机号 XXTEA 加密/解密/MD5,用于匹配 tel_encrypt 字段 | 2026-06-01 | | `export_phone_md5.py` | 李承龙 | 导出 tel_encrypt → 明文 → MD5 映射 CSV,支持全量/按ID导出,可被其他 skill 调用 | 2026-06-03 | | `phone_match_userid.py` | 李承龙 | 手机号匹配用户 ID | 2026-06-01 | ### 退费分析 | 脚本 | 创建来源 | 需求描述 | 创建时间 | |------|---------|---------|---------| | `april_refund_analysis.py` | 来源不可追溯 | 4月退费分析 | 约 2026-04 | | `channel_lead_refund_analysis.py` | 李承龙 | 渠道线索退费分析 | 约 2026-05 | | `channel_lead_refund_analysis_v2.py` | 李承龙 | 渠道线索退费分析 V2 | 2026-05-19 | | `channel_role_refund_analysis.py` | 来源不可追溯 | 渠道角色退费分析 | 2026-05-20 | | `course_progress_refund_analysis.py` | 李承龙 | 课程进度退费分析 | 2026-06-01 | | `course_progress_refund_v2.py` | 李承龙 | 课程进度退费分析 V2 | 2026-06-01 | | `laolang_refund_analysis.py` | 李承龙 | 老狼退费分析 | 2026-06-01 | | `laolang_lvxing_analysis.py` | 李承龙 | 老狼履约分析 | 2026-06-01 | | `laolang_per_lesson.py` | 李承龙 | 老狼每课分析 | 2026-06-01 | | `find_202602_order_202603_refund.py` | 来源不可追溯 | 查找2月订单3月退费 | 2026-04-22 | | `find_history_order_202603_refund.py` | 来源不可追溯 | 查找历史订单3月退费 | 2026-04-22 | | `query_order_all_refund.py` | 来源不可追溯 | 查询订单全部退费 | 2026-04-22 | | `query_order_refund_time.py` | 来源不可追溯 | 查询订单退费时间 | 2026-04-22 | ### 学习数据分析 | 脚本 | 创建来源 | 需求描述 | 创建时间 | |------|---------|---------|---------| | `course_consumption_v2.py` | 来源不可追溯 | 课程消费分析 | 约 2026-05 | | `course_consumption_by_level.py` | 来源不可追溯 | 按等级课程消费分析 | 2026-05-14 | | `course_consumption_weekly.py` | 来源不可追溯 | 周课程消费分析 | 2026-05-13 | | `activated_users_study_14d.py` | 李承龙 | 激活用户14天学习分析 | 2026-05-22 | | `activated_courses_study_14d.py` | 李承龙 | 激活课程14天学习分析 | 2026-05-22 | | `dual_activation_progress.py` | 李承龙 | 双激活进度分析 | 2026-05-27 | | `dual_progress_cross.py` | 李承龙 | 双进度交叉分析 | 2026-05-27 | | `popup_analysis.py` | 李承龙 | 弹窗分析 | 2026-05-28 | | `analyze_course_records.py` | 来源不可追溯 | 课程记录分析 | 2026-05-22 | | `channel_completion_diff.py` | 来源不可追溯 | 渠道完课差异分析 | 2026-05-22 | | `channel_frequency_diff.py` | 来源不可追溯 | 渠道频次差异分析 | 2026-05-22 | | `export_chapter_completion.py` | 来源不可追溯 | 导出章节完成数据 | 2026-05-22 | | `last_completion_unit_dist.py` | 来源不可追溯 | 最后完成单元分布 | 2026-05-22 | | `last_study_lesson_distribution.py` | 来源不可追溯 | 最后学习课时分布 | 2026-05-22 | | `last_study_unit_distribution.py` | 来源不可追溯 | 最后学习单元分布 | 2026-05-22 | | `learning_progress_30days.py` | 来源不可追溯 | 30天学习进度 | 2026-05-27 | | `l1_retention_analysis.py` | 来源不可追溯 | L1留存分析 | 2026-05-11 | | `l2_pass_time.py` / `.sh` / `.sql` | 来源不可追溯 | L2通关时间分析 | 2026-05-06 | | `repeat_learn_trend.py` | 来源不可追溯 | 重复学习趋势 | 2026-05-28 | | `repeat_distribution_chart.py` | 来源不可追溯 | 重复学习分布图 | 2026-05-28 | | `repeat_duration_chart.py` | 来源不可追溯 | 重复学习时长图 | 2026-05-28 | | `repeat_duration_l1l2.py` | 来源不可追溯 | 重复学习时长 L1/L2 | 2026-05-28 | | `repeat_l1_l2_chart.py` | 来源不可追溯 | 重复学习 L1/L2 图 | 2026-05-28 | | `single_duration_chart.py` | 来源不可追溯 | 单次学习时长图 | 2026-05-28 | ### 转化率分析 | 脚本 | 创建来源 | 需求描述 | 创建时间 | |------|---------|---------|---------| | `conversion_rate_analysis.py` | 李承龙 | 端内注册转付费转化率(含纯净版) | 2026-05-12 | | `fitted_registration.py` | 李承龙 | 拟合版注册人数(LOESS+星期因子) | 2026-06-01 | ### 渠道分析 | 脚本 | 创建来源 | 需求描述 | 创建时间 | |------|---------|---------|---------| | `monthly_channel_order_report.py` | 来源不可追溯 | 月度渠道订单报告 | 2026-05-06 | | `weekly_channel_order_report.sh` | 来源不可追溯 | 周渠道订单报告 | 2026-05-21 | | `xueersi_weekly_report.sh` | 来源不可追溯 | 学而思周报 | 2026-04-20 | ### 达人分析 | 脚本 | 创建来源 | 需求描述 | 创建时间 | |------|---------|---------|---------| | `daren_deep_analysis.py` | 李承龙 | 达人直播深度分析 | 2026-05-26 | | `daren_deep_analysis_v2.py` | 李承龙 | 达人直播深度分析 V2 | 2026-05-26 | | `daren_dim_charts.py` | 李承龙 | 达人维度图表 | 2026-05-26 | | `daren_report_chart.py` | 李承龙 | 达人报告图表 | 2026-05-26 | ### 销售分析 | 脚本 | 创建来源 | 需求描述 | 创建时间 | |------|---------|---------|---------| | `sales_conversion_stats.py` | 李承龙 | 销售转化统计 | 2026-06-02 | | `sales_daily_report.py` | 李承龙 | 销售日报 | 2026-06-02 | | `endor_purchase_analysis.py` / `_v2.py` / `_v3.py` | 李承龙 | 背书购买分析 | 2026-05-25 | | `lead_user_analysis.py` | 李承龙 | 线索用户分析(Excel→订单关联) | 2026-05-07 | | `sales_lead_auto_fill.py` | 李承龙 | 销售线索自动填充 | 2026-06-01 | | `migrate_old_leads.py` | 李承龙 | 迁移旧线索 | 2026-06-01 | | `update_stride_phone_lead_sheet.py` | 来源不可追溯 | 更新 stride 手机线索表 | 2026-05-29 | ### 收入预测 | 脚本 | 创建来源 | 需求描述 | 创建时间 | |------|---------|---------|---------| | `revenue_forecast_2025.py` | 李承龙 | 2025年收入预测 | 2026-05-26 | | `june_revenue_forecast.py` | 李承龙 | 6月收入预测 | 2026-06-01 | | `june_revenue_forecast_fitted.py` | 李承龙 | 6月收入预测(拟合版) | 2026-06-01 | ### 报表生成 | 脚本 | 创建来源 | 需求描述 | 创建时间 | |------|---------|---------|---------| | `generate_report.py` | 来源不可追溯 | 通用报表生成 | 约 2026-04 | | `generate_excel.py` | 来源不可追溯 | Excel 报表生成 | 2026-05-14 | | `generate_charts.py` / `_v3.py` | 来源不可追溯 | 图表生成 | 2026-05-14 | | `course_excel_v3.py` | 来源不可追溯 | 课程 Excel V3 | 2026-05-14 | | `excel_v4.py` | 来源不可追溯 | Excel V4 | 2026-05-14 | | `charts_v4.py` | 来源不可追溯 | 图表 V4 | 2026-05-14 | | `course_analysis_v4.py` | 来源不可追溯 | 课程分析 V4 | 2026-05-14 | | `build_xhs_learning_report.py` | 来源不可追溯 | 小红书学习报告 | 2026-06-01 | ### 福利品 | 脚本 | 创建来源 | 需求描述 | 创建时间 | |------|---------|---------|---------| | `welfare_query.sql` | 李承龙 | 福利品查询 SQL | 2026-05-19 | | `welfare_step1.sql` / `_v2.sql` | 李承龙 | 福利品第一步 SQL | 2026-05-19 | | `welfare_merge.py` | 李承龙 | 福利品合并脚本 | 2026-05-19 | | `welfare_merge_final.py` | 李承龙 | 福利品最终合并 | 2026-05-19 | | `welfare_excluded_export.py` | 李承龙 | 福利品排除导出 | 2026-05-19 | ### 数据刷新/修复 | 脚本 | 创建来源 | 需求描述 | 创建时间 | |------|---------|---------|---------| | `refresh_may_course_data.py` | 来源不可追溯 | 刷新5月课程数据 | 2026-05-23 | | `refresh_may_v2.py` | 来源不可追溯 | 刷新5月 V2 | 2026-05-23 | | `refresh_xhs_user_table.py` | 来源不可追溯 | 刷新小红书用户表 | 2026-05-29 | | `may230_refresh.py` | 来源不可追溯 | 5月23日刷新 | 2026-06-01 | | `fix_process_data.py` | 来源不可追溯 | 修复处理数据 | 2026-06-02 | | `fix_process_data_v2.py` | 来源不可追溯 | 修复处理数据 V2 | 2026-06-02 | | `fix_all_sheets.py` | 来源不可追溯 | 修复所有 Sheet | 2026-06-02 | | `rewrite_daily_report_formulas.py` | 来源不可追溯 | 重写日报公式 | 2026-06-02 | | `style_sheets.py` | 来源不可追溯 | 样式 Sheet | 2026-06-01 | | `batch_update_sheet.py` | 来源不可追溯 | 批量更新 Sheet | 2026-05-23 | | `finance_orders_refresh.py` | 李承龙(`ou_e63ce6b760ad39382852472f28fbe2a2`) | 财务口径订单刷新,从订单汇总 2smjwA 出发,逐行匹配全量订单并写入财务 tab 2hSLSg | 2026-06-05 | | **变更记录:** | | | | | 2026-06-18 | 退费规则更新:同时按 trade_no 和 out_trade_no 匹配退费表、退费金额 SUM 累加、order_status=4 直接视为退费 | 李承龙 | | | ### 定时/备份/运维 | 脚本 | 创建来源 | 需求描述 | 创建时间 | |------|---------|---------|---------| | `daily_backup.sh` | 小溪自主(系统运维) | 每日备份 | 2026-04-15 | | `daily_midnight_task.sh` | 小溪自主(系统运维) | 每日凌晨任务 | 约 2026-03 | | `sync_skills.sh` | 小溪自主(系统运维) | 技能同步推送 | 2026-04-03 | | `update_business_knowledge.sh` | 小溪自主(系统运维) | 业务知识库更新 | 2026-04-15 | | `run_component_practice_stat_daily.sh` | 来源不可追溯 | 组件练习统计每日运行 | 2026-04-20 | | `run_user_course_stat.sh` | 来源不可追溯 | 用户课程统计运行 | 2026-05-21 | ### 工具/辅助 | 脚本 | 创建来源 | 需求描述 | 创建时间 | |------|---------|---------|---------| | `check_wechat_binding.py` | 李承龙 | 加微判断验证 | 2026-06-01 | | `check_account_userid.py` | 来源不可追溯 | 检查账户用户ID | 2026-05-25 | | `check_seasonal_ticket_fields.py` | 来源不可追溯 | 检查季票字段 | 2026-04-22 | | `check_tables.py` | 来源不可追溯 | 检查表结构 | 2026-04-22 | | `test_db_connections.py` | 小溪自主(环境测试) | 数据库连接测试 | 约 2026-03 | | `test_mysql_pg.py` | 小溪自主(环境测试) | MySQL/PG 连接测试 | 约 2026-03 | | `test_docx_api.py` | 来源不可追溯 | 测试 Docx API | 2026-05-07 | | `write_md_to_feishu_docx.py` | 小溪自主(通用工具) | Markdown 转飞书 Docx | 2026-05-07 | | `parse_table.py` | 来源不可追溯 | 解析表格 | 2026-03-18 | | `process_order.py` | 来源不可追溯 | 处理订单 | 2026-03-24 | | `regenerate_report.py` | 来源不可追溯 | 重新生成报告 | 2026-03-24 | | `read_excel.py` | 来源不可追溯 | 读取 Excel | 约 2026-03 | | `query_user_info.py` | 来源不可追溯 | 查询用户信息 | 约 2026-03 | | `export_user_id_data.py` | 来源不可追溯 | 导出用户ID数据 | 约 2026-03 | | `export_tel_encrypt_no_gsv.py` | 来源不可追溯 | 导出加密手机号(无GSV) | 2026-05-29 | | `send_file.sh` | 来源不可追溯 | 发送文件 | 2026-04-01 | | `find_optimal_x.py` | 来源不可追溯 | 寻找最优 X | 2026-05-11 | | `device_category_analysis.py` | 来源不可追溯 | 设备分类分析 | 2026-05-26 | | `unit_reinforcement_tasks.py` | 来源不可追溯 | 单元强化任务 | 2026-06-01 | | `vala_order_amortization_stat_202603.py` | 来源不可追溯 | 订单均摊统计 2026-03 | 2026-04-23 | ### SQL 模板 | 脚本 | 创建来源 | 需求描述 | 创建时间 | |------|---------|---------|---------| | `goods_id_distribution.sql` | 来源不可追溯 | goods_id 分布查询 | 2026-05-22 | | `l1l2_users_study_breakdown.sql` | 来源不可追溯 | L1/L2 用户学习拆分 | 2026-05-17 | | `last_done_unit.sql` | 来源不可追溯 | 最后完成单元 | 2026-05-22 | | `learning_progress_30days.sql` | 来源不可追溯 | 30天学习进度 SQL | 2026-05-27 | | `no_done_paying_users.sql` | 来源不可追溯 | 无完课付费用户 | 2026-05-22 | | `u00_lesson_dist.sql` | 来源不可追溯 | U00 课时分布 | 2026-05-22 | | `weekly_active_paying_users.sql` | 来源不可追溯 | 周活跃付费用户 | 2026-05-17 | | `用户购课完课统计.sql` | 来源不可追溯 | 用户购课完课统计 | 2026-05-21 | --- ## 全局 Skills(`~/.openclaw/skills/`) 以下为瓦拉团队自建技能(非 lark-cli 官方 symlink): | 技能 | 创建来源 | 需求描述 | 创建时间 | |------|---------|---------|---------| | `cloudsways-search` | 技术负责人(李若松/张昆鹏) | 小宿 SmartSearch 搜索 API | 约 2026-05 | | `cron-schedule.vala` | 小溪自主(系统基础设施) | 定时任务管理 | 约 2026-04 | | `feishu-chat-troubleshooting` | 小溪自主(系统运维) | 飞书群消息故障排查 | 约 2026-05 | | `gpt-image-2-generator` | 小溪自主(通用工具) | GPT Image 2 图片生成 | 约 2026-05 | | `knowledge-mastery-calculator` | 来源不可追溯 | 知识点掌握度计算 | 约 2026-04 | | `lark-99991668-pitfall` | 小溪自主(系统运维) | 99991668 错误排查补丁 | 约 2026-05 | | `lark-action-as-bot` | 小溪自主(系统基础设施) | Bot 身份操作指南 | 约 2026-03 | | `lark-identify-sender` | 小溪自主(系统基础设施) | 识别飞书消息发送者身份 | 约 2026-04 | | `lark-send-message-as-bot` | 小溪自主(系统基础设施) | Bot 身份发送飞书消息 | 约 2026-04 | | `lark-send-message-as-bot-local` | 小溪自主(系统运维) | Bot 消息发送本地补丁 | 约 2026-05 | | `lark_wiki_operate_as_bot` | 小溪自主(系统基础设施) | 知识库 Bot 身份操作 | 约 2026-04 | | `model-usage-stats` | 小溪自主(系统运维) | Token 用量统计 | 约 2026-05 | | `multi-model-assistant` | 技术负责人(李若松/张昆鹏) | 外部多模型调用 | 约 2026-05 | | `pua` | 小溪自主(实验性) | PUA 模式 | 约 2026-04 | | `use_vala_skillhub` | 小溪自主(系统基础设施) | SkillHub 技能推送/同步 | 约 2026-05 | | `vala_git_workspace_backup.vala` | 小溪自主(系统运维) | workspace Git 备份 | 约 2026-04 | | `vala_knowledgebase` | 小溪自主(知识管理) | 瓦拉知识库 | 约 2026-05 | --- ### fill_leads_sheet.py - **创建来源:** 李承龙(`ou_e63ce6b760ad39382852472f28fbe2a2`) - **需求描述:** 从「端内析出leads数据」飞书表格读取曲慧萌/吴迪填写的手-机号 → XXTEA加密匹配 account_id → 查询注册日期、端内转化、退费、U0体验课完成日期 → 自动回填表格 - **功能说明:** 支持 dry-run 预览,自动匹配 bi_vala_app_account.tel_encrypt,查询端内渠道(含 app-sales-bj-wd-0)的转化/退费状态,以及 L1-U0 和 L2-U0 共10节体验课的完成日期 - **创建时间:** 2026-06-03 ### sync_sales_lesson_status.py - **创建来源:** 陈逸鸫(`8315a98e`) - **需求描述:** 每30分钟自动从销售表(小龙/吴迪)读取UID → 查DB课时完成数 → 回填D列体验节数 → 汇总写入行课漏斗M/P/S/V/Y列(≥1/≥2/≥3/≥4/≥5节人数) - **功能说明:** 替代旧的查询表回填流程,直接查DB写销售表+行课漏斗,实现行课数据全自动更新 - **创建时间:** 2026-06-03 - **Cron:** `*/30 * * * *` `/etc/cron.d/xiaoxi_sales_lesson_sync` ### feishu_sheet_utils.py - **创建来源:** 李承龙(`ou_e63ce6b760ad39382852472f28fbe2a2`) - **需求描述:** 飞书表格写入因 API 单次 5000 格上限导致数据丢失,需要统一的写入工具 - **功能说明:** 封装飞书表格安全分批写入/清空逻辑,自动计算批大小确保 ≤ 4400 格/批(留 12% 安全余量),所有脚本统一使用此工具避免超标 - **创建时间:** 2026-06-13 ### bot_sales_step2_refresh - **创建来源:** 陈逸鸫(`ou_0f343a045f793af4eabe6da807fddbf7`) - **需求描述:** Bot 销转看板 S2 刷新,对销售三表(小龙/吴迪/成都)做全量数据填充 - **功能说明:** E列手机号 → XXTEA 加密 → PG tel_encrypt 精确匹配 → H列UID;H→D/I/J 只补空;K–V 订单/金额/行课数据全覆盖;不写订单汇总 - **创建时间:** 2026-06-06 - **变更记录:** - 2026-06-06 | v2: D/I/J 只补空、L≥C 才 K=是、全额退清 K/O/P/Q | 陈逸鸫 ### full_refresh_sales.py - **创建来源:** 李承龙(`ou_e63ce6b760ad39382852472f28fbe2a2`) - **需求描述:** 销售三表全量刷新,手机号→UID→订单数据→回填,含订单汇总写入 - **功能说明:** 读取销售三表(吴迪/小龙/成都)→ XXTEA 匹配 UID → 查询订单/退费/行课 → 回填各列 → 写入订单汇总 - **创建时间:** 2026-06-02 - **变更记录:** - 2026-06-16 | 销售三表读取范围 A:V→A:Z、订单汇总筛选 K=是+O>0→Y=1、写入范围 A-V→A-X、排序列 L→K | 来源待确认(会话已过期) - 2026-06-16 | 新增 `classify_sales_channel()` 函数,将 key_from 归为四类(端内/销转/达人/直购),规则从 MEMORY.md 迁移 | 李承龙 ### sales_leads_full_refresh.py - **创建来源:** 李承龙(`ou_e63ce6b760ad39382852472f28fbe2a2`) - **需求描述:** 销售线索全量刷新,从销售三表读取→匹配订单→写入订单汇总 - **功能说明:** 读取销售三表 → XXTEA 匹配 UID → 查询订单/退费 → 筛选有效订单 → 全量覆盖订单汇总 - **创建时间:** 2026-06-08 - **变更记录:** - 2026-06-16 | 修复 parse_date_str 支持带时间的日期格式(`6月12日 10:23:48`) | 群聊上下文触发(非授权人),已违规 ### refresh_order_summary.py - **创建来源:** 李承龙(`ou_e63ce6b760ad39382852472f28fbe2a2`) - **需求描述:** 订单汇总刷新,从直购表+销售三表合并写入订单汇总 - **功能说明:** 读取直购表+销售三表 → 合并去重 → 全量覆盖订单汇总 - **创建时间:** 约 2026-06 - **变更记录:** - 2026-06-15 | 去掉直购表合并逻辑(停直购口径变更) | 陈逸鸫(群聊「数据更新V2」) > **最后更新:** 2026-06-16 | 李承龙要求强化审批规则,补登记缺失条目 > **标记说明:** 「来源不可追溯」= 创建于登记规则生效之前,原始需求来源已无法从记忆/会话中确认