sino-bc-cli 1.0.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +256 -0
- package/dist/affordance/auth.md +31 -0
- package/dist/affordance/bill.md +48 -0
- package/dist/affordance/biz-line-ai-strategy.md +35 -0
- package/dist/affordance/biz-line-metrics.md +47 -0
- package/dist/affordance/biz-line.md +84 -0
- package/dist/affordance/common-file.md +25 -0
- package/dist/affordance/dashboard.md +75 -0
- package/dist/affordance/dict.md +28 -0
- package/dist/affordance/document.md +67 -0
- package/dist/affordance/im.md +91 -0
- package/dist/affordance/invoice.md +49 -0
- package/dist/affordance/media.md +17 -0
- package/dist/affordance/organization.md +47 -0
- package/dist/affordance/project-analysis.md +95 -0
- package/dist/affordance/project.md +321 -0
- package/dist/affordance/quota.md +19 -0
- package/dist/affordance/reconciliation.md +41 -0
- package/dist/affordance/report.md +75 -0
- package/dist/affordance/sso-team-group.md +30 -0
- package/dist/affordance/task.md +148 -0
- package/dist/affordance/tenant.md +17 -0
- package/dist/affordance/user.md +41 -0
- package/dist/affordance/wallet.md +100 -0
- package/dist/api-doc/README.md +67 -0
- package/dist/api-doc/custom/template.md +0 -0
- package/dist/api-doc/oapi/auth.md +61 -0
- package/dist/api-doc/oapi/bill.md +130 -0
- package/dist/api-doc/oapi/biz-line-ai-strategy.md +119 -0
- package/dist/api-doc/oapi/biz-line-metrics.md +419 -0
- package/dist/api-doc/oapi/biz-line.md +382 -0
- package/dist/api-doc/oapi/common-file.md +50 -0
- package/dist/api-doc/oapi/dashboard.md +218 -0
- package/dist/api-doc/oapi/dict.md +49 -0
- package/dist/api-doc/oapi/document.md +182 -0
- package/dist/api-doc/oapi/im.md +278 -0
- package/dist/api-doc/oapi/invoice.md +129 -0
- package/dist/api-doc/oapi/media.md +17 -0
- package/dist/api-doc/oapi/organization.md +94 -0
- package/dist/api-doc/oapi/project-analysis.md +364 -0
- package/dist/api-doc/oapi/project.md +1114 -0
- package/dist/api-doc/oapi/quota.md +21 -0
- package/dist/api-doc/oapi/reconciliation.md +98 -0
- package/dist/api-doc/oapi/report.md +254 -0
- package/dist/api-doc/oapi/sso-team-group.md +54 -0
- package/dist/api-doc/oapi/task.md +528 -0
- package/dist/api-doc/oapi/tenant.md +17 -0
- package/dist/api-doc/oapi/user.md +98 -0
- package/dist/api-doc/oapi/wallet.md +275 -0
- package/dist/generated/api-catalog.json +39681 -0
- package/dist/generated/api-directory-index.json +1509 -0
- package/dist/index.js +2 -0
- package/dist/skill-manifest.json +336 -0
- package/dist/skills/biz-line-strategy-generate/SKILL.md +122 -0
- package/dist/skills/biz-line-strategy-generate/references/ai-strategy-prompt.md +50 -0
- package/dist/skills/biz-line-strategy-generate/references/api-flow.md +155 -0
- package/dist/skills/biz-line-strategy-generate/references/four-strategies.md +58 -0
- package/dist/skills/biz-line-strategy-generate/references/metrics.md +119 -0
- package/dist/skills/biz-line-strategy-generate/references/output-excel.md +63 -0
- package/dist/skills/biz-line-strategy-generate/references/runtime.md +127 -0
- package/dist/skills/biz-line-strategy-generate/references/spec.md +500 -0
- package/dist/skills/biz-line-strategy-generate/scripts/ai_strategy.py +89 -0
- package/dist/skills/biz-line-strategy-generate/scripts/build_report.py +629 -0
- package/dist/skills/biz-line-strategy-generate/scripts/cleanup.py +87 -0
- package/dist/skills/biz-line-strategy-generate/scripts/cli_json.py +705 -0
- package/dist/skills/biz-line-strategy-generate/scripts/fetch_data.py +449 -0
- package/dist/skills/biz-line-strategy-generate/scripts/run_workflow.py +402 -0
- package/dist/skills/biz-line-strategy-generate/scripts/strategy_output.py +556 -0
- package/dist/skills/biz-line-strategy-generate/scripts/submit_tags.py +32 -0
- package/dist/skills/biz-line-strategy-generate/scripts/summarize.py +932 -0
- package/dist/skills/biz-line-strategy-generate/scripts/test_ai_strategy.py +235 -0
- package/dist/skills/biz-line-strategy-generate/scripts/test_cli_json.py +97 -0
- package/dist/skills/biz-line-strategy-generate/scripts/test_database_output.py +904 -0
- package/dist/skills/biz-line-strategy-generate/scripts/test_pipeline.py +253 -0
- package/dist/skills/biz-line-strategy-generate/scripts/test_strategy_rules.py +224 -0
- package/dist/skills/biz-line-strategy-generate/scripts/test_tag_submission.py +238 -0
- package/dist/skills/biz-line-strategy-generate/scripts/test_workflow.py +1233 -0
- package/dist/skills/sino-bc-cli/SKILL.md +62 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-auth/SKILL.md +36 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-bill/SKILL.md +48 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-biz-line/SKILL.md +58 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-biz-line/references/common-mistakes.md +7 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-biz-line/references/enums.md +13 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-biz-line-ai-strategy/SKILL.md +46 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-biz-line-metrics/SKILL.md +46 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-common-file/SKILL.md +44 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-dashboard/SKILL.md +50 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-dict/SKILL.md +48 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-document/SKILL.md +53 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-im/SKILL.md +62 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-invoice/SKILL.md +48 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-media/SKILL.md +40 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-organization/SKILL.md +46 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-project/SKILL.md +112 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-project-analysis/SKILL.md +61 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-project-analysis/references/analysis-workflow.md +21 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-project-analysis/references/filters-and-metrics.md +30 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-quota/SKILL.md +44 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-reconciliation/SKILL.md +47 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-report/SKILL.md +53 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-sso-team-group/SKILL.md +45 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-task/SKILL.md +73 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-task/references/state-machine.md +18 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-tenant/SKILL.md +34 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-user/SKILL.md +57 -0
- package/dist/skills/sino-bc-cli/domains/sino-bc-wallet/SKILL.md +55 -0
- package/dist/skills/sino-bc-cli/references/domain-index/module-8534789.md +53 -0
- package/dist/skills/sino-bc-cli/references/domain-index/module-8551546.md +70 -0
- package/dist/skills/sino-bc-cli/references/domain-index/module-8562638.md +13 -0
- package/dist/skills/sino-bc-cli/references/domain-index/module-8566367.md +13 -0
- package/dist/skills/sino-bc-cli/references/domain-index/module-8581524.md +17 -0
- package/dist/skills/sino-bc-cli/references/domain-index/module-8601540.md +13 -0
- package/dist/skills/sino-bc-cli/references/domain-index/module-8614891.md +33 -0
- package/dist/skills/sino-bc-cli/references/domain-index/module-8621792.md +17 -0
- package/dist/skills/sino-bc-shared/SKILL.md +31 -0
- package/dist/skills/sino-bc-shared/references/auth-recovery.md +36 -0
- package/dist/skills/sino-bc-shared/references/config-and-env.md +60 -0
- package/dist/skills/sino-bc-shared/references/output-contract.md +86 -0
- package/dist/skills/sino-bc-shared/references/skill-lifecycle.md +17 -0
- package/dist/skills/sino-bc-shared/references/tenant-context.md +21 -0
- package/dist/skills/sino-bc-shared/references/write-approval.md +16 -0
- package/package.json +70 -0
- package/scripts/postinstall.cjs +36 -0
|
@@ -0,0 +1,382 @@
|
|
|
1
|
+
# 业务线策略
|
|
2
|
+
|
|
3
|
+
对应命令:`biz-line +<shortcut>` 与 `biz-line api <name>`。
|
|
4
|
+
|
|
5
|
+
执行前 MUST 读取 [sino-bc-shared](../../skills/sino-bc-shared/SKILL.md) 轻量入口,再按命中条件读取其 references;当前上下文已读且仍适用时可复用。可用 `sino-bc-cli /skill` 查询真实路径。
|
|
6
|
+
|
|
7
|
+
## 1. 查询业务线分页列表
|
|
8
|
+
|
|
9
|
+
`POST /sino-opti-hive/biz-line/list`
|
|
10
|
+
|
|
11
|
+
主体上下文:`tenant=false`。
|
|
12
|
+
|
|
13
|
+
角色范围:`sso/system`。
|
|
14
|
+
|
|
15
|
+
风险:`read`。
|
|
16
|
+
|
|
17
|
+
查询业务线分页列表。需要查询业务线关联项目和广告账号,使用业务线ID查询【业务线关联项目列表】。
|
|
18
|
+
|
|
19
|
+
**输入参数(--data)**
|
|
20
|
+
|
|
21
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
22
|
+
| --- | --- | --- | --- | --- |
|
|
23
|
+
| `pageNum` | integer | body | 是 | 页码,从 1 开始 |
|
|
24
|
+
| `pageSize` | integer | body | 是 | 每页条数 |
|
|
25
|
+
| `sortType` | string | body | 否 | 排序字段(继承 PageRequest.sortType)。SPEND=按上期周消耗;WEEK_OVER_WEEK=按上期周消耗环比;PERIOD=按本期策略周期;TRAFFIC_LIGHT=按上期红绿灯。不传时默认按业务线 id 倒序 |
|
|
26
|
+
| `sortDirection` | string | body | 否 | 排序方向:ASC 升序,DESC 降序;默认 DESC |
|
|
27
|
+
| `name` | string | body | 否 | 业务线名称,模糊搜索 |
|
|
28
|
+
| `status` | integer | body | 否 | 状态:1=进行中 2=已完成 3=已暂停 |
|
|
29
|
+
| `ssoTeamCode` | string | body | 否 | 组别 code,精确筛选(多选请用 ssoTeamCodeList) |
|
|
30
|
+
| `ssoTeamCodeList` | array | body | 否 | 组别 code 列表,多选 |
|
|
31
|
+
| `trafficLightList` | array | body | 否 | 红绿灯筛选(策略表现):1=绿灯KPI达标,2=黄灯距KPIGAP20%内,3=红灯距KPIGAP20%以上,4=红灯已暂停,5=黄灯存在风险,6=绿灯KPI达标且项目顺利。 |
|
|
32
|
+
| `adCategoryProjectId` | integer | body | 否 | 投放品类:取接口biz-line-open-dict-items |
|
|
33
|
+
| `idList` | array | body | 否 | 业务线 ID 列表 |
|
|
34
|
+
| `pmUserIds` | array | body | 否 | PM 用户 ID 多选(OR 语义:命中任一 PM) |
|
|
35
|
+
| `projectRatingList` | array | body | 否 | 项目评级多选:S、A、B、C |
|
|
36
|
+
| `businessRegionList` | array | body | 否 | 商务地区:EAST_CHINA=华东 SOUTH_CHINA=华南 NORTH_CHINA=华北 |
|
|
37
|
+
| `newCustomerTag` | string | body | 否 | 新客标签单选,NEW_TAG = 新客 NONE_NEW_TAG = 非新客
|
|
38
|
+
|
|
|
39
|
+
| `weekOverWeekFilter` | string | body | 否 | 周消耗环比筛选,DOWN_20 = 周消耗下降20%及以上 |
|
|
40
|
+
|
|
41
|
+
## 2. 业务线详情
|
|
42
|
+
|
|
43
|
+
`POST /sino-opti-hive/biz-line/detail`
|
|
44
|
+
|
|
45
|
+
主体上下文:`tenant=false`。
|
|
46
|
+
|
|
47
|
+
角色范围:`sso/system`。
|
|
48
|
+
|
|
49
|
+
风险:`read`。
|
|
50
|
+
|
|
51
|
+
业务线详情
|
|
52
|
+
|
|
53
|
+
**输入参数(--data)**
|
|
54
|
+
|
|
55
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
56
|
+
| --- | --- | --- | --- | --- |
|
|
57
|
+
| `id` | integer | body | 是 | |
|
|
58
|
+
|
|
59
|
+
## 3. 新建业务线
|
|
60
|
+
|
|
61
|
+
`POST /sino-opti-hive/biz-line/save`
|
|
62
|
+
|
|
63
|
+
主体上下文:`tenant=false`。
|
|
64
|
+
|
|
65
|
+
角色范围:`sso/system`。
|
|
66
|
+
|
|
67
|
+
风险:`write`。
|
|
68
|
+
|
|
69
|
+
⚠️ 写操作。成功时 result 为新建业务线详情 BizLineDetailVO。
|
|
70
|
+
|
|
71
|
+
**输入参数(--data)**
|
|
72
|
+
|
|
73
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
74
|
+
| --- | --- | --- | --- | --- |
|
|
75
|
+
| `name` | string | body | 是 | 业务线名称,业务/产品线名称不可重复 |
|
|
76
|
+
| `mediaChannels` | array | body | 否 | 投放渠道 code。通过 GET /bc-business-pu/media/queryChannelInfo 取 channelId;名称见同接口 channelName |
|
|
77
|
+
| `strategyControlDegree` | integer | body | 否 | 策略掌控程度:1弱(以客户策略为主) 2强(以我方提供策略) 3中(与客户共创) |
|
|
78
|
+
| `adCategoryIndustryIds` | array | body | 否 | 投放行业 ID。通过 GET /sino-opti-hive/dict/items(sceneCode=PLACEMENT_CATEGORY) 取一级节点 id |
|
|
79
|
+
| `adCategoryProjectIds` | array | body | 否 | 投放品类 ID。通过 GET /sino-opti-hive/dict/items(sceneCode=PLACEMENT_CATEGORY) 取二级 children.id;选其他时可为空,改填 adCategoryOther |
|
|
80
|
+
| `adCategoryOther` | string | body | 否 | 投放品类-其他说明 |
|
|
81
|
+
| `customerTypeIds` | array | body | 否 | 客户类型 ID。通过 GET /sino-opti-hive/dict/items?sceneCode=CUSTOMER_TYPE 取 id |
|
|
82
|
+
| `customerTypeOther` | string | body | 否 | 客户类型-其他说明 |
|
|
83
|
+
| `amUserIds` | array | body | 否 | AM 用户 ID。通过 POST /sino-opti-hive/sso-team/getMemberList 取 userId;也可 POST /sino-opti-hive/user/getSsoUserList 按姓名搜 |
|
|
84
|
+
| `pmUserIds` | array | body | 否 | PM 用户 ID。通过 POST /sino-opti-hive/sso-team/getMemberList 取 userId;也可 POST /sino-opti-hive/user/getSsoUserList 按姓名搜 |
|
|
85
|
+
| `customerInfrastructure` | array | body | 否 | 1=数据追踪方式:AdJust,2=数据追踪方式:AF,3=数据追踪方式:其他MMP,4=数据追踪方式:客户BI,5=数据追踪方式:媒体后台,6=素材产出方式:CB,7=素材产出方式:客户提供,8=素材产出方式:内部设计师制作,9=素材产出方式:无需素材(ASA、推流等),10=基建情况:基建完善,11=基建情况:三方回传数据异常,12=基建情况:APP埋点异常 |
|
|
86
|
+
| `coreIndex` | string | body | 否 | 核心指标 |
|
|
87
|
+
| `monthlyMaterialCount` | string | body | 否 | 月度上新素材量 |
|
|
88
|
+
| `projectInitStatus` | string | body | 否 | 项目初始化状态 |
|
|
89
|
+
| `projectBrief` | string | body | 否 | 项目 Brief |
|
|
90
|
+
| `corporationIds` | array | body | 否 | 关联签约主体 ID(字符串)。通过 POST /sino-opti-hive/corporation/page 获取签约主体 ID |
|
|
91
|
+
| `projectIds` | array | body | 否 | 关联项目 ID |
|
|
92
|
+
| `ssoTeamCode` | string | body | 是 | 组别 code,单选,必填。通过 GET /sino-opti-hive/sso-team/group-list 取 code |
|
|
93
|
+
| `businessRegion` | string | body | 是 | EAST_CHINA=华东,SOUTH_CHINA=华南,NORTH_CHINA=华北。必填 |
|
|
94
|
+
| `projectRating` | string | body | 否 | S、A、B、C。非新客必填 |
|
|
95
|
+
| `newCustomerTag` | string | body | 否 | NEW_TAG=是(新客),NONE_NEW_TAG=否(非新客) |
|
|
96
|
+
|
|
97
|
+
## 4. 更新业务线
|
|
98
|
+
|
|
99
|
+
`POST /sino-opti-hive/biz-line/update`
|
|
100
|
+
|
|
101
|
+
主体上下文:`tenant=false`。
|
|
102
|
+
|
|
103
|
+
角色范围:`sso/system`。
|
|
104
|
+
|
|
105
|
+
风险:`write`。
|
|
106
|
+
|
|
107
|
+
更新业务线信息
|
|
108
|
+
|
|
109
|
+
**输入参数(--data)**
|
|
110
|
+
|
|
111
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
112
|
+
| --- | --- | --- | --- | --- |
|
|
113
|
+
| `id` | integer | body | 是 | 通过 POST /sino-opti-hive/biz-line/list 取 id |
|
|
114
|
+
| `status` | integer | body | 是 | 状态:1进行中 2已完成 3已暂停 |
|
|
115
|
+
| `name` | string | body | 是 | 业务线名称,业务/产品线名称不可重复 |
|
|
116
|
+
| `mediaChannels` | array | body | 否 | 投放渠道 code。通过 GET /bc-business-pu/media/queryChannelInfo 取 channelId;名称见同接口 channelName |
|
|
117
|
+
| `strategyControlDegree` | integer | body | 否 | 策略掌控程度:1弱(以客户策略为主) 2强(以我方提供策略) 3中(与客户共创) |
|
|
118
|
+
| `adCategoryIndustryIds` | array | body | 否 | 投放行业 ID。通过 GET /sino-opti-hive/dict/items(sceneCode=PLACEMENT_CATEGORY) 取一级节点 id |
|
|
119
|
+
| `adCategoryProjectIds` | array | body | 否 | 投放品类 ID。通过 GET /sino-opti-hive/dict/items(sceneCode=PLACEMENT_CATEGORY) 取二级 children.id;选其他时可为空,改填 adCategoryOther |
|
|
120
|
+
| `adCategoryOther` | string | body | 否 | 投放品类-其他说明 |
|
|
121
|
+
| `customerTypeIds` | array | body | 否 | 客户类型 ID。通过 GET /sino-opti-hive/dict/items?sceneCode=CUSTOMER_TYPE 取 id |
|
|
122
|
+
| `customerTypeOther` | string | body | 否 | 客户类型-其他说明 |
|
|
123
|
+
| `amUserIds` | array | body | 否 | AM 用户 ID。通过 POST /sino-opti-hive/sso-team/getMemberList 取 userId;也可 POST /sino-opti-hive/user/getSsoUserList 按姓名搜 |
|
|
124
|
+
| `pmUserIds` | array | body | 否 | PM 用户 ID。通过 POST /sino-opti-hive/sso-team/getMemberList 取 userId;也可 POST /sino-opti-hive/user/getSsoUserList 按姓名搜 |
|
|
125
|
+
| `customerInfrastructure` | array | body | 否 | 1=数据追踪方式:AdJust,2=数据追踪方式:AF,3=数据追踪方式:其他MMP,4=数据追踪方式:客户BI,5=数据追踪方式:媒体后台,6=素材产出方式:CB,7=素材产出方式:客户提供,8=素材产出方式:内部设计师制作,9=素材产出方式:无需素材(ASA、推流等),10=基建情况:基建完善,11=基建情况:三方回传数据异常,12=基建情况:APP埋点异常 |
|
|
126
|
+
| `coreIndex` | string | body | 否 | 核心指标 |
|
|
127
|
+
| `monthlyMaterialCount` | string | body | 否 | 月度上新素材量 |
|
|
128
|
+
| `projectInitStatus` | string | body | 否 | 项目初始化状态 |
|
|
129
|
+
| `projectBrief` | string | body | 否 | 项目 Brief |
|
|
130
|
+
| `corporationIds` | array | body | 否 | 关联签约主体 ID(字符串)。通过 POST /sino-opti-hive/corporation/page 获取签约主体 ID |
|
|
131
|
+
| `projectIds` | array | body | 否 | 关联项目 ID。通过 POST /sino-opti-hive/optimize/project/queryByPage 获取;按 ID 反查名称用 POST /sino-opti-hive/optimize/project/listByIds |
|
|
132
|
+
| `ssoTeamCode` | string | body | 是 | 组别 code,单选,必填。通过 GET /sino-opti-hive/sso-team/group-list 取 code |
|
|
133
|
+
| `businessRegion` | string | body | 是 | EAST_CHINA=华东,SOUTH_CHINA=华南,NORTH_CHINA=华北。必填 |
|
|
134
|
+
| `projectRating` | string | body | 否 | S、A、B、C。非新客必填 |
|
|
135
|
+
| `newCustomerTag` | string | body | 否 | NEW_TAG=是(新客),NONE_NEW_TAG=否(非新客) |
|
|
136
|
+
|
|
137
|
+
## 5. 更新业务线状态
|
|
138
|
+
|
|
139
|
+
`POST /sino-opti-hive/biz-line/status/update`
|
|
140
|
+
|
|
141
|
+
主体上下文:`tenant=false`。
|
|
142
|
+
|
|
143
|
+
角色范围:`sso/system`。
|
|
144
|
+
|
|
145
|
+
风险:`write`。
|
|
146
|
+
|
|
147
|
+
⚠️ 写操作。仅更新状态与操作人;成功时 result 为 Boolean。status:1进行中 2已完成 3已暂停。
|
|
148
|
+
|
|
149
|
+
**输入参数(--data)**
|
|
150
|
+
|
|
151
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
152
|
+
| --- | --- | --- | --- | --- |
|
|
153
|
+
| `id` | integer | body | 是 | |
|
|
154
|
+
| `status` | integer | body | 是 | 状态:1进行中 2已完成 3已暂停;对应 BizLineStatusEnum |
|
|
155
|
+
|
|
156
|
+
## 6. 查询投放策略分页列表
|
|
157
|
+
|
|
158
|
+
`POST /sino-opti-hive/biz-line/strategy/list`
|
|
159
|
+
|
|
160
|
+
主体上下文:`tenant=false`。
|
|
161
|
+
|
|
162
|
+
角色范围:`sso/system`。
|
|
163
|
+
|
|
164
|
+
风险:`read`。
|
|
165
|
+
|
|
166
|
+
查询投放策略分页列表
|
|
167
|
+
|
|
168
|
+
**输入参数(--data)**
|
|
169
|
+
|
|
170
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
171
|
+
| --- | --- | --- | --- | --- |
|
|
172
|
+
| `pageNum` | integer | body | 是 | 页码,从 1 开始 |
|
|
173
|
+
| `pageSize` | integer | body | 是 | 每页条数 |
|
|
174
|
+
| `sortDirection` | string | body | 否 | 创建日期排序 DESC 或 ASC,默认 DESC |
|
|
175
|
+
| `bizLineId` | integer | body | 否 | 可选,不传则按权限查全部可见业务线。 |
|
|
176
|
+
| `trafficLight` | integer | body | 否 | 红绿灯筛选(策略表现):1=绿灯KPI达标,2=黄灯距KPIGAP20%内,3=红灯距KPIGAP20%以上,4=红灯已暂停,5=黄灯存在风险,6=绿灯KPI达标且项目顺利。 |
|
|
177
|
+
|
|
178
|
+
## 7. 查询投放策略消耗信息
|
|
179
|
+
|
|
180
|
+
`POST /sino-opti-hive/biz-line/strategy/spend`
|
|
181
|
+
|
|
182
|
+
主体上下文:`tenant=false`。
|
|
183
|
+
|
|
184
|
+
角色范围:`sso/system`。
|
|
185
|
+
|
|
186
|
+
风险:`read`。
|
|
187
|
+
|
|
188
|
+
查询投放策略消耗信息
|
|
189
|
+
|
|
190
|
+
**输入参数(--data)**
|
|
191
|
+
|
|
192
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
193
|
+
| --- | --- | --- | --- | --- |
|
|
194
|
+
| `strategyId` | integer | body | 是 | 通过 POST /sino-opti-hive/biz-line/strategy/list 取 id,或 POST /sino-opti-hive/biz-line/strategy/period-list 取 items.id |
|
|
195
|
+
|
|
196
|
+
## 8. 新建投放策略
|
|
197
|
+
|
|
198
|
+
`POST /sino-opti-hive/biz-line/strategy/save`
|
|
199
|
+
|
|
200
|
+
主体上下文:`tenant=false`。
|
|
201
|
+
|
|
202
|
+
角色范围:`sso/system`。
|
|
203
|
+
|
|
204
|
+
风险:`write`。
|
|
205
|
+
|
|
206
|
+
新建投放策略,投放策略按周填写
|
|
207
|
+
|
|
208
|
+
**输入参数(--data)**
|
|
209
|
+
|
|
210
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
211
|
+
| --- | --- | --- | --- | --- |
|
|
212
|
+
| `bizLineId` | integer | body | 是 | 通过 POST /sino-opti-hive/biz-line/list 取 id |
|
|
213
|
+
| `periodStart` | string | body | 是 | 策略周期起(日期) |
|
|
214
|
+
| `periodEnd` | string | body | 是 | 策略周期止(日期) |
|
|
215
|
+
| `budgetStrategyTags` | array | body | 是 | 预算策略标签 ID。通过 GET /sino-opti-hive/dict/items?sceneCode=BUDGET_STRATEGY 取 id |
|
|
216
|
+
| `budgetStrategySupplement` | string | body | 是 | 预算策略补充说明 |
|
|
217
|
+
| `mediaStrategyTags` | array | body | 是 | 媒介策略标签 ID。通过 GET /sino-opti-hive/dict/items?sceneCode=MEDIA_STRATEGY 取 id |
|
|
218
|
+
| `mediaStrategySupplement` | string | body | 是 | 媒介策略补充说明 |
|
|
219
|
+
| `audienceStrategyTags` | array | body | 是 | 受众策略标签 ID。通过 GET /sino-opti-hive/dict/items?sceneCode=AUDIENCE_STRATEGY 取 id |
|
|
220
|
+
| `audienceStrategySupplement` | string | body | 是 | 受众策略补充说明 |
|
|
221
|
+
| `creativeStrategy` | string | body | 是 | 素材创意策略说明,最大 5000 字 |
|
|
222
|
+
| `previewPeriodStart` | string | body | 否 | 上期(preview)策略周期起;缺省为本期 periodStart 的上一自然周周一 |
|
|
223
|
+
| `previewPeriodEnd` | string | body | 否 | 上期(preview)策略周期止;缺省为 previewPeriodStart+6(周日) |
|
|
224
|
+
| `previewBudgetStrategyTags` | array | body | 否 | 上期预算策略标签 ID。通过 GET /sino-opti-hive/dict/items?sceneCode=BUDGET_STRATEGY 取 id |
|
|
225
|
+
| `previewBudgetStrategySupplement` | string | body | 否 | 上期预算策略补充说明 |
|
|
226
|
+
| `previewMediaStrategyTags` | array | body | 否 | 上期媒介策略标签 ID。通过 GET /sino-opti-hive/dict/items?sceneCode=MEDIA_STRATEGY 取 id |
|
|
227
|
+
| `previewMediaStrategySupplement` | string | body | 否 | 上期媒介策略补充说明 |
|
|
228
|
+
| `previewAudienceStrategyTags` | array | body | 否 | 上期受众策略标签 ID。通过 GET /sino-opti-hive/dict/items?sceneCode=AUDIENCE_STRATEGY 取 id |
|
|
229
|
+
| `previewAudienceStrategySupplement` | string | body | 否 | 上期受众策略补充说明 |
|
|
230
|
+
| `previewCreativeStrategy` | string | body | 否 | 上期素材创意策略说明,最大 5000 字 |
|
|
231
|
+
| `trafficLight` | integer | body | 否 | 红绿灯:1 KPI达标、2 距GAP 20%内、3 距GAP 20%以上、4 已暂停、5 存在风险、6 KPI达标且项目顺利 |
|
|
232
|
+
| `coreIssueCategories` | array | body | 否 | 1=受众策略问题,2=跨媒介策略问题,3=媒介广告产品使用策略问题,4=出价策略问题,5=素材策略问题,6=素材执行问题,7=素材管理问题,8=投放规划问题,9=媒体素材政策/尺度/风控问题,10=媒体适配/潜力问题,11=市场选择/竞争问题,12=客户对接不顺畅,13=客户侧:数据对接问题,14=客户侧:产品问题/投放生命周期问题,15=客户侧:运营/基建问题,16=客户侧:存在投放限制,17=客户侧:转自投,18=客户侧:需求临时无规划,19=客户侧:KPI不合理,20=投放生命周期问题/素材疲劳问题,21=内部团队人员调配问题,22=其他 |
|
|
233
|
+
| `issuesAndOpportunities` | string | body | 否 | 项目问题&机会,最大 5000 字 |
|
|
234
|
+
| `spend` | string | body | 否 | 周期投放消耗(回顾,展示用字符串),最大 50 字 |
|
|
235
|
+
| `customerSatisfaction` | integer | body | 否 | 客户满意度:1满意 2不满意 |
|
|
236
|
+
| `satisfactionReason` | string | body | 否 | 满意度原因说明,最大 5000 字 |
|
|
237
|
+
| `coreEffectIndex` | string | body | 否 | 核心效果指标,最大 5000 字 |
|
|
238
|
+
| `budgetStrategyEffect` | integer | body | 否 | 预算策略效果:1有效 2无效 3待观察 |
|
|
239
|
+
| `budgetStrategyLearning` | string | body | 否 | 预算策略 learning |
|
|
240
|
+
| `mediaStrategyEffect` | integer | body | 否 | 媒介策略效果:1有效 2无效 3待观察 |
|
|
241
|
+
| `mediaStrategyLearning` | string | body | 否 | 媒介策略 learning |
|
|
242
|
+
| `audienceStrategyEffect` | integer | body | 否 | 受众策略效果:1有效 2无效 3待观察 |
|
|
243
|
+
| `audienceStrategyLearning` | string | body | 否 | 受众策略 learning |
|
|
244
|
+
| `creativeStrategyEffect` | integer | body | 否 | 素材策略效果:1有效 2无效 3待观察 |
|
|
245
|
+
| `creativeStrategyLearning` | string | body | 否 | 素材策略 learning |
|
|
246
|
+
|
|
247
|
+
## 9. 更新投放策略
|
|
248
|
+
|
|
249
|
+
`POST /sino-opti-hive/biz-line/strategy/update`
|
|
250
|
+
|
|
251
|
+
主体上下文:`tenant=false`。
|
|
252
|
+
|
|
253
|
+
角色范围:`sso/system`。
|
|
254
|
+
|
|
255
|
+
风险:`write`。
|
|
256
|
+
|
|
257
|
+
更新投放策略
|
|
258
|
+
|
|
259
|
+
**输入参数(--data)**
|
|
260
|
+
|
|
261
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
262
|
+
| --- | --- | --- | --- | --- |
|
|
263
|
+
| `id` | integer | body | 是 | 通过 POST /sino-opti-hive/biz-line/strategy/list 取 id,或 POST /sino-opti-hive/biz-line/strategy/period-list 取 items.id |
|
|
264
|
+
| `version` | integer | body | 是 | 乐观锁版本号 |
|
|
265
|
+
| `overwrite` | boolean | body | 否 | 默认 false:版本冲突则报错;true 强制覆盖 |
|
|
266
|
+
| `bizLineId` | integer | body | 是 | 通过 POST /sino-opti-hive/biz-line/list 取 id |
|
|
267
|
+
| `periodStart` | string | body | 是 | 策略周期起(日期) |
|
|
268
|
+
| `periodEnd` | string | body | 是 | 策略周期止(日期) |
|
|
269
|
+
| `budgetStrategyTags` | array | body | 是 | 预算策略标签 ID。通过 GET /sino-opti-hive/dict/items?sceneCode=BUDGET_STRATEGY 取 id |
|
|
270
|
+
| `budgetStrategySupplement` | string | body | 是 | 预算策略补充说明 |
|
|
271
|
+
| `mediaStrategyTags` | array | body | 是 | 媒介策略标签 ID。通过 GET /sino-opti-hive/dict/items?sceneCode=MEDIA_STRATEGY 取 id |
|
|
272
|
+
| `mediaStrategySupplement` | string | body | 是 | 媒介策略补充说明 |
|
|
273
|
+
| `audienceStrategyTags` | array | body | 是 | 受众策略标签 ID。通过 GET /sino-opti-hive/dict/items?sceneCode=AUDIENCE_STRATEGY 取 id |
|
|
274
|
+
| `audienceStrategySupplement` | string | body | 是 | 受众策略补充说明 |
|
|
275
|
+
| `creativeStrategy` | string | body | 是 | 素材创意策略说明,最大 5000 字 |
|
|
276
|
+
| `previewPeriodStart` | string | body | 否 | 上期(preview)策略周期起;缺省为本期 periodStart 的上一自然周周一 |
|
|
277
|
+
| `previewPeriodEnd` | string | body | 否 | 上期(preview)策略周期止;缺省为 previewPeriodStart+6(周日) |
|
|
278
|
+
| `previewBudgetStrategyTags` | array | body | 否 | 上期预算策略标签 ID。通过 GET /sino-opti-hive/dict/items?sceneCode=BUDGET_STRATEGY 取 id |
|
|
279
|
+
| `previewBudgetStrategySupplement` | string | body | 否 | 上期预算策略补充说明 |
|
|
280
|
+
| `previewMediaStrategyTags` | array | body | 否 | 上期媒介策略标签 ID。通过 GET /sino-opti-hive/dict/items?sceneCode=MEDIA_STRATEGY 取 id |
|
|
281
|
+
| `previewMediaStrategySupplement` | string | body | 否 | 上期媒介策略补充说明 |
|
|
282
|
+
| `previewAudienceStrategyTags` | array | body | 否 | 上期受众策略标签 ID。通过 GET /sino-opti-hive/dict/items?sceneCode=AUDIENCE_STRATEGY 取 id |
|
|
283
|
+
| `previewAudienceStrategySupplement` | string | body | 否 | 上期受众策略补充说明 |
|
|
284
|
+
| `previewCreativeStrategy` | string | body | 否 | 上期素材创意策略说明,最大 5000 字 |
|
|
285
|
+
| `trafficLight` | integer | body | 否 | 红绿灯:1 KPI达标、2 距GAP 20%内、3 距GAP 20%以上、4 已暂停、5 存在风险、6 KPI达标且项目顺利 |
|
|
286
|
+
| `coreIssueCategories` | array | body | 否 | 1=受众策略问题,2=跨媒介策略问题,3=媒介广告产品使用策略问题,4=出价策略问题,5=素材策略问题,6=素材执行问题,7=素材管理问题,8=投放规划问题,9=媒体素材政策/尺度/风控问题,10=媒体适配/潜力问题,11=市场选择/竞争问题,12=客户对接不顺畅,13=客户侧:数据对接问题,14=客户侧:产品问题/投放生命周期问题,15=客户侧:运营/基建问题,16=客户侧:存在投放限制,17=客户侧:转自投,18=客户侧:需求临时无规划,19=客户侧:KPI不合理,20=投放生命周期问题/素材疲劳问题,21=内部团队人员调配问题,22=其他 |
|
|
287
|
+
| `issuesAndOpportunities` | string | body | 否 | 项目问题&机会,最大 5000 字 |
|
|
288
|
+
| `spend` | string | body | 否 | 周期消耗(回顾,展示用字符串),最大 50 字 |
|
|
289
|
+
| `customerSatisfaction` | integer | body | 否 | 客户满意度:1满意 2不满意 |
|
|
290
|
+
| `satisfactionReason` | string | body | 否 | 满意度原因说明,最大 5000 字 |
|
|
291
|
+
| `coreEffectIndex` | string | body | 否 | 核心效果指标,最大 5000 字 |
|
|
292
|
+
| `budgetStrategyEffect` | integer | body | 否 | 预算策略效果:1有效 2无效 3待观察 |
|
|
293
|
+
| `budgetStrategyLearning` | string | body | 否 | 预算策略 learning |
|
|
294
|
+
| `mediaStrategyEffect` | integer | body | 否 | 媒介策略效果:1有效 2无效 3待观察 |
|
|
295
|
+
| `mediaStrategyLearning` | string | body | 否 | 媒介策略 learning |
|
|
296
|
+
| `audienceStrategyEffect` | integer | body | 否 | 受众策略效果:1有效 2无效 3待观察 |
|
|
297
|
+
| `audienceStrategyLearning` | string | body | 否 | 受众策略 learning |
|
|
298
|
+
| `creativeStrategyEffect` | integer | body | 否 | 素材策略效果:1有效 2无效 3待观察 |
|
|
299
|
+
| `creativeStrategyLearning` | string | body | 否 | 素材策略 learning |
|
|
300
|
+
|
|
301
|
+
## 10. 查询业务线字典和策略标签
|
|
302
|
+
|
|
303
|
+
`GET /sino-opti-hive/dict/items`
|
|
304
|
+
|
|
305
|
+
主体上下文:`tenant=false`。
|
|
306
|
+
|
|
307
|
+
角色范围:`sso/system`。
|
|
308
|
+
|
|
309
|
+
风险:`read`。
|
|
310
|
+
|
|
311
|
+
按sceneCode查询业务字典,使用GET Query参数,不传JSON请求体。sceneCode必填,不存在的场景返回空数组。
|
|
312
|
+
|
|
313
|
+
AI策略生成前分别调用三次:BUDGET_STRATEGY(预算)、MEDIA_STRATEGY(媒介产品)、AUDIENCE_STRATEGY(受众定位)。三次都需传非空filterCondition,使用当前业务实际字典配置值;缺少该参数不会报错,而是直接返回[]。匹配规则为filter_condition等于传入值或为NULL(通用项)。不要据空数组自动推断该场景没有标签。
|
|
314
|
+
|
|
315
|
+
将返回id分别填入保存接口budgetStrategyTags、mediaStrategyTags、audienceStrategyTags;不要传name或itemCode。此接口也保留PLACEMENT_CATEGORY(投放品类)和CUSTOMER_TYPE(客户类型)用途,二者过滤“其他”项;策略场景不做该过滤。两级场景返回树,叶子children可为null。
|
|
316
|
+
|
|
317
|
+
策略调用示例:/sino-opti-hive/dict/items?sceneCode=BUDGET_STRATEGY&filterCondition={{strategyFilterCondition}}。变量必须替换为实际配置值;另外两类策略仅替换sceneCode。投放品类调用示例:/sino-opti-hive/dict/items?sceneCode=PLACEMENT_CATEGORY。
|
|
318
|
+
|
|
319
|
+
**输入参数(--data)**
|
|
320
|
+
|
|
321
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
322
|
+
| --- | --- | --- | --- | --- |
|
|
323
|
+
| `sceneCode` | string | query | 是 | 必填。BUDGET_STRATEGY预算策略、MEDIA_STRATEGY媒介产品策略、AUDIENCE_STRATEGY受众定位策略;同时支持PLACEMENT_CATEGORY投放品类、CUSTOMER_TYPE客户类型。 |
|
|
324
|
+
| `filterCondition` | string | query | 否 | 三类策略场景必须传非空值,否则返回[];按实际字典配置的filter_condition精确匹配,同时包含filter_condition为NULL的通用项。此值没有固定枚举,不要用场景名或业务线ID臆造;其他场景可不传。 |
|
|
325
|
+
|
|
326
|
+
## 11. 查询业务线关联项目和广告账号
|
|
327
|
+
|
|
328
|
+
`POST /sino-opti-hive/biz-line/project-list`
|
|
329
|
+
|
|
330
|
+
主体上下文:`tenant=false`。
|
|
331
|
+
|
|
332
|
+
角色范围:`sso/system`。
|
|
333
|
+
|
|
334
|
+
风险:`read`。
|
|
335
|
+
|
|
336
|
+
根据业务线 ID 查询业务线关联项目和广告账号
|
|
337
|
+
|
|
338
|
+
|
|
339
|
+
**输入参数(--data)**
|
|
340
|
+
|
|
341
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
342
|
+
| --- | --- | --- | --- | --- |
|
|
343
|
+
| `bizLineId` | integer | body | 是 | 业务线 ID,必填 |
|
|
344
|
+
|
|
345
|
+
## 12. 查询项目分页列表
|
|
346
|
+
|
|
347
|
+
`POST /sino-opti-hive/optimize/project/queryByPage`
|
|
348
|
+
|
|
349
|
+
主体上下文:`tenant=false`。
|
|
350
|
+
|
|
351
|
+
角色范围:`sso/system`。
|
|
352
|
+
|
|
353
|
+
风险:`read`。
|
|
354
|
+
|
|
355
|
+
查询项目分页列表
|
|
356
|
+
|
|
357
|
+
**输入参数(--data)**
|
|
358
|
+
|
|
359
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
360
|
+
| --- | --- | --- | --- | --- |
|
|
361
|
+
| `pageNum` | integer | body | 否 | 页码,从 1 开始 |
|
|
362
|
+
| `pageSize` | integer | body | 否 | 每页条数 |
|
|
363
|
+
| `sortType` | string | body | 否 | lastWeekSpend=上周消耗;lastWeekSpendQoq=上周消耗环比;createTime=创建时间。不传默认 createTime |
|
|
364
|
+
| `sortDirection` | string | body | 否 | ASC 升序,DESC 降序;默认 DESC |
|
|
365
|
+
| `corporationId` | integer | body | 否 | 签约主体 ID |
|
|
366
|
+
| `corporationIdList` | array | body | 否 | 签约主体 ID 多选 |
|
|
367
|
+
| `projectId` | integer | body | 否 | 项目 ID,精确匹配 |
|
|
368
|
+
| `projectIdList` | array | body | 否 | 项目 ID 多选。已知 ID 时直接传入;本接口出参 projectId 也可回填 |
|
|
369
|
+
| `projectName` | string | body | 否 | 项目名称,模糊查询 |
|
|
370
|
+
| `projectKeyword` | string | body | 否 | 项目 ID 精确,或项目名称分词模糊(空格分词,词之间 AND) |
|
|
371
|
+
| `startDate` | string | body | 否 | 项目周期开始日期 yyyy-MM-dd |
|
|
372
|
+
| `endDate` | string | body | 否 | 项目周期结束日期 yyyy-MM-dd |
|
|
373
|
+
| `projectUserIdList` | array | body | 否 | 项目成员用户 ID 多选。通过 POST /sino-opti-hive/sso-team/getMemberList 取 userId,也可 POST /sino-opti-hive/user/getSsoUserList 按姓名搜 |
|
|
374
|
+
| `ssoTeamCodeList` | array | body | 否 | 组别 code 多选,按该组别下 PM 成员筛项目。通过 GET /sino-opti-hive/sso-team/group-list 取 code |
|
|
375
|
+
| `adAccountId` | string | body | 否 | 广告账号 ID 模糊查询,至少 2 个字符 |
|
|
376
|
+
| `demandOrderKeyword` | string | body | 否 | 需求单编号精确,或需求单名称分词模糊(空格分词) |
|
|
377
|
+
| `signalLightList` | array | body | 否 | 项目红绿灯多选,与出参 signalLight 同值(字符串,不是业务线策略 trafficLight 的整数枚举) |
|
|
378
|
+
| `projectStatusList` | array | body | 否 | 项目执行状态多选。本接口查的是项目(非需求):4=待分配,5=执行中,6=已暂停,7=已完成,8=终止。出参 projectStatusName 为对应中文名 |
|
|
379
|
+
| `isLast7DSpend` | array | body | 否 | 0=否,1=是。仅传一个值时生效;同时传 0 和 1 等于不筛 |
|
|
380
|
+
| `uploadInfoTypeList` | array | body | 否 | 0=无上传,1=仅上传brief,2=仅上传mediaPlan,3=上传brief和mediaPlan。多选 |
|
|
381
|
+
| `serviceCodeList` | array | body | 否 | 服务/产品 code 多选。不传时服务端默认 1、85(代投类项目) |
|
|
382
|
+
| `bizLineIdList` | array | body | 否 | 按已关联业务线过滤项目。通过 POST /sino-opti-hive/biz-line/list 取 id |
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# 文件管理
|
|
2
|
+
|
|
3
|
+
对应命令:`common-file +<shortcut>` 与 `common-file api <name>`。
|
|
4
|
+
|
|
5
|
+
执行前 MUST 读取 [sino-bc-shared](../../skills/sino-bc-shared/SKILL.md) 轻量入口,再按命中条件读取其 references;当前上下文已读且仍适用时可复用。可用 `sino-bc-cli /skill` 查询真实路径。
|
|
6
|
+
|
|
7
|
+
## 1. 上传文件
|
|
8
|
+
|
|
9
|
+
`POST /bc-business-pu/file/fileUpload`
|
|
10
|
+
|
|
11
|
+
主体上下文:`tenant=false`。
|
|
12
|
+
|
|
13
|
+
角色范围:`sso/system`。
|
|
14
|
+
|
|
15
|
+
风险:`write`。
|
|
16
|
+
|
|
17
|
+
上传单个私有文件,使用multipart/form-data,file为必填文件part。serviceName可选,未传或为空字符串时默认bc-business-pu,支持的服务名见参数枚举。
|
|
18
|
+
|
|
19
|
+
上传文件不能为空,默认最大50MB(52428800字节,含边界),由Apollo配置file.upload.max-size控制。存储目录为服务名/yyyy-MM,文件名使用UUID并保留扩展名。上传返回的私有链接有效期默认3600秒,由file.download.url-expire-seconds控制。
|
|
20
|
+
|
|
21
|
+
成功返回UploadFileResult,请保存result.storageKey供后续获取下载链接或关联业务记录使用。重复上传会生成新的存储文件。服务名非法、文件为空、文件超限、文件名为空或配置非正数时返回业务错误。本接口不要求业务签约主体参数。
|
|
22
|
+
|
|
23
|
+
编码:`multipart/form-data`;文件字段填写本地路径,`--dry-run` 只预览、不上传。
|
|
24
|
+
|
|
25
|
+
**输入参数(--data)**
|
|
26
|
+
|
|
27
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
28
|
+
| --- | --- | --- | --- | --- |
|
|
29
|
+
| `file` | string | form | 是 | 本地文件路径;发送时读取为文件。待上传文件,非空,默认最大50MB,以Apollo配置为准。 |
|
|
30
|
+
| `serviceName` | string | form | 否 | 来源服务;未传或为空字符串时默认bc-business-pu,用于存储目录隔离。 |
|
|
31
|
+
|
|
32
|
+
## 2. 获取文件下载链接
|
|
33
|
+
|
|
34
|
+
`GET /bc-business-pu/file/getUrlByKey`
|
|
35
|
+
|
|
36
|
+
主体上下文:`tenant=false`。
|
|
37
|
+
|
|
38
|
+
角色范围:`sso/system`。
|
|
39
|
+
|
|
40
|
+
风险:`read`。
|
|
41
|
+
|
|
42
|
+
使用文件上传成功后返回的storageKey获取私有文件下载链接。storageKey必填且不能是空白字符串,请原样传入,不要传已有下载URL。
|
|
43
|
+
|
|
44
|
+
成功时result直接返回URL字符串,不执行302重定向。有效期默认3600秒,由Apollo配置file.download.url-expire-seconds控制,与上传返回链接使用同一配置。链接失效后可重新调用本接口生成。生成失败、返回空链接或有效期配置非正数时返回业务错误。本接口不要求业务签约主体参数。
|
|
45
|
+
|
|
46
|
+
**输入参数(--data)**
|
|
47
|
+
|
|
48
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
49
|
+
| --- | --- | --- | --- | --- |
|
|
50
|
+
| `storageKey` | string | query | 是 | 上传接口result.storageKey返回的文件标识,非空白字符串。 |
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
# 看板
|
|
2
|
+
|
|
3
|
+
对应命令:`dashboard +<shortcut>` 与 `dashboard api <name>`。
|
|
4
|
+
|
|
5
|
+
执行前 MUST 读取 [sino-bc-shared](../../skills/sino-bc-shared/SKILL.md) 轻量入口,再按命中条件读取其 references;当前上下文已读且仍适用时可复用。可用 `sino-bc-cli /skill` 查询真实路径。
|
|
6
|
+
|
|
7
|
+
## 1. 营销目标预算分布
|
|
8
|
+
|
|
9
|
+
`POST /sino-bc-nexus/dashboard/budget-by-marketing-goal`
|
|
10
|
+
|
|
11
|
+
主体上下文:`tenant=true`。
|
|
12
|
+
|
|
13
|
+
角色范围:`sso/passport/system`。
|
|
14
|
+
|
|
15
|
+
风险:`read`。
|
|
16
|
+
|
|
17
|
+
主体必填:每次传入 `--corporation-id` 与 `--auth-context-id`,两者不放进 `--data`;绑定与恢复按 shared 条件索引读取主体参考。
|
|
18
|
+
|
|
19
|
+
调用示例:`sino-bc-cli dashboard api dashboard-budget-by-marketing-goal --data '<json>' --corporation-id <主体ID> --auth-context-id <认证上下文ID>`。
|
|
20
|
+
|
|
21
|
+
营销目标预算分布
|
|
22
|
+
|
|
23
|
+
**输入参数(--data)**
|
|
24
|
+
|
|
25
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
26
|
+
| --- | --- | --- | --- | --- |
|
|
27
|
+
| `startDate` | string | body | 否 | 筛选开始日期(可选,须与结束日期同时传入),格式 yyyy-MM-dd,时间跨度最长一年;JSON 字符串;格式 yyyy-MM-dd;仅日期,不含时分秒及时区;示例:2025-01-01 |
|
|
28
|
+
| `endDate` | string | body | 否 | 筛选结束日期(可选,须与开始日期同时传入),格式 yyyy-MM-dd,时间跨度最长一年;JSON 字符串;格式 yyyy-MM-dd;仅日期,不含时分秒及时区;示例:2025-06-30 |
|
|
29
|
+
|
|
30
|
+
## 2. 媒体预算占比
|
|
31
|
+
|
|
32
|
+
`POST /sino-bc-nexus/dashboard/budget-by-media`
|
|
33
|
+
|
|
34
|
+
主体上下文:`tenant=true`。
|
|
35
|
+
|
|
36
|
+
角色范围:`sso/passport/system`。
|
|
37
|
+
|
|
38
|
+
风险:`read`。
|
|
39
|
+
|
|
40
|
+
主体必填:每次传入 `--corporation-id` 与 `--auth-context-id`,两者不放进 `--data`;绑定与恢复按 shared 条件索引读取主体参考。
|
|
41
|
+
|
|
42
|
+
调用示例:`sino-bc-cli dashboard api dashboard-budget-by-media --data '<json>' --corporation-id <主体ID> --auth-context-id <认证上下文ID>`。
|
|
43
|
+
|
|
44
|
+
媒体预算占比
|
|
45
|
+
|
|
46
|
+
**输入参数(--data)**
|
|
47
|
+
|
|
48
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
49
|
+
| --- | --- | --- | --- | --- |
|
|
50
|
+
| `startDate` | string | body | 否 | 筛选开始日期(可选,须与结束日期同时传入),格式 yyyy-MM-dd,时间跨度最长一年;JSON 字符串;格式 yyyy-MM-dd;仅日期,不含时分秒及时区;示例:2025-01-01 |
|
|
51
|
+
| `endDate` | string | body | 否 | 筛选结束日期(可选,须与开始日期同时传入),格式 yyyy-MM-dd,时间跨度最长一年;JSON 字符串;格式 yyyy-MM-dd;仅日期,不含时分秒及时区;示例:2025-06-30 |
|
|
52
|
+
|
|
53
|
+
## 3. 项目类型预算分布
|
|
54
|
+
|
|
55
|
+
`POST /sino-bc-nexus/dashboard/budget-by-project-type`
|
|
56
|
+
|
|
57
|
+
主体上下文:`tenant=true`。
|
|
58
|
+
|
|
59
|
+
角色范围:`sso/passport/system`。
|
|
60
|
+
|
|
61
|
+
风险:`read`。
|
|
62
|
+
|
|
63
|
+
主体必填:每次传入 `--corporation-id` 与 `--auth-context-id`,两者不放进 `--data`;绑定与恢复按 shared 条件索引读取主体参考。
|
|
64
|
+
|
|
65
|
+
调用示例:`sino-bc-cli dashboard api dashboard-budget-by-project-type --data '<json>' --corporation-id <主体ID> --auth-context-id <认证上下文ID>`。
|
|
66
|
+
|
|
67
|
+
项目类型预算分布
|
|
68
|
+
|
|
69
|
+
**输入参数(--data)**
|
|
70
|
+
|
|
71
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
72
|
+
| --- | --- | --- | --- | --- |
|
|
73
|
+
| `startDate` | string | body | 否 | 筛选开始日期(可选,须与结束日期同时传入),格式 yyyy-MM-dd,时间跨度最长一年;JSON 字符串;格式 yyyy-MM-dd;仅日期,不含时分秒及时区;示例:2025-01-01 |
|
|
74
|
+
| `endDate` | string | body | 否 | 筛选结束日期(可选,须与开始日期同时传入),格式 yyyy-MM-dd,时间跨度最长一年;JSON 字符串;格式 yyyy-MM-dd;仅日期,不含时分秒及时区;示例:2025-06-30 |
|
|
75
|
+
|
|
76
|
+
## 4. 区域预算占比
|
|
77
|
+
|
|
78
|
+
`POST /sino-bc-nexus/dashboard/budget-by-region`
|
|
79
|
+
|
|
80
|
+
主体上下文:`tenant=true`。
|
|
81
|
+
|
|
82
|
+
角色范围:`sso/passport/system`。
|
|
83
|
+
|
|
84
|
+
风险:`read`。
|
|
85
|
+
|
|
86
|
+
主体必填:每次传入 `--corporation-id` 与 `--auth-context-id`,两者不放进 `--data`;绑定与恢复按 shared 条件索引读取主体参考。
|
|
87
|
+
|
|
88
|
+
调用示例:`sino-bc-cli dashboard api dashboard-budget-by-region --data '<json>' --corporation-id <主体ID> --auth-context-id <认证上下文ID>`。
|
|
89
|
+
|
|
90
|
+
区域预算占比
|
|
91
|
+
|
|
92
|
+
**输入参数(--data)**
|
|
93
|
+
|
|
94
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
95
|
+
| --- | --- | --- | --- | --- |
|
|
96
|
+
| `startDate` | string | body | 否 | 筛选开始日期(可选,须与结束日期同时传入),格式 yyyy-MM-dd,时间跨度最长一年;JSON 字符串;格式 yyyy-MM-dd;仅日期,不含时分秒及时区;示例:2025-01-01 |
|
|
97
|
+
| `endDate` | string | body | 否 | 筛选结束日期(可选,须与开始日期同时传入),格式 yyyy-MM-dd,时间跨度最长一年;JSON 字符串;格式 yyyy-MM-dd;仅日期,不含时分秒及时区;示例:2025-06-30 |
|
|
98
|
+
| `dimension` | string | body | 否 | 区域维度:COUNTRY 按国家、REGION 按大区;不传默认 COUNTRY |
|
|
99
|
+
|
|
100
|
+
## 5. 预算排行榜
|
|
101
|
+
|
|
102
|
+
`POST /sino-bc-nexus/dashboard/budget-rank`
|
|
103
|
+
|
|
104
|
+
主体上下文:`tenant=true`。
|
|
105
|
+
|
|
106
|
+
角色范围:`sso/passport/system`。
|
|
107
|
+
|
|
108
|
+
风险:`read`。
|
|
109
|
+
|
|
110
|
+
主体必填:每次传入 `--corporation-id` 与 `--auth-context-id`,两者不放进 `--data`;绑定与恢复按 shared 条件索引读取主体参考。
|
|
111
|
+
|
|
112
|
+
调用示例:`sino-bc-cli dashboard api dashboard-budget-rank --data '<json>' --corporation-id <主体ID> --auth-context-id <认证上下文ID>`。
|
|
113
|
+
|
|
114
|
+
预算排行榜
|
|
115
|
+
|
|
116
|
+
**输入参数(--data)**
|
|
117
|
+
|
|
118
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
119
|
+
| --- | --- | --- | --- | --- |
|
|
120
|
+
| `startDate` | string | body | 否 | 筛选开始日期(可选,须与结束日期同时传入),格式 yyyy-MM-dd,时间跨度最长一年;JSON 字符串;格式 yyyy-MM-dd;仅日期,不含时分秒及时区;示例:2025-01-01 |
|
|
121
|
+
| `endDate` | string | body | 否 | 筛选结束日期(可选,须与开始日期同时传入),格式 yyyy-MM-dd,时间跨度最长一年;JSON 字符串;格式 yyyy-MM-dd;仅日期,不含时分秒及时区;示例:2025-06-30 |
|
|
122
|
+
| `dimension` | string | body | 否 | 排行榜维度:PROJECT 按项目、BUSINESS_LINE 按业务线 |
|
|
123
|
+
| `topN` | integer | body | 否 | 展示 Top 条数,默认 5 |
|
|
124
|
+
|
|
125
|
+
## 6. 预算来源占比
|
|
126
|
+
|
|
127
|
+
`POST /sino-bc-nexus/dashboard/budget-source-ratio`
|
|
128
|
+
|
|
129
|
+
主体上下文:`tenant=true`。
|
|
130
|
+
|
|
131
|
+
角色范围:`sso/passport/system`。
|
|
132
|
+
|
|
133
|
+
风险:`read`。
|
|
134
|
+
|
|
135
|
+
主体必填:每次传入 `--corporation-id` 与 `--auth-context-id`,两者不放进 `--data`;绑定与恢复按 shared 条件索引读取主体参考。
|
|
136
|
+
|
|
137
|
+
调用示例:`sino-bc-cli dashboard api dashboard-budget-source-ratio --data '<json>' --corporation-id <主体ID> --auth-context-id <认证上下文ID>`。
|
|
138
|
+
|
|
139
|
+
预算来源占比
|
|
140
|
+
|
|
141
|
+
**输入参数(--data)**
|
|
142
|
+
|
|
143
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
144
|
+
| --- | --- | --- | --- | --- |
|
|
145
|
+
| `startDate` | string | body | 否 | 筛选开始日期(可选,须与结束日期同时传入),格式 yyyy-MM-dd,时间跨度最长一年;JSON 字符串;格式 yyyy-MM-dd;仅日期,不含时分秒及时区;示例:2025-01-01 |
|
|
146
|
+
| `endDate` | string | body | 否 | 筛选结束日期(可选,须与开始日期同时传入),格式 yyyy-MM-dd,时间跨度最长一年;JSON 字符串;格式 yyyy-MM-dd;仅日期,不含时分秒及时区;示例:2025-06-30 |
|
|
147
|
+
| `dimension` | string | body | 否 | 占比维度:SOURCE 市场范围(t_project.market_scope),SEGMENT 渠道类型(t_project_budget.dim_type=SOURCE);不传默认 SOURCE |
|
|
148
|
+
|
|
149
|
+
## 7. 关键项目时间轴
|
|
150
|
+
|
|
151
|
+
`POST /sino-bc-nexus/dashboard/key-project-timeline`
|
|
152
|
+
|
|
153
|
+
主体上下文:`tenant=true`。
|
|
154
|
+
|
|
155
|
+
角色范围:`sso/passport/system`。
|
|
156
|
+
|
|
157
|
+
风险:`write`。
|
|
158
|
+
|
|
159
|
+
主体必填:每次传入 `--corporation-id` 与 `--auth-context-id`,两者不放进 `--data`;绑定与恢复按 shared 条件索引读取主体参考。
|
|
160
|
+
|
|
161
|
+
调用示例:`sino-bc-cli dashboard api dashboard-key-project-timeline --data '<json>' --corporation-id <主体ID> --auth-context-id <认证上下文ID>`。
|
|
162
|
+
|
|
163
|
+
关键项目时间轴
|
|
164
|
+
|
|
165
|
+
**输入参数(--data)**
|
|
166
|
+
|
|
167
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
168
|
+
| --- | --- | --- | --- | --- |
|
|
169
|
+
| `startDate` | string | body | 否 | 筛选开始日期(可选,须与结束日期同时传入),格式 yyyy-MM-dd,时间跨度最长一年;JSON 字符串;格式 yyyy-MM-dd;仅日期,不含时分秒及时区;示例:2025-01-01 |
|
|
170
|
+
| `endDate` | string | body | 否 | 筛选结束日期(可选,须与开始日期同时传入),格式 yyyy-MM-dd,时间跨度最长一年;JSON 字符串;格式 yyyy-MM-dd;仅日期,不含时分秒及时区;示例:2025-06-30 |
|
|
171
|
+
| `topN` | integer | body | 否 | 展示条数,默认 5 |
|
|
172
|
+
|
|
173
|
+
## 8. 核心卡片指标
|
|
174
|
+
|
|
175
|
+
`POST /sino-bc-nexus/dashboard/metrics`
|
|
176
|
+
|
|
177
|
+
主体上下文:`tenant=true`。
|
|
178
|
+
|
|
179
|
+
角色范围:`sso/passport/system`。
|
|
180
|
+
|
|
181
|
+
风险:`write`。
|
|
182
|
+
|
|
183
|
+
主体必填:每次传入 `--corporation-id` 与 `--auth-context-id`,两者不放进 `--data`;绑定与恢复按 shared 条件索引读取主体参考。
|
|
184
|
+
|
|
185
|
+
调用示例:`sino-bc-cli dashboard api dashboard-metrics --data '<json>' --corporation-id <主体ID> --auth-context-id <认证上下文ID>`。
|
|
186
|
+
|
|
187
|
+
核心卡片指标
|
|
188
|
+
|
|
189
|
+
**输入参数(--data)**
|
|
190
|
+
|
|
191
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
192
|
+
| --- | --- | --- | --- | --- |
|
|
193
|
+
| `startDate` | string | body | 否 | 筛选开始日期(可选,须与结束日期同时传入),格式 yyyy-MM-dd,时间跨度最长一年;JSON 字符串;格式 yyyy-MM-dd;仅日期,不含时分秒及时区;示例:2025-01-01 |
|
|
194
|
+
| `endDate` | string | body | 否 | 筛选结束日期(可选,须与开始日期同时传入),格式 yyyy-MM-dd,时间跨度最长一年;JSON 字符串;格式 yyyy-MM-dd;仅日期,不含时分秒及时区;示例:2025-06-30 |
|
|
195
|
+
|
|
196
|
+
## 9. 项目分布
|
|
197
|
+
|
|
198
|
+
`POST /sino-bc-nexus/dashboard/project-distribution`
|
|
199
|
+
|
|
200
|
+
主体上下文:`tenant=true`。
|
|
201
|
+
|
|
202
|
+
角色范围:`sso/passport/system`。
|
|
203
|
+
|
|
204
|
+
风险:`write`。
|
|
205
|
+
|
|
206
|
+
主体必填:每次传入 `--corporation-id` 与 `--auth-context-id`,两者不放进 `--data`;绑定与恢复按 shared 条件索引读取主体参考。
|
|
207
|
+
|
|
208
|
+
调用示例:`sino-bc-cli dashboard api dashboard-project-distribution --data '<json>' --corporation-id <主体ID> --auth-context-id <认证上下文ID>`。
|
|
209
|
+
|
|
210
|
+
项目分布
|
|
211
|
+
|
|
212
|
+
**输入参数(--data)**
|
|
213
|
+
|
|
214
|
+
| 字段 | 类型 | 位置 | 必填 | 说明 |
|
|
215
|
+
| --- | --- | --- | --- | --- |
|
|
216
|
+
| `startDate` | string | body | 否 | 筛选开始日期(可选,须与结束日期同时传入),格式 yyyy-MM-dd,时间跨度最长一年;JSON 字符串;格式 yyyy-MM-dd;仅日期,不含时分秒及时区;示例:2025-01-01 |
|
|
217
|
+
| `endDate` | string | body | 否 | 筛选结束日期(可选,须与开始日期同时传入),格式 yyyy-MM-dd,时间跨度最长一年;JSON 字符串;格式 yyyy-MM-dd;仅日期,不含时分秒及时区;示例:2025-06-30 |
|
|
218
|
+
| `dimension` | string | body | 否 | 分布维度:STAGE 按当前阶段、LEVEL 按项目等级、TYPE 按项目类型 |
|