/**
 * 组管理接口
 */
import request from '@/utils/request'
import qs from 'qs'

// 组列表
export function getGroupList(params) {
  return request({
    url: '/group/list',
    method: 'get',
    params
  })
}

// 获取组内井
export function getGroupWells(params) {
  return request({
    url: 'group/welllist',
    method: 'get',
    params
  })
}

// 获取组内人
export function getGroupUsers(params) {
  return request({
    url: 'group/userlist',
    method: 'get',
    params
  })
}

// 获取未分组的井列表
export function getNoGroupWells(params) {
  return request({
    url: '/group/noGroupWelllist',
    method: 'get',
    params
  })
}

// 新增组
export function addGroup(params) {
  return request({
    url: 'group/add',
    method: 'post',
    params
  })
}
// 编辑组
export function editGroup(params) {
  return request({
    url: 'group/edit',
    method: 'post',
    params
  })
}

// 给组新增绑定井
export function addWellsToGroup(params) {
  return request({
    url: 'group/addWells',
    method: 'post',
    params,
    paramsSerializer: params => {
      return qs.stringify(params, { indices: false })
    }
  })
}

// 给组新增绑定人
export function addUsersToGroup(params) {
  return request({
    url: 'group/addUsers',
    method: 'post',
    params,
    paramsSerializer: params => {
      return qs.stringify(params, { indices: false })
    }
  })
}
// 从组里删除井
export function delWellFromGroup(params) {
  return request({
    url: 'group/delWell',
    method: 'post',
    params
  })
}

// 从组里删除人
export function delUserFromGroup(params) {
  return request({
    url: 'group/delUser',
    method: 'post',
    params
  })
}

// 删除组
export function delGroup(params) {
  return request({
    url: 'group/delete',
    method: 'post',
    params
  })
}

// 批量导出
export function batchExportGroup(params) {
  return request({
    url: 'group/batchExport',
    method: 'get',
    params,
    responseType: 'blob' // 这一步也很关键，一定要加上 responseType 值为 blob
  })
}
