From 46ee3336c49fd2fb4d87e2d81d78613d3262b981 Mon Sep 17 00:00:00 2001 From: GGJ <357021191@qq.com> Date: Thu, 18 Apr 2024 14:54:35 +0800 Subject: [PATCH] =?UTF-8?q?=E8=81=94=E8=B0=83=20=E9=80=80=E5=BD=B9?= =?UTF-8?q?=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/process-boot/bpm.ts | 8 +- src/api/process-boot/retire.ts | 41 ++ .../bpmnProcessDesigner/package/index.ts | 4 +- .../penal/signal-message/SignalAndMessage.vue | 1 + .../components/maintenance.vue | 6 +- .../supervise/retire/components/equipment.vue | 169 +++--- .../supervise/retire/components/retire.vue | 123 ++-- .../task/myTask/components/ProcessViewer.vue | 534 ++++++++++++++++++ .../pqs/task/myTask/components/detail.vue | 48 ++ .../pqs/task/myTask/components/recording.vue | 101 ++++ src/views/pqs/task/myTask/index.vue | 114 ++-- src/views/system/auth/menu/popupMenu.vue | 1 - vite.config.ts | 1 + 13 files changed, 974 insertions(+), 177 deletions(-) create mode 100644 src/api/process-boot/retire.ts create mode 100644 src/views/pqs/task/myTask/components/ProcessViewer.vue create mode 100644 src/views/pqs/task/myTask/components/detail.vue create mode 100644 src/views/pqs/task/myTask/components/recording.vue diff --git a/src/api/process-boot/bpm.ts b/src/api/process-boot/bpm.ts index 7cdaf7b2..9d48d2f1 100644 --- a/src/api/process-boot/bpm.ts +++ b/src/api/process-boot/bpm.ts @@ -50,7 +50,7 @@ export const updateModelState = async (id: number, state: number) => { return await createAxios({ url: '/process-boot/bpm/model/update-state', method: 'put', data: data }) } -export const save = async data => { +export const save = async (data: any) => { return await createAxios({ url: '/process-boot/flowable/definition/save', method: 'POST', data: data }) } @@ -70,3 +70,9 @@ export const assFormWithDeploy = async (data: any) => { export const deleteDeploy = async (data: any) => { return createAxios({ url: 'process-boot/flowable/definition/delete', method: 'POST', data }) } +export const flowRecord = async (data: any) => { + return createAxios({ url: '/process-boot/flowable/task/flowRecord', method: 'GET', params: data }) +} +export const flowXmlAndNode = async (data: any) => { + return createAxios({ url: '/process-boot/flowable/task/flowXmlAndNode', method: 'GET', params: data }) +} diff --git a/src/api/process-boot/retire.ts b/src/api/process-boot/retire.ts new file mode 100644 index 00000000..3f77728d --- /dev/null +++ b/src/api/process-boot/retire.ts @@ -0,0 +1,41 @@ +import createAxios from '@/utils/request' +//上传文件 +export function uploadFile(data: any) { + return createAxios({ + url: '/process-boot/rFlowProcess/uploadFile', + method: 'post', + data + }) +} +//新增申请单 +export function addFlow(data: any) { + return createAxios({ + url: '/process-boot/rFlowProcess/add', + method: 'POST', + data + }) +} +//更新申请单 +export function update(data: any) { + return createAxios({ + url: '/process-boot/rFlowProcess/update', + method: 'POST', + data + }) +} +//提交申请单审核 +export function createCheckflow(data: any) { + return createAxios({ + url: '/process-boot/rFlowProcess/createCheckflow', + method: 'POST', + params: data + }) +} +//提交申请单审核 +export function getFileUrl(data: any) { + return createAxios({ + url: '/process-boot/rFlowProcess/getFileUrl', + method: 'POST', + params: data + }) +} diff --git a/src/components/bpmnProcessDesigner/package/index.ts b/src/components/bpmnProcessDesigner/package/index.ts index 83b2115c..cf836820 100644 --- a/src/components/bpmnProcessDesigner/package/index.ts +++ b/src/components/bpmnProcessDesigner/package/index.ts @@ -1,6 +1,6 @@ import MyProcessDesigner from './designer' import MyProcessPenal from './penal' -// import MyProcessViewer from './designer/index2' +import MyProcessViewer from './designer/index2' import './theme/index.scss' import 'bpmn-js/dist/assets/diagram-js.css' @@ -8,4 +8,4 @@ import 'bpmn-js/dist/assets/bpmn-font/css/bpmn.css' import 'bpmn-js/dist/assets/bpmn-font/css/bpmn-codes.css' import 'bpmn-js/dist/assets/bpmn-font/css/bpmn-embedded.css' -export { MyProcessDesigner,MyProcessPenal } +export { MyProcessDesigner, MyProcessPenal,MyProcessViewer } diff --git a/src/components/bpmnProcessDesigner/package/penal/signal-message/SignalAndMessage.vue b/src/components/bpmnProcessDesigner/package/penal/signal-message/SignalAndMessage.vue index 0f7e0bce..d50253a0 100644 --- a/src/components/bpmnProcessDesigner/package/penal/signal-message/SignalAndMessage.vue +++ b/src/components/bpmnProcessDesigner/package/penal/signal-message/SignalAndMessage.vue @@ -26,6 +26,7 @@ - - + + { return auditStatus.filter(item => item.code == row.cellValue)[0]?.name } diff --git a/src/views/pqs/supervise/retire/components/equipment.vue b/src/views/pqs/supervise/retire/components/equipment.vue index 2c9b0e6f..f56a8289 100644 --- a/src/views/pqs/supervise/retire/components/equipment.vue +++ b/src/views/pqs/supervise/retire/components/equipment.vue @@ -1,22 +1,21 @@ - - - {{ prop.List.fileNameYyfx }} - + - - - - - - + + + + -
- 确定 - 取消 + 保存 + + 取消
- + diff --git a/src/views/pqs/supervise/retire/components/retire.vue b/src/views/pqs/supervise/retire/components/retire.vue index df30f3cf..d8e75839 100644 --- a/src/views/pqs/supervise/retire/components/retire.vue +++ b/src/views/pqs/supervise/retire/components/retire.vue @@ -8,7 +8,7 @@ - + + + diff --git a/src/views/pqs/task/myTask/components/detail.vue b/src/views/pqs/task/myTask/components/detail.vue new file mode 100644 index 00000000..022e23a8 --- /dev/null +++ b/src/views/pqs/task/myTask/components/detail.vue @@ -0,0 +1,48 @@ + + + diff --git a/src/views/pqs/task/myTask/components/recording.vue b/src/views/pqs/task/myTask/components/recording.vue new file mode 100644 index 00000000..6308c643 --- /dev/null +++ b/src/views/pqs/task/myTask/components/recording.vue @@ -0,0 +1,101 @@ + + + diff --git a/src/views/pqs/task/myTask/index.vue b/src/views/pqs/task/myTask/index.vue index 620b688d..54eabd31 100644 --- a/src/views/pqs/task/myTask/index.vue +++ b/src/views/pqs/task/myTask/index.vue @@ -1,18 +1,17 @@ @@ -24,18 +23,17 @@ import TableHeader from '@/components/table/header/index.vue' import { onMounted, provide, ref } from 'vue' import { useDictData } from '@/stores/dictData' import { pageTable } from '@/api/harmonic-boot/luckyexcel' +import Detail from './components/detail.vue' defineOptions({ - name: 'harmonic-boot/reate/word' + name: '/flowTask/mytask' }) const dictData = useDictData() -//区域联级选择 -const industry = dictData.getBasicData('Interference_Source') -//用户信息弹出框 const tableRef = ref() +const detailRef = ref() const tableStore = new TableStore({ - url: '/process-boot/flowable/task/todoList', + url: '/process-boot/flowable/task/myProcess', method: 'GET', column: [ { @@ -45,59 +43,85 @@ const tableStore = new TableStore({ return (tableStore.table.params.pageNum - 1) * tableStore.table.params.pageSize + row.rowIndex + 1 } }, - { title: '变电站', field: 'subName', width: 200 }, - { title: '监测点名称', field: 'lineName', width: 200 }, + { title: '流程名称', field: 'procDefName', width: 200 }, + { title: '流程类别', field: 'category' }, { - title: '行业类型', - field: 'businessType', - formatter: (row: any) => { - return industry.find((item: any) => item.id == row.cellValue)?.name || '/' - } + title: '流程版本', + field: 'procDefVersion' }, { - title: '分类等级', - field: 'calssificationGrade', - formatter: (row: any) => { - return row.cellValue || '/' + title: '提交时间', + field: 'createTime' + }, + { + title: '流程状态', + field: 'finishTime', + render: 'tag', + custom: { + 0: 'warning', + 1: 'success' + }, + replaceValue: { + 0: '进行中', + 1: '已完成' } }, - { title: '电压等级', field: 'voltageScale' }, + { title: '耗时', field: 'duration' }, { - title: '上级变电站', - field: 'superiorsSubstation', - formatter: (row: any) => { - return row.cellValue || '/' - } + title: '当前节点', + field: 'taskName' + }, + { + title: '办理人', + field: 'assigneeName' + }, + + { + title: '操作', + width: '180', + render: 'buttons', + buttons: [ + { + name: 'edit', + title: '详情', + type: 'primary', + icon: 'el-icon-Plus', + render: 'basicButton', + click: row => { + detailRef.value.open(row) + } + }, + { + name: 'del', + text: '删除', + type: 'danger', + icon: 'el-icon-Delete', + render: 'confirmButton', + popconfirm: { + confirmButtonText: '确认', + cancelButtonText: '取消', + confirmButtonType: 'danger', + title: '确定删除?' + }, + click: row => {} + } + ] } ], beforeSearchFun: () => { tableStore.table.params.beginTime = tableStore.table.params.startTime tableStore.table.params.deptId = tableStore.table.params.deptIndex + }, + loadCallback: () => { + tableStore.table.data.forEach((item: any) => { + item.finishTime = item.finishTime == null ? '0' : '1' + }) } }) onMounted(() => { - // 加载数据 tableStore.index() }) tableStore.table.params.name = '' provide('tableStore', tableStore) -// 导出 -const exportEvent = () => { - let form = JSON.parse(JSON.stringify(tableStore.table.params)) - form.pageNum = 1 - form.pageSize = tableStore.table.total - pageTable(form).then(res => { - tableRef.value.getRef().exportData({ - filename: '合格率报告', // 文件名字 - sheetName: 'Sheet1', - type: 'xlsx', //导出文件类型 xlsx 和 csv - useStyle: true, - data: res.data.records, // 数据源 // 过滤那个字段导出 - columnFilterMethod: function (column: any) { - return !(column.$columnIndex === 0) - } - }) - }) -} diff --git a/src/views/system/auth/menu/popupMenu.vue b/src/views/system/auth/menu/popupMenu.vue index 0d21e358..025b021f 100644 --- a/src/views/system/auth/menu/popupMenu.vue +++ b/src/views/system/auth/menu/popupMenu.vue @@ -8,7 +8,6 @@ clearable :options="tableStore.table.data" :props="cascaderProps" - clearable style="width: 100%" /> diff --git a/vite.config.ts b/vite.config.ts index 02451c1c..d6cc5b54 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -11,6 +11,7 @@ export default defineConfig({ plugins: [vue(), svgBuilder('./src/assets/icons/'), vueJsx()], server: { host: '0.0.0.0', + open: true, proxy: { '/api': { // target: 'http://192.168.1.31:10215', //数据中心