添加docker部署方式,优化目前项目结构,更新了readme文件
This commit is contained in:
127
init.sql
Normal file
127
init.sql
Normal file
@@ -0,0 +1,127 @@
|
||||
-- TSP智能助手数据库初始化脚本
|
||||
|
||||
-- 创建数据库(如果不存在)
|
||||
CREATE DATABASE IF NOT EXISTS tsp_assistant CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- 使用数据库
|
||||
USE tsp_assistant;
|
||||
|
||||
-- 创建用户表
|
||||
CREATE TABLE IF NOT EXISTS users (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
username VARCHAR(50) UNIQUE NOT NULL,
|
||||
email VARCHAR(100) UNIQUE NOT NULL,
|
||||
password_hash VARCHAR(255) NOT NULL,
|
||||
role ENUM('admin', 'user', 'operator') DEFAULT 'user',
|
||||
is_active BOOLEAN DEFAULT TRUE,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
-- 创建工单表
|
||||
CREATE TABLE IF NOT EXISTS work_orders (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
order_id VARCHAR(50) UNIQUE NOT NULL,
|
||||
title VARCHAR(200) NOT NULL,
|
||||
description TEXT,
|
||||
category VARCHAR(50),
|
||||
priority ENUM('low', 'medium', 'high', 'urgent') DEFAULT 'medium',
|
||||
status ENUM('open', 'in_progress', 'resolved', 'closed') DEFAULT 'open',
|
||||
user_id INT,
|
||||
assigned_to INT,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
resolved_at TIMESTAMP NULL,
|
||||
FOREIGN KEY (user_id) REFERENCES users(id),
|
||||
FOREIGN KEY (assigned_to) REFERENCES users(id)
|
||||
);
|
||||
|
||||
-- 创建预警表
|
||||
CREATE TABLE IF NOT EXISTS alerts (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
rule_name VARCHAR(100) NOT NULL,
|
||||
message TEXT NOT NULL,
|
||||
level ENUM('info', 'warning', 'error', 'critical') DEFAULT 'info',
|
||||
status ENUM('active', 'resolved', 'suppressed') DEFAULT 'active',
|
||||
source VARCHAR(100),
|
||||
metadata JSON,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
resolved_at TIMESTAMP NULL,
|
||||
INDEX idx_level (level),
|
||||
INDEX idx_status (status),
|
||||
INDEX idx_created_at (created_at)
|
||||
);
|
||||
|
||||
-- 创建对话表
|
||||
CREATE TABLE IF NOT EXISTS conversations (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
session_id VARCHAR(100) NOT NULL,
|
||||
user_id INT,
|
||||
work_order_id INT,
|
||||
user_message TEXT NOT NULL,
|
||||
assistant_response TEXT NOT NULL,
|
||||
confidence_score DECIMAL(3,2) DEFAULT 0.50,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
FOREIGN KEY (user_id) REFERENCES users(id),
|
||||
FOREIGN KEY (work_order_id) REFERENCES work_orders(id),
|
||||
INDEX idx_session_id (session_id),
|
||||
INDEX idx_created_at (created_at)
|
||||
);
|
||||
|
||||
-- 创建知识库表
|
||||
CREATE TABLE IF NOT EXISTS knowledge_entries (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
question TEXT NOT NULL,
|
||||
answer TEXT NOT NULL,
|
||||
category VARCHAR(50),
|
||||
confidence_score DECIMAL(3,2) DEFAULT 0.50,
|
||||
usage_count INT DEFAULT 0,
|
||||
is_verified BOOLEAN DEFAULT FALSE,
|
||||
is_active BOOLEAN DEFAULT TRUE,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
INDEX idx_category (category),
|
||||
INDEX idx_is_active (is_active),
|
||||
INDEX idx_is_verified (is_verified)
|
||||
);
|
||||
|
||||
-- 创建工单建议表
|
||||
CREATE TABLE IF NOT EXISTS work_order_suggestions (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
work_order_id INT NOT NULL,
|
||||
ai_suggestion TEXT,
|
||||
human_resolution TEXT,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
FOREIGN KEY (work_order_id) REFERENCES work_orders(id) ON DELETE CASCADE
|
||||
);
|
||||
|
||||
-- 创建系统配置表
|
||||
CREATE TABLE IF NOT EXISTS system_settings (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
key_name VARCHAR(100) UNIQUE NOT NULL,
|
||||
value TEXT,
|
||||
description TEXT,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
-- 插入默认管理员用户
|
||||
INSERT IGNORE INTO users (username, email, password_hash, role) VALUES
|
||||
('admin', 'admin@tsp.com', '$2b$12$LQv3c1yqBWVHxkd0LHAkCOYz6TtxMQJqhN8/LewdBPj4J/8K8K8K8', 'admin');
|
||||
|
||||
-- 插入默认系统配置
|
||||
INSERT IGNORE INTO system_settings (key_name, value, description) VALUES
|
||||
('system_name', 'TSP智能助手', '系统名称'),
|
||||
('version', '2.0.0', '系统版本'),
|
||||
('maintenance_mode', 'false', '维护模式'),
|
||||
('max_concurrent_users', '100', '最大并发用户数'),
|
||||
('session_timeout', '3600', '会话超时时间(秒)');
|
||||
|
||||
-- 创建索引优化查询性能
|
||||
CREATE INDEX idx_work_orders_status ON work_orders(status);
|
||||
CREATE INDEX idx_work_orders_priority ON work_orders(priority);
|
||||
CREATE INDEX idx_work_orders_created_at ON work_orders(created_at);
|
||||
CREATE INDEX idx_alerts_level_status ON alerts(level, status);
|
||||
CREATE INDEX idx_conversations_user_id ON conversations(user_id);
|
||||
CREATE INDEX idx_knowledge_entries_category_active ON knowledge_entries(category, is_active);
|
||||
Reference in New Issue
Block a user