|
@@ -979,6 +979,64 @@ public class ReimbursementInfoService {
|
|
|
return newList;
|
|
|
}
|
|
|
|
|
|
+ //用户树形(用于查询会计公司有资质的员工)
|
|
|
+ public List<TreeUserDto> userTreeSelectBySignatureScribe(String name) {
|
|
|
+ UserDTO userDTO = SpringUtil.getBean(IUserApi.class).getByToken(TokenProvider.getCurrentToken());
|
|
|
+ List<TreeUserDto> list = new ArrayList<>();
|
|
|
+ List<TreeUserDto> officeList = Lists.newArrayList();
|
|
|
+ List<String> strings = SpringUtil.getBean(IUserApi.class).hasUser();
|
|
|
+
|
|
|
+ List<TreeUserDto> officeAllList = infoMapper.findOfficeListByIdList(strings);
|
|
|
+
|
|
|
+ // 查询部门
|
|
|
+ if(userDTO.isAdmin() || (null != userDTO.getTenantDTO() && "10002".equals(userDTO.getTenantDTO().getId()))){
|
|
|
+ officeList = infoMapper.findOfficeListByNotTenantId("10000");
|
|
|
+ }else{
|
|
|
+ officeList = infoMapper.findOfficeListByCompanyId(userDTO.getCompanyDTO().getId());
|
|
|
+ }
|
|
|
+ List<TreeUserDto> filterList = new ArrayList<>();
|
|
|
+ filterList.addAll(officeList);
|
|
|
+ filterList.addAll(officeAllList);
|
|
|
+ //查询综合管理公司
|
|
|
+ UserDTO dtoByName = SpringUtil.getBean(IUserApi.class).getByLoginNameNoTen("潘中");
|
|
|
+ List<TreeUserDto> officeList1 = infoMapper.findOfficeListByCompanyId2(dtoByName.getCompanyDTO().getId());
|
|
|
+ filterList.addAll(officeList1);
|
|
|
+ ArrayList<TreeUserDto> treeUsers = new ArrayList<>();
|
|
|
+
|
|
|
+ //如果当前登录人是会计公司,则查询有资质的员工
|
|
|
+ //if ("10003".equals(userDTO.getTenantDTO().getId())){
|
|
|
+ List<TreeUserDto> certUserList = infoMapper.findCertUserList(name);
|
|
|
+ treeUsers.addAll(certUserList);
|
|
|
+ //}
|
|
|
+ // 查询用户
|
|
|
+// List<TreeUserDto> userList = infoMapper.findUserList(name);
|
|
|
+ //查询综合管理公司用户信息
|
|
|
+ List<TreeUserDto> userList1=infoMapper.findZhglgsUserList2(name);
|
|
|
+ /*if (CollectionUtils.isNotEmpty(userList)) {
|
|
|
+ list.addAll(userList);
|
|
|
+ }*/
|
|
|
+ ArrayList<TreeUserDto> treeUserDtos = new ArrayList<>();
|
|
|
+// treeUserDtos.addAll(userList);
|
|
|
+ treeUserDtos.addAll(userList1);
|
|
|
+ treeUserDtos.addAll(treeUsers);
|
|
|
+ list = disposeUserTree(treeUserDtos, filterList);
|
|
|
+ for (TreeUserDto officeDto : officeList) {
|
|
|
+ if("0".equals(officeDto.getParentId())){
|
|
|
+ list.add(officeDto);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ for (TreeUserDto officeDto : officeList1) {
|
|
|
+ if("0".equals(officeDto.getParentId())){
|
|
|
+ list.add(officeDto);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //去重
|
|
|
+ List<TreeUserDto> newList = list.stream().collect(Collectors.collectingAndThen(
|
|
|
+ Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(TreeUserDto::getId))), ArrayList::new)
|
|
|
+ );
|
|
|
+ return newList;
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 用户树形数据处理
|
|
|
* @param userList
|