|
|
|
@ -33,9 +33,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
|
import java.util.Date;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
import java.util.*;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @Description :
|
|
|
|
@ -154,6 +152,36 @@ public class PersonnelServiceService implements IPersonnelService {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public List<Long> findSysUserIdByDepartmentId(Long... departmentId) {
|
|
|
|
|
List<Long> result = new ArrayList<>();
|
|
|
|
|
if(departmentId != null && departmentId.length > 0){
|
|
|
|
|
List<SysRefUserDepartment> departmentList = refUserDepartmentRDao.findByHqlWhere(CoreHqlPack.packHqlIds("departmentId", departmentId));
|
|
|
|
|
if(departmentList != null && departmentList.size() > 0){
|
|
|
|
|
departmentList.forEach(department -> result.add(department.getUserId()));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public List<Long> findSysUserIdByOrganizeCode(String... organizeCode) {
|
|
|
|
|
List<Long> result = new ArrayList<>();
|
|
|
|
|
if(organizeCode != null && organizeCode.length > 0){
|
|
|
|
|
List<SysOrganize> organizeList = organizeRDao.findByHqlWhere(CoreHqlPack.packHqlIds("organizeCode", organizeCode));
|
|
|
|
|
if(organizeList != null && organizeList.size() > 0){
|
|
|
|
|
List<Long> filterIds = new ArrayList<>();
|
|
|
|
|
organizeList.forEach(organize -> filterIds.add(organize.getId()));
|
|
|
|
|
|
|
|
|
|
List<SysRefUserDepartment> departmentList = refUserDepartmentRDao.findByHqlWhere(CoreHqlPack.packHqlIds("organizeId", filterIds.toArray(new Long[filterIds.size()])));
|
|
|
|
|
if(departmentList != null && departmentList.size() > 0){
|
|
|
|
|
departmentList.forEach(department -> result.add(department.getUserId()));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public List<SysUser> findSysUserByIds(Long[] ids) {
|
|
|
|
|
LOGGER.info("平台用户 SysUserInfo ids:{}", ids);
|
|
|
|
|
|
|
|
|
@ -163,7 +191,14 @@ public class PersonnelServiceService implements IPersonnelService {
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public ListPager<SysUser> querySysUser(UserDetailModel model, Pager pager) {
|
|
|
|
|
DdlPackBean packBean = CoreHqlPack.packDdlBeanSysUser(model.getSysUser(), StringTool.getListLong(model.getUserIdList()));
|
|
|
|
|
Set<Long> idList = new HashSet<>();
|
|
|
|
|
idList.addAll(findSysUserIdByDepartmentId(model.getSysUser().getDepartmentId()));
|
|
|
|
|
idList.addAll(findSysUserIdByOrganizeCode(model.getSysUser().getOrganizeCode()));
|
|
|
|
|
if(model.getUserIdList() != null){
|
|
|
|
|
model.getUserIdList().forEach(idStr -> idList.add(Long.parseLong(idStr)));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
DdlPackBean packBean = CoreHqlPack.packDdlBeanSysUser(model.getSysUser(), new ArrayList<>(idList));
|
|
|
|
|
pager = PagerHelper.getPager(pager, userRDao.findByHqlWhereCount(packBean));
|
|
|
|
|
return new ListPager<>(userRDao.findByHqlWherePage(packBean, pager), pager);
|
|
|
|
|
}
|
|
|
|
@ -192,6 +227,36 @@ public class PersonnelServiceService implements IPersonnelService {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public List<Long> findSysUserInfoIdByDepartmentId(Long... departmentId) {
|
|
|
|
|
List<Long> result = new ArrayList<>();
|
|
|
|
|
if(departmentId != null && departmentId.length > 0){
|
|
|
|
|
List<SysRefUserInfoDepartment> departmentList = refUserInfoDepartmentRDao.findByHqlWhere(CoreHqlPack.packHqlIds("departmentId", departmentId));
|
|
|
|
|
if(departmentList != null && departmentList.size() > 0){
|
|
|
|
|
departmentList.forEach(department -> result.add(department.getUserId()));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public List<Long> findSysUserInfoIdByOrganizeCode(String... organizeCode) {
|
|
|
|
|
List<Long> result = new ArrayList<>();
|
|
|
|
|
if(organizeCode != null && organizeCode.length > 0){
|
|
|
|
|
List<SysOrganize> organizeList = organizeRDao.findByHqlWhere(CoreHqlPack.packHqlIds("organizeCode", organizeCode));
|
|
|
|
|
if(organizeList != null && organizeList.size() > 0){
|
|
|
|
|
List<Long> filterIds = new ArrayList<>();
|
|
|
|
|
organizeList.forEach(organize -> filterIds.add(organize.getId()));
|
|
|
|
|
|
|
|
|
|
List<SysRefUserInfoDepartment> departmentList = refUserInfoDepartmentRDao.findByHqlWhere(CoreHqlPack.packHqlIds("organizeId", filterIds.toArray(new Long[filterIds.size()])));
|
|
|
|
|
if(departmentList != null && departmentList.size() > 0){
|
|
|
|
|
departmentList.forEach(department -> result.add(department.getUserId()));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public SysDepartment getSysDepartmentById(Long id) {
|
|
|
|
|
return departmentRDao.getById(id);
|
|
|
|
|
}
|
|
|
|
@ -217,6 +282,9 @@ public class PersonnelServiceService implements IPersonnelService {
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public ListPager<SysUserInfo> querySysUserInfo(UserDetailModel model, Pager pager) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
DdlPackBean packBean = CoreHqlPack.packDdlBeanSysUserInfo(model.getSysUserInfo(), StringTool.getListLong(model.getUserInfoIdList()));
|
|
|
|
|
|
|
|
|
|
pager = PagerHelper.getPager(pager, userInfoRDao.findByHqlWhereCount(packBean));
|
|
|
|
|