From 6ce4c93b3cb0271a7647f2fae0e982de70036aed Mon Sep 17 00:00:00 2001 From: 疯狂的狮子li <15040126243@163.com> Date: 星期六, 08 五月 2021 16:55:50 +0800 Subject: [PATCH] fix 日志时间sql符号转换问题 --- ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java | 69 ++++++++++++++++++++++++---------- 1 files changed, 49 insertions(+), 20 deletions(-) diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java index 467e501..98616e8 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java @@ -1,20 +1,26 @@ package com.ruoyi.system.service.impl; import cn.hutool.core.lang.Validator; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.common.annotation.DataScope; import com.ruoyi.common.constant.UserConstants; import com.ruoyi.common.core.domain.TreeSelect; import com.ruoyi.common.core.domain.entity.SysDept; import com.ruoyi.common.core.domain.entity.SysRole; +import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.exception.CustomException; import com.ruoyi.system.mapper.SysDeptMapper; import com.ruoyi.system.mapper.SysRoleMapper; +import com.ruoyi.system.mapper.SysUserMapper; import com.ruoyi.system.service.ISysDeptService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.ArrayList; +import java.util.Arrays; import java.util.Iterator; import java.util.List; import java.util.stream.Collectors; @@ -26,11 +32,12 @@ */ @Service public class SysDeptServiceImpl extends ServiceImpl<SysDeptMapper, SysDept> implements ISysDeptService { - @Autowired - private SysDeptMapper deptMapper; @Autowired private SysRoleMapper roleMapper; + + @Autowired + private SysUserMapper userMapper; /** * 鏌ヨ閮ㄩ棬绠$悊鏁版嵁 @@ -41,7 +48,15 @@ @Override @DataScope(deptAlias = "d") public List<SysDept> selectDeptList(SysDept dept) { - return deptMapper.selectDeptList(dept); + Object dataScope = dept.getParams().get("dataScope"); + return list(new LambdaQueryWrapper<SysDept>() + .eq(dept.getParentId() != null && dept.getParentId() != 0, + SysDept::getParentId, dept.getParentId()) + .like(StrUtil.isNotBlank(dept.getDeptName()), SysDept::getDeptName, dept.getDeptName()) + .eq(StrUtil.isNotBlank(dept.getStatus()), SysDept::getStatus, dept.getStatus()) + .apply(dataScope != null, dataScope != null ? dataScope.toString() : null) + .orderByAsc(SysDept::getParentId) + .orderByAsc(SysDept::getOrderNum)); } /** @@ -91,8 +106,8 @@ */ @Override public List<Integer> selectDeptListByRoleId(Long roleId) { - SysRole role = roleMapper.selectRoleById(roleId); - return deptMapper.selectDeptListByRoleId(roleId, role.isDeptCheckStrictly()); + SysRole role = roleMapper.selectById(roleId); + return baseMapper.selectDeptListByRoleId(roleId, role.isDeptCheckStrictly()); } /** @@ -103,7 +118,7 @@ */ @Override public SysDept selectDeptById(Long deptId) { - return deptMapper.selectDeptById(deptId); + return getById(deptId); } /** @@ -114,7 +129,9 @@ */ @Override public int selectNormalChildrenDeptById(Long deptId) { - return deptMapper.selectNormalChildrenDeptById(deptId); + return count(new LambdaQueryWrapper<SysDept>() + .eq(SysDept::getStatus, 0) + .apply("find_in_set({0}, ancestors)", deptId)); } /** @@ -125,7 +142,9 @@ */ @Override public boolean hasChildByDeptId(Long deptId) { - int result = deptMapper.hasChildByDeptId(deptId); + int result = count(new LambdaQueryWrapper<SysDept>() + .eq(SysDept::getParentId, deptId) + .last("limit 1")); return result > 0 ? true : false; } @@ -137,7 +156,8 @@ */ @Override public boolean checkDeptExistUser(Long deptId) { - int result = deptMapper.checkDeptExistUser(deptId); + int result = userMapper.selectCount(new LambdaQueryWrapper<SysUser>() + .eq(SysUser::getDeptId, deptId)); return result > 0 ? true : false; } @@ -150,7 +170,10 @@ @Override public String checkDeptNameUnique(SysDept dept) { Long deptId = Validator.isNull(dept.getDeptId()) ? -1L : dept.getDeptId(); - SysDept info = deptMapper.checkDeptNameUnique(dept.getDeptName(), dept.getParentId()); + SysDept info = getOne(new LambdaQueryWrapper<SysDept>() + .eq(SysDept::getDeptName, dept.getDeptName()) + .eq(SysDept::getParentId, dept.getParentId()) + .last("limit 1")); if (Validator.isNotNull(info) && info.getDeptId().longValue() != deptId.longValue()) { return UserConstants.NOT_UNIQUE; } @@ -165,13 +188,13 @@ */ @Override public int insertDept(SysDept dept) { - SysDept info = deptMapper.selectDeptById(dept.getParentId()); + SysDept info = getById(dept.getParentId()); // 濡傛灉鐖惰妭鐐逛笉涓烘甯哥姸鎬�,鍒欎笉鍏佽鏂板瀛愯妭鐐� if (!UserConstants.DEPT_NORMAL.equals(info.getStatus())) { throw new CustomException("閮ㄩ棬鍋滅敤锛屼笉鍏佽鏂板"); } dept.setAncestors(info.getAncestors() + "," + dept.getParentId()); - return deptMapper.insertDept(dept); + return baseMapper.insert(dept); } /** @@ -182,15 +205,15 @@ */ @Override public int updateDept(SysDept dept) { - SysDept newParentDept = deptMapper.selectDeptById(dept.getParentId()); - SysDept oldDept = deptMapper.selectDeptById(dept.getDeptId()); + SysDept newParentDept = getById(dept.getParentId()); + SysDept oldDept = getById(dept.getDeptId()); if (Validator.isNotNull(newParentDept) && Validator.isNotNull(oldDept)) { String newAncestors = newParentDept.getAncestors() + "," + newParentDept.getDeptId(); String oldAncestors = oldDept.getAncestors(); dept.setAncestors(newAncestors); updateDeptChildren(dept.getDeptId(), newAncestors, oldAncestors); } - int result = deptMapper.updateDept(dept); + int result = baseMapper.updateById(dept); if (UserConstants.DEPT_NORMAL.equals(dept.getStatus())) { // 濡傛灉璇ラ儴闂ㄦ槸鍚敤鐘舵�侊紝鍒欏惎鐢ㄨ閮ㄩ棬鐨勬墍鏈変笂绾ч儴闂� updateParentDeptStatus(dept); @@ -205,9 +228,14 @@ */ private void updateParentDeptStatus(SysDept dept) { String updateBy = dept.getUpdateBy(); - dept = deptMapper.selectDeptById(dept.getDeptId()); + dept = getById(dept.getDeptId()); dept.setUpdateBy(updateBy); - deptMapper.updateDeptStatus(dept); + update(null,new LambdaUpdateWrapper<SysDept>() + .set(StrUtil.isNotBlank(dept.getStatus()), + SysDept::getStatus,dept.getStatus()) + .set(StrUtil.isNotBlank(dept.getUpdateBy()), + SysDept::getUpdateBy,dept.getUpdateBy()) + .in(SysDept::getDeptId, Arrays.asList(dept.getAncestors().split(",")))); } /** @@ -218,12 +246,13 @@ * @param oldAncestors 鏃х殑鐖禝D闆嗗悎 */ public void updateDeptChildren(Long deptId, String newAncestors, String oldAncestors) { - List<SysDept> children = deptMapper.selectChildrenDeptById(deptId); + List<SysDept> children = list(new LambdaQueryWrapper<SysDept>() + .apply("find_in_set({0},ancestors)",deptId)); for (SysDept child : children) { child.setAncestors(child.getAncestors().replace(oldAncestors, newAncestors)); } if (children.size() > 0) { - deptMapper.updateDeptChildren(children); + updateBatchById(children); } } @@ -235,7 +264,7 @@ */ @Override public int deleteDeptById(Long deptId) { - return deptMapper.deleteDeptById(deptId); + return baseMapper.deleteById(deptId); } /** -- Gitblit v1.9.3