import request from '@/utils/request'

/**
 * 新增域类接口,名称和值范围
 * @param domainKey
 * @param domainValues
 * @returns {*}
 */
// function addDomain (domainKey, domainValues) {
//   return ajax({
//     method: 'post',
//     url: '/domain/add',
//     data: {
//       domainKey: domainKey,
//       domainValues: domainValues
//     }
//   })
// }
function addDomain (domainKey, domainValues) {
	return request({
		method: 'post',
		url: '/domain/add',
		data: {
      domainKey: domainKey,
      domainValues: domainValues
    }
	})
}

/**
 *
 域类修改接口
 * @param domainKey
 * @param domainValues
 * @returns {*}
 */
// function updateDomain (domainKey, domainValues) {
//   return ajax({
//     method: 'post',
//     url: '/domain/update',
//     data: {
//       domainKey: domainKey,
//       domainValues: domainValues
//     }
//   })
// }
function updateDomain (domainKey, domainValues) {
	return request({
		method: 'post',
		url: '/domain/add',
    data: {
      domainKey: domainKey,
      domainValues: domainValues
    }
	})
}

/**
 * 查询域类列表接口
 * @returns {*}
 */
// function getDomainList () {
//   return ajax({
//     method: 'get',
//     url: '/domain/list',
//     data: {}
//   })
// }
function getDomainList () {
	return request({
		method: 'get',
		url: '/domain/list',
	})
}

/**
 * 通过attrClsName获取属性类名称
 * @returns {*}
 */
// function getAttrClsListByName (attrClsName, pagenum, pagesize, attrType) {
//   return ajax({
//     method: 'get',
//     url: '/attrcls/public/list',
//     data: {
//       attrClsName: attrClsName,
//       pagenum: pagenum,
//       pagesize: pagesize,
//       attrType
//     }
//   })
// }
function getAttrClsListByName (attrClsName, pagenum, pagesize, attrType) {
  return request({
    method: 'get',
    url: '/attrcls/public/list',
    data: {
      attrClsName: attrClsName,
      pagenum: pagenum,
      pagesize: pagesize,
      attrType
    }
  })
}

/**
 * 通过domainKey获取一个值范围
 * @param domainKey
 * @returns {*}
 */
// function getDomainValue (domainKey) {
//   return ajax({
//     method: 'get',
//     url: '/domain/{domainKey}',
//     path: {
//       domainKey: domainKey
//     },
//   })
// }
function getDomainValue (domainKey) {
  return request({
    method: 'get',
    url: `/domain/${domainKey}`,
  })
}

/**
 * 域类删除接口
 * @param domainKey
 * @returns {*}
 */
function delDomainKey (domainKey) {
  return request({
    method: 'post',
    url: `/domain/del/${domainKey}`,
  })
}

export {
  updateDomain,
  delDomainKey,
  getDomainValue,
  getAttrClsListByName,
  addDomain,
  getDomainList
}