1. 修复用户信息未同步人力资源编号的问题
This commit is contained in:
@@ -4453,6 +4453,7 @@ CREATE TABLE system_users (
|
|||||||
username varchar(30) NOT NULL,
|
username varchar(30) NOT NULL,
|
||||||
password varchar(100) DEFAULT '' NULL,
|
password varchar(100) DEFAULT '' NULL,
|
||||||
nickname varchar(30) NOT NULL,
|
nickname varchar(30) NOT NULL,
|
||||||
|
workcode varchar(64) DEFAULT NULL NULL,
|
||||||
remark varchar(500) DEFAULT NULL NULL,
|
remark varchar(500) DEFAULT NULL NULL,
|
||||||
post_ids varchar(255) DEFAULT NULL NULL,
|
post_ids varchar(255) DEFAULT NULL NULL,
|
||||||
email varchar(50) DEFAULT '' NULL,
|
email varchar(50) DEFAULT '' NULL,
|
||||||
@@ -4474,6 +4475,7 @@ COMMENT ON COLUMN system_users.id IS '用户ID';
|
|||||||
COMMENT ON COLUMN system_users.username IS '用户账号';
|
COMMENT ON COLUMN system_users.username IS '用户账号';
|
||||||
COMMENT ON COLUMN system_users.password IS '密码';
|
COMMENT ON COLUMN system_users.password IS '密码';
|
||||||
COMMENT ON COLUMN system_users.nickname IS '用户昵称';
|
COMMENT ON COLUMN system_users.nickname IS '用户昵称';
|
||||||
|
COMMENT ON COLUMN system_users.workcode IS '工号';
|
||||||
COMMENT ON COLUMN system_users.remark IS '备注';
|
COMMENT ON COLUMN system_users.remark IS '备注';
|
||||||
COMMENT ON COLUMN system_users.post_ids IS '岗位编号数组';
|
COMMENT ON COLUMN system_users.post_ids IS '岗位编号数组';
|
||||||
COMMENT ON COLUMN system_users.email IS '用户邮箱';
|
COMMENT ON COLUMN system_users.email IS '用户邮箱';
|
||||||
@@ -4496,24 +4498,24 @@ COMMENT ON TABLE system_users IS '用户信息表';
|
|||||||
-- ----------------------------
|
-- ----------------------------
|
||||||
-- @formatter:off
|
-- @formatter:off
|
||||||
-- SET IDENTITY_INSERT system_users ON;
|
-- SET IDENTITY_INSERT system_users ON;
|
||||||
INSERT INTO system_users (id, username, password, nickname, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (1, 'admin', '$2a$04$KljJDa/LK7QfDm0lF5OhuePhlPfjRH3tB2Wu351Uidz.oQGJXevPi', '后台管理', '管理员', '[1,2]', '11aoteman@126.com', '18818260277', 2, 'http://test.zt.iocoder.cn/test/20250502/avatar_1746154660449.png', 0, '0:0:0:0:0:0:0:1', '2025-05-10 18:03:15', 'admin', '2021-01-05 17:03:47', NULL, '2025-05-10 18:03:15', '0', 1);
|
INSERT INTO system_users (id, username, password, nickname, workcode, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (1, 'admin', '$2a$04$KljJDa/LK7QfDm0lF5OhuePhlPfjRH3tB2Wu351Uidz.oQGJXevPi', '后台管理', NULL, '管理员', '[1,2]', '11aoteman@126.com', '18818260277', 2, 'http://test.zt.iocoder.cn/test/20250502/avatar_1746154660449.png', 0, '0:0:0:0:0:0:0:1', '2025-05-10 18:03:15', 'admin', '2021-01-05 17:03:47', NULL, '2025-05-10 18:03:15', '0', 1);
|
||||||
INSERT INTO system_users (id, username, password, nickname, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (100, 'zt', '$2a$04$h.aaPKgO.odHepnk5PCsWeEwKdojFWdTItxGKfx1r0e1CSeBzsTJ6', 'ZT', '不要吓我', '[1]', 'zt@iocoder.cn', '15601691300', 1, NULL, 0, '0:0:0:0:0:0:0:1', '2025-04-08 09:36:40', '', '2021-01-07 09:07:17', NULL, '2025-04-21 14:23:08', '0', 1);
|
INSERT INTO system_users (id, username, password, nickname, workcode, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (100, 'zt', '$2a$04$h.aaPKgO.odHepnk5PCsWeEwKdojFWdTItxGKfx1r0e1CSeBzsTJ6', 'ZT', NULL, '不要吓我', '[1]', 'zt@iocoder.cn', '15601691300', 1, NULL, 0, '0:0:0:0:0:0:0:1', '2025-04-08 09:36:40', '', '2021-01-07 09:07:17', NULL, '2025-04-21 14:23:08', '0', 1);
|
||||||
INSERT INTO system_users (id, username, password, nickname, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (103, 'yuanma', '$2a$04$fUBSmjKCPYAUmnMzOb6qE.eZCGPhHi1JmAKclODbfS/O7fHOl2bH6', '源码', NULL, NULL, 'yuanma@iocoder.cn', '15601701300', 0, NULL, 0, '0:0:0:0:0:0:0:1', '2024-08-11 17:48:12', '', '2021-01-13 23:50:35', NULL, '2025-04-21 14:23:08', '0', 1);
|
INSERT INTO system_users (id, username, password, nickname, workcode, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (103, 'yuanma', '$2a$04$fUBSmjKCPYAUmnMzOb6qE.eZCGPhHi1JmAKclODbfS/O7fHOl2bH6', '源码', NULL, NULL, NULL, 'yuanma@iocoder.cn', '15601701300', 0, NULL, 0, '0:0:0:0:0:0:0:1', '2024-08-11 17:48:12', '', '2021-01-13 23:50:35', NULL, '2025-04-21 14:23:08', '0', 1);
|
||||||
INSERT INTO system_users (id, username, password, nickname, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (104, 'test', '$2a$04$BrwaYn303hjA/6TnXqdGoOLhyHOAA0bVrAFu6.1dJKycqKUnIoRz2', '测试号', NULL, '[1,2]', '111@qq.com', '15601691200', 1, NULL, 0, '0:0:0:0:0:0:0:1', '2025-03-28 20:01:16', '', '2021-01-21 02:13:53', NULL, '2025-04-21 14:23:08', '0', 1);
|
INSERT INTO system_users (id, username, password, nickname, workcode, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (104, 'test', '$2a$04$BrwaYn303hjA/6TnXqdGoOLhyHOAA0bVrAFu6.1dJKycqKUnIoRz2', '测试号', NULL, NULL, '[1,2]', '111@qq.com', '15601691200', 1, NULL, 0, '0:0:0:0:0:0:0:1', '2025-03-28 20:01:16', '', '2021-01-21 02:13:53', NULL, '2025-04-21 14:23:08', '0', 1);
|
||||||
INSERT INTO system_users (id, username, password, nickname, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (107, 'admin107', '$2a$10$dYOOBKMO93v/.ReCqzyFg.o67Tqk.bbc2bhrpyBGkIw9aypCtr2pm', 'ZT', NULL, NULL, '', '15601691300', 0, NULL, 0, '', NULL, '1', '2022-02-20 22:59:33', '1', '2025-04-21 14:23:08', '0', 118);
|
INSERT INTO system_users (id, username, password, nickname, workcode, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (107, 'admin107', '$2a$10$dYOOBKMO93v/.ReCqzyFg.o67Tqk.bbc2bhrpyBGkIw9aypCtr2pm', 'ZT', NULL, NULL, NULL, '', '15601691300', 0, NULL, 0, '', NULL, '1', '2022-02-20 22:59:33', '1', '2025-04-21 14:23:08', '0', 118);
|
||||||
INSERT INTO system_users (id, username, password, nickname, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (108, 'admin108', '$2a$10$y6mfvKoNYL1GXWak8nYwVOH.kCWqjactkzdoIDgiKl93WN3Ejg.Lu', 'ZT', NULL, NULL, '', '15601691300', 0, NULL, 0, '', NULL, '1', '2022-02-20 23:00:50', '1', '2025-04-21 14:23:08', '0', 119);
|
INSERT INTO system_users (id, username, password, nickname, workcode, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (108, 'admin108', '$2a$10$y6mfvKoNYL1GXWak8nYwVOH.kCWqjactkzdoIDgiKl93WN3Ejg.Lu', 'ZT', NULL, NULL, NULL, '', '15601691300', 0, NULL, 0, '', NULL, '1', '2022-02-20 23:00:50', '1', '2025-04-21 14:23:08', '0', 119);
|
||||||
INSERT INTO system_users (id, username, password, nickname, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (109, 'admin109', '$2a$10$JAqvH0tEc0I7dfDVBI7zyuB4E3j.uH6daIjV53.vUS6PknFkDJkuK', 'ZT', NULL, NULL, '', '15601691300', 0, NULL, 0, '', NULL, '1', '2022-02-20 23:11:50', '1', '2025-04-21 14:23:08', '0', 120);
|
INSERT INTO system_users (id, username, password, nickname, workcode, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (109, 'admin109', '$2a$10$JAqvH0tEc0I7dfDVBI7zyuB4E3j.uH6daIjV53.vUS6PknFkDJkuK', 'ZT', NULL, NULL, NULL, '', '15601691300', 0, NULL, 0, '', NULL, '1', '2022-02-20 23:11:50', '1', '2025-04-21 14:23:08', '0', 120);
|
||||||
INSERT INTO system_users (id, username, password, nickname, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (110, 'admin110', '$2a$10$mRMIYLDtRHlf6.9ipiqH1.Z.bh/R9dO9d5iHiGYPigi6r5KOoR2Wm', '小王', NULL, NULL, '', '15601691300', 0, NULL, 0, '0:0:0:0:0:0:0:1', '2024-07-20 22:23:17', '1', '2022-02-22 00:56:14', NULL, '2025-04-21 14:23:08', '0', 121);
|
INSERT INTO system_users (id, username, password, nickname, workcode, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (110, 'admin110', '$2a$10$mRMIYLDtRHlf6.9ipiqH1.Z.bh/R9dO9d5iHiGYPigi6r5KOoR2Wm', '小王', NULL, NULL, NULL, '', '15601691300', 0, NULL, 0, '0:0:0:0:0:0:0:1', '2024-07-20 22:23:17', '1', '2022-02-22 00:56:14', NULL, '2025-04-21 14:23:08', '0', 121);
|
||||||
INSERT INTO system_users (id, username, password, nickname, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (111, 'test', '$2a$10$mRMIYLDtRHlf6.9ipiqH1.Z.bh/R9dO9d5iHiGYPigi6r5KOoR2Wm', '测试用户', NULL, '[]', '', '', 0, NULL, 0, '0:0:0:0:0:0:0:1', '2023-12-30 11:42:17', '110', '2022-02-23 13:14:33', NULL, '2025-04-21 14:23:08', '0', 121);
|
INSERT INTO system_users (id, username, password, nickname, workcode, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (111, 'test', '$2a$10$mRMIYLDtRHlf6.9ipiqH1.Z.bh/R9dO9d5iHiGYPigi6r5KOoR2Wm', '测试用户', NULL, NULL, '[]', '', '', 0, NULL, 0, '0:0:0:0:0:0:0:1', '2023-12-30 11:42:17', '110', '2022-02-23 13:14:33', NULL, '2025-04-21 14:23:08', '0', 121);
|
||||||
INSERT INTO system_users (id, username, password, nickname, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (112, 'newobject', '$2a$04$dB0z8Q819fJWz0hbaLe6B.VfHCjYgWx6LFfET5lyz3JwcqlyCkQ4C', '新对象', NULL, '[]', '', '15601691235', 1, NULL, 0, '0:0:0:0:0:0:0:1', '2024-03-16 23:11:38', '1', '2022-02-23 19:08:03', NULL, '2025-04-21 14:23:08', '0', 1);
|
INSERT INTO system_users (id, username, password, nickname, workcode, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (112, 'newobject', '$2a$04$dB0z8Q819fJWz0hbaLe6B.VfHCjYgWx6LFfET5lyz3JwcqlyCkQ4C', '新对象', NULL, NULL, '[]', '', '15601691235', 1, NULL, 0, '0:0:0:0:0:0:0:1', '2024-03-16 23:11:38', '1', '2022-02-23 19:08:03', NULL, '2025-04-21 14:23:08', '0', 1);
|
||||||
INSERT INTO system_users (id, username, password, nickname, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (113, 'aoteman', '$2a$10$0acJOIk2D25/oC87nyclE..0lzeu9DtQ/n3geP4fkun/zIVRhHJIO', 'ZT1', NULL, NULL, '', '15601691300', 0, NULL, 0, '127.0.0.1', '2022-03-19 18:38:51', '1', '2022-03-07 21:37:58', '1', '2025-05-05 15:30:53', '0', 122);
|
INSERT INTO system_users (id, username, password, nickname, workcode, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (113, 'aoteman', '$2a$10$0acJOIk2D25/oC87nyclE..0lzeu9DtQ/n3geP4fkun/zIVRhHJIO', 'ZT1', NULL, NULL, NULL, '', '15601691300', 0, NULL, 0, '127.0.0.1', '2022-03-19 18:38:51', '1', '2022-03-07 21:37:58', '1', '2025-05-05 15:30:53', '0', 122);
|
||||||
INSERT INTO system_users (id, username, password, nickname, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (114, 'hrmgr', '$2a$10$TR4eybBioGRhBmDBWkqWLO6NIh3mzYa8KBKDDB5woiGYFVlRAi.fu', 'hr 小姐姐', NULL, '[5]', '', '15601691236', 1, NULL, 0, '0:0:0:0:0:0:0:1', '2024-03-24 22:21:05', '1', '2022-03-19 21:50:58', NULL, '2025-04-21 14:23:08', '0', 1);
|
INSERT INTO system_users (id, username, password, nickname, workcode, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (114, 'hrmgr', '$2a$10$TR4eybBioGRhBmDBWkqWLO6NIh3mzYa8KBKDDB5woiGYFVlRAi.fu', 'hr 小姐姐', NULL, NULL, '[5]', '', '15601691236', 1, NULL, 0, '0:0:0:0:0:0:0:1', '2024-03-24 22:21:05', '1', '2022-03-19 21:50:58', NULL, '2025-04-21 14:23:08', '0', 1);
|
||||||
INSERT INTO system_users (id, username, password, nickname, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (115, 'aotemane', '$2a$04$GcyP0Vyzb2F2Yni5PuIK9ueGxM0tkZGMtDwVRwrNbtMvorzbpNsV2', '阿呆', '11222', '[1,2]', '7648@qq.com', '15601691229', 2, NULL, 0, '', NULL, '1', '2022-04-30 02:55:43', '1', '2025-04-21 14:23:08', '0', 1);
|
INSERT INTO system_users (id, username, password, nickname, workcode, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (115, 'aotemane', '$2a$04$GcyP0Vyzb2F2Yni5PuIK9ueGxM0tkZGMtDwVRwrNbtMvorzbpNsV2', '阿呆', NULL, '11222', '[1,2]', '7648@qq.com', '15601691229', 2, NULL, 0, '', NULL, '1', '2022-04-30 02:55:43', '1', '2025-04-21 14:23:08', '0', 1);
|
||||||
INSERT INTO system_users (id, username, password, nickname, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (117, 'admin123', '$2a$04$sEtimsHu9YCkYY4/oqElHem2Ijc9ld20eYO6lN.g/21NfLUTDLB9W', '测试号02', '1111', '[2]', '', '15601691234', 1, NULL, 0, '0:0:0:0:0:0:0:1', '2024-10-02 10:16:20', '1', '2022-07-09 17:40:26', NULL, '2025-04-21 14:23:08', '0', 1);
|
INSERT INTO system_users (id, username, password, nickname, workcode, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (117, 'admin123', '$2a$04$sEtimsHu9YCkYY4/oqElHem2Ijc9ld20eYO6lN.g/21NfLUTDLB9W', '测试号02', NULL, '1111', '[2]', '', '15601691234', 1, NULL, 0, '0:0:0:0:0:0:0:1', '2024-10-02 10:16:20', '1', '2022-07-09 17:40:26', NULL, '2025-04-21 14:23:08', '0', 1);
|
||||||
INSERT INTO system_users (id, username, password, nickname, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (118, 'goudan', '$2a$04$jth0yOj8cSJq84D6vrzusOHDwW/LpBfgBnQ6bfFlD8zNZfM632Ta2', '狗蛋', NULL, '[1]', '', '15601691239', 1, NULL, 0, '0:0:0:0:0:0:0:1', '2024-03-17 09:10:27', '1', '2022-07-09 17:44:43', '1', '2025-04-21 14:23:08', '0', 1);
|
INSERT INTO system_users (id, username, password, nickname, workcode, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (118, 'goudan', '$2a$04$jth0yOj8cSJq84D6vrzusOHDwW/LpBfgBnQ6bfFlD8zNZfM632Ta2', '狗蛋', NULL, NULL, '[1]', '', '15601691239', 1, NULL, 0, '0:0:0:0:0:0:0:1', '2024-03-17 09:10:27', '1', '2022-07-09 17:44:43', '1', '2025-04-21 14:23:08', '0', 1);
|
||||||
INSERT INTO system_users (id, username, password, nickname, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (131, 'hh', '$2a$04$jyH9h6.gaw8mpOjPfHIpx.8as2Rzfcmdlj5rlJFwgCw4rsv/MTb2K', '呵呵', NULL, '[]', '777@qq.com', '15601882312', 1, NULL, 0, '', NULL, '1', '2024-04-27 08:45:56', '1', '2025-04-21 14:23:08', '0', 1);
|
INSERT INTO system_users (id, username, password, nickname, workcode, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (131, 'hh', '$2a$04$jyH9h6.gaw8mpOjPfHIpx.8as2Rzfcmdlj5rlJFwgCw4rsv/MTb2K', '呵呵', NULL, NULL, '[]', '777@qq.com', '15601882312', 1, NULL, 0, '', NULL, '1', '2024-04-27 08:45:56', '1', '2025-04-21 14:23:08', '0', 1);
|
||||||
INSERT INTO system_users (id, username, password, nickname, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (139, 'wwbwwb', '$2a$04$aOHoFbQU6zfBk/1Z9raF/ugTdhjNdx7culC1HhO0zvoczAnahCiMq', '小秃头', NULL, NULL, '', '', 0, NULL, 0, '0:0:0:0:0:0:0:1', '2024-09-10 21:03:58', NULL, '2024-09-10 21:03:58', NULL, '2025-04-21 14:23:08', '0', 1);
|
INSERT INTO system_users (id, username, password, nickname, workcode, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (139, 'wwbwwb', '$2a$04$aOHoFbQU6zfBk/1Z9raF/ugTdhjNdx7culC1HhO0zvoczAnahCiMq', '小秃头', NULL, NULL, NULL, '', '', 0, NULL, 0, '0:0:0:0:0:0:0:1', '2024-09-10 21:03:58', NULL, '2024-09-10 21:03:58', NULL, '2025-04-21 14:23:08', '0', 1);
|
||||||
INSERT INTO system_users (id, username, password, nickname, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (141, 'admin1', '$2a$04$oj6F6d7HrZ70kYVD3TNzEu.m3TPUzajOVuC66zdKna8KRerK1FmVa', '新用户', NULL, NULL, '', '', 0, '', 0, '0:0:0:0:0:0:0:1', '2025-04-08 13:09:07', '1', '2025-04-08 13:09:07', '1', '2025-04-08 13:09:07', '0', 1);
|
INSERT INTO system_users (id, username, password, nickname, workcode, remark, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id) VALUES (141, 'admin1', '$2a$04$oj6F6d7HrZ70kYVD3TNzEu.m3TPUzajOVuC66zdKna8KRerK1FmVa', '新用户', NULL, NULL, NULL, '', '', 0, '', 0, '0:0:0:0:0:0:0:1', '2025-04-08 13:09:07', '1', '2025-04-08 13:09:07', '1', '2025-04-08 13:09:07', '0', 1);
|
||||||
COMMIT;
|
COMMIT;
|
||||||
-- SET IDENTITY_INSERT system_users OFF;
|
-- SET IDENTITY_INSERT system_users OFF;
|
||||||
-- @formatter:on
|
-- @formatter:on
|
||||||
|
|||||||
8
sql/dm/新增用户工号字段_20251202.sql
Normal file
8
sql/dm/新增用户工号字段_20251202.sql
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
-- 达梦8数据库 DDL 脚本
|
||||||
|
-- 为 system_users 表添加 workcode 字段(工号)
|
||||||
|
|
||||||
|
-- 添加工号字段
|
||||||
|
ALTER TABLE system_users ADD COLUMN workcode VARCHAR(64);
|
||||||
|
|
||||||
|
-- 添加字段注释
|
||||||
|
COMMENT ON COLUMN system_users.workcode IS '工号';
|
||||||
@@ -50,6 +50,9 @@ public class AuthPermissionInfoRespVO {
|
|||||||
@Schema(description = "用户账号", requiredMode = Schema.RequiredMode.REQUIRED, example = "zt")
|
@Schema(description = "用户账号", requiredMode = Schema.RequiredMode.REQUIRED, example = "zt")
|
||||||
private String username;
|
private String username;
|
||||||
|
|
||||||
|
@Schema(description = "工号", example = "A00123")
|
||||||
|
private String workcode;
|
||||||
|
|
||||||
@Schema(description = "用户邮箱", example = "zt@iocoder.cn")
|
@Schema(description = "用户邮箱", example = "zt@iocoder.cn")
|
||||||
private String email;
|
private String email;
|
||||||
|
|
||||||
|
|||||||
@@ -22,6 +22,9 @@ public class UserProfileRespVO {
|
|||||||
@Schema(description = "用户账号", requiredMode = Schema.RequiredMode.REQUIRED, example = "zt")
|
@Schema(description = "用户账号", requiredMode = Schema.RequiredMode.REQUIRED, example = "zt")
|
||||||
private String username;
|
private String username;
|
||||||
|
|
||||||
|
@Schema(description = "工号", example = "A00123")
|
||||||
|
private String workcode;
|
||||||
|
|
||||||
@Schema(description = "用户昵称", requiredMode = Schema.RequiredMode.REQUIRED, example = "ZT")
|
@Schema(description = "用户昵称", requiredMode = Schema.RequiredMode.REQUIRED, example = "ZT")
|
||||||
private String nickname;
|
private String nickname;
|
||||||
|
|
||||||
|
|||||||
@@ -23,6 +23,9 @@ public class UserPageReqVO extends PageParam {
|
|||||||
@Schema(description = "用户账号,模糊匹配", example = "zt")
|
@Schema(description = "用户账号,模糊匹配", example = "zt")
|
||||||
private String username;
|
private String username;
|
||||||
|
|
||||||
|
@Schema(description = "工号,模糊匹配", example = "A00123")
|
||||||
|
private String workcode;
|
||||||
|
|
||||||
@Schema(description = "手机号码,模糊匹配", example = "zt")
|
@Schema(description = "手机号码,模糊匹配", example = "zt")
|
||||||
private String mobile;
|
private String mobile;
|
||||||
|
|
||||||
|
|||||||
@@ -25,6 +25,10 @@ public class UserRespVO{
|
|||||||
@ExcelProperty("用户名称")
|
@ExcelProperty("用户名称")
|
||||||
private String username;
|
private String username;
|
||||||
|
|
||||||
|
@Schema(description = "工号", example = "A00123")
|
||||||
|
@ExcelProperty("工号")
|
||||||
|
private String workcode;
|
||||||
|
|
||||||
@Schema(description = "用户昵称", requiredMode = Schema.RequiredMode.REQUIRED, example = "ZT")
|
@Schema(description = "用户昵称", requiredMode = Schema.RequiredMode.REQUIRED, example = "ZT")
|
||||||
@ExcelProperty("用户昵称")
|
@ExcelProperty("用户昵称")
|
||||||
private String nickname;
|
private String nickname;
|
||||||
|
|||||||
@@ -33,6 +33,11 @@ public class UserSaveReqVO {
|
|||||||
@DiffLogField(name = "用户账号")
|
@DiffLogField(name = "用户账号")
|
||||||
private String username;
|
private String username;
|
||||||
|
|
||||||
|
@Schema(description = "工号", example = "A00123")
|
||||||
|
@Length(max = 64, message = "工号长度不能超过64个字符")
|
||||||
|
@DiffLogField(name = "工号")
|
||||||
|
private String workcode;
|
||||||
|
|
||||||
@Schema(description = "用户昵称", requiredMode = Schema.RequiredMode.REQUIRED, example = "ZT")
|
@Schema(description = "用户昵称", requiredMode = Schema.RequiredMode.REQUIRED, example = "ZT")
|
||||||
@Size(max = 30, message = "用户昵称长度不能超过30个字符")
|
@Size(max = 30, message = "用户昵称长度不能超过30个字符")
|
||||||
@DiffLogField(name = "用户昵称")
|
@DiffLogField(name = "用户昵称")
|
||||||
|
|||||||
@@ -38,6 +38,10 @@ public class AdminUserDO extends TenantBaseDO {
|
|||||||
*/
|
*/
|
||||||
@NotEmpty
|
@NotEmpty
|
||||||
private String username;
|
private String username;
|
||||||
|
/**
|
||||||
|
* 工号
|
||||||
|
*/
|
||||||
|
private String workcode;
|
||||||
/**
|
/**
|
||||||
* 加密后的密码
|
* 加密后的密码
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -23,6 +23,10 @@ public interface AdminUserMapper extends BaseMapperX<AdminUserDO> {
|
|||||||
return selectOne(AdminUserDO::getUsername, username);
|
return selectOne(AdminUserDO::getUsername, username);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
default AdminUserDO selectByWorkcode(String workcode) {
|
||||||
|
return selectOne(AdminUserDO::getWorkcode, workcode);
|
||||||
|
}
|
||||||
|
|
||||||
default AdminUserDO selectByEmail(String email) {
|
default AdminUserDO selectByEmail(String email) {
|
||||||
return selectOne(AdminUserDO::getEmail, email);
|
return selectOne(AdminUserDO::getEmail, email);
|
||||||
}
|
}
|
||||||
@@ -36,6 +40,7 @@ public interface AdminUserMapper extends BaseMapperX<AdminUserDO> {
|
|||||||
return selectJoinPage(reqVO, AdminUserDO.class, new MPJLambdaWrapperX<AdminUserDO>()
|
return selectJoinPage(reqVO, AdminUserDO.class, new MPJLambdaWrapperX<AdminUserDO>()
|
||||||
.leftJoin(UserDeptDO.class, UserDeptDO::getUserId, AdminUserDO::getId)
|
.leftJoin(UserDeptDO.class, UserDeptDO::getUserId, AdminUserDO::getId)
|
||||||
.likeIfPresent(AdminUserDO::getUsername, reqVO.getUsername())
|
.likeIfPresent(AdminUserDO::getUsername, reqVO.getUsername())
|
||||||
|
.likeIfPresent(AdminUserDO::getWorkcode, reqVO.getWorkcode())
|
||||||
.likeIfPresent(AdminUserDO::getMobile, reqVO.getMobile())
|
.likeIfPresent(AdminUserDO::getMobile, reqVO.getMobile())
|
||||||
.eqIfPresent(AdminUserDO::getStatus, reqVO.getStatus())
|
.eqIfPresent(AdminUserDO::getStatus, reqVO.getStatus())
|
||||||
.betweenIfPresent(AdminUserDO::getCreateTime, reqVO.getCreateTime())
|
.betweenIfPresent(AdminUserDO::getCreateTime, reqVO.getCreateTime())
|
||||||
|
|||||||
@@ -435,6 +435,7 @@ public class IWorkSyncProcessorImpl implements IWorkSyncProcessor {
|
|||||||
CommonStatusEnum status) {
|
CommonStatusEnum status) {
|
||||||
UserSaveReqVO req = new UserSaveReqVO();
|
UserSaveReqVO req = new UserSaveReqVO();
|
||||||
req.setUsername(username);
|
req.setUsername(username);
|
||||||
|
req.setWorkcode(trimToNull(source.getWorkcode()));
|
||||||
req.setNickname(limitLength(StrUtil.blankToDefault(source.getLastname(), username), 30));
|
req.setNickname(limitLength(StrUtil.blankToDefault(source.getLastname(), username), 30));
|
||||||
req.setRemark(buildUserRemark(source));
|
req.setRemark(buildUserRemark(source));
|
||||||
if (deptId != null) {
|
if (deptId != null) {
|
||||||
|
|||||||
@@ -72,16 +72,16 @@ public class EbanOAuth2ServiceImpl implements EbanOAuth2Service {
|
|||||||
throw exception(AUTH_LOGIN_EBAN_TOKEN_INVALID);
|
throw exception(AUTH_LOGIN_EBAN_TOKEN_INVALID);
|
||||||
}
|
}
|
||||||
|
|
||||||
String username = StrUtil.trim(StrUtil.blankToDefault(userInfo.getLoginName(), userInfo.getUsername()));
|
String workcode = StrUtil.trim(StrUtil.blankToDefault(userInfo.getLoginName(), userInfo.getUsername()));
|
||||||
if (StrUtil.isBlank(username)) {
|
if (StrUtil.isBlank(workcode)) {
|
||||||
log.error("E办OAuth2用户信息缺少 username 与 loginName,无法匹配账号: {}", JSONUtil.toJsonStr(userInfo));
|
log.error("E办OAuth2用户信息缺少工号(loginName),无法匹配账号: {}", JSONUtil.toJsonStr(userInfo));
|
||||||
throw exception(AUTH_LOGIN_EBAN_TOKEN_INVALID);
|
throw exception(AUTH_LOGIN_EBAN_TOKEN_INVALID);
|
||||||
}
|
}
|
||||||
|
|
||||||
AdminUserDO user = userService.getUserByUsername(username);
|
AdminUserDO user = userService.getUserByWorkcode(workcode);
|
||||||
if (user == null) {
|
if (user == null) {
|
||||||
createLoginLog(null, username, LoginLogTypeEnum.LOGIN_SOCIAL, LoginResultEnum.BAD_CREDENTIALS);
|
createLoginLog(null, workcode, LoginLogTypeEnum.LOGIN_SOCIAL, LoginResultEnum.BAD_CREDENTIALS);
|
||||||
log.warn("E办OAuth2用户displayName未在系统中找到对应账号: {}", username);
|
log.warn("E办OAuth2用户工号未在系统中找到对应账号: {}", workcode);
|
||||||
throw exception(AUTH_LOGIN_EBAN_USER_NOT_SYNC);
|
throw exception(AUTH_LOGIN_EBAN_USER_NOT_SYNC);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -92,7 +92,7 @@ public class EbanOAuth2ServiceImpl implements EbanOAuth2Service {
|
|||||||
|
|
||||||
EbanTokenInfo tokenInfo = userInfo.getTokenInfo();
|
EbanTokenInfo tokenInfo = userInfo.getTokenInfo();
|
||||||
if (tokenInfo == null || StrUtil.isBlank(tokenInfo.getAccessToken())) {
|
if (tokenInfo == null || StrUtil.isBlank(tokenInfo.getAccessToken())) {
|
||||||
log.error("E办OAuth2回调缺少有效的token信息,uid={}, username={}", userInfo.getUid(), username);
|
log.error("E办OAuth2回调缺少有效的token信息,uid={}, username={}", userInfo.getUid(), userInfo.getUsername());
|
||||||
throw exception(AUTH_LOGIN_EBAN_TOKEN_INVALID);
|
throw exception(AUTH_LOGIN_EBAN_TOKEN_INVALID);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -105,7 +105,7 @@ public class EbanOAuth2ServiceImpl implements EbanOAuth2Service {
|
|||||||
tokenInfo.getExpiresIn(),
|
tokenInfo.getExpiresIn(),
|
||||||
userInfo
|
userInfo
|
||||||
);
|
);
|
||||||
log.info("成功保存E办token,userId={}, uid={}, username={}", user.getId(), userInfo.getUid(), username);
|
log.info("成功保存E办token,userId={}, uid={}, workcode={}", user.getId(), userInfo.getUid(), workcode);
|
||||||
|
|
||||||
return createTokenAfterLoginSuccess(user.getId(), user.getUsername(), LoginLogTypeEnum.LOGIN_SOCIAL, ebanAccessTokenDO);
|
return createTokenAfterLoginSuccess(user.getId(), user.getUsername(), LoginLogTypeEnum.LOGIN_SOCIAL, ebanAccessTokenDO);
|
||||||
|
|
||||||
|
|||||||
@@ -101,6 +101,14 @@ public interface AdminUserService {
|
|||||||
*/
|
*/
|
||||||
AdminUserDO getUserByUsername(String username);
|
AdminUserDO getUserByUsername(String username);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过工号查询用户
|
||||||
|
*
|
||||||
|
* @param workcode 工号
|
||||||
|
* @return 用户对象信息
|
||||||
|
*/
|
||||||
|
AdminUserDO getUserByWorkcode(String workcode);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 通过手机号获取用户
|
* 通过手机号获取用户
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -125,6 +125,7 @@ public class AdminUserServiceImpl implements AdminUserService {
|
|||||||
if (user.getUserSource() == null) {
|
if (user.getUserSource() == null) {
|
||||||
user.setUserSource(UserSourceEnum.EXTERNAL.getSource());
|
user.setUserSource(UserSourceEnum.EXTERNAL.getSource());
|
||||||
}
|
}
|
||||||
|
user.setWorkcode(normalizeWorkcode(createReqVO.getWorkcode()));
|
||||||
PasswordStrategyEnum passwordStrategy = determinePasswordStrategy(user.getUserSource());
|
PasswordStrategyEnum passwordStrategy = determinePasswordStrategy(user.getUserSource());
|
||||||
user.setAvatar(normalizeAvatarValue(createReqVO.getAvatar()));
|
user.setAvatar(normalizeAvatarValue(createReqVO.getAvatar()));
|
||||||
user.setPassword(encodePassword(createReqVO.getPassword(), passwordStrategy));
|
user.setPassword(encodePassword(createReqVO.getPassword(), passwordStrategy));
|
||||||
@@ -190,6 +191,9 @@ public class AdminUserServiceImpl implements AdminUserService {
|
|||||||
if (StrUtil.isNotBlank(updateReqVO.getNickname())) {
|
if (StrUtil.isNotBlank(updateReqVO.getNickname())) {
|
||||||
updateObj.setNickname(updateReqVO.getNickname());
|
updateObj.setNickname(updateReqVO.getNickname());
|
||||||
}
|
}
|
||||||
|
if (updateReqVO.getWorkcode() != null) {
|
||||||
|
updateObj.setWorkcode(normalizeWorkcode(updateReqVO.getWorkcode()));
|
||||||
|
}
|
||||||
if (StrUtil.isNotBlank(updateReqVO.getMobile())) {
|
if (StrUtil.isNotBlank(updateReqVO.getMobile())) {
|
||||||
updateObj.setMobile(updateReqVO.getMobile());
|
updateObj.setMobile(updateReqVO.getMobile());
|
||||||
}
|
}
|
||||||
@@ -330,6 +334,19 @@ public class AdminUserServiceImpl implements AdminUserService {
|
|||||||
return user;
|
return user;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AdminUserDO getUserByWorkcode(String workcode) {
|
||||||
|
String normalized = normalizeWorkcode(workcode);
|
||||||
|
if (StrUtil.isBlank(normalized)) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
AdminUserDO user = userMapper.selectByWorkcode(normalized);
|
||||||
|
if (user != null) {
|
||||||
|
fillUserDeptInfo(Collections.singletonList(user));
|
||||||
|
}
|
||||||
|
return user;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AdminUserDO getUserByMobile(String mobile) {
|
public AdminUserDO getUserByMobile(String mobile) {
|
||||||
AdminUserDO user = userMapper.selectByMobile(mobile);
|
AdminUserDO user = userMapper.selectByMobile(mobile);
|
||||||
@@ -510,6 +527,13 @@ public class AdminUserServiceImpl implements AdminUserService {
|
|||||||
return StrUtil.isBlank(avatarValue) ? null : avatarValue.trim();
|
return StrUtil.isBlank(avatarValue) ? null : avatarValue.trim();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private String normalizeWorkcode(String workcode) {
|
||||||
|
if (StrUtil.isBlank(workcode)) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
return workcode.trim();
|
||||||
|
}
|
||||||
|
|
||||||
private AdminUserDO validateUserForCreateOrUpdate(Long id, String username, String mobile, String email,
|
private AdminUserDO validateUserForCreateOrUpdate(Long id, String username, String mobile, String email,
|
||||||
Set<Long> deptIds, Set<Long> postIds, boolean skipAssociationValidation,
|
Set<Long> deptIds, Set<Long> postIds, boolean skipAssociationValidation,
|
||||||
boolean skipMobileValidation, boolean skipEmailValidation) {
|
boolean skipMobileValidation, boolean skipEmailValidation) {
|
||||||
|
|||||||
Reference in New Issue
Block a user