mirror of
https://github.com/veops/cmdb.git
synced 2025-08-08 09:02:44 +08:00
Modify code organization
This commit is contained in:
34
cmdb-ui/src/api/acl/app.js
Normal file
34
cmdb-ui/src/api/acl/app.js
Normal file
@@ -0,0 +1,34 @@
|
||||
import { axios } from '@/utils/request'
|
||||
|
||||
const urlPrefix = '/v1/acl'
|
||||
|
||||
export function searchRole (params) {
|
||||
return axios({
|
||||
url: urlPrefix + `/roles`,
|
||||
method: 'GET',
|
||||
params: params
|
||||
})
|
||||
}
|
||||
|
||||
export function addRole (params) {
|
||||
return axios({
|
||||
url: urlPrefix + '/roles',
|
||||
method: 'POST',
|
||||
data: params
|
||||
})
|
||||
}
|
||||
|
||||
export function updateRoleById (id, params) {
|
||||
return axios({
|
||||
url: urlPrefix + `/roles/${id}`,
|
||||
method: 'PUT',
|
||||
data: params
|
||||
})
|
||||
}
|
||||
|
||||
export function deleteRoleById (id) {
|
||||
return axios({
|
||||
url: urlPrefix + `/roles/${id}`,
|
||||
method: 'DELETE'
|
||||
})
|
||||
}
|
56
cmdb-ui/src/api/acl/permission.js
Normal file
56
cmdb-ui/src/api/acl/permission.js
Normal file
@@ -0,0 +1,56 @@
|
||||
import { axios } from '@/utils/request'
|
||||
|
||||
const urlPrefix = '/v1/acl'
|
||||
|
||||
export function getResourcePerms (resourceID) {
|
||||
return axios({
|
||||
url: urlPrefix + `/resources/${resourceID}/permissions`,
|
||||
method: 'GET'
|
||||
})
|
||||
}
|
||||
|
||||
export function getResourceTypePerms (typeID) {
|
||||
return axios({
|
||||
url: urlPrefix + `/resource_types/${typeID}/perms`,
|
||||
method: 'GET'
|
||||
})
|
||||
}
|
||||
|
||||
export function getResourceGroupPerms (resourceGroupID) {
|
||||
return axios({
|
||||
url: urlPrefix + `/resource_groups/${resourceGroupID}/permissions`,
|
||||
method: 'GET'
|
||||
})
|
||||
}
|
||||
|
||||
export function setRoleResourcePerm (rid, resourceID, params) {
|
||||
return axios({
|
||||
url: urlPrefix + `/roles/${rid}/resources/${resourceID}/grant`,
|
||||
method: 'POST',
|
||||
data: params
|
||||
})
|
||||
}
|
||||
|
||||
export function setRoleResourceGroupPerm (rid, resourceGroupID, params) {
|
||||
return axios({
|
||||
url: urlPrefix + `/roles/${rid}/resource_groups/${resourceGroupID}/grant`,
|
||||
method: 'POST',
|
||||
data: params
|
||||
})
|
||||
}
|
||||
|
||||
export function deleteRoleResourcePerm (rid, resourceID, params) {
|
||||
return axios({
|
||||
url: urlPrefix + `/roles/${rid}/resources/${resourceID}/revoke`,
|
||||
method: 'POST',
|
||||
data: params
|
||||
})
|
||||
}
|
||||
|
||||
export function deleteRoleResourceGroupPerm (rid, resourceGroupID, params) {
|
||||
return axios({
|
||||
url: urlPrefix + `/roles/${rid}/resource_groups/${resourceGroupID}/revoke`,
|
||||
method: 'POST',
|
||||
data: params
|
||||
})
|
||||
}
|
65
cmdb-ui/src/api/acl/resource.js
Normal file
65
cmdb-ui/src/api/acl/resource.js
Normal file
@@ -0,0 +1,65 @@
|
||||
import { axios } from '@/utils/request'
|
||||
|
||||
const urlPrefix = '/v1/acl'
|
||||
|
||||
export function searchResource (params) {
|
||||
return axios({
|
||||
url: urlPrefix + `/resources`,
|
||||
method: 'GET',
|
||||
params: params
|
||||
})
|
||||
}
|
||||
|
||||
export function addResource (params) {
|
||||
return axios({
|
||||
url: urlPrefix + '/resources',
|
||||
method: 'POST',
|
||||
data: params
|
||||
})
|
||||
}
|
||||
|
||||
export function updateResourceById (id, params) {
|
||||
return axios({
|
||||
url: urlPrefix + `/resources/${id}`,
|
||||
method: 'PUT',
|
||||
data: params
|
||||
})
|
||||
}
|
||||
|
||||
export function deleteResourceById (id) {
|
||||
return axios({
|
||||
url: urlPrefix + `/resources/${id}`,
|
||||
method: 'DELETE'
|
||||
})
|
||||
}
|
||||
|
||||
export function searchResourceType (params) {
|
||||
return axios({
|
||||
url: urlPrefix + `/resource_types`,
|
||||
method: 'GET',
|
||||
params: params
|
||||
})
|
||||
}
|
||||
|
||||
export function addResourceType (params) {
|
||||
return axios({
|
||||
url: urlPrefix + '/resource_types',
|
||||
method: 'POST',
|
||||
data: params
|
||||
})
|
||||
}
|
||||
|
||||
export function updateResourceTypeById (id, params) {
|
||||
return axios({
|
||||
url: urlPrefix + `/resource_types/${id}`,
|
||||
method: 'PUT',
|
||||
data: params
|
||||
})
|
||||
}
|
||||
|
||||
export function deleteResourceTypeById (id) {
|
||||
return axios({
|
||||
url: urlPrefix + `/resource_types/${id}`,
|
||||
method: 'DELETE'
|
||||
})
|
||||
}
|
66
cmdb-ui/src/api/acl/role.js
Normal file
66
cmdb-ui/src/api/acl/role.js
Normal file
@@ -0,0 +1,66 @@
|
||||
import { axios } from '@/utils/request'
|
||||
|
||||
const urlPrefix = '/v1/acl'
|
||||
|
||||
export function searchRole (params) {
|
||||
return axios({
|
||||
url: urlPrefix + `/roles`,
|
||||
method: 'GET',
|
||||
params: params
|
||||
})
|
||||
}
|
||||
|
||||
export function addRole (params) {
|
||||
return axios({
|
||||
url: urlPrefix + '/roles',
|
||||
method: 'POST',
|
||||
data: params
|
||||
})
|
||||
}
|
||||
|
||||
export function updateRoleById (id, params) {
|
||||
return axios({
|
||||
url: urlPrefix + `/roles/${id}`,
|
||||
method: 'PUT',
|
||||
data: params
|
||||
})
|
||||
}
|
||||
|
||||
export function deleteRoleById (id) {
|
||||
return axios({
|
||||
url: urlPrefix + `/roles/${id}`,
|
||||
method: 'DELETE'
|
||||
})
|
||||
}
|
||||
|
||||
export function addParentRole (id, otherID) {
|
||||
return axios({
|
||||
url: urlPrefix + `/roles/${id}/parents`,
|
||||
method: 'POST',
|
||||
data: { parent_id: otherID }
|
||||
})
|
||||
}
|
||||
|
||||
export function addChildRole (id, otherID) {
|
||||
return axios({
|
||||
url: urlPrefix + `/roles/${otherID}/parents`,
|
||||
method: 'POST',
|
||||
data: { parent_id: id }
|
||||
})
|
||||
}
|
||||
|
||||
export function delParentRole (cid, pid) {
|
||||
return axios({
|
||||
url: urlPrefix + `/roles/${cid}/parents`,
|
||||
method: 'DELETE',
|
||||
data: { parent_id: pid }
|
||||
})
|
||||
}
|
||||
|
||||
export function delChildRole (pid, cid) {
|
||||
return axios({
|
||||
url: urlPrefix + `/roles/${cid}/parents`,
|
||||
method: 'DELETE',
|
||||
data: { parent_id: pid }
|
||||
})
|
||||
}
|
41
cmdb-ui/src/api/acl/user.js
Normal file
41
cmdb-ui/src/api/acl/user.js
Normal file
@@ -0,0 +1,41 @@
|
||||
import { axios } from '@/utils/request'
|
||||
|
||||
const urlPrefix = '/v1/acl'
|
||||
|
||||
export function currentUser () {
|
||||
return axios({
|
||||
url: urlPrefix + `/users/info`,
|
||||
method: 'GET'
|
||||
})
|
||||
}
|
||||
|
||||
export function searchUser (params) {
|
||||
return axios({
|
||||
url: urlPrefix + `/users`,
|
||||
method: 'GET',
|
||||
params: params
|
||||
})
|
||||
}
|
||||
|
||||
export function addUser (params) {
|
||||
return axios({
|
||||
url: urlPrefix + '/users',
|
||||
method: 'POST',
|
||||
data: params
|
||||
})
|
||||
}
|
||||
|
||||
export function updateUserById (id, params) {
|
||||
return axios({
|
||||
url: urlPrefix + `/users/${id}`,
|
||||
method: 'PUT',
|
||||
data: params
|
||||
})
|
||||
}
|
||||
|
||||
export function deleteUserById (id) {
|
||||
return axios({
|
||||
url: urlPrefix + `/users/${id}`,
|
||||
method: 'DELETE'
|
||||
})
|
||||
}
|
30
cmdb-ui/src/api/cmdb/CIRelation.js
Normal file
30
cmdb-ui/src/api/cmdb/CIRelation.js
Normal file
@@ -0,0 +1,30 @@
|
||||
import { axios } from '@/utils/request'
|
||||
|
||||
export function getFirstCIs (ciId) {
|
||||
return axios({
|
||||
url: '/v0.1/ci_relations/' + ciId + '/first_cis',
|
||||
method: 'GET'
|
||||
})
|
||||
}
|
||||
|
||||
export function getSecondCIs (ciId) {
|
||||
return axios({
|
||||
url: '/v0.1/ci_relations/' + ciId + '/second_cis',
|
||||
method: 'GET'
|
||||
})
|
||||
}
|
||||
|
||||
export function searchCIRelation (params) {
|
||||
return axios({
|
||||
url: `/v0.1/ci_relations/s?${params}`,
|
||||
method: 'GET'
|
||||
})
|
||||
}
|
||||
|
||||
export function statisticsCIRelation (params) {
|
||||
return axios({
|
||||
url: '/v0.1/ci_relations/statistics',
|
||||
method: 'GET',
|
||||
params: params
|
||||
})
|
||||
}
|
123
cmdb-ui/src/api/cmdb/CIType.js
Normal file
123
cmdb-ui/src/api/cmdb/CIType.js
Normal file
@@ -0,0 +1,123 @@
|
||||
import { axios } from '@/utils/request'
|
||||
|
||||
/**
|
||||
* 获取 所有的 ci_types
|
||||
* @param parameter
|
||||
* @returns {AxiosPromise}
|
||||
*/
|
||||
export function getCITypes (parameter) {
|
||||
return axios({
|
||||
url: '/v0.1/ci_types',
|
||||
method: 'GET',
|
||||
params: parameter
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取 某个 ci_types
|
||||
* @param CITypeName
|
||||
* @param parameter
|
||||
* @returns {AxiosPromise}
|
||||
*/
|
||||
export function getCIType (CITypeName, parameter) {
|
||||
return axios({
|
||||
url: `/v0.1/ci_types/${CITypeName}`,
|
||||
method: 'GET',
|
||||
params: parameter
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 创建 ci_type
|
||||
* @param data
|
||||
* @returns {AxiosPromise}
|
||||
*/
|
||||
export function createCIType (data) {
|
||||
return axios({
|
||||
url: '/v0.1/ci_types',
|
||||
method: 'POST',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新 ci_type
|
||||
* @param CITypeId
|
||||
* @param data
|
||||
* @returns {AxiosPromise}
|
||||
*/
|
||||
export function updateCIType (CITypeId, data) {
|
||||
return axios({
|
||||
url: `/v0.1/ci_types/${CITypeId}`,
|
||||
method: 'PUT',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除 ci_type
|
||||
* @param CITypeId
|
||||
* @returns {AxiosPromise}
|
||||
*/
|
||||
export function deleteCIType (CITypeId) {
|
||||
return axios({
|
||||
url: `/v0.1/ci_types/${CITypeId}`,
|
||||
method: 'DELETE'
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取 某个 ci_type 的分组
|
||||
* @param CITypeId
|
||||
* @param data
|
||||
* @returns {AxiosPromise}
|
||||
*/
|
||||
export function getCITypeGroupById (CITypeId, data) {
|
||||
return axios({
|
||||
url: `/v0.1/ci_types/${CITypeId}/attribute_groups`,
|
||||
method: 'GET',
|
||||
params: data
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存 某个 ci_type 的分组
|
||||
* @param CITypeId
|
||||
* @param data
|
||||
* @returns {AxiosPromise}
|
||||
*/
|
||||
export function createCITypeGroupById (CITypeId, data) {
|
||||
return axios({
|
||||
url: `/v0.1/ci_types/${CITypeId}/attribute_groups`,
|
||||
method: 'POST',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改 某个 ci_type 的分组
|
||||
* @param groupId
|
||||
* @param data
|
||||
* @returns {AxiosPromise}
|
||||
*/
|
||||
export function updateCITypeGroupById (groupId, data) {
|
||||
return axios({
|
||||
url: `/v0.1/ci_types/attribute_groups/${groupId}`,
|
||||
method: 'PUT',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除 某个 ci_type 的分组
|
||||
* @param groupId
|
||||
* @param data
|
||||
* @returns {AxiosPromise}
|
||||
*/
|
||||
export function deleteCITypeGroupById (groupId, data) {
|
||||
return axios({
|
||||
url: `/v0.1/ci_types/attribute_groups/${groupId}`,
|
||||
method: 'delete',
|
||||
data: data
|
||||
})
|
||||
}
|
124
cmdb-ui/src/api/cmdb/CITypeAttr.js
Normal file
124
cmdb-ui/src/api/cmdb/CITypeAttr.js
Normal file
@@ -0,0 +1,124 @@
|
||||
import { axios } from '@/utils/request'
|
||||
|
||||
/**
|
||||
* 获取 ci_type 的属性
|
||||
* @param CITypeName
|
||||
* @param parameter
|
||||
* @returns {AxiosPromise}
|
||||
*/
|
||||
export function getCITypeAttributesByName (CITypeName, parameter) {
|
||||
return axios({
|
||||
|
||||
url: `/v0.1/ci_types/${CITypeName}/attributes`,
|
||||
method: 'get',
|
||||
params: parameter
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取 ci_type 的属性
|
||||
* @param CITypeId
|
||||
* @param parameter
|
||||
* @returns {AxiosPromise}
|
||||
*/
|
||||
export function getCITypeAttributesById (CITypeId, parameter) {
|
||||
return axios({
|
||||
url: `/v0.1/ci_types/${CITypeId}/attributes`,
|
||||
method: 'get',
|
||||
params: parameter
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新属性
|
||||
* @param attrId
|
||||
* @param data
|
||||
* @returns {AxiosPromise}
|
||||
*/
|
||||
export function updateAttributeById (attrId, data) {
|
||||
return axios({
|
||||
url: `/v0.1/attributes/${attrId}`,
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加属性
|
||||
* @param data
|
||||
* @returns {AxiosPromise}
|
||||
*/
|
||||
export function createAttribute (data) {
|
||||
return axios({
|
||||
url: `/v0.1/attributes`,
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 搜索属性/ 获取所有的属性
|
||||
* @param data
|
||||
* @returns {AxiosPromise}
|
||||
*/
|
||||
export function searchAttributes (params) {
|
||||
return axios({
|
||||
url: `/v0.1/attributes/s`,
|
||||
method: 'get',
|
||||
params: params
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除属性
|
||||
* @param attrId
|
||||
* @returns {AxiosPromise}
|
||||
*/
|
||||
export function deleteAttributesById (attrId) {
|
||||
return axios({
|
||||
url: `/v0.1/attributes/${attrId}`,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 绑定ci_type 属性
|
||||
* @param CITypeId
|
||||
* @param data
|
||||
* @returns {AxiosPromise}
|
||||
*/
|
||||
export function createCITypeAttributes (CITypeId, data) {
|
||||
return axios({
|
||||
url: `/v0.1/ci_types/${CITypeId}/attributes`,
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新ci_type 属性
|
||||
* @param CITypeId
|
||||
* @param data
|
||||
* @returns {AxiosPromise}
|
||||
*/
|
||||
export function updateCITypeAttributesById (CITypeId, data) {
|
||||
return axios({
|
||||
url: `/v0.1/ci_types/${CITypeId}/attributes`,
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除ci_type 属性
|
||||
* @param CITypeId
|
||||
* @param data
|
||||
* @returns {AxiosPromise}
|
||||
*/
|
||||
export function deleteCITypeAttributesById (CITypeId, data) {
|
||||
return axios({
|
||||
url: `/v0.1/ci_types/${CITypeId}/attributes`,
|
||||
method: 'delete',
|
||||
data: data
|
||||
})
|
||||
}
|
39
cmdb-ui/src/api/cmdb/CITypeRelation.js
Normal file
39
cmdb-ui/src/api/cmdb/CITypeRelation.js
Normal file
@@ -0,0 +1,39 @@
|
||||
import { axios } from '@/utils/request'
|
||||
|
||||
export function getCITypeChildren (CITypeID, parameter) {
|
||||
return axios({
|
||||
url: '/v0.1/ci_type_relations/' + CITypeID + '/children',
|
||||
method: 'GET',
|
||||
params: parameter
|
||||
})
|
||||
}
|
||||
|
||||
export function getCITypeParent (CITypeID) {
|
||||
return axios({
|
||||
url: '/v0.1/ci_type_relations/' + CITypeID + '/parents',
|
||||
method: 'GET'
|
||||
})
|
||||
}
|
||||
|
||||
export function getCITypeRelations () {
|
||||
return axios({
|
||||
url: '/v0.1/ci_type_relations',
|
||||
method: 'GET'
|
||||
})
|
||||
}
|
||||
|
||||
export function createRelation (parentId, childrenId, relationTypeId) {
|
||||
return axios({
|
||||
url: `/v0.1/ci_type_relations/${parentId}/${childrenId}`,
|
||||
method: 'POST',
|
||||
data: { relation_type_id: relationTypeId }
|
||||
})
|
||||
}
|
||||
|
||||
export function deleteRelation (parentId, childrenId) {
|
||||
return axios({
|
||||
url: `/v0.1/ci_type_relations/${parentId}/${childrenId}`,
|
||||
method: 'DELETE'
|
||||
|
||||
})
|
||||
}
|
67
cmdb-ui/src/api/cmdb/batch.js
Normal file
67
cmdb-ui/src/api/cmdb/batch.js
Normal file
@@ -0,0 +1,67 @@
|
||||
import XLSX from 'xlsx'
|
||||
import { axios } from '@/utils/request'
|
||||
|
||||
export function processFile (fileObj) {
|
||||
const promise = new Promise(function (resolve) {
|
||||
const reader = new FileReader()
|
||||
reader.readAsBinaryString(fileObj)
|
||||
reader.onload = function (e) {
|
||||
const data = e.target.result
|
||||
const workbook = XLSX.read(data, { type: 'binary' })
|
||||
const sheet = workbook.Sheets[workbook.SheetNames[0]]
|
||||
const lt = XLSX.utils.sheet_to_json(sheet, { header: 1 })
|
||||
resolve(lt)
|
||||
}
|
||||
})
|
||||
return promise
|
||||
}
|
||||
|
||||
export function uploadData (ciId, data) {
|
||||
data.ci_type = ciId
|
||||
return axios({
|
||||
url: '/v0.1/ci',
|
||||
method: 'PUT',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
export function writeCsv (columns) {
|
||||
const { Parser } = require('json2csv')
|
||||
const fields = columns
|
||||
const opts = { fields }
|
||||
const p = new Parser(opts)
|
||||
return p.parse([])
|
||||
}
|
||||
|
||||
export function writeExcel (columns, name) {
|
||||
const worksheet = XLSX.utils.aoa_to_sheet([columns])
|
||||
const newWorkBoot = XLSX.utils.book_new()
|
||||
XLSX.utils.book_append_sheet(newWorkBoot, worksheet, name)
|
||||
const s = XLSX.write(newWorkBoot, { type: 'array' })
|
||||
console.log(s)
|
||||
return s
|
||||
}
|
||||
|
||||
// 判断一个数组元素是否都为空的
|
||||
export function any (ArrayList) {
|
||||
let flag = false
|
||||
for (let i = 0; i < ArrayList.length; i++) {
|
||||
if (ArrayList[i]) {
|
||||
flag = true
|
||||
return flag
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
// 去除一个二维数组 底下为空的部分
|
||||
export function filterNull (twoDimArray) {
|
||||
console.log(twoDimArray)
|
||||
const newArray = []
|
||||
for (let i = 0; i < twoDimArray.length; i++) {
|
||||
if (any(twoDimArray[i])) {
|
||||
newArray.push(twoDimArray[i])
|
||||
}
|
||||
}
|
||||
return newArray
|
||||
}
|
41
cmdb-ui/src/api/cmdb/ci.js
Normal file
41
cmdb-ui/src/api/cmdb/ci.js
Normal file
@@ -0,0 +1,41 @@
|
||||
import { axios } from '@/utils/request'
|
||||
|
||||
const urlPrefix = '/v0.1'
|
||||
|
||||
export function searchCI (params) {
|
||||
return axios({
|
||||
url: urlPrefix + `/ci/s?${params}`,
|
||||
method: 'GET'
|
||||
})
|
||||
}
|
||||
|
||||
export function addCI (params) {
|
||||
return axios({
|
||||
url: urlPrefix + '/ci',
|
||||
method: 'POST',
|
||||
data: params
|
||||
})
|
||||
}
|
||||
|
||||
export function updateCI (id, params) {
|
||||
return axios({
|
||||
url: urlPrefix + `/ci/${id}`,
|
||||
method: 'PUT',
|
||||
data: params
|
||||
})
|
||||
}
|
||||
|
||||
export function deleteCI (ciId) {
|
||||
return axios({
|
||||
url: urlPrefix + `/ci/${ciId}`,
|
||||
method: 'DELETE'
|
||||
})
|
||||
}
|
||||
|
||||
// 获取单个ci实例
|
||||
export function getCIById (ciId) {
|
||||
return axios({
|
||||
url: urlPrefix + `/ci/${ciId}`,
|
||||
method: 'GET'
|
||||
})
|
||||
}
|
8
cmdb-ui/src/api/cmdb/history.js
Normal file
8
cmdb-ui/src/api/cmdb/history.js
Normal file
@@ -0,0 +1,8 @@
|
||||
import { axios } from '@/utils/request'
|
||||
|
||||
export function getCIHistory (ciId) {
|
||||
return axios({
|
||||
url: `/v0.1/history/ci/${ciId}`,
|
||||
method: 'GET'
|
||||
})
|
||||
}
|
64
cmdb-ui/src/api/cmdb/preference.js
Normal file
64
cmdb-ui/src/api/cmdb/preference.js
Normal file
@@ -0,0 +1,64 @@
|
||||
import { axios } from '@/utils/request'
|
||||
|
||||
export function getPreference (instance = true, tree = null) {
|
||||
return axios({
|
||||
url: '/v0.1/preference/ci_types',
|
||||
method: 'GET',
|
||||
params: { instance: instance, tree: tree }
|
||||
})
|
||||
}
|
||||
|
||||
export function getSubscribeAttributes (ciTypeId) {
|
||||
return axios({
|
||||
url: `/v0.1/preference/ci_types/${ciTypeId}/attributes`,
|
||||
method: 'GET'
|
||||
})
|
||||
}
|
||||
|
||||
export function getSubscribeTreeView () {
|
||||
return axios({
|
||||
url: '/v0.1/preference/tree/view',
|
||||
method: 'GET'
|
||||
})
|
||||
}
|
||||
|
||||
export function subscribeCIType (ciTypeId, attrs) {
|
||||
return axios({
|
||||
url: `/v0.1/preference/ci_types/${ciTypeId}/attributes`,
|
||||
method: 'POST',
|
||||
data: {
|
||||
attr: attrs
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
export function subscribeTreeView (ciTypeId, levels) {
|
||||
return axios({
|
||||
url: `/v0.1/preference/tree/view`,
|
||||
method: 'POST',
|
||||
data: { type_id: ciTypeId, levels: levels }
|
||||
})
|
||||
}
|
||||
|
||||
export function getRelationView () {
|
||||
return axios({
|
||||
url: `/v0.1/preference/relation/view`,
|
||||
method: 'GET'
|
||||
})
|
||||
}
|
||||
|
||||
export function deleteRelationView (viewName) {
|
||||
return axios({
|
||||
url: `/v0.1/preference/relation/view`,
|
||||
method: 'DELETE',
|
||||
data: { name: viewName }
|
||||
})
|
||||
}
|
||||
|
||||
export function subscribeRelationView (payload) {
|
||||
return axios({
|
||||
url: `/v0.1/preference/relation/view`,
|
||||
method: 'POST',
|
||||
data: payload
|
||||
})
|
||||
}
|
31
cmdb-ui/src/api/cmdb/relationType.js
Normal file
31
cmdb-ui/src/api/cmdb/relationType.js
Normal file
@@ -0,0 +1,31 @@
|
||||
import { axios } from '@/utils/request'
|
||||
|
||||
export function getRelationTypes () {
|
||||
return axios({
|
||||
url: '/v0.1/relation_types',
|
||||
method: 'GET'
|
||||
})
|
||||
}
|
||||
|
||||
export function addRelationType (payload) {
|
||||
return axios({
|
||||
url: `/v0.1/relation_types`,
|
||||
method: 'POST',
|
||||
data: payload
|
||||
})
|
||||
}
|
||||
|
||||
export function updateRelationType (rtId, payload) {
|
||||
return axios({
|
||||
url: `/v0.1/relation_types/${rtId}`,
|
||||
method: 'PUT',
|
||||
data: payload
|
||||
})
|
||||
}
|
||||
|
||||
export function deleteRelationType (rtId) {
|
||||
return axios({
|
||||
url: `/v0.1/relation_types/${rtId}`,
|
||||
method: 'DELETE'
|
||||
})
|
||||
}
|
14
cmdb-ui/src/api/index.js
Normal file
14
cmdb-ui/src/api/index.js
Normal file
@@ -0,0 +1,14 @@
|
||||
import config from '@/config/defaultSettings'
|
||||
|
||||
const api = {
|
||||
Login: config.useSSO ? '/api/sso/login' : '/login',
|
||||
Logout: config.useSSO ? '/api/sso/logout' : '/logout',
|
||||
ForgePassword: '/auth/forge-password',
|
||||
Register: '/auth/register',
|
||||
twoStepCode: '/auth/2step-code',
|
||||
SendSms: '/account/sms',
|
||||
SendSmsErr: '/account/sms_err',
|
||||
// get my info
|
||||
UserInfo: '/v1/acl/users/info'
|
||||
}
|
||||
export default api
|
66
cmdb-ui/src/api/login.js
Normal file
66
cmdb-ui/src/api/login.js
Normal file
@@ -0,0 +1,66 @@
|
||||
import api from './index'
|
||||
import { axios } from '@/utils/request'
|
||||
import config from '@/config/defaultSettings'
|
||||
/**
|
||||
* login func
|
||||
* parameter: {
|
||||
* username: '',
|
||||
* password: '',
|
||||
* remember_me: true,
|
||||
* captcha: '12345'
|
||||
* }
|
||||
* @param parameter
|
||||
* @returns {*}
|
||||
*/
|
||||
export function login (parameter) {
|
||||
return axios({
|
||||
url: api.Login,
|
||||
method: 'post',
|
||||
data: parameter
|
||||
})
|
||||
}
|
||||
|
||||
export function getSmsCaptcha (parameter) {
|
||||
return axios({
|
||||
url: api.SendSms,
|
||||
method: 'post',
|
||||
data: parameter
|
||||
})
|
||||
}
|
||||
|
||||
export function getInfo () {
|
||||
return axios({
|
||||
url: api.UserInfo,
|
||||
method: 'get',
|
||||
headers: {
|
||||
'Content-Type': 'application/json;charset=UTF-8'
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
export function logout () {
|
||||
console.log('logout........')
|
||||
if (config.useSSO) {
|
||||
window.location.replace(api.Logout)
|
||||
} else {
|
||||
return axios({
|
||||
url: api.Logout,
|
||||
method: 'post',
|
||||
headers: {
|
||||
'Content-Type': 'application/json;charset=UTF-8'
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* get user 2step code open?
|
||||
* @param parameter {*}
|
||||
*/
|
||||
export function get2step (parameter) {
|
||||
return axios({
|
||||
url: api.twoStepCode,
|
||||
method: 'post',
|
||||
data: parameter
|
||||
})
|
||||
}
|
62
cmdb-ui/src/api/manage.js
Normal file
62
cmdb-ui/src/api/manage.js
Normal file
@@ -0,0 +1,62 @@
|
||||
import { axios } from '@/utils/request'
|
||||
|
||||
const api = {
|
||||
user: '/user',
|
||||
role: '/role',
|
||||
service: '/service',
|
||||
permission: '/permission',
|
||||
permissionNoPager: '/permission/no-pager',
|
||||
orgTree: '/org/tree'
|
||||
}
|
||||
|
||||
export default api
|
||||
|
||||
export function getUserList (parameter) {
|
||||
return axios({
|
||||
url: api.user,
|
||||
method: 'get',
|
||||
params: parameter
|
||||
})
|
||||
}
|
||||
|
||||
export function getRoleList (parameter) {
|
||||
return axios({
|
||||
url: api.role,
|
||||
method: 'get',
|
||||
params: parameter
|
||||
})
|
||||
}
|
||||
|
||||
export function getServiceList (parameter) {
|
||||
return axios({
|
||||
url: api.service,
|
||||
method: 'get',
|
||||
params: parameter
|
||||
})
|
||||
}
|
||||
|
||||
export function getPermissions (parameter) {
|
||||
return axios({
|
||||
url: api.permissionNoPager,
|
||||
method: 'get',
|
||||
params: parameter
|
||||
})
|
||||
}
|
||||
|
||||
export function getOrgTree (parameter) {
|
||||
return axios({
|
||||
url: api.orgTree,
|
||||
method: 'get',
|
||||
params: parameter
|
||||
})
|
||||
}
|
||||
|
||||
// id == 0 add post
|
||||
// id != 0 update put
|
||||
export function saveService (parameter) {
|
||||
return axios({
|
||||
url: api.service,
|
||||
method: parameter.id === 0 ? 'post' : 'put',
|
||||
data: parameter
|
||||
})
|
||||
}
|
Reference in New Issue
Block a user