|
@@ -8,6 +8,7 @@ import cn.cslg.permission.common.model.dto.PhoneLoginDTO;
|
|
|
import cn.cslg.permission.common.model.personnel.UploadPersonnelConfigDTO;
|
|
|
import cn.cslg.permission.common.model.qiaobi.GetQiaoBiPersonDTO;
|
|
|
import cn.cslg.permission.common.model.qiaobi.QiaoBiPersonSignUpDTO;
|
|
|
+import cn.cslg.permission.common.model.qiaobi.QueryRelationCountsVO;
|
|
|
import cn.cslg.permission.common.model.vo.*;
|
|
|
import cn.cslg.permission.common.utils.*;
|
|
|
import cn.cslg.permission.common.utils.SecurityUtils.SecurityUtils;
|
|
@@ -20,6 +21,7 @@ import cn.cslg.permission.domain.associate.AssoDepartPos;
|
|
|
import cn.cslg.permission.domain.associate.AssoPerDp;
|
|
|
import cn.cslg.permission.domain.associate.AssoPersonRole;
|
|
|
import cn.cslg.permission.domain.qiaobi.AssoPersonVipType;
|
|
|
+import cn.cslg.permission.domain.qiaobi.PersonRelation;
|
|
|
import cn.cslg.permission.domain.sys.SysDictItem;
|
|
|
import cn.cslg.permission.exception.ExceptionEnum;
|
|
|
import cn.cslg.permission.exception.XiaoShiException;
|
|
@@ -31,6 +33,7 @@ import cn.cslg.permission.service.associate.PersonGroupService;
|
|
|
import cn.cslg.permission.service.associate.PersonRoleService;
|
|
|
import cn.cslg.permission.service.impl.TenantVipTypeService;
|
|
|
import cn.cslg.permission.service.qiaobi.AssoPersonVipTypeService;
|
|
|
+import cn.cslg.permission.service.qiaobi.PersonRelationService;
|
|
|
import cn.dev33.satoken.stp.StpUtil;
|
|
|
import cn.hutool.crypto.SecureUtil;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
@@ -75,6 +78,7 @@ public class PersonnelService extends ServiceImpl<PersonnelMapper, Personnel> {
|
|
|
private final TenantVipTypeService tenantVipTypeService;
|
|
|
private final LoginUtils loginUtils;
|
|
|
private final RoleService roleService;
|
|
|
+ private final PersonRelationService personRelationService;
|
|
|
@Value("${ApplicationCode}")
|
|
|
private String ApplicationCode;
|
|
|
|
|
@@ -840,40 +844,50 @@ public class PersonnelService extends ServiceImpl<PersonnelMapper, Personnel> {
|
|
|
Long size = personnelDTO.getSize();
|
|
|
//获取登陆人信息
|
|
|
PersonnelVO personnelVO1 = cacheUtils.getLoginUser(StpUtil.getLoginIdAsInt());
|
|
|
- System.out.println("角色类型"+personnelVO1.getRoleType());
|
|
|
+ System.out.println("角色类型" + personnelVO1.getRoleType());
|
|
|
// 代码控制若不是超级管理员则只能查看本租户的人员列表
|
|
|
- if (personnelVO1.getRoleType() == null || (personnelVO1.getRoleType() != 1&&personnelVO1.getRoleType()!=3)) {
|
|
|
+ if (personnelVO1.getRoleType() == null || (personnelVO1.getRoleType() != 1 && personnelVO1.getRoleType() != 3)) {
|
|
|
personnelDTO.setTenant(personnelVO1.getTenantId());
|
|
|
}
|
|
|
if (current != null && size != null) {
|
|
|
personnelDTO.setCurrent(((current - 1) * size));
|
|
|
}
|
|
|
List<PersonnelVO> personnelVOS = this.getBaseMapper().getQiaoBiPersonsList(personnelDTO);
|
|
|
+
|
|
|
long count = this.getBaseMapper().getQiaoBiPersonsListTotal(personnelDTO);
|
|
|
return Response.success(setPersonnelToVO2(personnelVOS), DataUtils.setPageColumn(Integer.parseInt(size.toString()), Integer.parseInt(current.toString()), Math.toIntExact(count)));
|
|
|
}
|
|
|
|
|
|
|
|
|
public Object setPersonnelToVO2(List<PersonnelVO> personnelList) {
|
|
|
+ if (personnelList == null || personnelList.isEmpty()) {
|
|
|
+ return personnelList;
|
|
|
+ }
|
|
|
+ List<Integer> tentantIds = personnelList.stream().map(PersonnelVO::getTenant).collect(Collectors.toList());
|
|
|
+ List<String> personIds = personnelList.stream().filter(item ->item.getTenant()!=null&& item.getTenant().equals(56)).map(PersonnelVO::getId).collect(Collectors.toList());
|
|
|
+ LambdaQueryWrapper<Tenant> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ queryWrapper.in(Tenant::getId, tentantIds);
|
|
|
+ List<Tenant> tenants = tenantService.list(queryWrapper);
|
|
|
+ List<QueryRelationCountsVO> queryRelationCountsVOS = new ArrayList<>();
|
|
|
+ if (personIds != null && !personIds.isEmpty()) {
|
|
|
+ queryRelationCountsVOS = personRelationService.getBaseMapper().queryRelationCounts(personIds);
|
|
|
+ }
|
|
|
+ if (personnelList != null && !personnelList.isEmpty()) {
|
|
|
+ this.loadPersonnelVOS(personnelList);
|
|
|
+ }
|
|
|
for (PersonnelVO personnelVO : personnelList) {
|
|
|
- personnelVO
|
|
|
- .setPositions(departPosiService.queryAssociate(Integer.parseInt(personnelVO.getId())))
|
|
|
- .setGroup(personGroupService.queryAssociatePerGroup(Integer.parseInt(personnelVO.getId())))
|
|
|
- .setRole(personRoleService.queryAssociatePerRole(Integer.parseInt(personnelVO.getId())))
|
|
|
- .setRoleList(personRoleService.getRoleListByPersonnelId(Integer.parseInt(personnelVO.getId())))
|
|
|
- .setGroupList(personGroupService.getUserGroupListByPersonnelId(Integer.parseInt(personnelVO.getId())));
|
|
|
if (personnelVO.getTenant() != null) {
|
|
|
- Tenant tenant = tenantService.getById(personnelVO.getTenant());
|
|
|
+ Tenant tenant = tenants.stream().filter(item -> item.getId().equals(personnelVO.getTenant())).findFirst().orElse(null);
|
|
|
if (tenant != null) {
|
|
|
personnelVO.setTenantName(tenant.getTenantName());
|
|
|
}
|
|
|
+ QueryRelationCountsVO queryRelationCountsVO = queryRelationCountsVOS.stream().filter(item -> item.getPersonId().toString().equals(personnelVO.getId())).findFirst().orElse(null);
|
|
|
+ if (queryRelationCountsVO != null) {
|
|
|
+ personnelVO.setInvitedNum(queryRelationCountsVO.getNum());
|
|
|
+ }
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
- }
|
|
|
- if (personnelList != null && !personnelList.isEmpty()) {
|
|
|
- this.loadPersonnelVOS(personnelList);
|
|
|
}
|
|
|
+
|
|
|
return personnelList;
|
|
|
}
|
|
|
|
|
@@ -966,6 +980,7 @@ public class PersonnelService extends ServiceImpl<PersonnelMapper, Personnel> {
|
|
|
personnelDTO.setEndExpitrTime(endDate);
|
|
|
}
|
|
|
|
|
|
+
|
|
|
}
|
|
|
|
|
|
|