工作流组织机构修改

This commit is contained in:
pengjie 2024-04-11 18:03:57 +08:00
parent fa3c8a6649
commit 4037606eed
3 changed files with 35 additions and 19 deletions

View File

@ -68,7 +68,7 @@ public interface SystemUserMapper extends BaseMapper<SystemUser> {
*/ */
@Select("SELECT user_id id, real_name `name`, 'user' AS 'type', avatar " + @Select("SELECT user_id id, real_name `name`, 'user' AS 'type', avatar " +
"FROM system_user" + "FROM system_user" +
" WHERE sn = #{deptId}") " WHERE xz_project_org_id = #{deptId}")
List<OrgTreeVo> selectUsersByDept(@Param("deptId") String deptId); List<OrgTreeVo> selectUsersByDept(@Param("deptId") String deptId);
/** /**
@ -77,7 +77,7 @@ public interface SystemUserMapper extends BaseMapper<SystemUser> {
* @param userId 用户ID * @param userId 用户ID
* @return 用户所在的部门列表 * @return 用户所在的部门列表
*/ */
@Select("SELECT d.company_sn id, d.company_name FROM system_user u, company d WHERE u.sn = d.company_sn AND u.user_id = #{userId}") @Select("SELECT d.id, d.dept_name FROM system_user u, xz_project_org d WHERE u.xz_project_org_id = d.id AND u.user_id = #{userId}")
List<DeptDo> getUserDepts(@Param("userId") String userId); List<DeptDo> getUserDepts(@Param("userId") String userId);
/** /**
@ -87,9 +87,9 @@ public interface SystemUserMapper extends BaseMapper<SystemUser> {
* @return 用户部门信息列表 * @return 用户部门信息列表
*/ */
@Select({"<script>", @Select({"<script>",
"SELECT tb.* FROM (SELECT CONCAT(wu.user_id, '_', wd.company_sn) tid, wu.user_id, wu.real_name, wd.company_sn, wu.avatar, wd.company_name", "SELECT tb.* FROM (SELECT CONCAT(wu.user_id, '_', wd.id) tid, wu.user_id, wu.real_name, wd.id, wu.avatar, wd.dept_name",
"FROM system_user wu, company wd ", "FROM system_user wu, xz_project_org wd ",
"WHERE wu.sn = wd.company_sn) tb WHERE tb.tid IN", "WHERE wu.xz_project_org_id = wd.id) tb WHERE tb.tid IN",
"<foreach item='item' index='index' collection='list' open='(' separator=',' close=')'>#{item}</foreach>", "<foreach item='item' index='index' collection='list' open='(' separator=',' close=')'>#{item}</foreach>",
"</script>"}) "</script>"})
List<UserDeptDo> getUserDepInfosBatch(@Param("list") Collection<String> udIds); List<UserDeptDo> getUserDepInfosBatch(@Param("list") Collection<String> udIds);

View File

@ -17,6 +17,9 @@ import com.zhgd.xmgl.modules.basicdata.mapper.BaseRoleMapper;
import com.zhgd.xmgl.modules.basicdata.mapper.BaseRoleUserMapper; import com.zhgd.xmgl.modules.basicdata.mapper.BaseRoleUserMapper;
import com.zhgd.xmgl.modules.basicdata.mapper.CompanyMapper; import com.zhgd.xmgl.modules.basicdata.mapper.CompanyMapper;
import com.zhgd.xmgl.modules.basicdata.mapper.SystemUserMapper; import com.zhgd.xmgl.modules.basicdata.mapper.SystemUserMapper;
import com.zhgd.xmgl.modules.xz.entity.XzProjectOrg;
import com.zhgd.xmgl.modules.xz.mapper.XzProjectOrgMapper;
import com.zhgd.xmgl.security.util.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Primary; import org.springframework.context.annotation.Primary;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -38,7 +41,7 @@ public class FlowOrgRepositoryServiceImpl implements OrgRepositoryService {
private BaseRoleMapper systemRoleMapper; private BaseRoleMapper systemRoleMapper;
@Autowired @Autowired
private CompanyMapper companyMapper; private XzProjectOrgMapper xzProjectOrgMapper;
@Override @Override
public List<ModelGroupVo.Form> getModelsByPerm(String userId) { public List<ModelGroupVo.Form> getModelsByPerm(String userId) {
@ -95,13 +98,13 @@ public class FlowOrgRepositoryServiceImpl implements OrgRepositoryService {
@Override @Override
public DeptDo getDeptById(String deptId) { public DeptDo getDeptById(String deptId) {
Company departments = companyMapper.selectOne(Wrappers.<Company>lambdaQuery().eq(Company::getCompanySn, deptId)); XzProjectOrg xzProjectOrg = xzProjectOrgMapper.selectOne(Wrappers.<XzProjectOrg>lambdaQuery().eq(XzProjectOrg::getId, deptId));
if (Objects.nonNull(departments)) { if (Objects.nonNull(xzProjectOrg)) {
DeptDo deptDo = new DeptDo(); DeptDo deptDo = new DeptDo();
deptDo.setId(departments.getCompanySn().toString()); deptDo.setId(xzProjectOrg.getId().toString());
deptDo.setDeptName(departments.getCompanyName()); deptDo.setDeptName(xzProjectOrg.getDeptName());
deptDo.setLeader(""); deptDo.setLeader("");
deptDo.setParentId(departments.getParentId().toString()); deptDo.setParentId(xzProjectOrg.getParentId().toString());
return deptDo; return deptDo;
} }
return null; return null;
@ -115,8 +118,8 @@ public class FlowOrgRepositoryServiceImpl implements OrgRepositoryService {
@Override @Override
public List<DeptDo> getSysAllDepts() { public List<DeptDo> getSysAllDepts() {
try { try {
return companyMapper.selectList(null).stream() return xzProjectOrgMapper.selectList(null).stream()
.map(d -> new DeptDo(d.getCompanySn().toString(), d.getCompanyName(), "", d.getParentId().toString())) .map(d -> new DeptDo(d.getId().toString(), d.getDeptName(), "", d.getParentId().toString()))
.collect(Collectors.toList()); .collect(Collectors.toList());
} catch (Exception e) { } catch (Exception e) {
return Collections.emptyList(); return Collections.emptyList();
@ -136,7 +139,7 @@ public class FlowOrgRepositoryServiceImpl implements OrgRepositoryService {
@Override @Override
public List<OrgTreeVo> getSubDeptById(String parentId) { public List<OrgTreeVo> getSubDeptById(String parentId) {
return companyMapper.selectByDept(parentId); return xzProjectOrgMapper.selectByDept(parentId);
} }
@Override @Override
@ -153,11 +156,11 @@ public class FlowOrgRepositoryServiceImpl implements OrgRepositoryService {
* @param subDepts 所有子部门缓存 * @param subDepts 所有子部门缓存
*/ */
private void loadSubDept(String parentId, List<String> subDepts) { private void loadSubDept(String parentId, List<String> subDepts) {
List<Company> departments = companyMapper.selectList( List<XzProjectOrg> departments = xzProjectOrgMapper.selectList(
new LambdaQueryWrapper<Company>() new LambdaQueryWrapper<XzProjectOrg>()
.eq(Company::getParentId, parentId)); .eq(XzProjectOrg::getParentId, parentId));
subDepts.addAll(departments.stream().map(Company::getCompanySn).collect(Collectors.toList()).stream().map(Object::toString).collect(Collectors.toList())); subDepts.addAll(departments.stream().map(XzProjectOrg::getId).collect(Collectors.toList()).stream().map(Object::toString).collect(Collectors.toList()));
departments.forEach(d -> loadSubDept(d.getCompanySn().toString(), subDepts)); departments.forEach(d -> loadSubDept(d.getId().toString(), subDepts));
} }
@Override @Override

View File

@ -1,9 +1,13 @@
package com.zhgd.xmgl.modules.xz.mapper; package com.zhgd.xmgl.modules.xz.mapper;
import com.wflow.bean.vo.OrgTreeVo;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import com.zhgd.xmgl.modules.xz.entity.XzProjectOrg; import com.zhgd.xmgl.modules.xz.entity.XzProjectOrg;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
/** /**
* @Description: 星纵-项目组织机构 * @Description: 星纵-项目组织机构
@ -17,4 +21,13 @@ public interface XzProjectOrgMapper extends BaseMapper<XzProjectOrg> {
void deleteChildren(String id); void deleteChildren(String id);
void updateAncestors(@Param("oldAncestor") String oldAncestor, @Param("newAncestor") String newAncestor, @Param("projectSn") String projectSn); void updateAncestors(@Param("oldAncestor") String oldAncestor, @Param("newAncestor") String newAncestor, @Param("projectSn") String projectSn);
/**
* 查询某部门下的子部门列表
*
* @param deptId 父部门
* @return 子部门列表type字段固定返回固定值 dept
*/
@Select("SELECT id id, dept_name `name`, 'dept' AS 'type' FROM xz_project_org WHERE parent_id=#{deptId}")
List<OrgTreeVo> selectByDept(@Param("deptId") String deptId);
} }