fix: 完成态判据统一为曝光+阅读齐+交互断点三处修复
- 创作者凭证提交(manual_metrics/submit_creator_metrics)的完成判据从 d7_likes(全库无赋值方,永不触发)改为 exposure+views 齐,与采集侧口径 对齐;管理端手动回填后同步 refreshTaskStatus 联动任务状态 - 回收队列头部改为「已发布 N / 总数」口径,未回填链接行不再计入 - 行内更新/补填笔记链接从原生 prompt 改为弹窗表单,失败保留已输入内容 - 顶栏「获取KOC领取链接」从导航跳转改为弹窗直接列出各任务领取链接, 一键复制;弹窗内点击不冒泡误关
This commit is contained in:
@@ -24,6 +24,7 @@ import {
|
||||
type CollectionMcpBindings,
|
||||
} from "../../../lib/mcp-collection-client";
|
||||
import { adminForbidden, isAdminRequest } from "../../../lib/admin-auth";
|
||||
import { refreshTaskStatus } from "../../../lib/task-service";
|
||||
import {
|
||||
FeishuSourceError,
|
||||
readFeishuSource,
|
||||
@@ -663,12 +664,19 @@ export async function POST(request: Request) {
|
||||
exposure = ?,
|
||||
views = ?,
|
||||
ocr_status = 'manual',
|
||||
status = CASE WHEN d7_likes IS NOT NULL THEN 'complete' ELSE status END,
|
||||
status = CASE WHEN exposure IS NOT NULL AND views IS NOT NULL THEN 'complete' ELSE status END,
|
||||
updated_at = CURRENT_TIMESTAMP
|
||||
WHERE id = ?`,
|
||||
)
|
||||
.bind(exposure, views, distributionId)
|
||||
.run();
|
||||
const ownerTask = await db
|
||||
.prepare("SELECT task_id FROM distributions WHERE id = ?")
|
||||
.bind(distributionId)
|
||||
.first<{ task_id: string }>();
|
||||
if (ownerTask) {
|
||||
await refreshTaskStatus(ownerTask.task_id, db).catch(() => undefined);
|
||||
}
|
||||
} else if (body.action === "bind_wecom_external_id") {
|
||||
const forbidden = managerGate();
|
||||
if (forbidden) return forbidden;
|
||||
|
||||
Reference in New Issue
Block a user