diff --git a/ruoyi-ui/src/plugins/package/penal/task/task-components/TagSelect.vue b/ruoyi-ui/src/plugins/package/penal/task/task-components/TagSelect.vue
index e9906b1e..7a54ca50 100644
--- a/ruoyi-ui/src/plugins/package/penal/task/task-components/TagSelect.vue
+++ b/ruoyi-ui/src/plugins/package/penal/task/task-components/TagSelect.vue
@@ -17,7 +17,7 @@ export default {
name: 'TagSelect',
props: {
value: {
- type: [Object, Array]
+ type: [Object, Array, String]
}
},
data () {
diff --git a/ruoyi-ui/src/plugins/package/penal/task/task-components/UserTask.vue b/ruoyi-ui/src/plugins/package/penal/task/task-components/UserTask.vue
index 193946d3..bde1b6cf 100644
--- a/ruoyi-ui/src/plugins/package/penal/task/task-components/UserTask.vue
+++ b/ruoyi-ui/src/plugins/package/penal/task/task-components/UserTask.vue
@@ -8,8 +8,10 @@
- 固定
- 动态
+
+ 固定
+ 动态
+
@@ -73,13 +75,8 @@
-
-
+
+
@@ -212,10 +209,10 @@ export default {
} else if (key === "candidateGroups") {
// TODO 2022/01/28 添加候选组的设值 this.$set(this.userTaskForm, key, value);
} else if (key === "assignee") {
+ this.formData.groupType = 'ASSIGNEE';
let val = this.bpmnElement?.businessObject[key] || this.defaultTaskForm[key];
// 判断是否为动态用户
if (val && val.startsWith('${') && val.endsWith('}')) {
- this.formData.groupType = 'ASSIGNEE';
this.formData.assignType = '2';
this.$set(this.userTaskForm, key, val);
} else {
@@ -265,6 +262,17 @@ export default {
}
);
},
+ selectEnable(row, index) {
+ if (this.formData.groupType === 'ASSIGNEE') {
+ if (this.selectedUserDate.length > 0) {
+ return this.selectedUserDate[0].userId === row.userId;
+ } else {
+ return true;
+ }
+ } else {
+ return true;
+ }
+ },
// 筛选节点
filterNode(value, data) {
if (!value) return true;
@@ -278,6 +286,7 @@ export default {
// 关闭标签
handleClose(tag) {
this.selectedUserDate.splice(this.selectedUserDate.indexOf(tag), 1);
+ this.$refs.multipleTable.toggleRowSelection(tag);
},
// 多选框选中数据
handleSelectionChange(selection) {
@@ -304,9 +313,15 @@ export default {
},
onGroupTypeChange(val) {
this.userTaskForm = {}
+ // 清空已选候选人数据
if (val === 'ASSIGNEE') {
this.formData.assignType = '1'
}
+ this.selectedUserDate = []
+ this.$refs.multipleTable?.clearSelection();
+ },
+ onAssignTypeChange() {
+ this.userTaskForm.assignee = null
},
onSelectAssignee() {
this.getDeptTreeSelect();