Administrator
2024-01-15 f2f6f50aa0a9a8ec25acefdd590c732920a57831
pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/role/RoleSv.java
@@ -1,5 +1,6 @@
package com.dy.pipIrrBase.role;
import com.alibaba.fastjson2.JSONArray;
import com.dy.common.webUtil.QueryResultVo;
import com.dy.pipIrrGlobal.daoBa.BaRoleMapper;
import com.dy.pipIrrGlobal.daoBa.BaRolePermissionsMapper;
@@ -11,8 +12,10 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Optional;
/**
 * @author ZhuBaoMin
@@ -52,9 +55,10 @@
    public QueryResultVo<List<VoRole>> getRoles(QueryVo queryVo) {
        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo);
        Long itemTotal = baRoleMapper.getRecordCount(params);
        Long itemTotal = baRolePermissionsMapper.getRecordCount(params);
        QueryResultVo<List<VoRole>> rsVo = new QueryResultVo<>() ;
        Integer pageCurr = 0;
        Integer pageSize = 10000;
        rsVo.pageCurr = 1;
@@ -69,8 +73,32 @@
        params.put("pageSize", pageSize);
        rsVo.calculateAndSet(itemTotal, params);
        rsVo.obj = baRoleMapper.getRoles(params);
        //rsVo.obj = baRoleMapper.getRoles(params);
        /**
         * 获取角色列表,把汗角色权限ID
         * 遍历角色列表并取出角色对象中的perId
         * 根据perId获取权限对象,并将对象添加到角色对象中
         */
        List<VoRole> list_Roles = Optional.ofNullable(baRolePermissionsMapper.getRoles(params)).orElse(new ArrayList<>());
        if(list_Roles.size() > 0) {
            for(int i = 0; i < list_Roles.size(); i++) {
                VoRole voRole = list_Roles.get(i);
                Long perId = voRole.getPerId();
                BaRolePermissions baRolePermissions = baRolePermissionsMapper.selectByPrimaryKey(perId);
                JSONArray array_permission = JSONArray.parseArray("[]");
                if(baRolePermissions != null) {
                    array_permission = baRolePermissions.getPermissions();
                }
                voRole.setPermissions(array_permission);
            }
        }
        rsVo.obj = list_Roles;
        return rsVo ;
    }
    public BaRolePermissions getRolePermissionsById(Long id) {
        return baRolePermissionsMapper.selectByPrimaryKey(id);
    }
    /**
@@ -133,14 +161,22 @@
    }
    /**
     * 保存修改实体
     * @param po 实体
     * @return 影响记录数量
     * 修改角色
     * @param record
     * @return
     */
    //@Transactional
    //public int update(BaRole po){
    //    return this.dao.updateByPrimaryKeySelective(po) ;
    //}
    public int updateRole(BaRole record) {
        return baRoleMapper.updateByPrimaryKeySelective(record);
    }
    /**
     * 根据roleId逻辑删除角色对象
     * @param roleId 角色编号
     * @return
     */
    public Integer deleteRoleById(Long roleId) {
        return baRoleMapper.deleteRoleById(roleId);
    }
    /**
     * 设置角色权限