Files
yidaima/RuoYi-Vue/sql/front_project_upgrade.sql
2026-05-24 13:29:42 +08:00

130 lines
5.4 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

-- =================================================
-- EasyCode front_project incremental upgrade
-- Run once on existing front workbench databases created before the current
-- front_project schema. Safe to run repeatedly.
-- =================================================
set @front_project_requirement_keyword_exists := (
select count(1)
from information_schema.columns
where table_schema = database()
and table_name = 'front_project'
and column_name = 'requirement_keyword'
);
set @front_project_requirement_keyword_sql := if(
@front_project_requirement_keyword_exists = 0,
'alter table front_project add column requirement_keyword varchar(1000) default '''' comment ''需求关键词'' after project_desc',
'select ''front_project.requirement_keyword already exists'''
);
prepare front_project_requirement_keyword_stmt from @front_project_requirement_keyword_sql;
execute front_project_requirement_keyword_stmt;
deallocate prepare front_project_requirement_keyword_stmt;
set @front_project_industry_template_exists := (
select count(1)
from information_schema.columns
where table_schema = database()
and table_name = 'front_project'
and column_name = 'industry_template'
);
set @front_project_industry_template_sql := if(
@front_project_industry_template_exists = 0,
'alter table front_project add column industry_template varchar(50) default '''' comment ''行业模板'' after requirement_keyword',
'select ''front_project.industry_template already exists'''
);
prepare front_project_industry_template_stmt from @front_project_industry_template_sql;
execute front_project_industry_template_stmt;
deallocate prepare front_project_industry_template_stmt;
set @front_project_app_blueprint_exists := (
select count(1)
from information_schema.columns
where table_schema = database()
and table_name = 'front_project'
and column_name = 'app_blueprint'
);
set @front_project_app_blueprint_sql := if(
@front_project_app_blueprint_exists = 0,
'alter table front_project add column app_blueprint longtext comment ''应用蓝图草稿JSON'' after preview_status',
'select ''front_project.app_blueprint already exists'''
);
prepare front_project_app_blueprint_stmt from @front_project_app_blueprint_sql;
execute front_project_app_blueprint_stmt;
deallocate prepare front_project_app_blueprint_stmt;
set @front_project_er_diagram_exists := (
select count(1)
from information_schema.columns
where table_schema = database()
and table_name = 'front_project'
and column_name = 'er_diagram'
);
set @front_project_er_diagram_sql := if(
@front_project_er_diagram_exists = 0,
'alter table front_project add column er_diagram longtext comment ''ER图草稿JSON'' after app_blueprint',
'select ''front_project.er_diagram already exists'''
);
prepare front_project_er_diagram_stmt from @front_project_er_diagram_sql;
execute front_project_er_diagram_stmt;
deallocate prepare front_project_er_diagram_stmt;
set @front_project_business_blueprint_exists := (
select count(1)
from information_schema.columns
where table_schema = database()
and table_name = 'front_project'
and column_name = 'business_blueprint'
);
set @front_project_business_blueprint_sql := if(
@front_project_business_blueprint_exists = 0,
'alter table front_project add column business_blueprint longtext comment ''业务蓝图草稿JSON'' after er_diagram',
'select ''front_project.business_blueprint already exists'''
);
prepare front_project_business_blueprint_stmt from @front_project_business_blueprint_sql;
execute front_project_business_blueprint_stmt;
deallocate prepare front_project_business_blueprint_stmt;
set @front_project_frontend_enabled_exists := (
select count(1)
from information_schema.columns
where table_schema = database()
and table_name = 'front_project'
and column_name = 'frontend_enabled'
);
set @front_project_frontend_enabled_sql := if(
@front_project_frontend_enabled_exists = 0,
'alter table front_project add column frontend_enabled char(1) default ''1'' comment ''是否生成前台前端1是 0否'' after back_framework',
'select ''front_project.frontend_enabled already exists'''
);
prepare front_project_frontend_enabled_stmt from @front_project_frontend_enabled_sql;
execute front_project_frontend_enabled_stmt;
deallocate prepare front_project_frontend_enabled_stmt;
create table if not exists front_project_module (
id bigint(20) not null auto_increment comment 'id',
project_id bigint(20) not null comment '前台项目ID',
module_id bigint(20) not null comment '功能模块ID',
status char(1) default '0' comment '状态0正常 1停用',
create_time datetime default null comment '创建时间',
update_time datetime default null comment '更新时间',
remark varchar(500) default null comment '备注',
primary key (id),
unique key uk_front_project_module (project_id, module_id),
key idx_front_project_module_project_id (project_id),
key idx_front_project_module_module_id (module_id),
constraint fk_front_project_module_project foreign key (project_id) references front_project(project_id),
constraint fk_front_project_module_module foreign key (module_id) references sys_module(module_id)
) engine=innodb auto_increment=100 default charset=utf8mb4 comment='前台项目功能模块关系';