Skip to main content

lingxing-weekly-report

领星 ERP 数据拉取、周报/月报汇总、运营周会 Excel 表格自动填报并交王祎审核确认后自动提交运营周复盘日志(附件以钉盘链接贴正文)、六组周会纪要自动生成与推送工作流。

ソース情報

リポジトリ
crimsonblazezero/Zero-Tools
ソースの最終更新活動
2026年8月11日 03:54
検出された SKILL.md の言語
中国語
スター
0
フォーク
0

インストール方法

デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。

ソースファイルを確認

インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。

ファイルエクスプローラー
4 ファイル

SKILL.md を表示中

SKILL.md
ソースの指示 · 読み取り専用プレビュー
name
lingxing-weekly-report
description
领星 ERP 数据拉取、周报/月报汇总、运营周会 Excel 表格自动填报并交王祎审核确认后自动提交运营周复盘日志(附件以钉盘链接贴正文)、六组周会纪要自动生成与推送工作流。
# 领星 ERP 周报与运营周会全自动化 Skill ## 1. 适用场景与触发词 - **触发词**:`周报数据`、`运营周会`、`生成周报`、`领星数据拉取`、`南京欧洲组`、`填写周报Excel`、`周会会议纪要`、`提交钉钉周报` - **默认店铺范围**:仅筛选名称包含 `南京欧洲组KS` 的 15 个店铺 SID (`5018, 5019, 5020, 5021, 5022, 5023, 5024, 5025, 5026, 5027, 5028, 5029, 5030, 5031, 5751`) - **计价币种**:美金 (USD) - **统一入口脚本**:`src/weekly_report_pipeline.py` --- ## 2. 数据维度说明 (Scope Codes) | Code | 含义 | 说明 | |------|------|------| | **100** | 全组 (Group) | 六组 15 店铺全量汇总,周报日志提交使用此维度 | | **200** | 王祎个人 (WY) | principal_names 含 "王祎" 的 ASIN | | **300** | 化一博个人 (HYB) | principal_names 含 "化一博" 的 ASIN | > **周报日志(运营周复盘)只提交 100 全组数据。** > 周会纪要 Excel 同时填入全组(D列) 与化一博个人(J列) 数据。 --- ## 3. 核心工作流 (Master Pipeline) ``` [领星 ERP & AI表格] ──> [1. 填报 Excel] ──> [2. 导入在线表格+授权] ──> [3. 组装 payload(在线表格链接贴备注)] │ ▼ [4. 输出关键数据 MD 给王祎审核] ──确认/执行──> [5. 提交运营周复盘日志 + 推送周会纪要(--push)] ``` > **关键闸门(2026-08-10 王祎拍板,双报表均需审核)**: > - **每周流程**:先 `--all`(生成 Excel/在线表格 + 打印**关键数据 MD 待审核**,**不发送任何消息**)→ 王祎审核 MD → 确认后 `--all --push`(提交周报日志 + 推送周会纪要 + 转发高应婷) > - **报表一(运营周复盘日志)**:MD 审核确认后才提交;未经确认禁止 submit > - **报表二(六组周会纪要)**:2026-08-10 起**不再自动推送**——生成+MD 待审核,确认后 `--push` 才推送钉群 > - **附件**:⚠️ **日志附件 type=9 实际不可用**——`entry submit` dry-run(CLI 参数校验)能过,但**后端 create_report 真实提交会拒绝**("请求未通过后端参数校验 / success=false")。正确方案(2026-08-09 实测确认):**在线表格链接(doc import 生成,已授权 EDITOR)以 Markdown 贴入正文文本字段**(如备注),文件本体在线可编辑。若需文件本体,用钉盘链接贴正文。 ### CLI 用法 ```bash # 每周标准流程(2026-08-10): python src/weekly_report_pipeline.py --all --week-end <周六> --meeting-date <下周一> # ① 生成+MD 待审核(不发送) python src/weekly_report_pipeline.py --all --week-end <周六> --meeting-date <下周一> --push # ② 审核通过后发送 # 单独执行 python src/weekly_report_pipeline.py --report1 [--push] # 仅报表一 python src/weekly_report_pipeline.py --report2 [--push] # 仅报表二 # 可选覆盖日期 python src/weekly_report_pipeline.py --all --week-end 2026-08-01 --meeting-date 2026-08-03 # Dry-run 模式(仅验证数据,不写入文件/不发送消息) python src/weekly_report_pipeline.py --all --dry-run ``` ### 🔐 自动设置权限(在线表格可编辑) > **2026-08-09 修正**:钉盘文件(`drive upload`)是二进制附件,**无法设置 EDITOR 角色权限**(`drive permission add` 报 "can't set role",且 `drive publish set` 报"节点不支持互联网公开")。正确做法是**导入为在线电子表格再授权**: > 1. `dws doc import --file <xlsx> --workspace 27227639280` → 返回在线表格 `documentUrl`(导入到「我的文件」空间) > 2. `dws doc +access-grant --node <documentUrl> --to 王祎,化一博 --role EDITOR -y` → 授予编辑权限 > ⚠️ **版本要求**:`doc +access-grant` 需 dws **≥ v1.0.57**(2026-08-06 发布,含 Drive/文档权限改进)。旧版(如 8/3 的 v1.0.54)报 unknown flag。升级命令:`dws upgrade -y`。pipeline 已封装 `grant_editor()`:优先 dws.exe(≥v1.0.57),失败自动回退新版 dws.js(`C:\Users\china\.workbuddy\binaries\node\cli-connector-packages\node_modules\dingtalk-workspace-cli\bin\dws.js`)。 > 权限验证:`dws drive permission list --node <docId>` → 化一博=EDITOR、创建者=OWNER、群=DOWNLOADER(可查看下载)。 > pipeline 已封装为 `import_excel_as_online()`(doc import + 授权一步完成),报表一/报表二自动调用。 ### 🔑 运行登录验证前置条件 终端验证绑定的正确命令是: ```bash dws auth status ``` --- ## 4. 报表一:《运营周会数据收集_王祎_v19_new.xlsx》与《运营周复盘》 ### 步骤 1:最新单周数据覆盖填报 (Not Cumulative) 目标文件:`E:\#工作资料\月复盘\运营周会数据收集_王祎.xlsx`(公司电脑实际路径;pipeline 常量 `EXCEL_TEMPLATE_R1` 已适配,家中版用 `C:\Users\Administrator\Desktop\工作\2025~若驰工作文件\运营周会数据收集_王祎_v19_new.xlsx`) - **覆盖更新 `周报` Sheet**(最新单周数据直接覆盖,禁止 `+=` 累加): | 列 | 含义 | 数据来源 | |----|------|----------| | D | 本周实际销售额 | `amount`(上周日~本周六) | | E | 本周目标销售额 | 月目标 / 4 | | F | 本周 ACOAS | `spend / amount` | | G | 周销售额达成率 | 公式 `=D2/E2` | | H | 月目标销售额 | FY2026 目标表 | | I | 月实际销售额 | `amount`(当月1号~本周六) | | J | 本月 ACOAS | 月 `spend / amount` | | K | 月销售额达成率 | 公式 `=I2/H2` | | L | 月目标毛利额 | FY2026 目标表 | | M | 月实际毛利额 | **结算毛利 `gross_profit`(利润报表 query_order_profit_list,南京组)× 0.6**(2026-08-09 用户确认:与领星前台一致;采购与头程未完全扣减仍需打折;接口为 USD 无汇率换算)。⚠️ 三行(Row2全组/Row3王祎/Row4化一博)**均为结算×0.6**(2026-08-10 修正:原王祎行缺结算字段回退预估口径导致虚高至超全组) | | N | 毛利额达成率 | 公式 `=M2/L2` | | O | 月库销比 | `(FBA在库可售 + 待调仓 + 调仓中) / (近7天平均日销) / 30` | - **更新 `清货进度表` Sheet**:90-180天 / 181-270天 / 271-365天 / 365天以上 FBA 库龄分段数据 - 目标存量系数:90-180天=`0.8` / 181-270天=`0.5` / 271-365天=`0.3` / 366天以上=`0.1` ### 步骤 2:上传钉盘与权限配置(在线表格可编辑) - `dws drive upload` 上传 Excel → 提取 `spaceId`, `fileId`, `fileName`, `fileSize`, `docUrl`(钉盘文件供日志附件字段/本体使用) - `dws doc import --file <excel> --workspace 27227639280` → 导入为**在线电子表格**(可编辑)→ `docUrl` 用在线版 - `dws doc +access-grant --node <documentUrl> --to 王祎,化一博,高应婷 --role EDITOR -y` → 授予编辑权限(pipeline 常量 `EDITOR_NAMES` 已含高应婷;须用新版 dws.js,见上) - ❌ 不再使用 `drive publish set`(钉盘节点不支持互联网公开) ### 步骤 3:DWS 模版动态读取与 Payload 组装 - 模板名称:`运营周复盘(周一9:00前提交)` - 模板 ID:`17a14a44cdee2e409b88ad14ca68d77b` - Payload 输出路径:`d:\Zero Tools\data\report_payload.json` **完整字段映射与参考说明(详见 [field-mapping.md](file:///d:/Zero%20Tools/skills/data-science/lingxing-dws-weekly-report/references/field-mapping.md))** | # | key | sort | type | contentType | 数据来源说明 | |---|-----|------|------|-------------|-------------| | 1 | ~~附件~~(**payload 已移除**) | 56 | 9 | origin | ⚠️ 后端 create_report 拒绝 type=9(dry-run 能过、真实提交 PARAM_ERROR),**不再提交**;Excel 以**在线表格链接贴入「备注」**(2026-08-09 实测) | | 2 | 周销量 | 20 | 2 | origin | 全组单周销量 `int(volume)` | | 3 | 本周实际销售额$ | 21 | 2 | origin | 全组单周 `amount` | | 4 | AcoAs(%) | 22 | 2 | origin | 全组单周 `spend / amount * 100` | | 5 | 本周目标销售额$ | 23 | 2 | origin | 月目标 / 4 | | 6 | 下周目标销售额$ | 24 | 2 | origin | 月目标 / 4 | | 7 | 月目标销售额$ | 25 | 2 | origin | FY2026 目标表 | | 8 | 月实际销售额$ | 26 | 2 | origin | 全组当月 `amount` | | 9 | 月AcoAs(%) | 55 | 1 | markdown | 全组当月 `spend / amount * 100` | | 10 | 月目标毛利额$ | 29 | 2 | origin | FY2026 目标表 | | 11 | 月实际毛利额(未扣除工资、房租物业和财务成本等)$ | 30 | 2 | origin | 全组当月**结算毛利 `gross_profit`(利润报表筛南京组)× 0.6**(USD 无汇率换算) | | 12 | 毛利额完成比率(%) | 31 | 2 | origin | `月实际毛利额 / 月目标毛利额 * 100` | | 13 | 近30天库销比(FBA在库库存) | 57 | 1 | markdown | `(FBA总库存 / 近7天平均日销) / 30` | | 14 | 当前库存数量——90-180天库龄 | 35 | 2 | origin | FBA 库龄 91-180 天 | | 15 | 目标存量——90-180天库龄 | 47 | 2 | origin | `当前量 * 0.8` | | 16 | 当前库存数量——181-270天库龄 | 38 | 2 | origin | FBA 库龄 181-270 天 | | 17 | 目标存量——181-270天库龄 | 48 | 2 | origin | `当前量 * 0.5` | | 18 | 当前库存数量——271-365天库龄 | 41 | 2 | origin | FBA 库龄 271-365 天 | | 19 | 目标存量——271-365天库龄 | 49 | 2 | origin | `当前量 * 0.3` | | 20 | 当前库存数量——366天以上库龄 | 44 | 2 | origin | FBA 库龄 365+ 天 | | 21 | 目标存量——366天以上库龄 | 50 | 2 | origin | `当前量 * 0.1` | | 22 | 本周清货计划是否符合预期?如否,写明原因 | 51 | 1 | markdown | 默认 "符合预期" | | 23 | 周未达成重要目标/存在问题/原因/办法 | 0 | 1 | markdown | 留空 | | 24 | 老品月库销比超过2个月的产品名称/降低库销比方案/预期需要多久完成 | 18 | 1 | markdown | **暂不统计**(当前均为新品/全新品,待有老品后启用;2026-08-09 用户确认) | | 25 | 超过180天的SKU数量/以及对应的货量总和/预期多久清理完毕 | 19 | 1 | markdown | 动态:SKU数/货量总和/明细(**品名取第一个逗号前基础名**+MSKU,**≤20条**)+预期60天清完 | | 26 | 本周重点工作及完成情况(事、量化、做到什么程度) | 17 | 1 | markdown | 从 AI 表格读取上周 WK 任务 | | 27 | 下周重点工作及计划(事、量化、时间/不超3项) | 1 | 1 | markdown | 从 AI 表格读取本周 WK 任务 | ### 步骤 4:王祎检查确认(强制闸门,2026-08-08 双报表 2026-08-10) - **输出关键数据 MD 给王祎审核**(pipeline `--all` 自动打印):周销量/周销售额/周AcoAs、月目标/实际销售额及达成率、月目标/实际毛利额及完成率、库销比/库龄、超180天SKU、本周重点任务/下周计划 - **必须等王祎回复"确认/执行"后**,才可执行发送(`--push`:提交日志 + 推送周会纪要 + 转发高应婷) - 若王祎指出数据异常 → 先排查修正,再重新生成展示,直到确认 ### 步骤 5:自动提交运营周复盘日志 **⚠️ 平台硬限制:钉钉日志 `report create` API 只支持文本组件(type=1),附件字段(sort=56, type=9)不支持接口提交**(官方文档原文:"对应日志模板中的每个组件只允许是文本类型,其他类型组件暂不支持接口调用")。实测 `contents` 中带附件字段一律返回 `PARAM_ERROR`。 **⚠️ 接收人必须显式指定(2026-08-10 修复)**:dws `report entry submit` **不会自动带上模板预设接收人**,历史提交因缺 `--to-user-ids` 导致 `read_number=0`(无人收到)。提交时必须传 `--to-user-ids`,值为模板接收人清单(15 人,见下)。 **模板接收人清单(2026-08-10 用户确认,含王祎本人)**: ``` 01104268151043122,01231127491636542865,2212601849794046,014229691438662957,024908435521592540,0455536261847357,0501643723845167,064243141938867771,0917545705950670,101501180838205713,1352305732897533,154338120021440576,17566881508928543,223666541827618229,2260394838899755 ``` 对应人员:胡佳、郑炎城、张斐、兆汇、周文君、杨桥、杨志、高应婷、王莹、陆雨阳、沈超、向家祥、王祎、汪玉琴、沈阳。 **附件方案(钉盘链接贴正文)**: 1. `dws doc import <excel>` 导入为在线表格(已授权 EDITOR)→ 返回 `documentUrl`(推荐,可在线编辑) 2. **正文贴链接(type=9 附件后端不支持,2026-08-09 实测)**:在备注/汇总等文本字段贴在线表格链接: ```markdown [运营周会数据收集_王祎.xlsx(在线可编辑)](https://alidocs.dingtalk.com/i/nodes/<docId>) ``` 3. 执行提交(王祎已确认后): ```bash dws report entry submit \ --template-id 17a14a44cdee2e409b88ad14ca68d77b \ --contents '<json>' \ --to-user-ids 01104268151043122,01231127491636542865,2212601849794046,014229691438662957,024908435521592540,0455536261847357,0501643723845167,064243141938867771,0917545705950670,101501180838205713,1352305732897533,154338120021440576,17566881508928543,223666541827618229,2260394838899755 \ --yes ``` (注意:`--contents-file` 有 cwd 解析 bug,用 `--contents` 单行 JSON 或 `--contents -` stdin;`--to-user-ids` 为接收人 userId 逗号分隔,**必填**;`--to-chat` 用户确认不需要,不传) 4. 提交成功后用返回的 `dingtalkOpenLink`/`dingtalkOpenMarkdownLink` 给王祎跳转查看 5. **转发给高应婷(2026-08-09 用户要求,pipeline 已固化)**:报表一在线表格生成后自动 `chat message send --open-dingtalk-id DT2AUV82nT7PZbqyiPfiPSdOwuyiPmR29xgn` 发送链接(高应婷已授权 EDITOR)。手动等价命令: ```bash dws chat message send --open-dingtalk-id DT2AUV82nT7PZbqyiPfiPSdOwuyiPmR29xgn \ --title "运营周复盘在线表格" --text "<周区间> 运营周复盘在线表格(已授权可编辑):<docUrl>" -y ``` ### 步骤 6:六组周会纪要(2026-08-10 起需审核后推送) - 生成《六组周会会议纪要2026MMDD.xlsx》→ 导入在线表格 + 授予 EDITOR 权限 → **打印关键数据 MD 待审核**(不自动推送) - **王祎审核 MD 确认后**,`--push` 才推送钉群(卡片带可编辑链接);2026-08-10 起**不再自动推送** - **利润口径(2026-08-09 用户确认,报表一/报表二完全一致)**: - **订单利润额(*0.6, 结算·月口径) = 利润报表 `query_order_profit_list` 结算 `gross_profit`(南京组)× 0.6**(月口径 8-1~8-8,与报表一月实际毛利同一数值,数据环比 **D8/J8**) - **结算利润额 = 产品表现 `query_product_performance_asin_lists` purchase(下单时间)口径 Σ `gross_profit`**(月口径,**未×0.6**,数据环比 **D10/J10**;2026-08 实测全组 ≈ 6,814.38) - 产品表现 `predict_gross_profit`(预估)不再用于周会纪要利润行(已弃用) --- ## 5. AI 表格字段映射 (DingTalk AI Table) | 常量 | 值 | 说明 | |------|-----|------| | `BASE_ID` | `R1zknDm0WRNmEDKZSBED3jE4WBQEx5rG` | AI 表格 Base:周重点任务 | | `TABLE_ID` | `dv19yqvsgs3oebp3pcjys` | 数据表:1.任务管理表 | ### 字段 ID 映射 | cellId | 字段名称 | 说明 | |--------|----------|------| | `jxzfinmckxuusjowbz5ca` | 任务名称 | 任务标题文本 | | `sb82jyoeivzhh5is2guac` | 执行人 | 人员数组,含 userId | | `y5s8sqzoulb4pdafd1mlo` | 截止日期 | ISO 日期字符串 | | `8LkwFxC` | 周数 (WK) | 年度第几周,公式字段 | --- ## 6. FY2026 财年目标数据库 目标数据源自 `南京欧洲组-2026财年目标测算.xlsx`。每周目标 = 当月目标 / 4。 ### 销售额目标 (GMV Target in USD) | 月份 | 全组 (Group) | 王祎 (WY) | 化一博 (HYB) | |------|-------------|-----------|-------------|
GitHubで見る
この SKILL.md は非常に大きいため、SkillsMP では最初のセクションだけを表示しています。 GitHubで見る