From cf0302a25a4a615280b37a3286ec0c08d8c2bfb4 Mon Sep 17 00:00:00 2001 From: jinna Date: Fri, 14 Apr 2023 13:56:57 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E7=B3=BB=E7=BB=9F=E8=BF=90=E7=BB=B4?= =?UTF-8?q?=E4=B8=8E=E6=95=B0=E6=8D=AE=E5=BA=93=E8=BF=90=E7=BB=B4=E5=90=88?= =?UTF-8?q?=E6=88=90=E4=B8=80=E4=B8=AA=E9=A1=B5=E9=9D=A2=202=E3=80=81?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=B7=A5=E5=8D=95=E7=9B=B8=E5=85=B3=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/maintenance/basics.js | 49 +++ src/api/plugin/workflow/form.js | 157 +++++----- src/const/maintenance/basics.js | 256 +++++++++++++++ src/const/workflow/todo.js | 17 +- src/page/index/sidebar/sidebarItem.vue | 1 - src/views/maintenance/basics.vue | 292 ++++++++++++++++++ src/views/maintenance/system.vue | 275 ++++++++++++++--- .../workflow/process/components/detail.vue | 64 ++-- .../workflow/process/components/effect.vue | 54 +++- .../workflow/process/components/form.vue | 140 +++++++-- .../workflow/process/implementation.vue | 3 + src/views/plugin/workflow/process/todo.vue | 4 +- 12 files changed, 1128 insertions(+), 184 deletions(-) create mode 100644 src/api/maintenance/basics.js create mode 100644 src/const/maintenance/basics.js create mode 100644 src/views/maintenance/basics.vue diff --git a/src/api/maintenance/basics.js b/src/api/maintenance/basics.js new file mode 100644 index 0000000..6fe423d --- /dev/null +++ b/src/api/maintenance/basics.js @@ -0,0 +1,49 @@ +import request from "@/router/axios"; + +// 获取搜索条件数据 +export const getBasicsData = () => { + return request({ + url: "/api/blade-workflow/database/listData", + method: "get", + }); +}; + +// 下载模板 +export const getTemplate = () => { + return request({ + url: "/api/blade-workflow/database/exportTemplate", + method: "get", + responseType: "blob", + }); +}; + +// 新增数据 +export const addList = (data) => { + return request({ + url: "/api/blade-workflow/database/save", + method: "post", + data, + }); +}; +// 获取新增下拉字段 +export const addPullData = (data) => { + return request({ + url: "/api/blade-workflow/database/basicData", + method: "get", + }); +}; +// 类型 +export const getDatabaseType = () => { + return request({ + url: "/api/blade-system/dict-biz/dictionary?code=database_type", + method: "get", + }); +}; +// 查询列表 +export const getDataList = (query) => { + return request({ + url: "/api/blade-workflow/database/list", + method: "get", + params: query, + }); +}; diff --git a/src/api/plugin/workflow/form.js b/src/api/plugin/workflow/form.js index a371e44..6cd47a6 100644 --- a/src/api/plugin/workflow/form.js +++ b/src/api/plugin/workflow/form.js @@ -1,127 +1,146 @@ -import request from '@/router/axios'; +import request from "@/router/axios"; -const prefix = '/api/blade-workflow/design/form' +const prefix = "/api/blade-workflow/design/form"; export const getList = (current, size, params) => { return request({ url: `${prefix}/list`, - method: 'get', + method: "get", params: { ...params, current, size, - } - }) -} + }, + }); +}; export const getDetail = (params) => { return request({ url: `${prefix}/detail`, - method: 'get', - params - }) -} + method: "get", + params, + }); +}; export const remove = (data) => { return request({ url: `${prefix}/remove`, - method: 'post', - data - }) -} + method: "post", + data, + }); +}; export const add = (row) => { return request({ url: `${prefix}/submit`, - method: 'post', - data: row - }) -} + method: "post", + data: row, + }); +}; export const update = (row) => { return request({ url: `${prefix}/submit`, - method: 'post', - data: row - }) -} + method: "post", + data: row, + }); +}; export const listType = (params) => { return request({ url: `${prefix}/listType`, - method: 'get', - params - }) -} + method: "get", + params, + }); +}; export const changeCategory = (row) => { return request({ url: `${prefix}/changeCategory`, - method: 'post', - data: row - }) -} + method: "post", + data: row, + }); +}; export const downloadFile = (query) => { return request({ - url: '/api/blade-workflow/database/download', - method: 'get', + url: "/api/blade-workflow/database/download", + method: "get", params: query, - responseType: 'blob' - }) -} + responseType: "blob", + }); +}; // 运维公司 -export const getCompany = () => { +export const getCompany = (query) => { return request({ - url: '/api/blade-user/maintenanceCompany', - method: 'get', - }) -} + url: "/api/blade-user/maintenanceCompany", + method: "get", + params: query, + }); +}; // 运维部门 export const getDepts = (query) => { return request({ - url: '/api/blade-system/dept/getDepts', - method: 'get', - params:query - }) -} + url: "/api/blade-system/dept/getDepts", + method: "get", + params: query, + }); +}; // 任务父类 export const getTaskParent = () => { return request({ - url: '/api/blade-system/dict-biz/dictionary?code=task_parent', - method: 'get', - }) -} + url: "/api/blade-system/dict-biz/dictionary?code=task_parent", + method: "get", + }); +}; // 任务种类 export const getTaskTypeData = (query) => { return request({ - url: '/api/blade-workflow/taskInfo/taskTypeData', - method: 'get', - params:query - }) -} + url: "/api/blade-workflow/taskInfo/taskTypeData", + method: "get", + params: query, + }); +}; // 任务等级 -export const getTaskLevel= () => { +export const getTaskLevel = (query) => { return request({ - url: '/api/blade-system/dict-biz/dictionary?code=task_level', - method: 'get', - }) -} + // url: "/api/blade-system/dict-biz/dictionary?code=task_level", + url: "/api/blade-workflow/taskInfo/taskLevel", + method: "get", + params: query, + }); +}; // 系统名称/数据库 export const getTaskAndDataBase = (query) => { return request({ - url: '/api/blade-workflow/projectInfo/projectAndDataBase', - method: 'get', - params:query - }) -} + url: "/api/blade-workflow/projectInfo/projectAndDataBase", + method: "get", + params: query, + }); +}; // 系统名称/数据表 export const getModuleAndDataTable = (query) => { return request({ - url: '/api/blade-workflow/projectInfo/moduleAndDataTable', - method: 'get', - params:query - }) -} + url: "/api/blade-workflow/projectInfo/moduleAndDataTable", + method: "get", + params: query, + }); +}; +// 工单数据库和系统名称返回 +export const getDatabasePro = (query) => { + return request({ + url: "/api/blade-workflow/database/projectAndDataBase", + method: "get", + params: query, + }); +}; +// 工单数据表和系统模块返回 +export const getDatabaseTab = (query) => { + return request({ + url: "/api/blade-workflow/database/moduleAndDataTable", + method: "get", + params: query, + }); +}; diff --git a/src/const/maintenance/basics.js b/src/const/maintenance/basics.js new file mode 100644 index 0000000..be80abf --- /dev/null +++ b/src/const/maintenance/basics.js @@ -0,0 +1,256 @@ +export const tableOption = { + index: true, + indexLabel: "序号", + indexWidth: 120, + labelPosition: "top", + selection: false, + border: false, + headerAlign: "left", + align: "left", + menuAlign: "left", + menuHeaderAlign: "left", + menuBtn: true, + editBtn: false, + delBtn: false, + addBtn: false, + tip: false, + searchMenuSpan: 3, //控制搜索按钮 + columnBtn: false, + refreshBtn: false, + header: false, + menuWidth: 220, + dialogCustomClass: "custom", + menu: false, + column: [ + { + type: "select", + label: "数据库/系统名称", + prop: "databaseProjectName", + align: "left", + overHidden: true, + allowCreate: true, + filterable: true, + dicData: [], + props: { + label: "databaseProjectName", + value: "id", + }, + span: 8, + allowCreate: true, + filterable: true, + formslot: true, + rules: [{ required: true, message: "请输入数据库/系统名称" }], + }, + { + type: "input", + label: "数据库/系统别名", + prop: "dataBaseAlias", + align: "left", + overHidden: true, + // dicData: [], + // props: { + // label: "projectName", + // value: "id", + // }, + span: 8, + hide: true, + allowCreate: true, + filterable: true, + }, + { + label: "类型", + prop: "type", + type: "select", + align: "left", + span: 8, + dicData: [], + props: { + label: "dictValue", + value: "dictKey", + }, + rules: [{ required: true, message: "请选择类型" }], + }, + { + label: "数据表/系统模块", + prop: "datatableModuleName", + type: "input", + overHidden: true, + align: "left", + span: 8, + rules: [{ required: true, message: "请输入模块名称" }], + addDisplay: false, + editDisplay: false, + }, + { + label: "数据表/系统模块别名", + prop: "moduleAlias", + type: "input", + align: "left", + span: 8, + hide: true, + // rules: [{ required: true, message: "请输入模块名称" }], + addDisplay: false, + editDisplay: false, + }, + { + type: "input", + label: "运维公司", + prop: "companyName", + align: "left", + overHidden: true, + addDisplay: false, + editDisplay: false, + }, + { + type: "select", + label: "运维公司", + prop: "company", + align: "left", + overHidden: true, + dicData: [], + props: { + label: "name", + value: "id", + }, + hide: true, + span: 8, + rules: [{ required: true, message: "请选择运维公司" }], + }, + { + type: "select", + label: "管理部门", + prop: "deptId", + align: "left", + overHidden: true, + dicData: [], + props: { + label: "deptName", + value: "id", + }, + hide: true, + span: 8, + rules: [{ required: true, message: "请选择管理部门" }], + }, + { + type: "input", + label: "管理部门", + prop: "deptName", + align: "left", + overHidden: true, + addDisplay: false, + editDisplay: false, + }, + { + type: "input", + label: "IP地址", + prop: "dataBaseIp", + align: "left", + overHidden: true, + span: 8, + }, + { + type: "input", + label: "端口号", + prop: "dataBasePort", + align: "left", + overHidden: true, + span: 8, + }, + { + type: "input", + label: "所属系统", + prop: "systemName", + align: "left", + overHidden: true, + span: 8, + }, + { + label: "", + prop: "moduleDatatables", + type: "dynamic", + span: 24, + hide: true, + children: { + align: "left", + headerAlign: "left", + column: [ + { + label: "数据表/系统模块", + prop: "datatableModuleName", + type: "input", + align: "left", + rules: [{ required: true, message: "请输入数据表/系统模块" }], + }, + { + label: "数据表/系统模块别名", + prop: "dataTableAlias", + type: "input", + align: "left", + }, + ], + }, + }, + // { + // type: "input", + // label: "数据库名称", + // prop: "mc", + // align: "left", + // overHidden: true, + // hide:true, + // span: 8, + // }, + // { + // type: "select", + // label: "数据库信息属性", + // prop: "sx", + // align: "left", + // overHidden: true, + // dicData: [], + // props: { + // label: "dictValue", + // value: "id", + // }, + // span: 8, + // hide:true + // }, + // { + // type: "input", + // label: "创建人", + // prop: "createName", + // align: "left", + // overHidden: true, + // addDisplay: false, + // editDisplay: false, + // }, + // { + // label: "创建时间", + // type: "datetime", + // overHidden: true, + // prop: "createTime", + // format: "yyyy-MM-dd HH:mm", + // valueFormat: "yyyy-MM-dd HH:mm:ss", + // addDisplay: false, + // editDisplay: false, + // }, + // { + // label: "", + // prop: "moduleNameList", + // type: "dynamic", + // span: 24, + // hide: true, + // children: { + // align: "left", + // headerAlign: "left", + // column: [ + // { + // label: "模块名称", + // prop: "moduleName", + // type: "input", + // align: "left", + // rules: [{ required: true, message: "请输入模块名称" }], + // }, + // ], + // }, + // }, + ], +}; diff --git a/src/const/workflow/todo.js b/src/const/workflow/todo.js index 00f0b0a..25d8f44 100644 --- a/src/const/workflow/todo.js +++ b/src/const/workflow/todo.js @@ -1,14 +1,14 @@ export const tableOption = { index: true, indexLabel: "序号", - indexWidth:120, + indexWidth: 120, selection: false, border: false, gutter: 60, //设置input的大小 headerAlign: "left", align: "left", - menuAlign:'left', - menuHeaderAlign:'left', + menuAlign: "left", + menuHeaderAlign: "left", menuBtn: true, editBtn: false, delBtn: false, @@ -19,7 +19,7 @@ export const tableOption = { refreshBtn: false, // dialogCustomClass: "custom", header: false, - menuWidth:120, + menuWidth: 120, column: [ { type: "input", @@ -42,6 +42,13 @@ export const tableOption = { align: "left", overHidden: true, }, + // { + // type: "input", + // label: "操作模块", + // prop: "operateSys", + // align: "left", + // overHidden: true, + // }, { type: "input", label: "当前责任人", @@ -102,4 +109,4 @@ export const tableOption = { valueFormat: "yyyy-MM-dd HH:mm:ss", }, ], -} +}; diff --git a/src/page/index/sidebar/sidebarItem.vue b/src/page/index/sidebar/sidebarItem.vue index ff013aa..2693e31 100644 --- a/src/page/index/sidebar/sidebarItem.vue +++ b/src/page/index/sidebar/sidebarItem.vue @@ -125,7 +125,6 @@ } }, open(item) { - console.log(item) if (this.screen <= 1) this.$store.commit("SET_COLLAPSE"); if (this.validIsOpen(item)) { window.open(item[this.pathKey]); diff --git a/src/views/maintenance/basics.vue b/src/views/maintenance/basics.vue new file mode 100644 index 0000000..d956572 --- /dev/null +++ b/src/views/maintenance/basics.vue @@ -0,0 +1,292 @@ + + + diff --git a/src/views/maintenance/system.vue b/src/views/maintenance/system.vue index d956572..eb3f5ff 100644 --- a/src/views/maintenance/system.vue +++ b/src/views/maintenance/system.vue @@ -3,33 +3,50 @@ @@ -88,6 +119,26 @@ @current-change="currentChange" @size-change="sizeChange" > + + -