|
@@ -4,7 +4,9 @@ package com.zjugis.module.adm.service.staff;
|
|
|
import cn.hutool.core.collection.CollectionUtil;
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
import com.zjugis.framework.common.pojo.CommonResult;
|
|
|
+import com.zjugis.framework.datapermission.core.annotation.DataPermission;
|
|
|
import com.zjugis.framework.mybatis.core.query.LambdaQueryWrapperX;
|
|
|
+import com.zjugis.framework.security.core.util.SecurityFrameworkUtils;
|
|
|
import com.zjugis.module.adm.controller.admin.staff.vo.records.*;
|
|
|
import com.zjugis.module.adm.dal.dataobject.staff.CollegeDO;
|
|
|
import com.zjugis.module.adm.dal.dataobject.staff.StaffRecordSDO;
|
|
@@ -13,8 +15,11 @@ import com.zjugis.module.system.api.dept.DeptApi;
|
|
|
import com.zjugis.module.system.api.dept.DeptLeaderApi;
|
|
|
import com.zjugis.module.system.api.dept.dto.DeptLeaderRespDTO;
|
|
|
import com.zjugis.module.system.api.dept.dto.DeptRespDTO;
|
|
|
+import com.zjugis.module.system.api.permission.PermissionApi;
|
|
|
+import com.zjugis.module.system.api.permission.dto.DeptDataPermissionRespDTO;
|
|
|
import com.zjugis.module.system.api.user.AdminUserApi;
|
|
|
import com.zjugis.module.system.api.user.dto.AdminUserRespDTO;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
@@ -40,6 +45,9 @@ public class StaffStatisticServiceImpl implements StaffStatisticService {
|
|
|
@Resource
|
|
|
private AdminUserApi userApi;
|
|
|
|
|
|
+ @Resource
|
|
|
+ private PermissionApi permissionApi;
|
|
|
+
|
|
|
@Resource
|
|
|
private RecordsMapper recordsMapper;
|
|
|
|
|
@@ -51,15 +59,16 @@ public class StaffStatisticServiceImpl implements StaffStatisticService {
|
|
|
* 获取用户统计信息
|
|
|
*/
|
|
|
@Override
|
|
|
- public StatisticInfoVO getStatisticResult(String deptId) {
|
|
|
+ public StatisticInfoVO getStatisticResult(String userId) {
|
|
|
+ if (StringUtils.isNotBlank(SecurityFrameworkUtils.getLoginUserId())) {
|
|
|
+ userId = SecurityFrameworkUtils.getLoginUserId();
|
|
|
+ }
|
|
|
|
|
|
+ DeptDataPermissionRespDTO dto = permissionApi.getDeptDataPermission(userId).getCheckedData();
|
|
|
StatisticInfoVO statisticInfoVO = new StatisticInfoVO();
|
|
|
List<String> userIds = new ArrayList<>();
|
|
|
- if (StrUtil.isNotEmpty(deptId)) {
|
|
|
-
|
|
|
- Set<String> deptIds = convertSet(deptApi.getChildDeptList(deptId).getCheckedData(), DeptRespDTO::getId);
|
|
|
- // 包括自身
|
|
|
- deptIds.add(deptId);
|
|
|
+ Set<String> deptIds = dto.getDeptIds();
|
|
|
+ if (CollectionUtil.isNotEmpty(deptIds)) {
|
|
|
|
|
|
CommonResult<List<AdminUserRespDTO>> commonResult = userApi.getUserListByDeptIds(deptIds);
|
|
|
userIds = commonResult.getCheckedData().stream().map(AdminUserRespDTO::getId).filter(Objects::nonNull).collect(Collectors.toList());
|