初始提交:MCP Server Demo(ERP/CRM/Bexell 三模组,动态 Bearer Token 鉴权)
This commit is contained in:
@@ -0,0 +1,243 @@
|
||||
-- ============================================================
|
||||
-- 试产排程评估及优化系统 - 数据库初始化脚本
|
||||
-- Database: bexell_schedule_ai (PostgreSQL)
|
||||
-- ============================================================
|
||||
|
||||
-- 1. 系统参数表
|
||||
CREATE TABLE IF NOT EXISTS sys_parameter (
|
||||
id SERIAL PRIMARY KEY,
|
||||
param_code VARCHAR(50) NOT NULL UNIQUE,
|
||||
param_name VARCHAR(100) NOT NULL,
|
||||
param_value VARCHAR(200) NOT NULL,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
-- 2. 设备产能表
|
||||
CREATE TABLE IF NOT EXISTS equipment_capacity (
|
||||
id SERIAL PRIMARY KEY,
|
||||
equipment_code VARCHAR(20) NOT NULL UNIQUE,
|
||||
equipment_name VARCHAR(100) NOT NULL,
|
||||
equipment_type VARCHAR(50) NOT NULL,
|
||||
max_capacity NUMERIC(10,2) NOT NULL,
|
||||
standard_capacity NUMERIC(10,2) NOT NULL,
|
||||
min_startup NUMERIC(10,2) NOT NULL,
|
||||
line_change_cost NUMERIC(10,2) NOT NULL,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
-- 3. 品号信息表
|
||||
CREATE TABLE IF NOT EXISTS product_info (
|
||||
id SERIAL PRIMARY KEY,
|
||||
product_code VARCHAR(50) NOT NULL UNIQUE,
|
||||
product_name VARCHAR(100) NOT NULL,
|
||||
specification VARCHAR(200) NOT NULL,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
-- 4. 品号设备产能负荷表
|
||||
CREATE TABLE IF NOT EXISTS product_equipment_load (
|
||||
id SERIAL PRIMARY KEY,
|
||||
product_code VARCHAR(50) NOT NULL REFERENCES product_info(product_code),
|
||||
product_name VARCHAR(100) NOT NULL,
|
||||
specification VARCHAR(200) NOT NULL,
|
||||
equipment_code VARCHAR(20) NOT NULL REFERENCES equipment_capacity(equipment_code),
|
||||
equipment_name VARCHAR(100) NOT NULL,
|
||||
standard_capacity NUMERIC(10,4) NOT NULL,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
UNIQUE(product_code, equipment_code)
|
||||
);
|
||||
|
||||
-- 5. 品号设备排产明细表
|
||||
CREATE TABLE IF NOT EXISTS product_equipment_schedule (
|
||||
id SERIAL PRIMARY KEY,
|
||||
schedule_id VARCHAR(20) NOT NULL UNIQUE,
|
||||
equipment_code VARCHAR(20) NOT NULL REFERENCES equipment_capacity(equipment_code),
|
||||
equipment_name VARCHAR(100) NOT NULL,
|
||||
equipment_type VARCHAR(50) NOT NULL,
|
||||
product_code VARCHAR(50) NOT NULL REFERENCES product_info(product_code),
|
||||
product_name VARCHAR(100) NOT NULL,
|
||||
specification VARCHAR(200) NOT NULL,
|
||||
quantity INTEGER NOT NULL,
|
||||
occupied_capacity NUMERIC(10,2) NOT NULL,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
-- 6. 设备实时产能实时数据视图
|
||||
CREATE OR REPLACE VIEW v_equipment_realtime_capacity AS
|
||||
SELECT
|
||||
e.equipment_type,
|
||||
e.equipment_code,
|
||||
e.equipment_name,
|
||||
e.max_capacity AS max_capacity_h,
|
||||
e.standard_capacity AS standard_capacity_h,
|
||||
COALESCE(SUM(s.occupied_capacity), 0) AS current_load_h
|
||||
FROM equipment_capacity e
|
||||
LEFT JOIN product_equipment_schedule s
|
||||
ON e.equipment_code = s.equipment_code
|
||||
GROUP BY e.id, e.equipment_type, e.equipment_code, e.equipment_name,
|
||||
e.max_capacity, e.standard_capacity;
|
||||
|
||||
-- ============================================================
|
||||
-- 种子数据
|
||||
-- ============================================================
|
||||
|
||||
-- 系统参数
|
||||
INSERT INTO sys_parameter (param_code, param_name, param_value) VALUES
|
||||
('sys_s_parameter', '影响系数', '0.1');
|
||||
|
||||
-- 设备产能
|
||||
INSERT INTO equipment_capacity (equipment_code, equipment_name, equipment_type, max_capacity, standard_capacity, min_startup, line_change_cost) VALUES
|
||||
('CY001','冲压机1','冲压',15,12,4,1),
|
||||
('CY002','冲压机2','冲压',15,12,4,1),
|
||||
('CY003','冲压机3','冲压',15,12,4,1),
|
||||
('CY004','冲压机4','冲压',15,12,4,1),
|
||||
('CY005','冲压机5','冲压',15,12,4,1),
|
||||
('CY006','冲压机6','冲压',15,12,4,1),
|
||||
('CY007','冲压机7','冲压',15,12,4,1),
|
||||
('CY008','冲压机8','冲压',15,12,4,1),
|
||||
('CY009','冲压机9','冲压',15,12,4,1),
|
||||
('CY010','冲压机10','冲压',15,12,4,1),
|
||||
('DN001','镀镍机1','表面',12,8,6,1.5),
|
||||
('DN002','镀镍机2','表面',12,8,6,1.5),
|
||||
('DN003','镀镍机3','表面',12,8,6,1.5),
|
||||
('DN004','镀镍机4','表面',12,8,6,1.5),
|
||||
('DN005','镀镍机5','表面',12,8,6,1.5),
|
||||
('DN006','镀镍机6','表面',12,8,6,1.5),
|
||||
('DN007','镀镍机7','表面',12,8,6,1.5),
|
||||
('DN008','镀镍机8','表面',12,8,6,1.5),
|
||||
('DN009','镀镍机9','表面',12,8,6,1.5),
|
||||
('DN010','镀镍机10','表面',12,8,6,1.5),
|
||||
('DN011','镀镍机11','表面',12,8,6,1.5),
|
||||
('DN012','镀镍机12','表面',12,8,6,1.5),
|
||||
('VJ001','AI视觉检测机1','检测',24,12,1,0.5),
|
||||
('VJ002','AI视觉检测机2','检测',24,12,1,0.5),
|
||||
('VJ003','AI视觉检测机3','检测',24,12,1,0.5),
|
||||
('VJ004','AI视觉检测机4','检测',24,12,1,0.5),
|
||||
('VJ005','AI视觉检测机5','检测',24,12,1,0.5);
|
||||
|
||||
-- 品号信息
|
||||
INSERT INTO product_info (product_code, product_name, specification) VALUES
|
||||
('A0001','电池钢壳','电池钢壳'),
|
||||
('A0002','电池底盖','电池底盖'),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳');
|
||||
|
||||
-- 品号设备产能负荷 (81 rows)
|
||||
INSERT INTO product_equipment_load (product_code, product_name, specification, equipment_code, equipment_name, standard_capacity) VALUES
|
||||
('A0001','电池钢壳','电池钢壳','CY001','冲压机1',0.2),
|
||||
('A0001','电池钢壳','电池钢壳','CY002','冲压机2',0.2),
|
||||
('A0001','电池钢壳','电池钢壳','CY003','冲压机3',0.2),
|
||||
('A0001','电池钢壳','电池钢壳','CY004','冲压机4',0.2),
|
||||
('A0001','电池钢壳','电池钢壳','CY005','冲压机5',0.2),
|
||||
('A0001','电池钢壳','电池钢壳','CY006','冲压机6',0.2),
|
||||
('A0001','电池钢壳','电池钢壳','CY007','冲压机7',0.2),
|
||||
('A0001','电池钢壳','电池钢壳','CY008','冲压机8',0.2),
|
||||
('A0001','电池钢壳','电池钢壳','CY009','冲压机9',0.2),
|
||||
('A0001','电池钢壳','电池钢壳','CY010','冲压机10',0.2),
|
||||
('A0001','电池钢壳','电池钢壳','DN001','镀镍机1',0.1),
|
||||
('A0001','电池钢壳','电池钢壳','DN002','镀镍机2',0.1),
|
||||
('A0001','电池钢壳','电池钢壳','DN003','镀镍机3',0.1),
|
||||
('A0001','电池钢壳','电池钢壳','DN004','镀镍机4',0.1),
|
||||
('A0001','电池钢壳','电池钢壳','DN005','镀镍机5',0.1),
|
||||
('A0001','电池钢壳','电池钢壳','DN006','镀镍机6',0.1),
|
||||
('A0001','电池钢壳','电池钢壳','DN007','镀镍机7',0.1),
|
||||
('A0001','电池钢壳','电池钢壳','DN008','镀镍机8',0.1),
|
||||
('A0001','电池钢壳','电池钢壳','DN009','镀镍机9',0.1),
|
||||
('A0001','电池钢壳','电池钢壳','DN010','镀镍机10',0.1),
|
||||
('A0001','电池钢壳','电池钢壳','DN011','镀镍机11',0.1),
|
||||
('A0001','电池钢壳','电池钢壳','DN012','镀镍机12',0.1),
|
||||
('A0001','电池钢壳','电池钢壳','VJ001','AI视觉检测机1',0.01),
|
||||
('A0001','电池钢壳','电池钢壳','VJ002','AI视觉检测机2',0.01),
|
||||
('A0001','电池钢壳','电池钢壳','VJ003','AI视觉检测机3',0.01),
|
||||
('A0001','电池钢壳','电池钢壳','VJ004','AI视觉检测机4',0.01),
|
||||
('A0001','电池钢壳','电池钢壳','VJ005','AI视觉检测机5',0.01),
|
||||
('A0002','电池底盖','电池底盖','CY001','冲压机1',0.2),
|
||||
('A0002','电池底盖','电池底盖','CY002','冲压机2',0.2),
|
||||
('A0002','电池底盖','电池底盖','CY003','冲压机3',0.2),
|
||||
('A0002','电池底盖','电池底盖','CY004','冲压机4',0.2),
|
||||
('A0002','电池底盖','电池底盖','CY005','冲压机5',0.2),
|
||||
('A0002','电池底盖','电池底盖','CY006','冲压机6',0.2),
|
||||
('A0002','电池底盖','电池底盖','CY007','冲压机7',0.2),
|
||||
('A0002','电池底盖','电池底盖','CY008','冲压机8',0.2),
|
||||
('A0002','电池底盖','电池底盖','CY009','冲压机9',0.2),
|
||||
('A0002','电池底盖','电池底盖','CY010','冲压机10',0.2),
|
||||
('A0002','电池底盖','电池底盖','DN001','镀镍机1',0.1),
|
||||
('A0002','电池底盖','电池底盖','DN002','镀镍机2',0.1),
|
||||
('A0002','电池底盖','电池底盖','DN003','镀镍机3',0.1),
|
||||
('A0002','电池底盖','电池底盖','DN004','镀镍机4',0.1),
|
||||
('A0002','电池底盖','电池底盖','DN005','镀镍机5',0.1),
|
||||
('A0002','电池底盖','电池底盖','DN006','镀镍机6',0.1),
|
||||
('A0002','电池底盖','电池底盖','DN007','镀镍机7',0.1),
|
||||
('A0002','电池底盖','电池底盖','DN008','镀镍机8',0.1),
|
||||
('A0002','电池底盖','电池底盖','DN009','镀镍机9',0.1),
|
||||
('A0002','电池底盖','电池底盖','DN010','镀镍机10',0.1),
|
||||
('A0002','电池底盖','电池底盖','DN011','镀镍机11',0.1),
|
||||
('A0002','电池底盖','电池底盖','DN012','镀镍机12',0.1),
|
||||
('A0002','电池底盖','电池底盖','VJ001','AI视觉检测机1',0.01),
|
||||
('A0002','电池底盖','电池底盖','VJ002','AI视觉检测机2',0.01),
|
||||
('A0002','电池底盖','电池底盖','VJ003','AI视觉检测机3',0.01),
|
||||
('A0002','电池底盖','电池底盖','VJ004','AI视觉检测机4',0.01),
|
||||
('A0002','电池底盖','电池底盖','VJ005','AI视觉检测机5',0.01),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','CY001','冲压机1',0.2),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','CY002','冲压机2',0.2),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','CY003','冲压机3',0.2),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','CY004','冲压机4',0.2),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','CY005','冲压机5',0.2),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','CY006','冲压机6',0.2),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','CY007','冲压机7',0.2),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','CY008','冲压机8',0.2),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','CY009','冲压机9',0.2),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','CY010','冲压机10',0.2),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','DN001','镀镍机1',0.1),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','DN002','镀镍机2',0.1),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','DN003','镀镍机3',0.1),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','DN004','镀镍机4',0.1),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','DN005','镀镍机5',0.1),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','DN006','镀镍机6',0.1),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','DN007','镀镍机7',0.1),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','DN008','镀镍机8',0.1),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','DN009','镀镍机9',0.1),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','DN010','镀镍机10',0.1),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','DN011','镀镍机11',0.1),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','DN012','镀镍机12',0.1),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','VJ001','AI视觉检测机1',0.01),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','VJ002','AI视觉检测机2',0.01),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','VJ003','AI视觉检测机3',0.01),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','VJ004','AI视觉检测机4',0.01),
|
||||
('A0003','圆柱电池钢壳','圆柱电池钢壳','VJ005','AI视觉检测机5',0.01);
|
||||
|
||||
-- 品号设备排产明细
|
||||
INSERT INTO product_equipment_schedule (schedule_id, equipment_code, equipment_name, equipment_type, product_code, product_name, specification, quantity, occupied_capacity) VALUES
|
||||
('2026080001','CY001','冲压机1','冲压','A0001','电池钢壳','电池钢壳',50,10),
|
||||
('2026080002','CY001','冲压机1','冲压','A0002','电池底盖','电池底盖',25,5),
|
||||
('2026080003','CY002','冲压机2','冲压','A0001','电池钢壳','电池钢壳',50,10),
|
||||
('2026080004','CY002','冲压机2','冲压','A0003','圆柱电池钢壳','圆柱电池钢壳',10,2),
|
||||
('2026080005','CY003','冲压机3','冲压','A0001','电池钢壳','电池钢壳',40,8),
|
||||
('2026080006','CY004','冲压机4','冲压','A0002','电池底盖','电池底盖',50,10),
|
||||
('2026080007','CY005','冲压机5','冲压','A0001','电池钢壳','电池钢壳',75,15),
|
||||
('2026080008','CY006','冲压机6','冲压','A0003','圆柱电池钢壳','圆柱电池钢壳',60,12),
|
||||
('2026080009','CY007','冲压机7','冲压','A0001','电池钢壳','电池钢壳',45,9),
|
||||
('2026080010','CY008','冲压机8','冲压','A0002','电池底盖','电池底盖',50,10),
|
||||
('2026080011','CY009','冲压机9','冲压','A0002','电池底盖','电池底盖',50,10),
|
||||
('2026080012','CY010','冲压机10','冲压','A0003','圆柱电池钢壳','圆柱电池钢壳',55,11),
|
||||
('2026080013','DN001','镀镍机1','表面','A0001','电池钢壳','电池钢壳',100,10),
|
||||
('2026080014','DN002','镀镍机2','表面','A0003','圆柱电池钢壳','圆柱电池钢壳',90,9),
|
||||
('2026080015','DN003','镀镍机3','表面','A0001','电池钢壳','电池钢壳',110,11),
|
||||
('2026080016','DN004','镀镍机4','表面','A0002','电池底盖','电池底盖',80,8),
|
||||
('2026080017','DN005','镀镍机5','表面','A0002','电池底盖','电池底盖',60,6),
|
||||
('2026080018','DN006','镀镍机6','表面','A0003','圆柱电池钢壳','圆柱电池钢壳',100,10),
|
||||
('2026080019','DN007','镀镍机7','表面','A0001','电池钢壳','电池钢壳',80,8),
|
||||
('2026080020','DN008','镀镍机8','表面','A0003','圆柱电池钢壳','圆柱电池钢壳',100,10),
|
||||
('2026080021','DN009','镀镍机9','表面','A0001','电池钢壳','电池钢壳',60,6),
|
||||
('2026080022','DN010','镀镍机10','表面','A0002','电池底盖','电池底盖',70,7),
|
||||
('2026080023','DN011','镀镍机11','表面','A0002','电池底盖','电池底盖',70,7),
|
||||
('2026080024','DN012','镀镍机12','表面','A0003','圆柱电池钢壳','圆柱电池钢壳',70,7),
|
||||
('2026080025','VJ001','AI视觉检测机1','检测','A0001','电池钢壳','电池钢壳',800,8),
|
||||
('2026080026','VJ002','AI视觉检测机2','检测','A0002','电池底盖','电池底盖',800,8),
|
||||
('2026080027','VJ003','AI视觉检测机3','检测','A0002','电池底盖','电池底盖',800,8),
|
||||
('2026080028','VJ004','AI视觉检测机4','检测','A0003','圆柱电池钢壳','圆柱电池钢壳',900,9),
|
||||
('2026080029','VJ005','AI视觉检测机5','检测','A0003','圆柱电池钢壳','圆柱电池钢壳',1000,10);
|
||||
Reference in New Issue
Block a user