From 57838d91ddc8908e6e5388e13f35ad4fca67b71e Mon Sep 17 00:00:00 2001 From: furongxin <419481438@qq.com> Date: Mon, 10 Mar 2025 21:10:19 +0800 Subject: [PATCH] =?UTF-8?q?refactor(system):=20=E6=9B=B4=E6=96=B0=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E9=83=A8=E9=97=A8=E6=97=B6=E5=90=8C=E6=AD=A5=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=E6=97=A5=E5=BF=97=E4=BD=BF=E7=94=A8=E4=BA=BA=E9=83=A8?= =?UTF-8?q?=E9=97=A8-=20=E5=9C=A8=20AdminUserServiceImpl=20=E4=B8=AD?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=9B=B4=E6=96=B0=E6=97=A5=E5=BF=97=E4=BD=BF?= =?UTF-8?q?=E7=94=A8=E4=BA=BA=E9=83=A8=E9=97=A8=E7=9A=84=E9=80=BB=E8=BE=91?= =?UTF-8?q?-=20=E5=9C=A8=20LogUseService=20=E6=8E=A5=E5=8F=A3=E4=B8=AD?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=20updateUseDeptId=20=E6=96=B9=E6=B3=95=20-?= =?UTF-8?q?=20=E5=9C=A8=20LogUseServiceImpl=20=E4=B8=AD=E5=AE=9E=E7=8E=B0?= =?UTF-8?q?=20updateUseDeptId=20=E6=96=B9=E6=B3=95=20-=20=E4=BC=98?= =?UTF-8?q?=E5=8C=96=20LogInstanceServiceImpl=20=E4=B8=AD=E7=9A=84?= =?UTF-8?q?=E6=97=A5=E5=BF=97=E5=AE=9E=E4=BE=8B=E5=AF=BC=E5=87=BA=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=EF=BC=8C=E6=94=AF=E6=8C=81=E6=9F=A5=E8=AF=A2=E6=89=80?= =?UTF-8?q?=E6=9C=89=E4=B8=8B=E7=BA=A7=E9=83=A8=E9=97=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../module/system/service/user/AdminUserServiceImpl.java | 9 +++++++++ .../system/service/worklog/LogInstanceServiceImpl.java | 5 ++++- .../system/service/worklog/LogRuleServiceImpl.java | 2 +- .../module/system/service/worklog/LogUseService.java | 7 +++++++ .../module/system/service/worklog/LogUseServiceImpl.java | 9 +++++++++ 5 files changed, 30 insertions(+), 2 deletions(-) diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/user/AdminUserServiceImpl.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/user/AdminUserServiceImpl.java index 401a3a3b..12ab4cab 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/user/AdminUserServiceImpl.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/user/AdminUserServiceImpl.java @@ -41,6 +41,7 @@ import cn.iocoder.yudao.module.system.service.dept.DeptService; import cn.iocoder.yudao.module.system.service.dept.PostService; import cn.iocoder.yudao.module.system.service.permission.PermissionService; import cn.iocoder.yudao.module.system.service.tenant.TenantService; +import cn.iocoder.yudao.module.system.service.worklog.LogUseService; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.google.common.annotations.VisibleForTesting; @@ -100,6 +101,9 @@ public class AdminUserServiceImpl implements AdminUserService { @Resource private FileApi fileApi; + @Resource + private LogUseService logUseService; + @Override @Transactional(rollbackFor = Exception.class) public void updateUserOpenId(Long id, String openId) { @@ -155,9 +159,14 @@ public class AdminUserServiceImpl implements AdminUserService { userMapper.updateById(updateObj); // 更新岗位 updateUserPost(updateReqVO, updateObj); + + // 更新日志使用人信息 + logUseService.updateUseDeptId(updateObj.getId(), updateObj.getDeptId()); + } private void updateUserPost(UserSaveReqVO reqVO, AdminUserDO updateObj) { + Long userId = reqVO.getId(); Set dbPostIds = convertSet(userPostMapper.selectListByUserId(userId), UserPostDO::getPostId); // 计算新增和删除的岗位编号 diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/worklog/LogInstanceServiceImpl.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/worklog/LogInstanceServiceImpl.java index f944ff26..be03eb1b 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/worklog/LogInstanceServiceImpl.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/worklog/LogInstanceServiceImpl.java @@ -450,8 +450,11 @@ public class LogInstanceServiceImpl implements LogInstanceService { @Override public List getLogInstanceExport(LogExportVO reqVO) { + // 获取所有部门及下级部门信息 + List deptDOS = deptService.getChildDept(reqVO.getCompanyDeptId()); + List list = logInstanceMapper.selectList(new LambdaQueryWrapperX() - .eqIfPresent(LogInstanceDO::getDeptId, reqVO.getCompanyDeptId()) + .inIfPresent(LogInstanceDO::getDeptId, convertList(deptDOS, DeptDO::getId)) .eqIfPresent(LogInstanceDO::getFormId, reqVO.getFormId()) .betweenIfPresent(LogInstanceDO::getTime, reqVO.getTime())); diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/worklog/LogRuleServiceImpl.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/worklog/LogRuleServiceImpl.java index e5584227..d83830e1 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/worklog/LogRuleServiceImpl.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/worklog/LogRuleServiceImpl.java @@ -10,6 +10,7 @@ import cn.iocoder.yudao.module.system.dal.mysql.worklog.LogFormMapper; import cn.iocoder.yudao.module.system.dal.mysql.worklog.LogRuleMapper; import cn.iocoder.yudao.module.system.service.worklog.dto.LogUseSaveReqDTO; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; @@ -132,5 +133,4 @@ public class LogRuleServiceImpl implements LogRuleService { return logRuleMapper.selectOne(new LambdaQueryWrapper() .eq(LogRuleDO::getFormId, formId)); } - } \ No newline at end of file diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/worklog/LogUseService.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/worklog/LogUseService.java index 93cd3f6f..05babbbc 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/worklog/LogUseService.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/worklog/LogUseService.java @@ -74,4 +74,11 @@ public interface LogUseService { * @return 模版列表 */ List getFormIdList(List deptIds); + + /** + * 更新日志规则使用部门id + * @param userId 用户编号 + * @param deptId 部门编号 + */ + void updateUseDeptId(Long userId, Long deptId); } \ No newline at end of file diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/worklog/LogUseServiceImpl.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/worklog/LogUseServiceImpl.java index 54fb5216..11eb9d60 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/worklog/LogUseServiceImpl.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/worklog/LogUseServiceImpl.java @@ -5,6 +5,7 @@ import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import cn.iocoder.yudao.module.system.dal.dataobject.worklog.LogUseDO; import cn.iocoder.yudao.module.system.dal.mysql.worklog.LogUseMapper; import cn.iocoder.yudao.module.system.service.worklog.dto.LogUseSaveReqDTO; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; @@ -106,4 +107,12 @@ public class LogUseServiceImpl implements LogUseService { List logUseDOS = logUseMapper.selectList(LogUseDO::getUseUserDept, deptIds); return logUseDOS.stream().map(LogUseDO::getFormId).distinct().collect(Collectors.toList()); } + + @Override + public void updateUseDeptId(Long userId, Long deptId) { + + logUseMapper.update(null, new LambdaUpdateWrapper() + .set(LogUseDO::getUseUserDept, deptId) + .eq(LogUseDO::getUseUserId, userId)); + } } \ No newline at end of file