From 8ead250025081f33974de354a1b18534f92fdc62 Mon Sep 17 00:00:00 2001 From: let5sne Date: Fri, 3 Jul 2026 20:55:38 +0800 Subject: [PATCH] chore(aihr): add org/person static snapshot seed for demo MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit aihr_org_snapshot 表+两个住宅项目22人快照(项目经理/主管/一线三层), 支撑按项目看人数叙事;reset-dev-db.sh 纳入该脚本。 --- .../script/sql/aihr_org_snapshot_mysql8.sql | 51 +++++++++++++++++++ scripts/reset-dev-db.sh | 1 + 2 files changed, 52 insertions(+) create mode 100644 backend/script/sql/aihr_org_snapshot_mysql8.sql diff --git a/backend/script/sql/aihr_org_snapshot_mysql8.sql b/backend/script/sql/aihr_org_snapshot_mysql8.sql new file mode 100644 index 00000000..21295a5b --- /dev/null +++ b/backend/script/sql/aihr_org_snapshot_mysql8.sql @@ -0,0 +1,51 @@ +-- ---------------------------- +-- AI HR 组织/人员静态快照(BRD 第4节:外部同步只读消费,Demo 用快照兜底,不依赖采购系统实时 API) +-- 演示叙事:按所管项目层级看不同项目人数;ext_party_id 为外部主体 ID 约定(Demo 用工号占位) +-- ---------------------------- + +DROP TABLE IF EXISTS `aihr_org_snapshot`; +CREATE TABLE `aihr_org_snapshot` ( + `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键', + `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', + `project_code` varchar(50) NOT NULL COMMENT '项目编码(数据权限范围主体,D1)', + `project_name` varchar(100) NOT NULL COMMENT '项目名称', + `dept_name` varchar(100) DEFAULT NULL COMMENT '部门/条线', + `ext_party_id` varchar(100) NOT NULL COMMENT '外部主体ID(只存ID,不回写外部系统)', + `person_name` varchar(100) DEFAULT NULL COMMENT '姓名(Demo 快照允许,生产走脱敏闸门G3)', + `position_name` varchar(100) DEFAULT NULL COMMENT '岗位', + `position_level` varchar(30) DEFAULT NULL COMMENT '岗位层级(一线/主管/项目经理)', + `employment_status` varchar(20) DEFAULT 'active' COMMENT '在职状态', + `snapshot_date` date DEFAULT NULL COMMENT '快照日期', + `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + PRIMARY KEY (`id`), + UNIQUE KEY `uk_aihr_org_party` (`tenant_id`, `ext_party_id`), + KEY `idx_aihr_org_project` (`tenant_id`, `project_code`, `position_level`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='组织人员静态快照(Demo)'; + +INSERT INTO `aihr_org_snapshot` + (`tenant_id`, `project_code`, `project_name`, `dept_name`, `ext_party_id`, `person_name`, `position_name`, `position_level`, `snapshot_date`) +VALUES + -- 项目一:翡翠湾(住宅,试点项目) + ('000000', 'PRJ-FCW', '翡翠湾项目', '项目管理', 'EMP-1001', '王敏', '项目经理', '项目经理', '2026-07-03'), + ('000000', 'PRJ-FCW', '翡翠湾项目', '客服条线', 'EMP-1002', '李婷', '客服主管', '主管', '2026-07-03'), + ('000000', 'PRJ-FCW', '翡翠湾项目', '客服条线', 'EMP-1003', '张倩', '物业管家', '一线', '2026-07-03'), + ('000000', 'PRJ-FCW', '翡翠湾项目', '客服条线', 'EMP-1004', '刘洋', '物业管家', '一线', '2026-07-03'), + ('000000', 'PRJ-FCW', '翡翠湾项目', '客服条线', 'EMP-1005', '陈雪', '物业管家', '一线', '2026-07-03'), + ('000000', 'PRJ-FCW', '翡翠湾项目', '客服条线', 'EMP-1006', '赵磊', '客服专员', '一线', '2026-07-03'), + ('000000', 'PRJ-FCW', '翡翠湾项目', '秩序条线', 'EMP-1007', '孙强', '秩序主管', '主管', '2026-07-03'), + ('000000', 'PRJ-FCW', '翡翠湾项目', '秩序条线', 'EMP-1008', '周军', '秩序维护员', '一线', '2026-07-03'), + ('000000', 'PRJ-FCW', '翡翠湾项目', '秩序条线', 'EMP-1009', '吴斌', '秩序维护员', '一线', '2026-07-03'), + ('000000', 'PRJ-FCW', '翡翠湾项目', '工程条线', 'EMP-1010', '郑伟', '工程主管', '主管', '2026-07-03'), + ('000000', 'PRJ-FCW', '翡翠湾项目', '工程条线', 'EMP-1011', '冯健', '维修工', '一线', '2026-07-03'), + ('000000', 'PRJ-FCW', '翡翠湾项目', '环境条线', 'EMP-1012', '褚芳', '保洁员', '一线', '2026-07-03'), + ('000000', 'PRJ-FCW', '翡翠湾项目', '环境条线', 'EMP-1013', '卫红', '保洁员', '一线', '2026-07-03'), + -- 项目二:云山府(住宅,试点项目) + ('000000', 'PRJ-YSF', '云山府项目', '项目管理', 'EMP-2001', '蒋涛', '项目经理', '项目经理', '2026-07-03'), + ('000000', 'PRJ-YSF', '云山府项目', '客服条线', 'EMP-2002', '沈丽', '客服主管', '主管', '2026-07-03'), + ('000000', 'PRJ-YSF', '云山府项目', '客服条线', 'EMP-2003', '韩雨', '物业管家', '一线', '2026-07-03'), + ('000000', 'PRJ-YSF', '云山府项目', '客服条线', 'EMP-2004', '杨柳', '物业管家', '一线', '2026-07-03'), + ('000000', 'PRJ-YSF', '云山府项目', '客服条线', 'EMP-2005', '朱鹏', '客服专员', '一线', '2026-07-03'), + ('000000', 'PRJ-YSF', '云山府项目', '秩序条线', 'EMP-2006', '秦峰', '秩序主管', '主管', '2026-07-03'), + ('000000', 'PRJ-YSF', '云山府项目', '秩序条线', 'EMP-2007', '尤浩', '秩序维护员', '一线', '2026-07-03'), + ('000000', 'PRJ-YSF', '云山府项目', '工程条线', 'EMP-2008', '许刚', '维修工', '一线', '2026-07-03'), + ('000000', 'PRJ-YSF', '云山府项目', '环境条线', 'EMP-2009', '何梅', '保洁员', '一线', '2026-07-03'); diff --git a/scripts/reset-dev-db.sh b/scripts/reset-dev-db.sh index 7c8e3005..98f69eec 100755 --- a/scripts/reset-dev-db.sh +++ b/scripts/reset-dev-db.sh @@ -22,6 +22,7 @@ docker exec -i wygj-mysql mysql -uroot -proot --default-character-set=utf8mb4 ry docker exec -i wygj-mysql mysql -uroot -proot --default-character-set=utf8mb4 ry-vue < "$ROOT_DIR/backend/script/sql/aihr_knowledge_mysql8.sql" docker exec -i wygj-mysql mysql -uroot -proot --default-character-set=utf8mb4 ry-vue < "$ROOT_DIR/backend/script/sql/aihr_model_mysql8.sql" docker exec -i wygj-mysql mysql -uroot -proot --default-character-set=utf8mb4 ry-vue < "$ROOT_DIR/backend/script/sql/aihr_practice_mysql8.sql" +docker exec -i wygj-mysql mysql -uroot -proot --default-character-set=utf8mb4 ry-vue < "$ROOT_DIR/backend/script/sql/aihr_org_snapshot_mysql8.sql" docker exec wygj-mysql mysql -uroot -proot --default-character-set=utf8mb4 ry-vue \ -e "select count(*) as tables_count from information_schema.tables where table_schema = 'ry-vue';"