Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
W
wangxiaolu-sfa-module-job
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
sfa
wangxiaolu-sfa-module-job
Commits
53414f2b
提交
53414f2b
authored
7月 03, 2025
作者:
000516
浏览文件
操作
浏览文件
下载
差异文件
当员工离职完成时,链路中心账号做离职操作;部门停用时,部门做停用+删除操作
上级
26cc3e5c
8449600f
隐藏空白字符变更
内嵌
并排
正在显示
12 个修改的文件
包含
60 行增加
和
12 行删除
+60
-12
Constants.java
src/main/java/com/sfa/job/constants/Constants.java
+1
-0
EventCallbackLuzx.java
...n/java/com/sfa/job/consumer/feishu/EventCallbackLuzx.java
+6
-11
ISysDeptDao.java
src/main/java/com/sfa/job/domain/system/dao/ISysDeptDao.java
+1
-0
ISysUserDao.java
src/main/java/com/sfa/job/domain/system/dao/ISysUserDao.java
+2
-0
SysDeptDaoImpl.java
...in/java/com/sfa/job/domain/system/dao/SysDeptDaoImpl.java
+5
-0
SysUserDaoImpl.java
...in/java/com/sfa/job/domain/system/dao/SysUserDaoImpl.java
+5
-0
SysDeptMapper.java
.../java/com/sfa/job/domain/system/mapper/SysDeptMapper.java
+1
-0
SysUserMapper.java
.../java/com/sfa/job/domain/system/mapper/SysUserMapper.java
+3
-0
EventCallbackServiceImpl.java
.../com/sfa/job/service/feishu/EventCallbackServiceImpl.java
+25
-1
IEventCallbackService.java
...ava/com/sfa/job/service/feishu/IEventCallbackService.java
+2
-0
SysDeptMapper.xml
src/main/resources/mapper/master/SysDeptMapper.xml
+4
-0
SysUserMapper.xml
src/main/resources/mapper/master/SysUserMapper.xml
+5
-0
没有找到文件。
src/main/java/com/sfa/job/constants/Constants.java
浏览文件 @
53414f2b
...
@@ -17,4 +17,5 @@ public class Constants {
...
@@ -17,4 +17,5 @@ public class Constants {
public
static
final
String
FEISHU_EVENT_USER_CREATE
=
"corehr.job_data.employed_v1"
;
public
static
final
String
FEISHU_EVENT_USER_CREATE
=
"corehr.job_data.employed_v1"
;
public
static
final
String
FEISHU_EVENT_USER_PUT
=
"corehr.job_data.changed_v1"
;
public
static
final
String
FEISHU_EVENT_USER_PUT
=
"corehr.job_data.changed_v1"
;
public
static
final
String
FEISHU_EVENT_USER_UPDATE
=
"corehr.person.updated_v1"
;
public
static
final
String
FEISHU_EVENT_USER_UPDATE
=
"corehr.person.updated_v1"
;
public
static
final
String
FEISHU_EVENT_USER_RESIGNED
=
"corehr.employment.resigned_v1"
;
}
}
src/main/java/com/sfa/job/consumer/feishu/EventCallbackLuzx.java
浏览文件 @
53414f2b
...
@@ -2,7 +2,6 @@ package com.sfa.job.consumer.feishu;
...
@@ -2,7 +2,6 @@ package com.sfa.job.consumer.feishu;
import
com.alibaba.fastjson2.JSONArray
;
import
com.alibaba.fastjson2.JSONArray
;
import
com.alibaba.fastjson2.JSONObject
;
import
com.alibaba.fastjson2.JSONObject
;
import
com.lark.oapi.ws.Constant
;
import
com.sfa.common.core.enums.ECode
;
import
com.sfa.common.core.enums.ECode
;
import
com.sfa.common.core.enums.promotion.PlanStatus
;
import
com.sfa.common.core.enums.promotion.PlanStatus
;
import
com.sfa.common.core.exception.ServiceException
;
import
com.sfa.common.core.exception.ServiceException
;
...
@@ -67,12 +66,11 @@ public class EventCallbackLuzx {
...
@@ -67,12 +66,11 @@ public class EventCallbackLuzx {
/**
/**
* 组织(部门/人员)变更 事件处理
* 组织(部门/人员)变更 事件处理
*/
*/
if
(
req
.
containsKey
(
"header"
)){
if
(
req
.
containsKey
(
"header"
)
&&
req
.
containsKey
(
"event"
)
){
deptOrUserEvent
(
req
);
deptOrUserEvent
(
req
);
}
}
return
req
;
return
req
;
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
throw
new
ServiceException
(
ECode
.
DB_TABLE_UPDATE_ERROR
.
getMsg
(),
ECode
.
DB_TABLE_UPDATE_ERROR
.
getCode
());
throw
new
ServiceException
(
ECode
.
DB_TABLE_UPDATE_ERROR
.
getMsg
(),
ECode
.
DB_TABLE_UPDATE_ERROR
.
getCode
());
}
}
}
}
...
@@ -80,10 +78,7 @@ public class EventCallbackLuzx {
...
@@ -80,10 +78,7 @@ public class EventCallbackLuzx {
/**
/**
* 部门、人员变更事件
* 部门、人员变更事件
*/
*/
private
void
deptOrUserEvent
(
JSONObject
req
)
{
private
synchronized
void
deptOrUserEvent
(
JSONObject
req
)
{
if
(!
req
.
containsKey
(
"event"
)){
return
;
}
String
eventType
=
req
.
getJSONObject
(
"header"
).
getString
(
"event_type"
);
String
eventType
=
req
.
getJSONObject
(
"header"
).
getString
(
"event_type"
);
String
departmentId
=
req
.
getJSONObject
(
"event"
).
getString
(
"department_id"
);
String
departmentId
=
req
.
getJSONObject
(
"event"
).
getString
(
"department_id"
);
...
@@ -110,7 +105,10 @@ public class EventCallbackLuzx {
...
@@ -110,7 +105,10 @@ public class EventCallbackLuzx {
eventCallbackService
.
userUpdateByPersonId
(
req
.
getJSONObject
(
"event"
).
getString
(
"person_id"
));
eventCallbackService
.
userUpdateByPersonId
(
req
.
getJSONObject
(
"event"
).
getString
(
"person_id"
));
}
}
}
}
// 员工完成离职
if
(
Constants
.
FEISHU_EVENT_USER_RESIGNED
.
equals
(
eventType
)){
eventCallbackService
.
userResigned
(
req
.
getJSONObject
(
"event"
).
getString
(
"employment_id"
));
}
}
}
...
@@ -128,9 +126,6 @@ public class EventCallbackLuzx {
...
@@ -128,9 +126,6 @@ public class EventCallbackLuzx {
}
}
}
}
/**
/**
* 解析encrypt_key加密数据
* 解析encrypt_key加密数据
*/
*/
...
...
src/main/java/com/sfa/job/domain/system/dao/ISysDeptDao.java
浏览文件 @
53414f2b
...
@@ -17,4 +17,5 @@ public interface ISysDeptDao {
...
@@ -17,4 +17,5 @@ public interface ISysDeptDao {
List
<
SysDept
>
selectListByStatus
();
List
<
SysDept
>
selectListByStatus
();
void
deleteDept
(
String
deptCode
);
}
}
src/main/java/com/sfa/job/domain/system/dao/ISysUserDao.java
浏览文件 @
53414f2b
...
@@ -11,4 +11,6 @@ public interface ISysUserDao {
...
@@ -11,4 +11,6 @@ public interface ISysUserDao {
void
insertOrUpdate
(
JSONObject
jo
,
Long
deptId
);
void
insertOrUpdate
(
JSONObject
jo
,
Long
deptId
);
void
updateDeptLeader
();
void
updateDeptLeader
();
void
deleteUser
(
String
employeeNo
);
}
}
src/main/java/com/sfa/job/domain/system/dao/SysDeptDaoImpl.java
浏览文件 @
53414f2b
...
@@ -101,4 +101,9 @@ public class SysDeptDaoImpl implements ISysDeptDao{
...
@@ -101,4 +101,9 @@ public class SysDeptDaoImpl implements ISysDeptDao{
public
List
<
SysDept
>
selectListByStatus
()
{
public
List
<
SysDept
>
selectListByStatus
()
{
return
sysDeptMapper
.
selectListByStatus
();
return
sysDeptMapper
.
selectListByStatus
();
}
}
@Override
public
void
deleteDept
(
String
deptCode
)
{
sysDeptMapper
.
updateStatus
(
deptCode
);
}
}
}
src/main/java/com/sfa/job/domain/system/dao/SysUserDaoImpl.java
浏览文件 @
53414f2b
...
@@ -49,4 +49,9 @@ public class SysUserDaoImpl implements ISysUserDao{
...
@@ -49,4 +49,9 @@ public class SysUserDaoImpl implements ISysUserDao{
public
void
updateDeptLeader
()
{
public
void
updateDeptLeader
()
{
sysUserMapper
.
updateDeptLeader
();
sysUserMapper
.
updateDeptLeader
();
}
}
@Override
public
void
deleteUser
(
String
employeeNo
)
{
sysUserMapper
.
updateStatus
(
employeeNo
);
}
}
}
src/main/java/com/sfa/job/domain/system/mapper/SysDeptMapper.java
浏览文件 @
53414f2b
...
@@ -19,6 +19,7 @@ public interface SysDeptMapper extends BaseMapper<SysDept> {
...
@@ -19,6 +19,7 @@ public interface SysDeptMapper extends BaseMapper<SysDept> {
List
<
SysDept
>
selectListByStatus
();
List
<
SysDept
>
selectListByStatus
();
void
updateStatus
(
String
deptCode
);
}
}
...
...
src/main/java/com/sfa/job/domain/system/mapper/SysUserMapper.java
浏览文件 @
53414f2b
...
@@ -2,6 +2,7 @@ package com.sfa.job.domain.system.mapper;
...
@@ -2,6 +2,7 @@ package com.sfa.job.domain.system.mapper;
import
com.sfa.job.domain.system.entity.SysUser
;
import
com.sfa.job.domain.system.entity.SysUser
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
org.apache.ibatis.annotations.Param
;
import
org.springframework.stereotype.Repository
;
import
org.springframework.stereotype.Repository
;
/**
/**
...
@@ -16,6 +17,8 @@ public interface SysUserMapper extends BaseMapper<SysUser> {
...
@@ -16,6 +17,8 @@ public interface SysUserMapper extends BaseMapper<SysUser> {
void
insertOrUpdate
(
SysUser
sysUser
);
void
insertOrUpdate
(
SysUser
sysUser
);
void
updateDeptLeader
();
void
updateDeptLeader
();
void
updateStatus
(
@Param
(
"employeeNo"
)
String
employeeNo
);
}
}
...
...
src/main/java/com/sfa/job/service/feishu/EventCallbackServiceImpl.java
浏览文件 @
53414f2b
...
@@ -5,13 +5,15 @@ import cn.hutool.core.date.DateUtil;
...
@@ -5,13 +5,15 @@ import cn.hutool.core.date.DateUtil;
import
com.alibaba.fastjson2.JSONObject
;
import
com.alibaba.fastjson2.JSONObject
;
import
com.lark.oapi.service.corehr.v2.model.*
;
import
com.lark.oapi.service.corehr.v2.model.*
;
import
com.sfa.common.core.enums.promotion.PlanStatus
;
import
com.sfa.common.core.enums.promotion.PlanStatus
;
import
com.sfa.common.core.utils.DateUtils
;
import
com.sfa.common.core.utils.sdk.FeiShuUtil
;
import
com.sfa.common.core.utils.sdk.FeiShuUtil
;
import
com.sfa.job.domain.promotion.dao.IActivityPlanDao
;
import
com.sfa.job.domain.promotion.dao.IActivityPlanDao
;
import
com.sfa.job.domain.system.dao.ISysDeptDao
;
import
com.sfa.job.domain.system.dao.ISysUserDao
;
import
com.sfa.job.pojo.feishu.event.EventCallBackDto
;
import
com.sfa.job.pojo.feishu.event.EventCallBackDto
;
import
com.sfa.job.pojo.promotion.response.ActivityPlanApprovalDto
;
import
com.sfa.job.pojo.promotion.response.ActivityPlanApprovalDto
;
import
com.sfa.job.util.T100Util
;
import
com.sfa.job.util.T100Util
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
...
@@ -29,6 +31,10 @@ public class EventCallbackServiceImpl implements IEventCallbackService{
...
@@ -29,6 +31,10 @@ public class EventCallbackServiceImpl implements IEventCallbackService{
@Autowired
@Autowired
private
IActivityPlanDao
activityPlanDao
;
private
IActivityPlanDao
activityPlanDao
;
@Autowired
@Autowired
private
ISysUserDao
sysUserDao
;
@Autowired
private
ISysDeptDao
sysDeptDao
;
@Autowired
private
FeiShuUtil
feiShuUtil
;
private
FeiShuUtil
feiShuUtil
;
@Autowired
@Autowired
private
T100Util
t100Util
;
private
T100Util
t100Util
;
...
@@ -111,6 +117,10 @@ public class EventCallbackServiceImpl implements IEventCallbackService{
...
@@ -111,6 +117,10 @@ public class EventCallbackServiceImpl implements IEventCallbackService{
deptT100
.
put
(
"ooeg005"
,
"Y"
);
deptT100
.
put
(
"ooeg005"
,
"Y"
);
createOrUpdateDept
(
deptT100
);
createOrUpdateDept
(
deptT100
);
// 部门停用时,删除链路中心部门
if
(!
active
)
{
sysDeptDao
.
deleteDept
(
deptCode
);
}
}
}
/**
/**
...
@@ -131,6 +141,20 @@ public class EventCallbackServiceImpl implements IEventCallbackService{
...
@@ -131,6 +141,20 @@ public class EventCallbackServiceImpl implements IEventCallbackService{
userAUT100
(
emp
);
userAUT100
(
emp
);
}
}
/**
* 根据工号做员工离职
*/
@Override
public
void
userResigned
(
String
employmentId
)
{
Employee
emp
=
feiShuUtil
.
getEmployeeReq
(
employmentId
);
String
employeeNo
=
emp
.
getEmployeeNumber
();
if
(
StringUtils
.
isEmpty
(
employeeNo
)){
return
;
}
// 链路中心人员离职
sysUserDao
.
deleteUser
(
employeeNo
);
}
private
void
userAUT100
(
Employee
emp
){
private
void
userAUT100
(
Employee
emp
){
String
departmentIdV2
=
emp
.
getDepartmentIdV2
();
String
departmentIdV2
=
emp
.
getDepartmentIdV2
();
Department
dept
=
feiShuUtil
.
getDepartmentCorehr
(
departmentIdV2
);
Department
dept
=
feiShuUtil
.
getDepartmentCorehr
(
departmentIdV2
);
...
...
src/main/java/com/sfa/job/service/feishu/IEventCallbackService.java
浏览文件 @
53414f2b
...
@@ -17,4 +17,6 @@ public interface IEventCallbackService {
...
@@ -17,4 +17,6 @@ public interface IEventCallbackService {
void
userCreateOrUpdate
(
String
employmentId
);
void
userCreateOrUpdate
(
String
employmentId
);
void
userUpdateByPersonId
(
String
personId
);
void
userUpdateByPersonId
(
String
personId
);
void
userResigned
(
String
employmentId
);
}
}
src/main/resources/mapper/master/SysDeptMapper.xml
浏览文件 @
53414f2b
...
@@ -82,4 +82,8 @@
...
@@ -82,4 +82,8 @@
<select
id=
"selectListByStatus"
resultMap=
"SimpleResultMap"
>
<select
id=
"selectListByStatus"
resultMap=
"SimpleResultMap"
>
select dept_id,dept_code,dept_name from sys_dept where status = '0' and del_flag = '0';
select dept_id,dept_code,dept_name from sys_dept where status = '0' and del_flag = '0';
</select>
</select>
<update
id=
"updateStatus"
>
update sys_dept set status = '1', del_flag = '2' where dept_code = #{deptCode};
</update>
</mapper>
</mapper>
src/main/resources/mapper/master/SysUserMapper.xml
浏览文件 @
53414f2b
...
@@ -92,4 +92,9 @@
...
@@ -92,4 +92,9 @@
sd.phone = su.phonenumber
sd.phone = su.phonenumber
where sd.fs_leader_id = su.fs_open_id
where sd.fs_leader_id = su.fs_open_id
</update>
</update>
<update
id=
"updateStatus"
>
update sys_user set status = 1, del_flag = 3 where user_name = #{employeeNo}
</update>
</mapper>
</mapper>
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论