v1.6.0迭代文档
SQL
新建表 -- 候选人流转记录表
CREATE TABLE `candidate_circulation_records` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'id',
`extra_id` int(11) NOT NULL COMMENT '对应的id:1初筛:对应candidate_demand_deliver_records表,2邀约:对应candidate_invite_result表,3面试:直接查询表interview_info和interview_records,4入职:induction_update_records表',
`type` tinyint(4) NOT NULL COMMENT '类型(1:初筛;2:邀约;3面试:直接查询表interview_info和interview_records;4:入职)',
`detail_info` varchar(2000) NOT NULL COMMENT '细节信息(json格式)字段说明查看说明文档,每一个类型对应一个实体类',
`create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COMMENT='候选人流转记录表(快照信息)';
内推奖励设置表
CREATE TABLE `internal_promotion_reward_setting` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID',
`emp_id` int(11) NOT NULL COMMENT '花名册ID',
`create_by` int(11) NOT NULL COMMENT '创建者(后台sys_user表ID)',
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE,
UNIQUE KEY `uk_emp` (`emp_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='内推奖励设置';
新增字段
ALTER TABLE candidate_circulation ADD candidate_demand_deliver_records_id int(11) DEFAULT 0 NOT NULL COMMENT '投递记录表中的id';
ALTER TABLE promoting_history ADD column recommender_status tinyint(2) DEFAULT NULL COMMENT '推荐官身份:0非员工,1离职员工, 2在职员工, 3在职员工(不结算)';
ALTER TABLE promoting_history ADD column sup_recommender_status tinyint(2) DEFAULT NULL COMMENT '上级推荐官身份:0非员 工,1离职员工, 2在职员工, 3在职员工(不结算)';
新增索引
ALTER TABLE item_info ADD INDEX idx_dept (`dept_id`) USING BTREE;
ALTER TABLE work_records ADD INDEX idx_user (`user_id`) USING BTREE;
ALTER TABLE work_records ADD INDEX idx_interview_id (`interview_id`) USING BTREE;
ALTER TABLE educate_records ADD INDEX idx_user (`user_id`) USING BTREE;
ALTER TABLE educate_records ADD INDEX idx_interview_id (`interview_id`) USING BTREE;
CREATE INDEX recruit_person_info_phone_IDX USING BTREE ON recruit_person_info (phone);
CREATE INDEX request_statistics_user_id_IDX USING BTREE ON request_statistics (user_id);
CREATE INDEX request_statistics_job_user_id_IDX USING BTREE ON request_statistics (job_id,user_id);
CREATE INDEX recruit_person_info_candidate_id_IDX USING BTREE ON recruit_person_info (candidate_id);
CREATE INDEX recruit_person_info_job_id_IDX USING BTREE ON recruit_person_info (job_id);
CREATE INDEX interview_records_user_id_IDX USING BTREE ON interview_records (user_id);
CREATE INDEX interview_records_job_id_IDX USING BTREE ON interview_records (job_id);
CREATE INDEX emp_records_induction_update_records_id_IDX USING BTREE ON emp_records (induction_update_records_id);
CREATE INDEX emp_records_item_id_IDX USING BTREE ON emp_records (item_id);
更新订单推广表(按顺序执行)
-- 推荐官
-- 1、在职的用户
update promoting_history ph
inner join (select distinct user_id from emp_records where status = 0 and user_id in (
select distinct user_id from promoting_history ph where user_id > 0)) t on ph.user_id = t.user_id
set recommender_status = 2;
-- 2、离职的用户
update promoting_history ph
inner join (select distinct user_id from emp_records where user_id in (
select distinct user_id from promoting_history ph where user_id > 0 and recommender_status is null )) t on ph.user_id = t.user_id
set recommender_status = 1;
-- 3、非员工
update promoting_history set recommender_status = 0 where user_id > 0 and recommender_status is null;
-- 上级推荐官
-- 1、上级在职的用户
update promoting_history ph
inner join (select id from `user` where reference_id in (select distinct user_id from emp_records where status = 0)) t on ph.user_id = t.id
set sup_recommender_status = 2;
-- 2、上级非员工的用户
update promoting_history ph
inner join (select id from `user` where reference_id is not null and reference_id not in (select distinct user_id from emp_records)) t on ph.user_id = t.id
set sup_recommender_status = 0 where user_id > 0;
-- 3、上级离职的用户
update promoting_history ph set sup_recommender_status = 1 where user_id > 0 and sup_recommender_status is null;;
-- 4、无上级推荐官
update promoting_history ph
inner join (select id from `user` where reference_id is null) t on ph.user_id = t.id
set sup_recommender_status = null;
定时任务,只执行一次--xxl-job(小程序)
任务描述:流转记录历史数据处理,只执行一次
JobHandler:flowRecordHistoryHandler
Cron:0 0 2 * * ?
登录密钥配置(common-application.yaml)
# 测试环境
rsa:
publicKey: MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCKXukg8j0Havw8BH1Eh2VBnoNp/inGhd2qeSZ8+OrStu4KuWTeWvQGr4JH56SiyZm5sj5ZXQWa+cHp9zxJndB93EZWzNn2G8da6AEBKvh1X2Mnag/LjQl8ABdqSZv1kTIFpvvPtvnhQba/KH7utY+vTFWrsdyJEHRC/7xuQ7nujwIDAQAB
privateKey: MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBAIpe6SDyPQdq/DwEfUSHZUGeg2n+KcaF3ap5Jnz46tK27gq5ZN5a9AavgkfnpKLJmbmyPlldBZr5wen3PEmd0H3cRlbM2fYbx1roAQEq+HVfYydqD8uNCXwAF2pJm/WRMgWm+8+2+eFBtr8ofu61j69MVaux3IkQdEL/vG5Due6PAgMBAAECgYAfaIPKcrHfqS0wAmTc1U7qoix6NrMM2P4D4BQYcff7dIJ79LEst8CEc/pCkBYSzWgTep4kcrT/BIo7rV8F5siYMrERxWfe81k59kJgPi+WwUh4RygRpyzitGFd8kPN/XunNjsI7swQyBKeZF0TOGiXayn9id2K71Aa4Dn6BjEp4QJBANpQ/c7whWmIDTgJpFvXYvgEdjD0YZoxFb5GXJVdsaOIJs4TPRQpsVrVSZE5LInn74NiIDmKWT/UTjIQBO8XMyMCQQCiQUP0UMGpFs42ZYaDjOvXPcMO1gN3GpZIWtKUnhSMGFcAhOnAHrxkp2NvkD7xsudNBdfPsHpZavvjRfH3cjOlAkAFu6S+n3BRciIuu4oWY1SVAMD9zh0WCH3yrjRWM8yrZ7LlLHopImMm6HzzFFZIFNAkWhpQiIKJe5DGHceTY7+TAkBiyJFywWfmZjgN7inDFZzQYo3LDoj1jn5IduMWEFg6Iud1LXaSvSO9tBtZ5Nwtkto3joMhszQKFJRefksed6zxAkEAiE2R2IJ3Ju+13/svEuRkIDCd9D/NwbUPinakm4WmZ6Ge9RDEf803KQJIUGOCcC8HOQVqUGCAoZQmQBPS0aJ1Ow==
# 正式环境
rsa:
publicKey: MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCseJj+3f9WwowvcV8k46XKLjOUf0H8DUMSI9swPpwDkw/X2dE8KG4CYoG+dlfUFNOx8g3zWSD9ByekcEDT5pMIzooNKpXY5KezX9rPsjQCg0pZJwH54rQT92s9hLXYfXV2mmVniN6cC3cfPsSx0ne+6+lziQt7CHtxC12ICLd+CQIDAQAB
privateKey: MIICdwIBADANBgkqhkiG9w0BAQEFAASCAmEwggJdAgEAAoGBAKx4mP7d/1bCjC9xXyTjpcouM5R/QfwNQxIj2zA+nAOTD9fZ0TwobgJigb52V9QU07HyDfNZIP0HJ6RwQNPmkwjOig0qldjkp7Nf2s+yNAKDSlknAfnitBP3az2Etdh9dXaaZWeI3pwLdx8+xLHSd77r6XOJC3sIe3ELXYgIt34JAgMBAAECgYEAqxg//qZQBcudsfrv/fJvp7BJrwjHdrnZTYeQi72wm8MqNmF4tgsNhwQd3cocuuGmWKLdwAktNpYAd5p8VToppS7Axvnd3BYSSibIXTNl07e9tZFcQHTFUbllys2Fd7VWFknWEls0Kditk2W+1r9c7ot2bQRnRIOvEyNep0p9j9kCQQD2VddfuFao/EUUoHVH6y/NgI1AjOosAKyDW91EhcsdWlV8+o7HRM7uv+a13RUn4St5UysDSjvZfUvEpzmvI15DAkEAszzfurvHgPxlKYkjE682X3BMGMne0/9d2cM8zJYQJvbRcw0ZaCbjwAjQ1iLa+W+sNrEu5Kp93dsdBW9pIQn7wwJABKJuz+U29Czy28V9D2JUXuhpP+qmyTcmB76lthFSVfYKH7TTFNqtjf5cR9Wl/T8WQ00WRRSTda8Oyt9ejXX74wJAJMdxAVhW79jayVMip39koODiPJPv7YCROYYei7yfQ9+RyxH9DKouQdGNSOOOG3EW3YIuJS329fdoVR0vbWAnEQJBAKFgPGlnN42FOKWxn6nlpJyDEZmwUFon03QqbZoze4Da2exyl0NJ3y4SMPshdTWCGYXk9+XXlQlTGP5y9j9h5gQ=
拒绝/不合适/入职原因
-- 岗位因素
INSERT INTO sys_dict_data (dict_sort,dict_label,dict_value,dict_type,css_class,list_class,is_default,status,create_by,create_time,update_by,update_time,remark,dict_category) VALUES
(1,'薪资问题','1-1','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL),
(2,'社保/公积金','1-2','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL),
(3,'加班/夜班','1-3','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL),
(4,'通勤问题','1-4','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL),
(5,'食宿问题','1-5','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL),
(6,'环境问题','1-6','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL),
(7,'职业规划','1-7','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL),
(8,'外包性质','1-8','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL),
(9,'工作内容','1-9','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL),
(10,'年龄/学历','1-10','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL),
(11,'专业/经历','1-11','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL),
(12,'孕期问题','1-12','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL),
(13,'人在异地','1-13','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL);
-- 个人原因
INSERT INTO sys_dict_data (dict_sort,dict_label,dict_value,dict_type,css_class,list_class,is_default,status,create_by,create_time,update_by,update_time,remark,dict_category) VALUES
(14,'简历不实','2-1','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL),
(15,'征信问题','2-2','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL),
(16,'沟通力差','2-3','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL),
(17,'学习力差','2-4','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL),
(18,'抗压性差','2-5','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL),
(19,'性格问题','2-6','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL),
(20,'稳定性差','2-7','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL),
(21,'形象问题','2-8','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL),
(22,'身体问题','2-9','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL),
(23,'试岗问题','2-10','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL);
-- 其他原因
INSERT INTO sys_dict_data (dict_sort,dict_label,dict_value,dict_type,css_class,list_class,is_default,status,create_by,create_time,update_by,update_time,remark,dict_category) VALUES
(24,'失联','3-1','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL),
(25,'收到其他offer','3-2','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL),
(26,'需求变更/招满','3-3','REFUSED_INAPPROPRIATE_ENTRY_REASON',NULL,NULL,'N','0','admin',now(),'',NULL,'拒绝/不合适/入职原因,-之前,1为岗位因素,2为个人原因,3为其他原因',NULL);
不合适/拒绝原因--字典键值类型修改
ALTER TABLE candidate_invite_result MODIFY COLUMN dict_value varchar(2000) NULL COMMENT '不合适/拒绝原因--字典键值';
ALTER TABLE induction_update_records MODIFY COLUMN give_up_reason varchar(2000) NULL COMMENT '放弃入职的原因';
ALTER TABLE candidate_circulation_records MODIFY COLUMN detail_info varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '细节信息(json格式)字段说明查看说明文档,每一个类型对应一个实体类';
ALTER TABLE candidate_circulation_records ADD candidate_circulation_id int(11) NULL COMMENT '候选人流转表id';
修改于 2023-07-18 09:01:23