|
@@ -3,7 +3,6 @@ package com.ym.mec.biz.service.impl;
|
|
import com.ym.mec.auth.api.client.SysUserFeignService;
|
|
import com.ym.mec.auth.api.client.SysUserFeignService;
|
|
import com.ym.mec.auth.api.entity.SysRole;
|
|
import com.ym.mec.auth.api.entity.SysRole;
|
|
import com.ym.mec.auth.api.entity.SysUser;
|
|
import com.ym.mec.auth.api.entity.SysUser;
|
|
-import com.ym.mec.auth.api.enums.YesOrNoEnum;
|
|
|
|
import com.ym.mec.biz.dal.dao.*;
|
|
import com.ym.mec.biz.dal.dao.*;
|
|
import com.ym.mec.biz.dal.dto.EmployeeDto;
|
|
import com.ym.mec.biz.dal.dto.EmployeeDto;
|
|
import com.ym.mec.biz.dal.dto.EmployeeLevelDto;
|
|
import com.ym.mec.biz.dal.dto.EmployeeLevelDto;
|
|
@@ -25,18 +24,17 @@ import com.ym.mec.common.exception.BizException;
|
|
import com.ym.mec.common.page.PageInfo;
|
|
import com.ym.mec.common.page.PageInfo;
|
|
import com.ym.mec.common.page.WrapperUtil;
|
|
import com.ym.mec.common.page.WrapperUtil;
|
|
import com.ym.mec.common.service.impl.BaseServiceImpl;
|
|
import com.ym.mec.common.service.impl.BaseServiceImpl;
|
|
|
|
+import com.ym.mec.common.tenant.TenantContextHolder;
|
|
import com.ym.mec.im.ImFeignService;
|
|
import com.ym.mec.im.ImFeignService;
|
|
import com.ym.mec.im.entity.GroupMember;
|
|
import com.ym.mec.im.entity.GroupMember;
|
|
import com.ym.mec.im.entity.GroupModel;
|
|
import com.ym.mec.im.entity.GroupModel;
|
|
import com.ym.mec.util.collection.MapUtil;
|
|
import com.ym.mec.util.collection.MapUtil;
|
|
-
|
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
|
|
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
import org.springframework.util.CollectionUtils;
|
|
import org.springframework.util.CollectionUtils;
|
|
-
|
|
|
|
import java.util.*;
|
|
import java.util.*;
|
|
import java.util.stream.Collectors;
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
@@ -69,6 +67,10 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee> imp
|
|
private OaUserService oaUserService;
|
|
private OaUserService oaUserService;
|
|
@Autowired
|
|
@Autowired
|
|
private TenantInfoService tenantInfoService;
|
|
private TenantInfoService tenantInfoService;
|
|
|
|
+ @Autowired
|
|
|
|
+ private SysEmployeePositionService employeePositionService;
|
|
|
|
+ @Autowired
|
|
|
|
+ private SysEmployeePositionDao employeePositionDao;
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public BaseDAO<Integer, Employee> getDAO() {
|
|
public BaseDAO<Integer, Employee> getDAO() {
|
|
@@ -104,6 +106,8 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee> imp
|
|
employeeDao.insert(employee);
|
|
employeeDao.insert(employee);
|
|
//新增用户角色
|
|
//新增用户角色
|
|
employeeDao.batchAddEmployeeRole(employee.getId(),employee.getRoleIds(), employee.getTenantId());
|
|
employeeDao.batchAddEmployeeRole(employee.getId(),employee.getRoleIds(), employee.getTenantId());
|
|
|
|
+ //新增用户职位
|
|
|
|
+ employeePositionService.batchAddPosition(employee.getId(),employee.getPositionIds(), employee.getTenantId());
|
|
//添加用户现金账户
|
|
//添加用户现金账户
|
|
sysUserCashAccountDao.insert(new SysUserCashAccount(employee.getId(),"CNY"));
|
|
sysUserCashAccountDao.insert(new SysUserCashAccount(employee.getId(),"CNY"));
|
|
ImResult imResult = imFeignService.register(new ImUserModel(employee.getId().toString(), employee.getUsername(),null));
|
|
ImResult imResult = imFeignService.register(new ImUserModel(employee.getId().toString(), employee.getUsername(),null));
|
|
@@ -139,6 +143,11 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee> imp
|
|
employeeDao.delEmployeeRole(employee.getId());
|
|
employeeDao.delEmployeeRole(employee.getId());
|
|
//新增用户角色
|
|
//新增用户角色
|
|
employeeDao.batchAddEmployeeRole(employee.getId(),employee.getRoleIds(), sysUser.getTeacherId());
|
|
employeeDao.batchAddEmployeeRole(employee.getId(),employee.getRoleIds(), sysUser.getTeacherId());
|
|
|
|
+
|
|
|
|
+ //删除用户职位
|
|
|
|
+ employeePositionService.delPosition(employee.getId(),employee.getTenantId());
|
|
|
|
+ //添加职位
|
|
|
|
+ employeePositionService.batchAddPosition(employee.getId(),employee.getPositionIds(), employee.getTenantId());
|
|
teacherDao.updateUser(employee);
|
|
teacherDao.updateUser(employee);
|
|
imGroupDao.updateNickname(employee.getUserId(), employee.getRealName());
|
|
imGroupDao.updateNickname(employee.getUserId(), employee.getRealName());
|
|
imGroupDao.updateUserFriendNickname(employee.getUserId(), employee.getRealName());
|
|
imGroupDao.updateUserFriendNickname(employee.getUserId(), employee.getRealName());
|
|
@@ -160,15 +169,7 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee> imp
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public void deleteEmployee(Long userId) {
|
|
|
|
- SysUser sysUser=new SysUser();
|
|
|
|
- sysUser.setId(userId.intValue());
|
|
|
|
- sysUser.setDelFlag(YesOrNoEnum.YES);
|
|
|
|
- teacherDao.updateUser(sysUser);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- @Override
|
|
|
|
- public PageInfo queryEmployByOrganId(EmployeeQueryInfo queryInfo) throws Exception {
|
|
|
|
|
|
+ public PageInfo queryEmployByOrganId(EmployeeQueryInfo queryInfo){
|
|
SysUser user = sysUserFeignService.queryUserInfo();
|
|
SysUser user = sysUserFeignService.queryUserInfo();
|
|
if(user == null){
|
|
if(user == null){
|
|
throw new BizException("获取用户信息失败");
|
|
throw new BizException("获取用户信息失败");
|
|
@@ -182,8 +183,14 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee> imp
|
|
pageInfo.setTotal(count);
|
|
pageInfo.setTotal(count);
|
|
params.put("offset", pageInfo.getOffset());
|
|
params.put("offset", pageInfo.getOffset());
|
|
dataList = employeeDao.queryEmployByOrganId(params);
|
|
dataList = employeeDao.queryEmployByOrganId(params);
|
|
|
|
+ Integer tenantId = TenantContextHolder.getTenantId();
|
|
|
|
+ List<Integer> userIds = dataList.stream().map(e -> e.getId()).collect(Collectors.toList());
|
|
|
|
+ Map<Integer,String> positionMap = MapUtil.convertMybatisMap(employeePositionDao.queryPositionMap(userIds,tenantId));
|
|
|
|
+ Map<Integer,String> positionNameMap = MapUtil.convertMybatisMap(employeePositionDao.queryPositionNameMap(userIds,tenantId));
|
|
List<Integer> allOrganIds = new ArrayList<>();
|
|
List<Integer> allOrganIds = new ArrayList<>();
|
|
for (EmployeeDto employeeDto : dataList) {
|
|
for (EmployeeDto employeeDto : dataList) {
|
|
|
|
+ employeeDto.setPositionIds(positionMap.get(employeeDto.getId()));
|
|
|
|
+ employeeDto.setPositionNames(positionNameMap.get(employeeDto.getId()));
|
|
if(StringUtils.isBlank(employeeDto.getOrganIdStr())){
|
|
if(StringUtils.isBlank(employeeDto.getOrganIdStr())){
|
|
continue;
|
|
continue;
|
|
}
|
|
}
|