|
|
@@ -0,0 +1,155 @@
|
|
|
+-- 初始化测试数据
|
|
|
+-- 目标数据库用户: ZJRS_YWXT
|
|
|
+
|
|
|
+-- 清理旧数据,防止主键冲突
|
|
|
+-- 删除 FW_OPERATOR 时,同时根据 OPERID 和 LOGINID 删除,防止 UK_FW_OPERATOR_LOGINID 冲突
|
|
|
+DELETE FROM ZJRS_YWXT.FW_OPERATOR WHERE OPERID IN ('admin', 'test', 'admin_123456') OR LOGINID IN ('admin', 'test', 'admin_123456');
|
|
|
+-- 删除关联权限时,需要先找出可能存在的 OPERID(如果是通过 LOGINID 查找到的旧数据)
|
|
|
+-- 这里简单起见,还是根据 OPERID 删除,但在生产环境中应该更严谨
|
|
|
+DELETE FROM ZJRS_YWXT.FW_OPERATOR2RIGHT WHERE OPERID IN ('admin', 'test', 'admin_123456');
|
|
|
+-- 同时删除即将插入的 ID 1, 2, 3,防止主键冲突
|
|
|
+DELETE FROM ZJRS_YWXT.FW_OPERATOR2RIGHT WHERE ID IN (1, 2, 3);
|
|
|
+DELETE FROM ZJRS_YWXT.FW_RIGHT WHERE RIGHTID IN ('01', '0101', '0102');
|
|
|
+-- 删除旧的字典数据,避免违反唯一约束 UK_AAA100_ITEMCODE
|
|
|
+-- 同时删除即将插入的主键 ID,防止 PK_AA10 冲突
|
|
|
+DELETE FROM ZJRS_YWXT.AA10 WHERE AAZ093 IN (1001, 1002, 1003, 2001, 2002, 2003, 2004);
|
|
|
+DELETE FROM ZJRS_YWXT.AA10 WHERE AAA100 = 'OPERTYPE' AND ITEMCODE IN ('1', '2', '3');
|
|
|
+DELETE FROM ZJRS_YWXT.AA10 WHERE AAA100 = 'RIGHTTYPE' AND ITEMCODE IN ('1', '2');
|
|
|
+DELETE FROM ZJRS_YWXT.AA10 WHERE AAA100 = 'AUTHTYPE' AND ITEMCODE IN ('1', '2');
|
|
|
+
|
|
|
+DELETE FROM ZJRS_YWXT.FW_OPERATEUNIT WHERE OPERUNITID = 1001;
|
|
|
+DELETE FROM ZJRS_YWXT.FW_SYSORG WHERE BAE001 = '440800';
|
|
|
+
|
|
|
+-- 清理异常日志表,防止 ID 冲突 (ORA-00001: PK_FW_LOG4EXCEPTION_ID)
|
|
|
+DELETE FROM ZJRS_YWXT.FW_LOG4EXCEPTION;
|
|
|
+
|
|
|
+-- 清理登录日志表 (可选,保持环境干净)
|
|
|
+DELETE FROM ZJRS_YWXT.FW_LOG4LOGIN;
|
|
|
+
|
|
|
+-- 解决 UNSAFE_VALIDATEFORM 配置问题
|
|
|
+-- 如果数据库中有导致空指针的配置,将其更新为安全值
|
|
|
+UPDATE AA01 SET AAA005 = 'NEVER_MATCH_THIS_TOKEN' WHERE AAA001 = 'UNSAFE_VALIDATEFORM' AND (AAA005 IS NULL OR AAA005 = '');
|
|
|
+
|
|
|
+COMMIT;
|
|
|
+
|
|
|
+-- 1. 插入经办单位 (Organization Unit)
|
|
|
+-- OPERUNITID: 1001
|
|
|
+-- OPERUNITNAME: 湛江市人社局
|
|
|
+INSERT INTO ZJRS_YWXT.FW_OPERATEUNIT (BAE001, OPERUNITID, OPERUNITNAME, OPERUNITTYPE, AAE100, BAE006, BAE003)
|
|
|
+VALUES ('440800', 1001, '湛江市人社局', '1', '1', 'system', 20231027000000);
|
|
|
+
|
|
|
+-- 2. 插入字典数据 (AA10) - 操作员类型
|
|
|
+-- OPERTYPE: 1-超级管理员, 2-系统管理员, 3-普通操作员
|
|
|
+INSERT INTO ZJRS_YWXT.AA10 (AAZ093, ITEMCODE, AAA102, AAA100, AAE100, SORTNO)
|
|
|
+VALUES (1001, '1', '超级管理员', 'OPERTYPE', '1', '1');
|
|
|
+INSERT INTO ZJRS_YWXT.AA10 (AAZ093, ITEMCODE, AAA102, AAA100, AAE100, SORTNO)
|
|
|
+VALUES (1002, '2', '系统管理员', 'OPERTYPE', '1', '2');
|
|
|
+INSERT INTO ZJRS_YWXT.AA10 (AAZ093, ITEMCODE, AAA102, AAA100, AAE100, SORTNO)
|
|
|
+VALUES (1003, '3', '普通操作员', 'OPERTYPE', '1', '3');
|
|
|
+
|
|
|
+-- 3. 插入操作员 (User)
|
|
|
+-- 用户1: admin / 密码: admin (明文)
|
|
|
+-- PWENCRYPT: 0 (表示未加密)
|
|
|
+-- OPERTYPE: 2 (系统管理员)
|
|
|
+INSERT INTO ZJRS_YWXT.FW_OPERATOR (
|
|
|
+ BAE001, OPERUNITID, OPERID, OPERNAME, OPERTYPE, LOGINID,
|
|
|
+ PASSWORD, PWENCRYPT, AAE100, BAE006, BAE003, OPERTYPE2
|
|
|
+) VALUES (
|
|
|
+ '440800', 1001, 'admin', '系统管理员', '2', 'admin',
|
|
|
+ 'admin', '0', '1', 'system', 20231027000000, '0'
|
|
|
+);
|
|
|
+
|
|
|
+-- 用户2: test / 密码: test (明文)
|
|
|
+-- PWENCRYPT: 0 (表示未加密,如果系统支持明文登录)
|
|
|
+INSERT INTO ZJRS_YWXT.FW_OPERATOR (
|
|
|
+ BAE001, OPERUNITID, OPERID, OPERNAME, OPERTYPE, LOGINID,
|
|
|
+ PASSWORD, PWENCRYPT, AAE100, BAE006, BAE003, OPERTYPE2
|
|
|
+) VALUES (
|
|
|
+ '440800', 1001, 'test', '测试用户', '3', 'test',
|
|
|
+ 'test', '0', '1', 'system', 20231027000000, '0'
|
|
|
+);
|
|
|
+
|
|
|
+-- 用户3: admin_123456 / 密码: 123456 (明文)
|
|
|
+INSERT INTO ZJRS_YWXT.FW_OPERATOR (
|
|
|
+ BAE001, OPERUNITID, OPERID, OPERNAME, OPERTYPE, LOGINID,
|
|
|
+ PASSWORD, PWENCRYPT, AAE100, BAE006, BAE003, OPERTYPE2
|
|
|
+) VALUES (
|
|
|
+ '440800', 1001, 'admin_123456', '管理员123456', '2', 'admin_123456',
|
|
|
+ '123456', '0', '1', 'system', 20231027000000, '0'
|
|
|
+);
|
|
|
+
|
|
|
+COMMIT;
|
|
|
+
|
|
|
+-- =================================================================
|
|
|
+-- 修复 ORA-00904: "LOCATE" / "F_LENGTH" 无效标识符问题
|
|
|
+-- 原因:代码中使用了 MySQL/自定义函数,Oracle 中不存在
|
|
|
+-- 解决方案:在数据库中创建兼容函数
|
|
|
+-- =================================================================
|
|
|
+
|
|
|
+-- 1. 创建 LOCATE 兼容函数 (模拟 MySQL LOCATE)
|
|
|
+CREATE OR REPLACE FUNCTION LOCATE( substr IN VARCHAR2, str IN VARCHAR2 ) RETURN NUMBER IS
|
|
|
+BEGIN
|
|
|
+ -- 调用 Oracle 内置的 INSTR,注意参数互换位置
|
|
|
+ RETURN INSTR(str, substr);
|
|
|
+END LOCATE;
|
|
|
+/
|
|
|
+
|
|
|
+-- 2. 创建 f_length 兼容函数 (模拟 LENGTH)
|
|
|
+CREATE OR REPLACE FUNCTION f_length( str IN VARCHAR2 ) RETURN NUMBER IS
|
|
|
+BEGIN
|
|
|
+ RETURN LENGTH(str);
|
|
|
+END f_length;
|
|
|
+/
|
|
|
+
|
|
|
+/*
|
|
|
+ ================================================================================
|
|
|
+ 需从正式环境提取数据的表清单 (System Configuration & Framework Tables)
|
|
|
+ 请使用数据导出工具 (如 PL/SQL Developer, DataPump) 导出以下表的数据并在测试环境导入。
|
|
|
+ ================================================================================
|
|
|
+
|
|
|
+ 1. 系统参数与字典 (System Parameters & Dictionaries)
|
|
|
+ ----------------------------------------------------
|
|
|
+ - AA01 (系统参数表 - System Parameters)
|
|
|
+ - AA10 (数据字典表 - Data Dictionary)
|
|
|
+ - FW_SYSMESSAGE (系统消息提示信息 - System Messages)
|
|
|
+ - FW_HELP (系统帮助信息 - System Help)
|
|
|
+ - FW_BIGDICT_MAINTAIN (大字典维护表 - Big Dictionary)
|
|
|
+
|
|
|
+ 2. 权限与组织架构 (Rights, Roles & Organization)
|
|
|
+ ----------------------------------------------------
|
|
|
+ - FW_SYSORG (系统机构表 - System Organization)
|
|
|
+ - FW_OPERATEUNIT (经办单位表 - Operating Units)
|
|
|
+ - FW_OPERATOR (操作员表 - Operators)
|
|
|
+ - FW_RIGHT (菜单与权限表 - Menus & Rights)
|
|
|
+ - FW_RIGHT2RESOURCE (权限资源关联表 - Rights to Resources)
|
|
|
+ - FW_ROLE (角色表 - Roles)
|
|
|
+ - FW_ROLE2RIGHT (角色权限关联表 - Roles to Rights)
|
|
|
+ - FW_OPERATOR2RIGHT (用户权限关联表 - Users to Rights)
|
|
|
+ - FW_OPERATOR2ROLE (用户角色关联表 - Users to Roles)
|
|
|
+
|
|
|
+ 3. 界面配置 (UI Configuration)
|
|
|
+ ----------------------------------------------------
|
|
|
+ - FW_GENLIST_CONF (通用列表配置表 - General List Config)
|
|
|
+ - FW_GENTBL_CONF (通用表单配置表 - General Table Config)
|
|
|
+ - FW_QUERYSQL (通用查询SQL表 - General Query SQL)
|
|
|
+
|
|
|
+ 4. 报表打印 (Reporting & Printing)
|
|
|
+ ----------------------------------------------------
|
|
|
+ - FW_PRINT_CONF (打印配置表 - Print Configuration)
|
|
|
+ - FW_PRINT_CLIENTCONFIG (客户端打印配置 - Client Print Config)
|
|
|
+ - FW_REPORT_CONF (报表配置表 - Report Configuration)
|
|
|
+
|
|
|
+ 5. 工作流 (Workflow - If applicable)
|
|
|
+ ----------------------------------------------------
|
|
|
+ - WF_ACTION_DEF (工作流动作定义 - Workflow Actions)
|
|
|
+ - WF_ACTION_DEF2TASK (工作流任务关联 - Workflow Tasks)
|
|
|
+ - FW_WF_DESIGNER (工作流设计器 - Workflow Designer)
|
|
|
+
|
|
|
+ 6. 其他 (Others)
|
|
|
+ ----------------------------------------------------
|
|
|
+ - FW_YXZLINFO_CONF (影像资料配置 - Image Config)
|
|
|
+ - FW_LOG4BUSS (业务日志 - Business Logs, optional structure)
|
|
|
+
|
|
|
+ 导出命令参考 (Oracle Exp):
|
|
|
+ exp userid=ZJRS_YWXT/PASSWORD tables=(AA01,AA10,FW_SYSMESSAGE,FW_HELP,FW_BIGDICT_MAINTAIN,FW_SYSORG,FW_OPERATEUNIT,FW_OPERATOR,FW_RIGHT,FW_RIGHT2RESOURCE,FW_ROLE,FW_ROLE2RIGHT,FW_OPERATOR2RIGHT,FW_OPERATOR2ROLE,FW_GENLIST_CONF,FW_GENTBL_CONF,FW_QUERYSQL,FW_PRINT_CONF,FW_PRINT_CLIENTCONFIG,FW_REPORT_CONF,WF_ACTION_DEF,WF_ACTION_DEF2TASK,FW_WF_DESIGNER,FW_YXZLINFO_CONF) file=init_data.dmp
|
|
|
+*/
|