import request from '@/utils/request'

// 查询部门列表
export function listDept(query) {
  return request({
    url: '/system/dept/list',
    method: 'get',
    params: query
  })
}
// 查询部门列表VO
export function listDeptVO(query) {
  return request({
    url: '/system/dept/listVO',
    method: 'get',
    params: query
  })
}


// 查询院系列表
export function listDepartments() {
  return request({
    url: '/system/dept/departments/list',
    method: 'get'
  })
}
// 查询楼栋列表-通过院系ID(组织架构优化后废弃2023/6/20)
export function listbuildings(id) {
  return request({
    url: `/system/dept/${id}/building/list`,
    method: 'get'
  })
}
// 查询部门列表（排除节点）
export function listDeptExcludeChild(deptId) {
  return request({
    url: '/system/dept/list/exclude/' + deptId,
    method: 'get'
  })
}

// 查询部门详细
export function getDept(deptId) {
  return request({
    url: '/system/dept/' + deptId,
    method: 'get'
  })
}

// 查询部门下拉树结构
export function treeselect(query) {
  return request({
    url: '/system/dept/treeselect',
    method: 'get',
    params: query
  })
}

// 根据角色ID查询部门树结构
export function roleDeptTreeselect(roleId) {
  return request({
    url: '/system/dept/roleDeptTreeselect/' + roleId,
    method: 'get'
  })
}

// 新增部门
export function addDept(data) {
  return request({
    url: '/system/dept',
    method: 'post',
    data: data
  })
}

// 修改部门
export function updateDept(data) {
  return request({
    url: '/system/dept',
    method: 'put',
    data: data
  })
}

// 删除部门
export function delDept(deptId) {
  return request({
    url: '/system/dept/' + deptId,
    method: 'delete'
  })
}


// 查询部门电子签章列表
export function signList(query) {
  return request({
    url: '/system/dept/sign/list',
    method: 'get',
    params: query
  })
}


// 编辑电子签章
export function deptSign(data) {
  return request({
    url: '/system/dept/sign',
    method: 'put',
    data: data
  })
}

//根据账户查询学院与楼栋
export function treeselectByUser(data) {
  return request({
    url: '/system/dept/treeselectByUser',
    method: 'get',
    data: data
  })
}

//查询学院列表(根据数据权限)
export function getDeptNoAuthList(data) {
  return request({
    url: '/system/dept/getDeptNoAuthList?deptType=1',
    method: 'get',
    data: data
  })
}
