From b8d93bc9eb7ec4c127bacbe93b0d4d627eddc4a3 Mon Sep 17 00:00:00 2001 From: wang-liang0615 <53748875+wang-liang0615@users.noreply.github.com> Date: Tue, 26 Sep 2023 18:25:04 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20UI=E6=9B=B4=E6=96=B0=20=E8=A7=A6?= =?UTF-8?q?=E5=8F=91=E5=99=A8=20(#179)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat:新增api&适配 * feat:触发器 * add packages & 注释代码 * feat: webhook tips --- cmdb-ui/package.json | 2 + cmdb-ui/src/api/employee.js | 8 + cmdb-ui/src/modules/cmdb/api/CIType.js | 422 ++++---- cmdb-ui/src/modules/cmdb/api/history.js | 96 +- .../cmdb/components/noticeContent/index.js | 2 + .../cmdb/components/noticeContent/index.vue | 199 ++++ .../cmdb/components/webhook/authorization.vue | 144 +++ .../modules/cmdb/components/webhook/body.vue | 79 ++ .../cmdb/components/webhook/header.vue | 101 ++ .../modules/cmdb/components/webhook/index.js | 2 + .../modules/cmdb/components/webhook/index.vue | 140 +++ .../cmdb/components/webhook/paramaters.vue | 100 ++ .../cmdb/views/ci/modules/CiDetail.vue | 646 ++++++------ .../cmdb/views/ci_types/triggerForm.vue | 774 ++++++++++---- .../cmdb/views/ci_types/triggerTable.vue | 316 +++--- .../cmdb/views/operation_history/index.vue | 81 +- .../operation_history/modules/ciTable.vue | 841 +++++++-------- .../views/operation_history/modules/pager.vue | 232 ++--- .../operation_history/modules/relation.vue | 807 +++++++-------- .../operation_history/modules/searchForm.vue | 382 +++---- .../modules/triggerTable.vue | 117 +++ .../operation_history/modules/typeTable.vue | 955 +++++++++--------- cmdb-ui/src/views/setting/person/index.vue | 2 +- 23 files changed, 3895 insertions(+), 2553 deletions(-) create mode 100644 cmdb-ui/src/modules/cmdb/components/noticeContent/index.js create mode 100644 cmdb-ui/src/modules/cmdb/components/noticeContent/index.vue create mode 100644 cmdb-ui/src/modules/cmdb/components/webhook/authorization.vue create mode 100644 cmdb-ui/src/modules/cmdb/components/webhook/body.vue create mode 100644 cmdb-ui/src/modules/cmdb/components/webhook/header.vue create mode 100644 cmdb-ui/src/modules/cmdb/components/webhook/index.js create mode 100644 cmdb-ui/src/modules/cmdb/components/webhook/index.vue create mode 100644 cmdb-ui/src/modules/cmdb/components/webhook/paramaters.vue create mode 100644 cmdb-ui/src/modules/cmdb/views/operation_history/modules/triggerTable.vue diff --git a/cmdb-ui/package.json b/cmdb-ui/package.json index 1eb3c60..890376a 100644 --- a/cmdb-ui/package.json +++ b/cmdb-ui/package.json @@ -17,6 +17,8 @@ "@babel/plugin-syntax-import-meta": "^7.10.4", "@riophae/vue-treeselect": "^0.4.0", "@vue/composition-api": "^1.7.1", + "@wangeditor/editor": "^5.1.23", + "@wangeditor/editor-for-vue": "^1.0.0", "ant-design-vue": "^1.6.5", "axios": "0.18.0", "babel-eslint": "^8.2.2", diff --git a/cmdb-ui/src/api/employee.js b/cmdb-ui/src/api/employee.js index ff695c1..2f2f940 100644 --- a/cmdb-ui/src/api/employee.js +++ b/cmdb-ui/src/api/employee.js @@ -117,3 +117,11 @@ export function getEmployeeListByFilter(data) { data }) } + +export function getNoticeByEmployeeIds(data) { + return axios({ + url: '/common-setting/v1/employee/get_notice_by_ids', + method: 'post', + data + }) +} \ No newline at end of file diff --git a/cmdb-ui/src/modules/cmdb/api/CIType.js b/cmdb-ui/src/modules/cmdb/api/CIType.js index a2c54f2..d7d6631 100644 --- a/cmdb-ui/src/modules/cmdb/api/CIType.js +++ b/cmdb-ui/src/modules/cmdb/api/CIType.js @@ -1,207 +1,215 @@ -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 - }) -} - -export function getUniqueConstraintList(type_id) { - return axios({ - url: `/v0.1/ci_types/${type_id}/unique_constraint`, - method: 'get', - }) -} - -export function addUniqueConstraint(type_id, data) { - return axios({ - url: `/v0.1/ci_types/${type_id}/unique_constraint`, - method: 'post', - data: data - }) -} - -export function updateUniqueConstraint(type_id, id, data) { - return axios({ - url: `/v0.1/ci_types/${type_id}/unique_constraint/${id}`, - method: 'put', - data: data - }) -} - -export function deleteUniqueConstraint(type_id, id) { - return axios({ - url: `/v0.1/ci_types/${type_id}/unique_constraint/${id}`, - method: 'delete', - }) -} - -export function getTriggerList(type_id) { - return axios({ - url: `/v0.1/ci_types/${type_id}/triggers`, - method: 'get', - }) -} - -export function addTrigger(type_id, data) { - return axios({ - url: `/v0.1/ci_types/${type_id}/triggers`, - method: 'post', - data: data - }) -} - -export function updateTrigger(type_id, id, data) { - return axios({ - url: `/v0.1/ci_types/${type_id}/triggers/${id}`, - method: 'put', - data: data - }) -} - -export function deleteTrigger(type_id, id) { - return axios({ - url: `/v0.1/ci_types/${type_id}/triggers/${id}`, - method: 'delete', - }) -} - -// CMDB的模型和实例的授权接口 -export function grantCiType(type_id, rid, data) { - return axios({ - url: `/v0.1/ci_types/${type_id}/roles/${rid}/grant`, - method: 'post', - data - }) -} -// CMDB的模型和实例的删除授权接口 -export function revokeCiType(type_id, rid, data) { - return axios({ - url: `/v0.1/ci_types/${type_id}/roles/${rid}/revoke`, - method: 'post', - data - }) -} -// CMDB的模型和实例的过滤的权限 -export function ciTypeFilterPermissions(type_id) { - return axios({ - url: `/v0.1/ci_types/${type_id}/filters/permissions`, - method: 'get', - }) -} +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 + }) +} + +export function getUniqueConstraintList(type_id) { + return axios({ + url: `/v0.1/ci_types/${type_id}/unique_constraint`, + method: 'get', + }) +} + +export function addUniqueConstraint(type_id, data) { + return axios({ + url: `/v0.1/ci_types/${type_id}/unique_constraint`, + method: 'post', + data: data + }) +} + +export function updateUniqueConstraint(type_id, id, data) { + return axios({ + url: `/v0.1/ci_types/${type_id}/unique_constraint/${id}`, + method: 'put', + data: data + }) +} + +export function deleteUniqueConstraint(type_id, id) { + return axios({ + url: `/v0.1/ci_types/${type_id}/unique_constraint/${id}`, + method: 'delete', + }) +} + +export function getTriggerList(type_id) { + return axios({ + url: `/v0.1/ci_types/${type_id}/triggers`, + method: 'get', + }) +} + +export function addTrigger(type_id, data) { + return axios({ + url: `/v0.1/ci_types/${type_id}/triggers`, + method: 'post', + data: data + }) +} + +export function updateTrigger(type_id, id, data) { + return axios({ + url: `/v0.1/ci_types/${type_id}/triggers/${id}`, + method: 'put', + data: data + }) +} + +export function deleteTrigger(type_id, id) { + return axios({ + url: `/v0.1/ci_types/${type_id}/triggers/${id}`, + method: 'delete', + }) +} + +// CMDB的模型和实例的授权接口 +export function grantCiType(type_id, rid, data) { + return axios({ + url: `/v0.1/ci_types/${type_id}/roles/${rid}/grant`, + method: 'post', + data + }) +} +// CMDB的模型和实例的删除授权接口 +export function revokeCiType(type_id, rid, data) { + return axios({ + url: `/v0.1/ci_types/${type_id}/roles/${rid}/revoke`, + method: 'post', + data + }) +} +// CMDB的模型和实例的过滤的权限 +export function ciTypeFilterPermissions(type_id) { + return axios({ + url: `/v0.1/ci_types/${type_id}/filters/permissions`, + method: 'get', + }) +} + +export function getAllDagsName(params) { + return axios({ + url: '/v1/dag/all_names', + method: 'GET', + params: params + }) +} diff --git a/cmdb-ui/src/modules/cmdb/api/history.js b/cmdb-ui/src/modules/cmdb/api/history.js index 8566fa6..ae8a099 100644 --- a/cmdb-ui/src/modules/cmdb/api/history.js +++ b/cmdb-ui/src/modules/cmdb/api/history.js @@ -1,40 +1,56 @@ -import { axios } from '@/utils/request' - -export function getCIHistory (ciId) { - return axios({ - url: `/v0.1/history/ci/${ciId}`, - method: 'GET' - }) -} - -export function getCIHistoryTable (params) { - return axios({ - url: `/v0.1/history/records/attribute`, - method: 'GET', - params: params - }) -} - -export function getRelationTable (params) { - return axios({ - url: `/v0.1/history/records/relation`, - method: 'GET', - params: params - }) -} - -export function getCITypesTable (params) { - return axios({ - url: `/v0.1/history/ci_types`, - method: 'GET', - params: params - }) -} - -export function getUsers (params) { - return axios({ - url: `/v1/acl/users/employee`, - method: 'GET', - params: params - }) -} +import { axios } from '@/utils/request' + +export function getCIHistory(ciId) { + return axios({ + url: `/v0.1/history/ci/${ciId}`, + method: 'GET' + }) +} + +export function getCIHistoryTable(params) { + return axios({ + url: `/v0.1/history/records/attribute`, + method: 'GET', + params: params + }) +} + +export function getRelationTable(params) { + return axios({ + url: `/v0.1/history/records/relation`, + method: 'GET', + params: params + }) +} + +export function getCITypesTable(params) { + return axios({ + url: `/v0.1/history/ci_types`, + method: 'GET', + params: params + }) +} + +export function getUsers(params) { + return axios({ + url: `/v1/acl/users/employee`, + method: 'GET', + params: params + }) +} + +export function getCiTriggers(params) { + return axios({ + url: `/v0.1/history/ci_triggers`, + method: 'GET', + params: params + }) +} + +export function getCiTriggersByCiId(ci_id, params) { + return axios({ + url: `/v0.1/history/ci_triggers/${ci_id}`, + method: 'GET', + params + }) +} diff --git a/cmdb-ui/src/modules/cmdb/components/noticeContent/index.js b/cmdb-ui/src/modules/cmdb/components/noticeContent/index.js new file mode 100644 index 0000000..926d0db --- /dev/null +++ b/cmdb-ui/src/modules/cmdb/components/noticeContent/index.js @@ -0,0 +1,2 @@ +import NoticeContent from './index.vue' +export default NoticeContent diff --git a/cmdb-ui/src/modules/cmdb/components/noticeContent/index.vue b/cmdb-ui/src/modules/cmdb/components/noticeContent/index.vue new file mode 100644 index 0000000..977ff31 --- /dev/null +++ b/cmdb-ui/src/modules/cmdb/components/noticeContent/index.vue @@ -0,0 +1,199 @@ + + + + + + + diff --git a/cmdb-ui/src/modules/cmdb/components/webhook/authorization.vue b/cmdb-ui/src/modules/cmdb/components/webhook/authorization.vue new file mode 100644 index 0000000..3afb659 --- /dev/null +++ b/cmdb-ui/src/modules/cmdb/components/webhook/authorization.vue @@ -0,0 +1,144 @@ + + + + + diff --git a/cmdb-ui/src/modules/cmdb/components/webhook/body.vue b/cmdb-ui/src/modules/cmdb/components/webhook/body.vue new file mode 100644 index 0000000..a30b1ce --- /dev/null +++ b/cmdb-ui/src/modules/cmdb/components/webhook/body.vue @@ -0,0 +1,79 @@ + + + + + + diff --git a/cmdb-ui/src/modules/cmdb/components/webhook/header.vue b/cmdb-ui/src/modules/cmdb/components/webhook/header.vue new file mode 100644 index 0000000..d039016 --- /dev/null +++ b/cmdb-ui/src/modules/cmdb/components/webhook/header.vue @@ -0,0 +1,101 @@ + + + + + diff --git a/cmdb-ui/src/modules/cmdb/components/webhook/index.js b/cmdb-ui/src/modules/cmdb/components/webhook/index.js new file mode 100644 index 0000000..dea91c2 --- /dev/null +++ b/cmdb-ui/src/modules/cmdb/components/webhook/index.js @@ -0,0 +1,2 @@ +import Webhook from './index.vue' +export default Webhook diff --git a/cmdb-ui/src/modules/cmdb/components/webhook/index.vue b/cmdb-ui/src/modules/cmdb/components/webhook/index.vue new file mode 100644 index 0000000..e1d625c --- /dev/null +++ b/cmdb-ui/src/modules/cmdb/components/webhook/index.vue @@ -0,0 +1,140 @@ + + + + + diff --git a/cmdb-ui/src/modules/cmdb/components/webhook/paramaters.vue b/cmdb-ui/src/modules/cmdb/components/webhook/paramaters.vue new file mode 100644 index 0000000..93238e3 --- /dev/null +++ b/cmdb-ui/src/modules/cmdb/components/webhook/paramaters.vue @@ -0,0 +1,100 @@ + + + + + diff --git a/cmdb-ui/src/modules/cmdb/views/ci/modules/CiDetail.vue b/cmdb-ui/src/modules/cmdb/views/ci/modules/CiDetail.vue index 303cbb4..006d3b0 100644 --- a/cmdb-ui/src/modules/cmdb/views/ci/modules/CiDetail.vue +++ b/cmdb-ui/src/modules/cmdb/views/ci/modules/CiDetail.vue @@ -1,319 +1,327 @@ - - - - - - + + + + + + diff --git a/cmdb-ui/src/modules/cmdb/views/ci_types/triggerForm.vue b/cmdb-ui/src/modules/cmdb/views/ci_types/triggerForm.vue index 5c84d13..13ea097 100644 --- a/cmdb-ui/src/modules/cmdb/views/ci_types/triggerForm.vue +++ b/cmdb-ui/src/modules/cmdb/views/ci_types/triggerForm.vue @@ -1,197 +1,577 @@ - - - - - + + + + + + + diff --git a/cmdb-ui/src/modules/cmdb/views/ci_types/triggerTable.vue b/cmdb-ui/src/modules/cmdb/views/ci_types/triggerTable.vue index 0bbc0a1..c67ed1c 100644 --- a/cmdb-ui/src/modules/cmdb/views/ci_types/triggerTable.vue +++ b/cmdb-ui/src/modules/cmdb/views/ci_types/triggerTable.vue @@ -1,144 +1,172 @@ - - - - - + + + + + diff --git a/cmdb-ui/src/modules/cmdb/views/operation_history/index.vue b/cmdb-ui/src/modules/cmdb/views/operation_history/index.vue index 6b6ed63..d81a97c 100644 --- a/cmdb-ui/src/modules/cmdb/views/operation_history/index.vue +++ b/cmdb-ui/src/modules/cmdb/views/operation_history/index.vue @@ -1,38 +1,43 @@ - - - - - + + + + + diff --git a/cmdb-ui/src/modules/cmdb/views/operation_history/modules/ciTable.vue b/cmdb-ui/src/modules/cmdb/views/operation_history/modules/ciTable.vue index 5745baf..76e2fed 100644 --- a/cmdb-ui/src/modules/cmdb/views/operation_history/modules/ciTable.vue +++ b/cmdb-ui/src/modules/cmdb/views/operation_history/modules/ciTable.vue @@ -1,420 +1,421 @@ - - - - + + + + diff --git a/cmdb-ui/src/modules/cmdb/views/operation_history/modules/pager.vue b/cmdb-ui/src/modules/cmdb/views/operation_history/modules/pager.vue index 0b7352a..266c9db 100644 --- a/cmdb-ui/src/modules/cmdb/views/operation_history/modules/pager.vue +++ b/cmdb-ui/src/modules/cmdb/views/operation_history/modules/pager.vue @@ -1,116 +1,116 @@ - - - - - + + + + + diff --git a/cmdb-ui/src/modules/cmdb/views/operation_history/modules/relation.vue b/cmdb-ui/src/modules/cmdb/views/operation_history/modules/relation.vue index bb8eadb..d177ca1 100644 --- a/cmdb-ui/src/modules/cmdb/views/operation_history/modules/relation.vue +++ b/cmdb-ui/src/modules/cmdb/views/operation_history/modules/relation.vue @@ -1,403 +1,404 @@ - - - - - + + + + + diff --git a/cmdb-ui/src/modules/cmdb/views/operation_history/modules/searchForm.vue b/cmdb-ui/src/modules/cmdb/views/operation_history/modules/searchForm.vue index a76820b..2491035 100644 --- a/cmdb-ui/src/modules/cmdb/views/operation_history/modules/searchForm.vue +++ b/cmdb-ui/src/modules/cmdb/views/operation_history/modules/searchForm.vue @@ -1,191 +1,191 @@ - - - - - + + + + + diff --git a/cmdb-ui/src/modules/cmdb/views/operation_history/modules/triggerTable.vue b/cmdb-ui/src/modules/cmdb/views/operation_history/modules/triggerTable.vue new file mode 100644 index 0000000..bddc78d --- /dev/null +++ b/cmdb-ui/src/modules/cmdb/views/operation_history/modules/triggerTable.vue @@ -0,0 +1,117 @@ + + + + + diff --git a/cmdb-ui/src/modules/cmdb/views/operation_history/modules/typeTable.vue b/cmdb-ui/src/modules/cmdb/views/operation_history/modules/typeTable.vue index 6bc8e13..d743c2d 100644 --- a/cmdb-ui/src/modules/cmdb/views/operation_history/modules/typeTable.vue +++ b/cmdb-ui/src/modules/cmdb/views/operation_history/modules/typeTable.vue @@ -1,477 +1,478 @@ - - - - - + + + + + diff --git a/cmdb-ui/src/views/setting/person/index.vue b/cmdb-ui/src/views/setting/person/index.vue index e99feea..6c79c63 100644 --- a/cmdb-ui/src/views/setting/person/index.vue +++ b/cmdb-ui/src/views/setting/person/index.vue @@ -94,7 +94,7 @@
- {{ form.wx_id ? '重新绑定' : '绑定' }} + {{ form.notice_info.wechatApp ? '重新绑定' : '绑定' }}