feat: improve docparse

This commit is contained in:
zhongqin
2026-09-21 10:54:11 +08:00
parent 0dd505a337
commit 6af11252c9
8 changed files with 565 additions and 10 deletions
+41
View File
@@ -1992,3 +1992,44 @@ CREATE TABLE IF NOT EXISTS docparse_job_logs (
finished_at TIMESTAMPTZ
);
CREATE INDEX IF NOT EXISTS idx_docparse_job_logs_tenant ON docparse_job_logs(tenant_id, created_at);
CREATE TABLE IF NOT EXISTS docparse_engines (
id BIGINT PRIMARY KEY,
engine_name TEXT NOT NULL UNIQUE,
enabled INTEGER NOT NULL DEFAULT 1,
price_per_page BIGINT NOT NULL DEFAULT 0,
price_per_call BIGINT NOT NULL DEFAULT 0,
cost_per_page BIGINT NOT NULL DEFAULT 0,
updated_at TEXT NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%SZ','now'))
);
ALTER TABLE docparse_job_logs ADD COLUMN billing_mode TEXT DEFAULT 'post';
ALTER TABLE docparse_job_logs ADD COLUMN price_charged BIGINT;
ALTER TABLE docparse_job_logs ADD COLUMN payment_status TEXT;
CREATE TABLE IF NOT EXISTS docparse_tokens (
id BIGINT PRIMARY KEY,
tenant_id TEXT NOT NULL,
name TEXT NOT NULL,
token_hash TEXT NOT NULL UNIQUE,
token_prefix TEXT NOT NULL,
status TEXT NOT NULL DEFAULT 'active',
daily_page_quota BIGINT NOT NULL DEFAULT 0,
created_at TEXT NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%SZ','now')),
last_used_at TEXT
);
CREATE INDEX IF NOT EXISTS idx_docparse_tokens_hash ON docparse_tokens(token_hash);
CREATE INDEX IF NOT EXISTS idx_docparse_tokens_tenant ON docparse_tokens(tenant_id);
CREATE TABLE IF NOT EXISTS docparse_usage_summary (
id BIGINT PRIMARY KEY,
tenant_id TEXT NOT NULL,
kind TEXT NOT NULL,
engine TEXT NOT NULL,
date TEXT NOT NULL,
total_jobs INTEGER NOT NULL DEFAULT 0,
completed_jobs INTEGER NOT NULL DEFAULT 0,
failed_jobs INTEGER NOT NULL DEFAULT 0,
total_pages BIGINT NOT NULL DEFAULT 0,
total_chars BIGINT NOT NULL DEFAULT 0,
total_duration_ms BIGINT NOT NULL DEFAULT 0,
total_price_charged BIGINT NOT NULL DEFAULT 0
);