21 KiB
鏁版嵁搴撶粨鏋勬枃妗o紙PostgreSQL锛?
鏈枃妗f牴鎹?backend/design/db_schema_pgsql.sql 鐢熸垚锛屾弿杩板綋鍓嶆牳蹇冭〃缁撴瀯銆佸瓧娈点€佺害鏉熶笌绱㈠紩銆?
0. 绉熸埛涓庣粍缁?
0.1 sys_tenant锛堢鎴疯〃锛?| 瀛楁 | 绫诲瀷 | 绾︽潫 | 璇存槑 |
| --- | --- | --- | --- | | id | BIGSERIAL | PK | 绉熸埛ID | | tenant_code | VARCHAR(64) | NOT NULL, UNIQUE | 绉熸埛缂栫爜 | | tenant_name | VARCHAR(128) | NOT NULL | 绉熸埛鍚嶇О | | status | SMALLINT | NOT NULL, DEFAULT 1 | 鐘舵€?| | expire_time | TIMESTAMP(6) | | 杩囨湡鏃堕棿 | | contact_name | VARCHAR(64) | | 鑱旂郴浜?| | contact_phone | VARCHAR(32) | | 鑱旂郴鐢佃瘽 | | remark | VARCHAR(255) | | 澶囨敞 | | created_at | TIMESTAMP(6) | NOT NULL, DEFAULT CURRENT_TIMESTAMP | 鍒涘缓鏃堕棿 | | updated_at | TIMESTAMP(6) | NOT NULL, DEFAULT CURRENT_TIMESTAMP | 鏇存柊鏃堕棿 | | is_deleted | SMALLINT | DEFAULT 0 | 閫昏緫鍒犻櫎鏍囪 |
绱㈠紩锛?- uk_tenant_code锛歚UNIQUE (tenant_code) WHERE is_deleted = FALSE`
0.2 sys_org锛堢粍缁囨灦鏋勮〃锛?| 瀛楁 | 绫诲瀷 | 绾︽潫 | 璇存槑 |
| --- | --- | --- | --- | | id | BIGSERIAL | PK | 缁勭粐ID | | tenant_id | BIGINT | NOT NULL | 绉熸埛ID | | parent_id | BIGINT | | 鐖剁骇缁勭粐ID | | org_name | VARCHAR(128) | NOT NULL | 缁勭粐鍚嶇О | | org_code | VARCHAR(64) | | 缁勭粐缂栫爜 | | org_path | VARCHAR(512) | | 缁勭粐璺緞 | | sort_order | INTEGER | DEFAULT 0 | 鎺掑簭 | | status | SMALLINT | DEFAULT 1 | 鐘舵€?| | created_at | TIMESTAMP(6) | NOT NULL, DEFAULT CURRENT_TIMESTAMP | 鍒涘缓鏃堕棿 | | updated_at | TIMESTAMP(6) | NOT NULL, DEFAULT CURRENT_TIMESTAMP | 鏇存柊鏃堕棿 | | is_deleted | SMALLINT | DEFAULT 0 | 閫昏緫鍒犻櫎鏍囪 |
澶栭敭锛?- fk_org_parent锛歚parent_id -> sys_org(id)`
fk_org_tenant锛歚tenant_id -> sys_tenant(id)`
绱㈠紩锛?- idx_org_tenant锛歚(tenant_id)`
1. 鐢ㄦ埛涓庤鑹?
1.1 sys_user锛堢敤鎴疯〃锛?| 瀛楁 | 绫诲瀷 | 绾︽潫 | 璇存槑 |
| --- | --- | --- | --- | | user_id | BIGSERIAL | PK | 鐢ㄦ埛ID | | username | VARCHAR(50) | NOT NULL, UNIQUE | 鐧诲綍鍚?| | display_name | VARCHAR(50) | NOT NULL | 鏄剧ず鍚?| | email | VARCHAR(100) | | 閭 | | phone | VARCHAR(30) | UNIQUE | 鎵嬫満鍙?| | password_hash | VARCHAR(255) | NOT NULL | 瀵嗙爜鍝堝笇 | | status | SMALLINT | NOT NULL, DEFAULT 1 | 鐘舵€?| | pwd_reset_required | SMALLINT | DEFAULT 1 | 棣栨鐧诲綍鏄惁闇€鏀瑰瘑 | | is_deleted | SMALLINT | NOT NULL, DEFAULT 0 | 閫昏緫鍒犻櫎鏍囪 | | created_at | TIMESTAMP(6) | NOT NULL, DEFAULT now() | 鍒涘缓鏃堕棿 | | updated_at | TIMESTAMP(6) | NOT NULL, DEFAULT now() | 鏇存柊鏃堕棿 | | is_platform_admin | BOOLEAN | DEFAULT false | 鏄惁骞冲彴绠$悊鍛?|
绱㈠紩锛?- uk_user_username锛歚UNIQUE (username) WHERE is_deleted = FALSE`
1.2 sys_role锛堣鑹茶〃锛?| 瀛楁 | 绫诲瀷 | 绾︽潫 | 璇存槑 |
| --- | --- | --- | --- | | role_id | BIGSERIAL | PK | 瑙掕壊ID | | tenant_id | BIGINT | NOT NULL | 绉熸埛ID | | role_code | VARCHAR(50) | NOT NULL | 瑙掕壊缂栫爜锛堢鎴峰唴鍞竴锛?| | role_name | VARCHAR(50) | NOT NULL | 瑙掕壊鍚嶇О | | status | SMALLINT | NOT NULL, DEFAULT 1 | 鐘舵€?| | remark | TEXT | | 澶囨敞 | | is_deleted | SMALLINT | NOT NULL, DEFAULT 0 | 閫昏緫鍒犻櫎鏍囪 | | created_at | TIMESTAMP(6) | NOT NULL, DEFAULT now() | 鍒涘缓鏃堕棿 | | updated_at | TIMESTAMP(6) | NOT NULL, DEFAULT now() | 鏇存柊鏃堕棿 |
绱㈠紩锛?- idx_sys_role_tenant锛歚(tenant_id)`
uk_role_code锛歚UNIQUE (tenant_id, role_code) WHERE is_deleted = FALSE`
1.3 sys_user_role锛堢敤鎴?瑙掕壊鍏宠仈琛紝绉熸埛寮虹害鏉燂級
| 瀛楁 | 绫诲瀷 | 绾︽潫 | 璇存槑 |
|---|---|---|---|
| id | BIGSERIAL | PK | 鍏宠仈ID |
| tenant_id | BIGINT | NOT NULL | 绉熸埛ID |
| user_id | BIGINT | NOT NULL | 鐢ㄦ埛ID |
| role_id | BIGINT | NOT NULL | 瑙掕壊ID |
| is_deleted | SMALLINT | NOT NULL, DEFAULT 0 | 閫昏緫鍒犻櫎鏍囪 |
| created_at | TIMESTAMP(6) | NOT NULL, DEFAULT now() | 鍒涘缓鏃堕棿 |
| updated_at | TIMESTAMP(6) | NOT NULL, DEFAULT now() | 鏇存柊鏃堕棿 |
鍞竴绾︽潫锛?- UNIQUE (tenant_id, user_id, role_id) WHERE is_deleted = 0
1.4 sys_tenant_user锛堢鎴锋垚鍛樺叧鑱旇〃锛?| 瀛楁 | 绫诲瀷 | 绾︽潫 | 璇存槑 |
| --- | --- | --- | --- | | id | BIGSERIAL | PK | 鍏宠仈ID | | user_id | BIGINT | NOT NULL | 鐢ㄦ埛ID | | tenant_id | BIGINT | NOT NULL | 绉熸埛ID | | org_id | BIGINT | | 缁勭粐ID | | status | SMALLINT | DEFAULT 1 | 鐘舵€?| | is_deleted | SMALLINT | DEFAULT 0 | 閫昏緫鍒犻櫎鏍囪 | | created_at | TIMESTAMP(6) | NOT NULL, DEFAULT now() | 鍒涘缓鏃堕棿 | | updated_at | TIMESTAMP(6) | NOT NULL, DEFAULT now() | 鏇存柊鏃堕棿 |
绱㈠紩锛?- uk_tenant_user锛歚UNIQUE (user_id, tenant_id) WHERE is_deleted = 0`
2. 鏉冮檺/瀛楀吀/鍙傛暟锛堝叏灞€鍏变韩锛?
2.1 sys_permission锛堟潈闄愯〃锛?| 瀛楁 | 绫诲瀷 | 绾︽潫 | 璇存槑 |
| --- | --- | --- | --- | | perm_id | BIGSERIAL | PK | 鏉冮檺ID | | parent_id | BIGINT | | 鐖剁骇鏉冮檺ID | | name | VARCHAR(100) | NOT NULL | 鏉冮檺鍚嶇О | | code | VARCHAR(100) | NOT NULL, UNIQUE | 鏉冮檺缂栫爜 | | perm_type | VARCHAR(20) | NOT NULL | 鏉冮檺绫诲瀷 | | level | INTEGER | NOT NULL | 灞傜骇 | | path | VARCHAR(255) | | 璺緞 | | component | VARCHAR(255) | | 缁勪欢 | | icon | VARCHAR(100) | | 鍥炬爣 | | sort_order | INTEGER | NOT NULL, DEFAULT 0 | 鎺掑簭 | | is_visible | SMALLINT | NOT NULL, DEFAULT 1 | 鏄惁鍙 | | status | SMALLINT | NOT NULL, DEFAULT 1 | 鐘舵€?| | description | TEXT | | 鎻忚堪 | | meta | JSONB | | 鎵╁睍淇℃伅 | | is_deleted | SMALLINT | NOT NULL, DEFAULT 0 | 閫昏緫鍒犻櫎鏍囪 | | created_at | TIMESTAMP(6) | NOT NULL, DEFAULT now() | 鍒涘缓鏃堕棿 | | updated_at | TIMESTAMP(6) | NOT NULL, DEFAULT now() | 鏇存柊鏃堕棿 |
2.2 sys_dict_type锛堝瓧鍏哥被鍨嬭〃锛?| 瀛楁 | 绫诲瀷 | 绾︽潫 | 璇存槑 |
| --- | --- | --- | --- | | dict_type_id | BIGSERIAL | PK | 绫诲瀷ID | | type_code | VARCHAR(50) | NOT NULL, UNIQUE | 绫诲瀷缂栫爜 | | type_name | VARCHAR(50) | NOT NULL | 绫诲瀷鍚嶇О | | status | SMALLINT | DEFAULT 1 | 鐘舵€?| | remark | TEXT | | 澶囨敞 | | created_at | TIMESTAMP | NOT NULL, DEFAULT NOW() | 鍒涘缓鏃堕棿 | | updated_at | TIMESTAMP | NOT NULL, DEFAULT NOW() | 鏇存柊鏃堕棿 | | is_deleted | SMALLINT | DEFAULT 0 | 閫昏緫鍒犻櫎鏍囪 |
鍒濆鍖栨暟鎹細
sys_common_status: 閫氱敤鐘舵€?(鍚敤/绂佺敤)sys_permission_type: 鏉冮檺绫诲瀷 (鐩綍/鑿滃崟/鎸夐挳)sys_common_visibility: 鍙鎬?(鏄剧ず/闅愯棌)sys_permission_level: 鏉冮檺灞傜骇 (1, 2, 3)sys_log_type: 鏃ュ織绫诲瀷 (LOGIN/OPERATION)sys_param_type: 鍙傛暟绫诲瀷 (String/Number/Boolean/JSON)sys_log_status: 鎿嶄綔鐘舵€?(鎴愬姛/澶辫触)
2.3 sys_dict_item锛堝瓧鍏搁」琛級
| 瀛楁 | 绫诲瀷 | 绾︽潫 | 璇存槑 |
|---|---|---|---|
| dict_item_id | BIGSERIAL | PK | 瀛楀吀椤笽D |
| type_code | VARCHAR(50) | NOT NULL | 瀛楀吀绫诲瀷缂栫爜 |
| item_label | VARCHAR(100) | NOT NULL | 灞曠ず鏂囨湰 |
| item_value | VARCHAR(100) | NOT NULL | 瀛樺偍鍊? |
| sort_order | INT | DEFAULT 0 | 鎺掑簭 |
| status | SMALLINT | DEFAULT 1 | 鐘舵€? |
| created_at | TIMESTAMP | NOT NULL, DEFAULT NOW() | 鍒涘缓鏃堕棿 |
| updated_at | TIMESTAMP | NOT NULL, DEFAULT NOW() | 鏇存柊鏃堕棿 |
| is_deleted | SMALLINT | DEFAULT 0 | 閫昏緫鍒犻櫎鏍囪 |
绱㈠紩锛?- idx_dict_item_type锛歚(type_code)`
uk_dict_item_value锛歚UNIQUE (type_code, item_value)`
2.4 sys_param锛堢郴缁熷弬鏁拌〃锛?| 瀛楁 | 绫诲瀷 | 绾︽潫 | 璇存槑 |
| --- | --- | --- | --- | | id | BIGSERIAL | PK | 鍙傛暟ID | | param_key | VARCHAR(100) | NOT NULL, UNIQUE | 鍙傛暟閿?| | param_value | TEXT | NOT NULL | 鍙傛暟鍊?| | param_type | VARCHAR(20) | NOT NULL | 鍙傛暟绫诲瀷 | | is_system | SMALLINT | DEFAULT 0 | 鏄惁绯荤粺鍐呯疆 | | status | SMALLINT | DEFAULT 1 | 鐘舵€?| | description | TEXT | | 鎻忚堪 | | created_at | TIMESTAMP | NOT NULL, DEFAULT NOW() | 鍒涘缓鏃堕棿 |
3. 鏃ュ織锛堢鎴烽殧绂伙級
3.1 sys_log锛堢郴缁熸棩蹇楄〃锛?| 瀛楁 | 绫诲瀷 | 绾︽潫 | 璇存槑 |
| --- | --- | --- | --- | | id | BIGSERIAL | PK | 鏃ュ織ID | | tenant_id | BIGINT | NOT NULL, DEFAULT 0 | 绉熸埛ID | | user_id | BIGINT | | 鐢ㄦ埛ID | | username | VARCHAR(50) | | 鐢ㄦ埛鍚?| | log_type | VARCHAR(20) | | 鏃ュ織绫诲瀷锛堝 LOGIN銆丱PERATION锛?| | operation | VARCHAR(100) | NOT NULL | 鎿嶄綔鎻忚堪 | | method | VARCHAR(200) | | 鏂规硶 | | params | TEXT | | 璇锋眰鍙傛暟 | | status | SMALLINT | DEFAULT 1 | 鐘舵€?| | ip | VARCHAR(50) | | IP | | duration | BIGINT | | 鑰楁椂锛坢s锛?| | created_at | TIMESTAMP | NOT NULL, DEFAULT NOW() | 鍒涘缓鏃堕棿 |
绱㈠紩锛?- idx_log_tenant_type锛歚(tenant_id, log_type, created_at)`
4. 骞冲彴閰嶇疆
4.1 sys_platform_config锛堝钩鍙扮鐞嗚〃锛?| 瀛楁 | 绫诲瀷 | 绾︽潫 | 璇存槑 |
| --- | --- | --- | --- | | id | BIGINT | PK | 鍥哄畾涓?1 | | project_name | VARCHAR(128) | NOT NULL | 椤圭洰鍚嶇О | | logo_url | VARCHAR(512) | | Logo URL | | icon_url | VARCHAR(512) | | Icon URL | | login_bg_url | VARCHAR(512) | | 鐧诲綍椤佃儗鏅?| | icp_info | VARCHAR(128) | | 澶囨淇℃伅 | | copyright_info | VARCHAR(255) | | 鐗堟潈淇℃伅 | | system_description | TEXT | | 绯荤粺鎻忚堪 | | created_at | TIMESTAMP | NOT NULL | 鍒涘缓鏃堕棿 | | updated_at | TIMESTAMP | NOT NULL | 鏇存柊鏃堕棿 |
5. 涓氬姟妯″潡
5.1 biz_speakers锛堝0绾瑰彂瑷€浜鸿〃锛?| 瀛楁 | 绫诲瀷 | 绾︽潫 | 璇存槑 |
| --- | --- | --- | --- | | id | BIGSERIAL | PK | 涓婚敭ID | | tenant_id | BIGINT | NOT NULL | 绉熸埛ID | | creator_id | BIGINT | NOT NULL | 鍒涘缓浜篒D锛岀敤浜庡0绾瑰簱褰掑睘 | | user_id | BIGINT | | 鍏宠仈绯荤粺鐢ㄦ埛ID | | external_speaker_id | VARCHAR(100) | | 绗笁鏂瑰0绾瑰簱涓殑浜哄憳ID | | name | VARCHAR(100) | NOT NULL | 鍙戣█浜哄鍚?| | voice_path | VARCHAR(512) | | 鍘熷澹扮汗鏂囦欢璺緞 | | voice_ext | VARCHAR(10) | | 鏂囦欢鍚庣紑 | | voice_size | BIGINT | | 鏂囦欢澶у皬 | | status | SMALLINT | DEFAULT 1 | 鐘舵€侊紙1=宸蹭繚瀛橈紝2=娉ㄥ唽涓紝3=宸叉敞鍐岋紝4=澶辫触锛?| | embedding | VECTOR(512) | | 澹扮汗鐗瑰緛鍚戦噺 | | remark | TEXT | | 澶囨敞 | | created_at | TIMESTAMP(6) | NOT NULL, DEFAULT now() | 鍒涘缓鏃堕棿 | | updated_at | TIMESTAMP(6) | NOT NULL, DEFAULT now() | 鏇存柊鏃堕棿 | | is_deleted | SMALLINT | NOT NULL, DEFAULT 0 | 閫昏緫鍒犻櫎 |
绱㈠紩锛?- idx_speaker_tenant锛歚(tenant_id) WHERE is_deleted = 0`
idx_speaker_creator锛歚(creator_id) WHERE is_deleted = 0`idx_speaker_user锛歚(user_id) WHERE is_deleted = 0`idx_speaker_external锛歚(external_speaker_id) WHERE is_deleted = 0`uk_speaker_tenant_name锛歚UNIQUE (tenant_id, name) WHERE is_deleted = 0`
5.2 biz_hot_word_groups锛堢儹璇嶇粍琛級
| 瀛楁 | 绫诲瀷 | 绾︽潫 | 璇存槑 |
|---|---|---|---|
| id | BIGSERIAL | PK | 涓婚敭ID |
| tenant_id | BIGINT | NOT NULL | 绉熸埛ID |
| group_name | VARCHAR(100) | NOT NULL | 鐑瘝缁勫悕绉? |
| creator_id | BIGINT | 鍒涘缓浜篒D | |
| status | SMALLINT | DEFAULT 1 | 鐘舵€侊紙1:鍚敤锛?:绂佺敤锛? |
| remark | VARCHAR(255) | 澶囨敞 | |
| created_at | TIMESTAMP(6) | NOT NULL, DEFAULT now() | 鍒涘缓鏃堕棿 |
| updated_at | TIMESTAMP(6) | NOT NULL, DEFAULT now() | 鏇存柊鏃堕棿 |
| is_deleted | SMALLINT | NOT NULL, DEFAULT 0 | 閫昏緫鍒犻櫎 |
绱㈠紩锛?- idx_hot_word_group_tenant锛歚(tenant_id) WHERE is_deleted = 0`
uk_hot_word_group_name_scope锛歚UNIQUE (tenant_id, group_name) WHERE is_deleted = 0`
5.3 biz_hot_words锛堢儹璇嶇鐞嗚〃锛?| 瀛楁 | 绫诲瀷 | 绾︽潫 | 璇存槑 |
| --- | --- | --- | --- | | id | BIGSERIAL | PK | 涓婚敭ID | | tenant_id | BIGINT | NOT NULL | 绉熸埛ID | | word | VARCHAR(100) | NOT NULL | 鐑瘝鍘熸枃 | | is_public | SMALLINT | DEFAULT 0 | 鏄惁绉熸埛鍏紑锛?:鍏紑锛?:涓汉绉佹湁锛?| | creator_id | BIGINT | | 鍒涘缓鑰匢D | | pinyin_list | TEXT | | 鎷奸煶鏁扮粍 | | match_strategy | SMALLINT | DEFAULT 1 | 鍖归厤绛栫暐锛?:绮剧‘鍖归厤锛?:鎷奸煶妯$硦鍖归厤锛?| | category | VARCHAR(50) | | 绫诲埆锛堜汉鍚嶃€佹湳璇€佸湴鍚嶏級 | | hot_word_group_id | BIGINT | | 鎵€灞炵儹璇嶇粍ID | | weight | INTEGER | DEFAULT 10 | 鏉冮噸锛?-100锛?| | status | SMALLINT | DEFAULT 1 | 鐘舵€侊紙1:鍚敤锛?:绂佺敤锛?| | is_synced | SMALLINT | DEFAULT 0 | 鏄惁宸插悓姝ョ涓夋柟寮曟搸锛?:鏈悓姝ワ紝1:宸插悓姝ワ級 | | remark | TEXT | | 澶囨敞 | | created_at | TIMESTAMP(6) | NOT NULL, DEFAULT now() | 鍒涘缓鏃堕棿 | | updated_at | TIMESTAMP(6) | NOT NULL, DEFAULT now() | 鏇存柊鏃堕棿 | | is_deleted | SMALLINT | NOT NULL, DEFAULT 0 | 閫昏緫鍒犻櫎 |
绱㈠紩锛?- idx_hotword_tenant锛歚(tenant_id)`
idx_hotword_word锛歚(word) WHERE is_deleted = 0`idx_hotword_group锛歚(hot_word_group_id) WHERE is_deleted = 0`
5.4 biz_prompt_templates锛堟彁绀鸿瘝妯℃澘琛級
| 瀛楁 | 绫诲瀷 | 绾︽潫 | 璇存槑 |
|---|---|---|---|
| id | BIGSERIAL | PK | 涓婚敭ID |
| tenant_id | BIGINT | NOT NULL, DEFAULT 0 | 绉熸埛ID锛? 涓虹郴缁熺骇锛? |
| template_name | VARCHAR(100) | NOT NULL | 妯℃澘鍚嶇О |
| description | VARCHAR(255) | 妯℃澘鎻忚堪 | |
| category | VARCHAR(20) | 鍒嗙被锛堝瓧鍏革細biz_prompt_category锛? |
|
| is_system | SMALLINT | DEFAULT 0 | 鏄惁绯荤粺棰勭疆锛?:鏄紝0:鍚︼級 |
| creator_id | BIGINT | 鍒涘缓浜篒D | |
| tags | TEXT | 鏍囩鏁扮粍 | |
| hot_word_group_id | BIGINT | 缁戝畾鐑瘝缁処D | |
| usage_count | INTEGER | DEFAULT 0 | 浣跨敤娆℃暟 |
| prompt_content | TEXT | NOT NULL | 鎻愮ず璇嶅唴瀹? |
| status | SMALLINT | DEFAULT 1 | 鐘舵€侊紙1:鍚敤锛?:绂佺敤锛? |
| remark | VARCHAR(255) | 澶囨敞 | |
| created_at | TIMESTAMP(6) | NOT NULL, DEFAULT now() | 鍒涘缓鏃堕棿 |
| updated_at | TIMESTAMP(6) | NOT NULL, DEFAULT now() | 鏇存柊鏃堕棿 |
| is_deleted | SMALLINT | NOT NULL, DEFAULT 0 | 閫昏緫鍒犻櫎 |
绱㈠紩锛?- idx_prompt_tenant锛歚(tenant_id)`
idx_prompt_system锛歚(is_system) WHERE is_deleted = 0`idx_prompt_group锛歚(hot_word_group_id) WHERE is_deleted = 0`
5.5 biz_asr_models锛圓SR 妯″瀷閰嶇疆琛級
| 瀛楁 | 绫诲瀷 | 绾︽潫 | 璇存槑 |
|---|---|---|---|
| id | BIGSERIAL | PK | 涓婚敭ID |
| tenant_id | BIGINT | NOT NULL, DEFAULT 0 | 绉熸埛ID |
| model_name | VARCHAR(100) | NOT NULL | 妯″瀷鏄剧ず鍚嶇О |
| provider | VARCHAR(50) | 鎻愪緵鍟? | |
| base_url | VARCHAR(255) | 鎺ュ彛鍩虹鍦板潃 | |
| api_key | VARCHAR(255) | API 瀵嗛挜 | |
| model_code | VARCHAR(100) | 妯″瀷浠g爜 | |
| ws_url | VARCHAR(255) | WebSocket 鍦板潃 | |
| media_config | TEXT | 濯掍綋鍙傛暟 | |
| is_default | SMALLINT | DEFAULT 0 | 榛樿妯″瀷鏍囪 |
| sort_order | INTEGER | NOT NULL, DEFAULT 0 | 鎺掑簭鍊硷紝瓒婂皬瓒婇潬鍓? |
| status | SMALLINT | DEFAULT 1 | 鐘舵€? |
| remark | VARCHAR(255) | 澶囨敞 | |
| created_at | TIMESTAMP(6) | NOT NULL, DEFAULT now() | 鍒涘缓鏃堕棿 |
| updated_at | TIMESTAMP(6) | NOT NULL, DEFAULT now() | 鏇存柊鏃堕棿 |
| is_deleted | SMALLINT | NOT NULL, DEFAULT 0 | 閫昏緫鍒犻櫎 |
绱㈠紩锛?- idx_asr_model_tenant锛歚(tenant_id)`
idx_asr_model_default锛歚(is_default) WHERE is_deleted = 0`idx_asr_model_sort_order锛歚(tenant_id, is_default, sort_order) WHERE is_deleted = 0`uk_asr_model_default_enabled_tenant锛歚(tenant_id) WHERE is_deleted = 0 AND status = 1 AND is_default = 1`
5.6 biz_llm_models锛圠LM 妯″瀷閰嶇疆琛級
| 瀛楁 | 绫诲瀷 | 绾︽潫 | 璇存槑 |
|---|---|---|---|
| id | BIGSERIAL | PK | 涓婚敭ID |
| tenant_id | BIGINT | NOT NULL, DEFAULT 0 | 绉熸埛ID |
| model_name | VARCHAR(100) | NOT NULL | 妯″瀷鏄剧ず鍚嶇О |
| provider | VARCHAR(50) | 鎻愪緵鍟? | |
| base_url | VARCHAR(255) | 鎺ュ彛鍩虹鍦板潃 | |
| api_path | VARCHAR(100) | API 璺緞 | |
| api_key | VARCHAR(255) | API 瀵嗛挜 | |
| model_code | VARCHAR(100) | 妯″瀷浠g爜 | |
| temperature | DECIMAL(3,2) | DEFAULT 0.7 | 娓╁害鍙傛暟 |
| top_p | DECIMAL(3,2) | DEFAULT 0.9 | Top P 鍙傛暟 |
| is_default | SMALLINT | DEFAULT 0 | 榛樿妯″瀷鏍囪 |
| sort_order | INTEGER | NOT NULL, DEFAULT 0 | 鎺掑簭鍊硷紝瓒婂皬瓒婇潬鍓? |
| status | SMALLINT | DEFAULT 1 | 鐘舵€? |
| remark | VARCHAR(255) | 澶囨敞 | |
| created_at | TIMESTAMP(6) | NOT NULL, DEFAULT now() | 鍒涘缓鏃堕棿 |
| updated_at | TIMESTAMP(6) | NOT NULL, DEFAULT now() | 鏇存柊鏃堕棿 |
| is_deleted | SMALLINT | NOT NULL, DEFAULT 0 | 閫昏緫鍒犻櫎 |
绱㈠紩锛?- idx_llm_model_tenant锛歚(tenant_id)`
idx_llm_model_default锛歚(is_default) WHERE is_deleted = 0`idx_llm_model_sort_order锛歚(tenant_id, is_default, sort_order) WHERE is_deleted = 0`uk_llm_model_default_enabled_tenant锛歚(tenant_id) WHERE is_deleted = 0 AND status = 1 AND is_default = 1`
5.7 biz_meetings锛堜細璁富琛級
| 瀛楁 | 绫诲瀷 | 绾︽潫 | 璇存槑 |
|---|---|---|---|
| id | BIGSERIAL | PK | 涓婚敭ID |
| tenant_id | BIGINT | NOT NULL, DEFAULT 0 | 绉熸埛ID |
| title | VARCHAR(200) | NOT NULL | 浼氳鏍囬 |
| meeting_time | TIMESTAMP(6) | 浼氳鏃堕棿 | |
| participants | TEXT | 鍙備細浜轰俊鎭? | |
| tags | VARCHAR(255) | 鏍囩 | |
| audio_url | VARCHAR(500) | 涓撳睘闊抽璺緞 | |
| meeting_type | VARCHAR(32) | 会议类型:OFFLINE / REALTIME | |
| meeting_source | VARCHAR(32) | 会议来源平台:WEB / ANDROID | |
| creator_id | BIGINT | 鍙戣捣浜篒D | |
| creator_name | VARCHAR(100) | 鍙戣捣浜哄鍚? | |
| latest_summary_task_id | BIGINT | 鏈€鏂版垚鍔熸€荤粨浠诲姟ID | |
| status | SMALLINT | DEFAULT 0 | 鐘舵€侊紙0:寰呭鐞嗭紝1:澶勭悊涓紝2:鎴愬姛锛?:澶辫触锛? |
| created_at | TIMESTAMP(6) | NOT NULL, DEFAULT now() | 鍒涘缓鏃堕棿 |
| updated_at | TIMESTAMP(6) | NOT NULL, DEFAULT now() | 鏇存柊鏃堕棿 |
| is_deleted | SMALLINT | NOT NULL, DEFAULT 0 | 閫昏緫鍒犻櫎 |
绱㈠紩锛?- idx_meeting_tenant锛歚(tenant_id)`
5.8 biz_meeting_transcripts锛堣浆褰曟槑缁嗚〃锛?| 瀛楁 | 绫诲瀷 | 绾︽潫 | 璇存槑 |
| --- | --- | --- | --- | | id | BIGSERIAL | PK | 涓婚敭ID | | meeting_id | BIGINT | NOT NULL | 鍏宠仈浼氳ID | | speaker_id | VARCHAR(50) | | ASR 杩斿洖鐨勫彂瑷€浜烘爣璇?| | speaker_name | VARCHAR(100) | | 淇敼鍚庣殑鍙戣█浜哄鍚?| | speaker_label | VARCHAR(50) | | 鍙戣█浜烘爣绛?| | content | TEXT | | 杞綍鍐呭 | | start_time | INTEGER | | 寮€濮嬫椂闂达紙ms锛?| | end_time | INTEGER | | 缁撴潫鏃堕棿锛坢s锛?| | sort_order | INTEGER | | 鎺掑簭 | | created_at | TIMESTAMP(6) | NOT NULL, DEFAULT now() | 鍒涘缓鏃堕棿 |
绱㈠紩锛?- idx_transcript_meeting锛歚(meeting_id)`
5.9 biz_ai_tasks锛圓I 浠诲姟娴佹按琛級
| 瀛楁 | 绫诲瀷 | 绾︽潫 | 璇存槑 |
|---|---|---|---|
| id | BIGSERIAL | PK | 涓婚敭ID |
| meeting_id | BIGINT | NOT NULL | 鍏宠仈浼氳ID |
| task_type | VARCHAR(20) | 浠诲姟绫诲瀷锛圓SR / SUMMARY锛? | |
| status | SMALLINT | DEFAULT 0 | 鐘舵€侊紙0:鎺掗槦锛?:鎵ц涓紝2:鎴愬姛锛?:澶辫触锛? |
| request_data | TEXT | 璇锋眰涓夋柟鍘熷 JSON | |
| response_data | TEXT | 涓夋柟杩斿洖鍘熷 JSON | |
| task_config | TEXT | 浠诲姟閰嶇疆鍙傛暟蹇収 | |
| result_file_path | VARCHAR(500) | 缁撴灉鏂囦欢璺緞 | |
| error_msg | TEXT | 閿欒鍫嗘爤 | |
| started_at | TIMESTAMP(6) | 寮€濮嬫椂闂? | |
| completed_at | TIMESTAMP(6) | 瀹屾垚鏃堕棿 |
绱㈠紩锛?- idx_aitask_meeting锛歚(meeting_id)`