feat(api): 支持外部客户端创建作品和更新版本
This commit is contained in:
@@ -48,6 +48,7 @@ CREATE TABLE IF NOT EXISTS collections (
|
||||
CREATE TABLE IF NOT EXISTS notes (
|
||||
id BIGSERIAL PRIMARY KEY,
|
||||
collection_id BIGINT NOT NULL REFERENCES collections(id) ON DELETE CASCADE,
|
||||
external_id TEXT,
|
||||
title TEXT NOT NULL,
|
||||
description TEXT NOT NULL DEFAULT '',
|
||||
tags TEXT NOT NULL DEFAULT '[]',
|
||||
@@ -56,6 +57,9 @@ CREATE TABLE IF NOT EXISTS notes (
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
|
||||
);
|
||||
|
||||
ALTER TABLE notes ADD COLUMN IF NOT EXISTS external_id TEXT;
|
||||
CREATE UNIQUE INDEX IF NOT EXISTS idx_notes_collection_external_id ON notes(collection_id, external_id) WHERE external_id IS NOT NULL AND external_id != '';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS images (
|
||||
id BIGSERIAL PRIMARY KEY,
|
||||
note_id BIGINT NOT NULL REFERENCES notes(id) ON DELETE CASCADE,
|
||||
@@ -63,7 +67,7 @@ CREATE TABLE IF NOT EXISTS images (
|
||||
width INTEGER NOT NULL DEFAULT 0,
|
||||
height INTEGER NOT NULL DEFAULT 0,
|
||||
order_index INTEGER NOT NULL DEFAULT 0,
|
||||
storage_provider TEXT NOT NULL DEFAULT 'local' CHECK (storage_provider IN ('local', 'tencent_cos')),
|
||||
storage_provider TEXT NOT NULL DEFAULT 'local' CHECK (storage_provider IN ('local', 'tencent_cos', 'external')),
|
||||
storage_key TEXT NOT NULL DEFAULT '',
|
||||
version_number INTEGER NOT NULL DEFAULT 1 CHECK (version_number > 0)
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user