package com.bonus.system.dept.service;

import com.alibaba.fastjson2.JSONArray;
import com.bonus.common.core.web.domain.AjaxResult;
import com.bonus.system.basic.domain.SysOrg;
import com.bonus.system.dept.entity.*;

import java.util.List;

/**
 * 项目部角色业务层
 * @author fly
 */
public interface ProDeptRoleService {

    /**
     * 获取项目部角色列表
     * @param bean 参数
     * @return list bean
     */
    List<ProDeptRoleBean> getRoleUserList(ProDeptRoleBean bean);

    /**
     * 修改项目部角色
     * @param bean 参数
     * @return 1|0
     */
    int updatePersonAssignment(ProDeptRoleDo bean,String personStatus);

    int checkPersonAssignment(ProDeptRoleDo bean);
    /**
     * 查询人员树选择列表
     */
    JSONArray selectOrgUserList(ProDeptRoleBean bean);

    /**
     * 查询八大员数据列表
     * @param bean
     * @return
     */
    List<EightRoleBean> getOrgEightRoleList(EightRoleBean bean);

    List<EightRoleVo> getOrgEightRoleDetail(EightRoleBean bean);

    List<ProDeptRoleBean> getMoreOrgData(ProDeptRoleBean bean);

    ProDeptRoleBean getInfoById(ProDeptRoleBean o);

    List<ProDeptRoleBean> getRoleUserNoManagerList(ProDeptRoleBean bean);

    /**
     * 项目部管理->项目部角色管理->项目部角色一键审批
     * @param bean
     * @return AjaxResult
     * @author cwchen
     * @date 2025/2/11 15:17
     */
    AjaxResult batchRoleCheck(ProDeptRoleDo bean);
}
