一键催收增加全部部门
This commit is contained in:
parent
bdc3cfce1d
commit
ef28a6dba1
@ -68,4 +68,6 @@ public interface DepartmentsStaffRelateDao extends BaseMapper<DepartmentsStaffRe
|
||||
List<StaffEntity> selectLeadersByDepartmentId(@Param("depId") String depId);
|
||||
|
||||
List<Long> selectLongStaffIdsByDepartments(@Param("departmentIds") List<String> departmentIds);
|
||||
|
||||
List<Long> selectAllStaffIds();
|
||||
}
|
||||
|
||||
@ -46,5 +46,7 @@ public interface DepartmentsStaffRelateService extends IService<DepartmentsStaff
|
||||
List<StaffEntity> selectLeadersByDepartmentId(String depId);
|
||||
|
||||
List<Long> selectLongStaffIdsByDepartments(List<String> departmentIds);
|
||||
|
||||
List<Long> selectAllStaffIds();
|
||||
}
|
||||
|
||||
|
||||
@ -114,4 +114,9 @@ public class DepartmentsStaffRelateServiceImpl extends ServiceImpl<DepartmentsSt
|
||||
}
|
||||
return departmentsStaffRelateDao.selectLongStaffIdsByDepartments(departmentIds);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Long> selectAllStaffIds(){
|
||||
return departmentsStaffRelateDao.selectAllStaffIds();
|
||||
}
|
||||
}
|
||||
|
||||
@ -203,7 +203,7 @@ public class AssessManagerController extends AbstractController{
|
||||
Long userId = getUserId();
|
||||
log.info("一键催办" + userId);
|
||||
StaffRole staffRole = staffRoleService.selectStaffRoleById(userId);
|
||||
boolean isManagementDepartment = false;
|
||||
int isManagementDepartment = 0;
|
||||
List<String> departmentIds = new ArrayList<>();
|
||||
if(staffRole != null){
|
||||
//查询管理的部门信息
|
||||
@ -220,37 +220,49 @@ public class AssessManagerController extends AbstractController{
|
||||
}
|
||||
}else if(staffRole.getDepartmentId().intValue() == 1){
|
||||
//管理所在部门及子部门
|
||||
isManagementDepartment = true;
|
||||
isManagementDepartment = 1;//所在部门及子部门
|
||||
}else if(staffRole.getDepartmentId().intValue() == 0){
|
||||
isManagementDepartment = 2;//所有部门
|
||||
}
|
||||
|
||||
}
|
||||
//看下是否为部门领导
|
||||
DepartmentsStaffRelateEntity departmentsStaffRelateEntity
|
||||
= departmentsStaffRelateService.selectByStaffId(userId);
|
||||
if (departmentsStaffRelateEntity != null && (isManagementDepartment ||
|
||||
departmentsStaffRelateEntity.getIsLeader().intValue() == 1)) {//特定部门的
|
||||
//获取所在部门下面的所有人员id
|
||||
departmentIds.add(departmentsStaffRelateEntity.getDepartmentId());
|
||||
}
|
||||
if(departmentIds.size() > 0){
|
||||
//去重
|
||||
log.info("去重前数据{}", departmentIds.size());
|
||||
departmentIds = departmentIds.stream().distinct().collect(Collectors.toList());
|
||||
log.info("去重后数据{}", departmentIds.size());
|
||||
List<Long> staffIds = null;
|
||||
if(isManagementDepartment == 2){
|
||||
//管理所有部门
|
||||
log.info("管理所有部门");
|
||||
staffIds = departmentsStaffRelateService.selectAllStaffIds();
|
||||
}else{
|
||||
//看下是否为部门领导
|
||||
log.info("管理所指定部门");
|
||||
DepartmentsStaffRelateEntity departmentsStaffRelateEntity
|
||||
= departmentsStaffRelateService.selectByStaffId(userId);
|
||||
if (departmentsStaffRelateEntity != null && (isManagementDepartment == 1 ||
|
||||
departmentsStaffRelateEntity.getIsLeader().intValue() == 1)) {//特定部门的
|
||||
//获取所在部门下面的所有人员id
|
||||
departmentIds.add(departmentsStaffRelateEntity.getDepartmentId());
|
||||
}
|
||||
if(departmentIds.size() > 0){
|
||||
//去重
|
||||
log.info("去重前数据{}", departmentIds.size());
|
||||
departmentIds = departmentIds.stream().distinct().collect(Collectors.toList());
|
||||
log.info("去重后数据{}", departmentIds.size());
|
||||
|
||||
List<String> childIds = new ArrayList<>();
|
||||
//获取子部门信息
|
||||
for (String pareId:departmentIds
|
||||
) {
|
||||
childIds.addAll(getChildsId(pareId));
|
||||
}
|
||||
if(childIds.size() > 0){
|
||||
departmentIds.addAll(childIds);
|
||||
List<String> childIds = new ArrayList<>();
|
||||
//获取子部门信息
|
||||
for (String pareId:departmentIds
|
||||
) {
|
||||
childIds.addAll(getChildsId(pareId));
|
||||
}
|
||||
if(childIds.size() > 0){
|
||||
departmentIds.addAll(childIds);
|
||||
}
|
||||
}
|
||||
//根据部门获取所有员工的id
|
||||
staffIds = departmentsStaffRelateService.selectLongStaffIdsByDepartments(departmentIds);
|
||||
}
|
||||
|
||||
//根据部门获取所有员工的id
|
||||
List<Long> staffIds = departmentsStaffRelateService.selectLongStaffIdsByDepartments(departmentIds);
|
||||
|
||||
|
||||
log.info("查询到有权限可以推送的人员数量为{}", staffIds.size());
|
||||
//下面查询当前startId,当前flowProcess下面有多少人员id
|
||||
List<ResultRecord> resultRecords = resultRecordMapper.selectStaffIdsByStartIdAndFlowProcess(startId, flowProcess);
|
||||
|
||||
@ -118,4 +118,8 @@
|
||||
#{department_id}
|
||||
</foreach>
|
||||
</select>
|
||||
|
||||
<select id="selectAllStaffIds" resultType="com.lz.modules.app.entity.DepartmentsStaffRelateEntity">
|
||||
select staff_id from lz_departments_staff_relate where is_delete = 0
|
||||
</select>
|
||||
</mapper>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user