From 8532f91312ab5813ef36a51f01646c205cd3a86d Mon Sep 17 00:00:00 2001
From: gssong <1742057357@qq.com>
Date: Sat, 2 Mar 2024 22:55:59 +0800
Subject: [PATCH] =?UTF-8?q?add=20=E6=B7=BB=E5=8A=A0=E6=8A=84=E9=80=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/components/Process/submitVerify.vue | 52 ++++++++++++++++++++++++-
1 file changed, 50 insertions(+), 2 deletions(-)
diff --git a/src/components/Process/submitVerify.vue b/src/components/Process/submitVerify.vue
index 404e2ad..b52854f 100644
--- a/src/components/Process/submitVerify.vue
+++ b/src/components/Process/submitVerify.vue
@@ -11,7 +11,13 @@
-
+
+
+
+ {{ user.userName }}
+
+
+
@@ -22,6 +28,7 @@
退回
+
@@ -30,7 +37,10 @@ import { ref } from 'vue';
import { ComponentInternalInstance } from 'vue';
import { ElForm } from 'element-plus';
import { completeTask, backProcess, getBusinessStatus } from '@/api/workflow/task';
+import UserSelect from '@/components/UserSelect';
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
+import { UserVO } from '@/api/system/user/types';
+const userSelectCopyRef = ref>();
const props = defineProps({
taskVariables: {
@@ -46,6 +56,11 @@ const buttonLoading = ref(true);
const businessStatus = ref('');
//任务id
const taskId = ref('');
+//抄送人
+const selectCopyUserList = ref([]);
+//抄送人id
+const selectCopyUserIds = ref('');
+
const dialog = reactive({
visible: false,
@@ -56,10 +71,13 @@ const form = ref>({
taskId: undefined,
message: undefined,
variables: {},
- messageType: ['1']
+ messageType: ['1'],
+ wfCopyList: []
});
//打开弹窗
const openDialog = (id?: string) => {
+ selectCopyUserIds.value = ''
+ selectCopyUserList.value = []
form.value.fileId = undefined
taskId.value = id;
form.value.message = undefined;
@@ -82,6 +100,17 @@ const emits = defineEmits(['submitCallback', 'cancelCallback']);
const handleCompleteTask = async () => {
form.value.taskId = taskId.value;
form.value.taskVariables = props.taskVariables;
+ if(selectCopyUserList && selectCopyUserList.value.length > 0){
+ let wfCopyList = []
+ selectCopyUserList.value.forEach( e=> {
+ let copyUser = {
+ userId: e.userId,
+ userName: e.nickName
+ }
+ wfCopyList.push(copyUser)
+ })
+ form.value.wfCopyList = wfCopyList
+ }
await proxy?.$modal.confirm('是否确认提交?');
loading.value = true;
buttonLoading.value = true;
@@ -108,6 +137,25 @@ const cancel = async () => {
buttonLoading.value = false;
emits('cancelCallback');
};
+//打开抄送人员
+const openUserSelectCopy = () => {
+ userSelectCopyRef.value.open();
+};
+//确认抄送人员
+const userSelectCopyCallBack = (data: UserVO[]) => {
+ if(data && data.length > 0){
+ selectCopyUserList.value = data
+ selectCopyUserIds.value = selectCopyUserList.value.map((item) => item.userId).join(',');
+ }
+}
+//删除抄送人员
+const handleCopyCloseTag = (user: UserVO) => {
+ const userId = user.userId;
+ // 使用split删除用户
+ const index = selectCopyUserList.value.findIndex((item) => item.userId === userId);
+ selectCopyUserList.value.splice(index, 1);
+ selectCopyUserIds.value = selectCopyUserList.value.map((item) => item.userId).join(',');
+};
/**
* 对外暴露子组件方法
*/