From b693c55ed17cc94efb45ea595341d443bfd4259d Mon Sep 17 00:00:00 2001 From: k94314517 <8417338+k94314517@user.noreply.gitee.com> Date: 星期六, 23 十一月 2024 09:19:04 +0800 Subject: [PATCH] git ch --- server/service/src/main/java/com/doumee/service/system/impl/SystemUserServiceImpl.java | 64 +++++++++++++++++++++++++++++++- 1 files changed, 62 insertions(+), 2 deletions(-) diff --git a/server/service/src/main/java/com/doumee/service/system/impl/SystemUserServiceImpl.java b/server/service/src/main/java/com/doumee/service/system/impl/SystemUserServiceImpl.java index 7160b8b..90b7b16 100644 --- a/server/service/src/main/java/com/doumee/service/system/impl/SystemUserServiceImpl.java +++ b/server/service/src/main/java/com/doumee/service/system/impl/SystemUserServiceImpl.java @@ -2,14 +2,21 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.doumee.biz.system.SystemDictDataBiz; +import com.doumee.core.constants.ResponseStatus; +import com.doumee.core.exception.BusinessException; import com.doumee.core.model.LoginUserInfo; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Constants; import com.doumee.core.utils.Utils; +import com.doumee.dao.business.CompanyDepartmentMapper; +import com.doumee.dao.business.model.Company; +import com.doumee.dao.business.model.CompanyDepartment; +import com.doumee.dao.business.model.Member; import com.doumee.dao.system.SystemUserJoinMapper; import com.doumee.dao.system.SystemUserMapper; import com.doumee.dao.system.dto.QuerySystemUserDTO; @@ -64,6 +71,9 @@ @Autowired private DepartmentDataPermissionAware departmentDataPermissionAware; + + @Autowired + private CompanyDepartmentMapper companyDepartmentMapper; @Override public Integer create(SystemUser systemUser) { @@ -148,10 +158,37 @@ // pageWrap.getModel().setDepartmentIds(collect); } LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); - pageWrap.getModel().setType(loginUserInfo.getType()); +// pageWrap.getModel().setType(loginUserInfo.getType()); if(!Constants.equalsInteger(loginUserInfo.getType(),Constants.ZERO)){ //濡傛灉鏄紒涓氳处鍙� pageWrap.getModel().setCompanyId(loginUserInfo.getCompanyId()); + } + // 鎵ц鏌ヨ + PageHelper.startPage(pageWrap.getPage(), pageWrap.getCapacity()); + List<SystemUserListVO> userList = systemUserMapper.selectManageList(pageWrap.getModel(), pageWrap.getOrderByClause()); + String zhuboRoomUrl = systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.ZHUBO_ROOM_URL).getCode(); + + for (SystemUserListVO user : userList) { + // 鏌ヨ鐢ㄦ埛瑙掕壊鍒楄〃 + user.setRoles(systemRoleService.findByUserId(user.getId())); + // 鏌ヨ鐢ㄦ埛宀椾綅鍒楄〃 +// user.setPositions(systemPositionService.findByUserId(user.getId())); + user.setZhuboRoomUrl(zhuboRoomUrl); + } + return PageData.from(new PageInfo<>(userList)); + } + @Override + public PageData<SystemUserListVO> findPageCompany(PageWrap<QuerySystemUserDTO> pageWrap) { + // 鏍归儴闂ㄦ潯浠跺鐞嗭紙闇�鏌ヨ鏍归儴闂ㄤ笅鎵�鏈夐儴闂ㄧ殑鐢ㄦ埛锛� + if (pageWrap.getModel().getRootDeptId() != null) { +// pageWrap.getModel().setDepartmentIds(getDeptIds(pageWrap.getModel().getRootDeptId())); + } else { +// List<SystemDepartment> list = systemDepartmentService.findList(new QueryWrapper<>()); +// List<Integer> collect = list.stream().map(s -> s.getId()).collect(Collectors.toList()); +// pageWrap.getModel().setDepartmentIds(collect); + } + if (pageWrap.getModel().getCompanyId() == null) { + pageWrap.getModel().setCompanyId(-1); } // 鎵ц鏌ヨ PageHelper.startPage(pageWrap.getPage(), pageWrap.getCapacity()); @@ -260,13 +297,36 @@ queryWrapper.selectAll(SystemUser.class); queryWrapper.eq(SystemUser::getDeleted, Constants.ZERO) - .eq(SystemUser::getType,pageWrap.getType()); + .eq(SystemUser::getType,pageWrap.getType()) + .eq(SystemUser::getCompanyId,loginUserInfo.getCompanyId()) + ; queryWrapper.orderByDesc(SystemUser::getCreateTime); List<SystemUser> result = systemUserJoinMapper.selectJoinList(SystemUser.class, queryWrapper); return result; } + @Override + public void updateHead(SystemUser systemUser) { + SystemUser model =systemUserJoinMapper.selectById(systemUser.getId()); + if(model ==null) { + throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝浜哄憳淇℃伅涓嶅瓨鍦紒"); + } + if(model.getDepartmentId()!=null) { + if(Constants.equalsInteger(systemUser.getHeadStatus(),Constants.ONE)){ + //濡傛灉鏄彇娑堜富绠� + companyDepartmentMapper.update(null,new UpdateWrapper<CompanyDepartment>().lambda() + .eq(CompanyDepartment::getId,model.getDepartmentId()) + .set(CompanyDepartment::getHeadId,model.getId())); + }else{ + //濡傛灉鏄涓轰富绠� + companyDepartmentMapper.update(null,new UpdateWrapper<CompanyDepartment>().lambda() + .eq(CompanyDepartment::getId,model.getDepartmentId()) + .set(CompanyDepartment::getHeadId,null) + ); + } + } + } -- Gitblit v1.9.3