统一身份认证用户数据同步 - 字段映射说明
1. 概述
将校园管理系统(hzdyjs_xg)的组织与用户数据,定时同步到统一身份认证中间库 6 张标准表,供第三方平台拉取。
| 目标表 |
说明 |
数据源 |
GXXX_YXSDWJBSJZL |
院系所单位 |
sys_dept |
GXJG_JZGJCSJZLB |
教职工基础 |
sys_user(account_type='1') |
GXJG_GRTXFSZL |
教职工通讯 |
sys_user(account_type='1') |
GXXS_XSJBSJZL |
学生基础 |
xg_student_msg |
GXXS_GRTXZL |
学生通讯 |
xg_student_msg |
ZFTAL_XTGL_ERRLOG |
同步错误日志 |
同步脚本写入 |
不同步字段:zp(照片 BLOB)按约定不处理。
2. 单位表 GXXX_YXSDWJBSJZL
| 目标字段 |
源字段 |
转换规则 |
| dwh |
sys_dept.dept_id |
RIGHT(CAST(dept_id AS CHAR), 10)(雪花ID超长,取后10位) |
| dwmc |
sys_dept.dept_name |
截断至60字符 |
| lsdwh |
sys_dept.parent_id |
parent_id=0 时 NULL,否则取后10位 |
| dwyxbs |
status + del_flag |
正常且未删除='1',否则='0' |
| zhgxsj |
update_time / create_time |
YYYYMMDDhhmmss |
| scbz |
del_flag |
'0'→'n','1'→'y' |
3. 教职工表 GXJG_JZGJCSJZLB
| 目标字段 |
源字段 |
转换规则 |
| gh |
sys_user.user_name |
工号,截断至20字符 |
| dwh |
sys_user.dept_id |
取后10位 |
| xm |
sys_user.nick_name |
姓名 |
| xbm |
sys_user.sex |
0男→'1',1女→'2',其他→'0' |
| dqztm |
sys_user.status |
0正常→'11',停用→'99' |
| zhgxsj |
update_time / create_time |
YYYYMMDDhhmmss |
| scbz |
del_flag |
'0'→'n','1'→'y' |
4. 教职工通讯表 GXJG_GRTXFSZL
| 目标字段 |
源字段 |
转换规则 |
| id |
sys_user.user_name |
主键,用工号 |
| gh |
sys_user.user_name |
工号 |
| yddh |
sys_user.phonenumber |
手机号 |
| dzxx |
sys_user.email |
邮箱 |
| zhgxsj |
update_time / create_time |
YYYYMMDDhhmmss |
| scbz |
del_flag |
'0'→'n','1'→'y' |
5. 学生表 GXXS_XSJBSJZL
| 目标字段 |
源字段 |
转换规则 |
| xh |
xg_student_msg.student_no |
学号 |
| xm |
name |
姓名 |
| ywxm |
name_english |
英文名 |
| cym |
former_name |
曾用名 |
| xbm |
gender |
0男→'1',1女→'2' |
| csrq |
birth_date |
YYYYMMDD |
| jg |
native_place |
籍贯 |
| sfzjlxm |
- |
固定 '1'(身份证) |
| sfzjh |
id_card |
身份证号 |
| zzmmm |
political_status |
政治面貌 |
| xxm |
blood_type |
血型 |
| sfdszn |
is_single_child |
1→'1',0→'0' |
| dwh |
college_id |
学院ID |
| szbh |
xg_class_msg.class_code |
关联班级表取班级代码 |
| sfzx |
student_status |
1/2/3→'1'在校,其他→'0' |
| sfyby |
student_status |
5毕业→'1',其他→'0' |
| zhgxsj |
update_time / create_time |
YYYYMMDDhhmmss |
| scbz |
deleted |
0→'n',1→'y' |
6. 学生通讯表 GXXS_GRTXZL
| 目标字段 |
源字段 |
转换规则 |
| xh |
student_no |
学号 |
| yzbm |
postal_code |
邮编 |
| txdz |
current_address / home_address |
优先现住址 |
| yddh |
phone |
手机 |
| dzxx |
email |
邮箱 |
| jstxh |
qq / wechat |
优先QQ |
| zhgxsj |
update_time / create_time |
YYYYMMDDhhmmss |
| scbz |
deleted |
0→'n',1→'y' |
7. 注意事项
- 单位号 dwh 长度限制:第三方表
dwh 仅 10 位,而 sys_dept.dept_id 为雪花ID(19位),当前取后10位;若对方有编码规范需另行映射。
- 增量同步:基于源表
update_time / create_time,状态记录在 .sync_state。
- 全量同步:设置
SYNC_MODE=full 或执行 ./sync_user_to_sso.sh --full --once。
- 生产 Oracle:
TARGET_DB_TYPE=oracle 时,由 oracle_gen_merge.py 从 MySQL 生成 MERGE SQL,再经 sqlplus 写入中间库;verify_sync.sh 可直接校验 Oracle 表记录数。
版本: v1.1.0
更新时间: 2026-08-24