From dccd2d7d4abdb2b45c39b3979e0851df7084f02a Mon Sep 17 00:00:00 2001 From: kyle <573984425@qq.com> Date: Wed, 17 Jan 2024 09:40:05 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=96=B0=E5=A2=9E=E6=B5=81=E7=A8=8B?= =?UTF-8?q?=E6=8A=84=E9=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit (cherry picked from commit 2c9393702d0b3c7c308f0ecf932c103bb9483693) --- src/api/bpm/processInstance/index.ts | 30 +++ .../detail/TaskCCDialogForm.vue | 242 ++++++++++++++++++ src/views/bpm/task/cc/index.vue | 134 ++++++++++ src/views/bpm/task/todo/index.vue | 9 + 4 files changed, 415 insertions(+) create mode 100644 src/views/bpm/processInstance/detail/TaskCCDialogForm.vue create mode 100644 src/views/bpm/task/cc/index.vue diff --git a/src/api/bpm/processInstance/index.ts b/src/api/bpm/processInstance/index.ts index d48253c3..463170c6 100644 --- a/src/api/bpm/processInstance/index.ts +++ b/src/api/bpm/processInstance/index.ts @@ -4,6 +4,7 @@ export type Task = { id: string name: string } + export type ProcessInstanceVO = { id: number name: string @@ -19,6 +20,17 @@ export type ProcessInstanceVO = { endTime: string } +export type ProcessInstanceCCVO = { + type: number, + taskName: string, + taskKey: string, + processInstanceName: string, + processInstanceKey: string, + startUserId: string, + options:string [], + reason: string +} + export const getMyProcessInstancePageApi = async (params) => { return await request.get({ url: '/bpm/process-instance/my-page', params }) } @@ -38,3 +50,21 @@ export const cancelProcessInstanceApi = async (id: number, reason: string) => { export const getProcessInstanceApi = async (id: number) => { return await request.get({ url: '/bpm/process-instance/get?id=' + id }) } + +/** + * 抄送 + * @param data 抄送数据 + * @returns 是否抄送成功 + */ +export const createProcessInstanceCC = async (data) => { + return await request.post({ url: '/bpm/process-instance/cc/create', data: data }) +} + +/** + * 抄送列表 + * @param params + * @returns + */ +export const getProcessInstanceCCPage = async (params) => { + return await request.get({ url: '/bpm/process-instance/cc/my-page', params }) +} diff --git a/src/views/bpm/processInstance/detail/TaskCCDialogForm.vue b/src/views/bpm/processInstance/detail/TaskCCDialogForm.vue new file mode 100644 index 00000000..72be3150 --- /dev/null +++ b/src/views/bpm/processInstance/detail/TaskCCDialogForm.vue @@ -0,0 +1,242 @@ + + diff --git a/src/views/bpm/task/cc/index.vue b/src/views/bpm/task/cc/index.vue new file mode 100644 index 00000000..b3852209 --- /dev/null +++ b/src/views/bpm/task/cc/index.vue @@ -0,0 +1,134 @@ + + diff --git a/src/views/bpm/task/todo/index.vue b/src/views/bpm/task/todo/index.vue index d322428d..278ac5d0 100644 --- a/src/views/bpm/task/todo/index.vue +++ b/src/views/bpm/task/todo/index.vue @@ -8,8 +8,10 @@ + @@ -17,6 +19,7 @@ // 业务相关的 import import { allSchemas } from './todo.data' import * as TaskApi from '@/api/bpm/task' +import TaskCCDialogForm from '../../processInstance/detail/TaskCCDialogForm.vue' defineOptions({ name: 'BpmTodoTask' }) @@ -37,4 +40,10 @@ const handleAudit = (row) => { } }) } + +const taskCCDialogForm = ref() +/** 处理抄送按钮 */ +const handleCC = (row) => { + taskCCDialogForm.value.open(row) +}