package com.bonus.system.att.utils;

import com.bonus.common.security.utils.SecurityUtils;
import com.bonus.system.api.domain.SysUser;

import java.util.Collections;
import java.util.List;

/**
 * @className:RoleUtil
 * @author:cwchen
 * @date:2025-02-21-15:45
 * @version:1.0
 * @description:角色工具类
 */
public class RoleUtil {

    /**
     * 获取当前登录人的角色-供前端使用
     * @return int
     * @author cwchen
     * @date 2025/2/21 16:52
     */
    public static int getCurrentUserRole(){
        SysUser sysUser = SecurityUtils.getLoginUser().getSysUser();
        List<String> rolesId = sysUser.getRoleList();
        int roleId;
        if(Collections.frequency(rolesId, "14") == 1){ // 部门负责人
            roleId = 14;
        }else if(Collections.frequency(rolesId, "16") == 1){ // 人资专员
            roleId = 16;
        }else if(Collections.frequency(rolesId, "1") == 1){ // 管理员
            roleId = 1;
        }else { // 其他角色
            roleId = 0;
        }
        return roleId;
    }

    /**
     * 获取当前登录人的审核角色-后端审核使用
     * @return int
     * @author cwchen
     * @date 2025/2/21 16:51
     */
    public static int getAuditType(){
        int auditType;
        List<String> roleId = SecurityUtils.getLoginUser().getSysUser().getRoleList();
        if(Collections.frequency(roleId, "14") == 1){ // 部门负责人
            auditType = 1;
        }else if(Collections.frequency(roleId, "16") == 1){ // 人资专员
            auditType = 2;
        }else if(Collections.frequency(roleId, "1") == 1){ // 管理员
            auditType = 3;
        } else { // 其他角色无审核权限
            auditType = 0;
        }
        return auditType;
    }
}
