Files
AI-Check-Test/jnpf-ftb/jnpf-ftb-biz/src/main/java/jnpf/attendance/service/AttendanceSuperAdminService.java
dongzi 3cba3bb74e
Some checks failed
API接口参数变更检测 / api-param-check (push) Has been cancelled
commit
2026-06-05 16:18:40 +08:00

177 lines
5.5 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package jnpf.attendance.service;
import jnpf.exception.HandleException;
import jnpf.model.attendance.dto.BatchSaveGroupAdmin;
import jnpf.model.attendance.dto.GroupFilterDto;
import jnpf.model.attendance.dto.SaveGroupAdmin;
import jnpf.model.attendance.dto.SaveSuperAdminDto;
import jnpf.model.attendance.vo.AttendanceManagerDetailVo;
import jnpf.model.attendance.vo.AttendanceUserVo;
import jnpf.model.attendance.vo.CurUserPermissionVo;
import jnpf.model.attendance.vo.permission.ActionPermissionVo;
import jnpf.model.attendance.vo.permission.ApprovalSettingVo;
import jnpf.model.attendance.vo.permission.AttendanceTeamSetVo;
import jnpf.model.attendance.vo.permission.app.ManagerPermissionVo;
import jnpf.model.authority.vo.role.FtbPermissionPositionMenuVO;
import java.util.List;
import java.util.Map;
public interface AttendanceSuperAdminService {
/**
* 添加考勤组考勤管理员
* @param saveSuperAdminDto 保存信息
*/
void add(SaveSuperAdminDto saveSuperAdminDto) throws HandleException;
/**
* 删除超级管理员
* @param userIds 用户id
*/
void delete(List<String> userIds);
/**
* 获取考勤组超级管理员列表
* @return List<AttendanceUserVo>
*/
List<AttendanceUserVo> querySuperAdmin(String name);
/**
* 保存考勤组管理员
* @param saveGroupAdmin 保存信息
*/
void addGroupAdmin(SaveGroupAdmin saveGroupAdmin) throws Exception;
/**
* 批量添加考勤组管理员
* @param batchSaveGroupAdmin 保存信息
*/
void batchAddGroupAdmin(BatchSaveGroupAdmin batchSaveGroupAdmin);
/**
* 修改考勤组管理员权限
* @param saveGroupAdmin 保存信息
*/
void updateGroupAdmin(SaveGroupAdmin saveGroupAdmin);
/**
* 删除考勤组管理员
*/
void deleteGroupAdmin(SaveGroupAdmin saveGroupAdmin);
/**
* 查看考勤组下管理员列表
* @param groupId 考勤组
* @return List<AttendanceGroupAdminVo>
*/
Map<String, Object> listGroupAdmin(String groupId);
/**
* 获取管理员包含当前组管理员、上级子组权限管理员、超级管理员其中key为 -1时超级管理员集合
* @param groupIds 考勤组id集合
* @return Map<String, List < String>> key为 groupId value为管理员userId集合
*/
Map<String, List<String>> queryUserForCurrAndUpChildAndSuper(List<String> groupIds);
/**
* 根据指定条件查询权限信息
* 该方法通过接收群组ID、父权限代码和子权限代码列表作为参数
* 查询并返回一个映射其中键为群组ID值为该群组下匹配指定权限代码的权限列表
*
* @param groupIds 群组ID列表用于指定需要查询权限的群组
* @param parentCodes 父权限代码列表,用于指定需要查询的父权限范围
* @param childCodes 子权限代码列表,用于指定需要查询的子权限范围
* @return 返回一个映射,每个键值对表示一个群组及其对应的权限列表
*/
Map<String, List<String>> queryPermissionBySpecify(List<String> groupIds, List<String> parentCodes, List<String> childCodes);
/**
* 获取当前登录用户权限
* @param groupId 考勤组id
* @return CurUserPermissionVo
*/
CurUserPermissionVo getByUserId(String groupId);
/**
* 是否是考勤超级管理员
* @param userId 用户id
* @return Boolean
*/
Boolean isSuperAdmin(String userId);
/**
* 考勤组管理员详情
* @param groupId 考勤组id
* @param userId 用户id
* @return AttendanceGroupVo
*/
AttendanceManagerDetailVo adminDetail(String groupId, String userId);
/**
* 获取当前用户权限
* @param userId 用户id
* @param levelCodeList 考勤组层级编码
* @param permissionName 权限名称
* @return CurUserPermissionVo
*/
CurUserPermissionVo queryPermissionByUserId(String userId, List<String> levelCodeList, String permissionName);
/**
* 是否有查看权限
* @param groupId 考勤组id
* @return Boolean
*/
Boolean isViewPermission(String groupId);
/**
* 获取操作权限
* @param groupId 考勤组id
* @return ActionPermissionVo
*/
ActionPermissionVo getActionPermission(String groupId);
/**
* 是否是考勤组超级管理员||系统超级管理员
* @return Boolean
*/
Boolean isGlobalSetting();
/**
* 是否是考勤组管理员
* @return ManagerPermissionVo
*/
ManagerPermissionVo isManager();
/**
* 获取考勤组审批设置
* @param groupId 考勤组id
* @param type 审批类型 1.常规补卡审批 2.调整出勤结果审批 3.外勤审批 4.请假审批 5.加班审批
* @return ApprovalSettingVo
*/
ApprovalSettingVo getApprovalSettingInfo(String groupId, Integer type);
/**
* 根据用户id集合查询所属的权限-查询所有权限
* @param userIds 用户id集合
* @return FtbPermissionPositionMenuVO.FtbPermissionPositionMenuInnerVO
*/
List<FtbPermissionPositionMenuVO.FtbPermissionPositionMenuInnerVO> queryPermissionListByUserIds(List<String> userIds);
/**
* 获取考勤组设置
*
* @param dto 考勤组id
* @return AttendanceTeamSetVo
*/
AttendanceTeamSetVo getTeamSet(GroupFilterDto dto);
/**
* 设置月报通知
*
* @param dto 考勤组id
* @return Boolean
*/
Boolean setMonthNotice(GroupFilterDto dto);
}