Search in sources :

Example 6 with SysDept

use of com.ruoyi.project.system.domain.SysDept in project RuoYi-Vue-fast by yangzongzhuan.

the class SysDeptController method roleDeptTreeselect.

/**
 * 加载对应角色部门列表树
 */
@GetMapping(value = "/roleDeptTreeselect/{roleId}")
public AjaxResult roleDeptTreeselect(@PathVariable("roleId") Long roleId) {
    List<SysDept> depts = deptService.selectDeptList(new SysDept());
    AjaxResult ajax = AjaxResult.success();
    ajax.put("checkedKeys", deptService.selectDeptListByRoleId(roleId));
    ajax.put("depts", deptService.buildDeptTreeSelect(depts));
    return ajax;
}
Also used : AjaxResult(com.ruoyi.framework.web.domain.AjaxResult) SysDept(com.ruoyi.project.system.domain.SysDept) GetMapping(org.springframework.web.bind.annotation.GetMapping)

Example 7 with SysDept

use of com.ruoyi.project.system.domain.SysDept in project RuoYi-Vue-fast by yangzongzhuan.

the class SysDeptServiceImpl method checkDeptNameUnique.

/**
 * 校验部门名称是否唯一
 *
 * @param dept 部门信息
 * @return 结果
 */
@Override
public String checkDeptNameUnique(SysDept dept) {
    Long deptId = StringUtils.isNull(dept.getDeptId()) ? -1L : dept.getDeptId();
    SysDept info = deptMapper.checkDeptNameUnique(dept.getDeptName(), dept.getParentId());
    if (StringUtils.isNotNull(info) && info.getDeptId().longValue() != deptId.longValue()) {
        return UserConstants.NOT_UNIQUE;
    }
    return UserConstants.UNIQUE;
}
Also used : SysDept(com.ruoyi.project.system.domain.SysDept)

Example 8 with SysDept

use of com.ruoyi.project.system.domain.SysDept in project RuoYi-Vue-Oracle by yangzongzhuan.

the class SysDeptServiceImpl method recursionFn.

/**
 * 递归列表
 */
private void recursionFn(List<SysDept> list, SysDept t) {
    // 得到子节点列表
    List<SysDept> childList = getChildList(list, t);
    t.setChildren(childList);
    for (SysDept tChild : childList) {
        if (hasChild(list, tChild)) {
            recursionFn(list, tChild);
        }
    }
}
Also used : SysDept(com.ruoyi.project.system.domain.SysDept)

Example 9 with SysDept

use of com.ruoyi.project.system.domain.SysDept in project RuoYi-Vue-Oracle by yangzongzhuan.

the class SysDeptServiceImpl method checkDeptDataScope.

/**
 * 校验部门是否有数据权限
 *
 * @param deptId 部门id
 */
@Override
public void checkDeptDataScope(Long deptId) {
    if (!SysUser.isAdmin(SecurityUtils.getUserId())) {
        SysDept dept = new SysDept();
        dept.setDeptId(deptId);
        List<SysDept> depts = SpringUtils.getAopProxy(this).selectDeptList(dept);
        if (StringUtils.isEmpty(depts)) {
            throw new ServiceException("没有权限访问部门数据!");
        }
    }
}
Also used : ServiceException(com.ruoyi.common.exception.ServiceException) SysDept(com.ruoyi.project.system.domain.SysDept)

Example 10 with SysDept

use of com.ruoyi.project.system.domain.SysDept in project RuoYi-Vue-Oracle by yangzongzhuan.

the class SysDeptServiceImpl method insertDept.

/**
 * 新增保存部门信息
 *
 * @param dept 部门信息
 * @return 结果
 */
@Override
public int insertDept(SysDept dept) {
    SysDept info = deptMapper.selectDeptById(dept.getParentId());
    // 如果父节点不为正常状态,则不允许新增子节点
    if (!UserConstants.DEPT_NORMAL.equals(info.getStatus())) {
        throw new ServiceException("部门停用,不允许新增");
    }
    dept.setAncestors(info.getAncestors() + "," + dept.getParentId());
    return deptMapper.insertDept(dept);
}
Also used : ServiceException(com.ruoyi.common.exception.ServiceException) SysDept(com.ruoyi.project.system.domain.SysDept)

Aggregations

SysDept (com.ruoyi.project.system.domain.SysDept)18 ServiceException (com.ruoyi.common.exception.ServiceException)4 ArrayList (java.util.ArrayList)4 GetMapping (org.springframework.web.bind.annotation.GetMapping)4 AjaxResult (com.ruoyi.framework.web.domain.AjaxResult)2 PreAuthorize (org.springframework.security.access.prepost.PreAuthorize)2