fix: 修复无需选人时新版审批对话框无法显示审批人的bug
This commit is contained in:
@ -10,7 +10,8 @@
|
|||||||
<span>{{ formState.nextNodeName }}</span>
|
<span>{{ formState.nextNodeName }}</span>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
<a-form-item v-if="_action === 'agree' && !isEnd" label="审批人">
|
<a-form-item v-if="_action === 'agree' && !isEnd" label="审批人">
|
||||||
<a-select v-model:value="formState.assignees" :options="nextAssignees" max-tag-count="responsive" mode="multiple" placeholder="请选择审批人"></a-select>
|
<a-select v-show="chooseAssign" v-model:value="formState.assignees" :options="nextAssignees" max-tag-count="responsive" mode="multiple" placeholder="请选择审批人"></a-select>
|
||||||
|
<span v-show="!chooseAssign">{{ getAssigneeText() }}</span>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
<a-form-item v-if="_action === 'reject'" label="退回至" name="rejectNode">
|
<a-form-item v-if="_action === 'reject'" label="退回至" name="rejectNode">
|
||||||
<a-select v-model:value="rejectNodeId">
|
<a-select v-model:value="rejectNodeId">
|
||||||
@ -38,6 +39,7 @@
|
|||||||
const nextAssignees = ref([]);
|
const nextAssignees = ref([]);
|
||||||
const loading = ref(false);
|
const loading = ref(false);
|
||||||
const isEnd = ref(false);
|
const isEnd = ref(false);
|
||||||
|
const chooseAssign = ref(true);
|
||||||
|
|
||||||
let _action = ref('agree');
|
let _action = ref('agree');
|
||||||
let _processId = '';
|
let _processId = '';
|
||||||
@ -52,6 +54,14 @@
|
|||||||
opinionList: ['同意。', '请领导审批。']
|
opinionList: ['同意。', '请领导审批。']
|
||||||
});
|
});
|
||||||
|
|
||||||
|
function getAssigneeText() {
|
||||||
|
// 注意这里用的是下拉框的数据结构 所以字段是value和label
|
||||||
|
return (nextAssignees.value || [])
|
||||||
|
.filter((item) => formState.assignees.includes(item.value))
|
||||||
|
.map((item) => item.label)
|
||||||
|
.join('、');
|
||||||
|
}
|
||||||
|
|
||||||
function toggleDialog({ isClose, action, callback, processId, taskId, nextNodes } = {}) {
|
function toggleDialog({ isClose, action, callback, processId, taskId, nextNodes } = {}) {
|
||||||
if (isClose) {
|
if (isClose) {
|
||||||
isOpen.value = false;
|
isOpen.value = false;
|
||||||
@ -71,7 +81,7 @@
|
|||||||
const nNode = nextNodes[0];
|
const nNode = nextNodes[0];
|
||||||
formState.nextNodeName = nNode.activityName;
|
formState.nextNodeName = nNode.activityName;
|
||||||
isEnd.value = nNode.isEnd;
|
isEnd.value = nNode.isEnd;
|
||||||
if (nNode.chooseAssign) {
|
if (nNode.userList?.length) {
|
||||||
const selected = [];
|
const selected = [];
|
||||||
nextAssignees.value = nNode.userList.map((item) => {
|
nextAssignees.value = nNode.userList.map((item) => {
|
||||||
if (item.checked || nNode.userList.length === 1) {
|
if (item.checked || nNode.userList.length === 1) {
|
||||||
@ -84,7 +94,12 @@
|
|||||||
};
|
};
|
||||||
});
|
});
|
||||||
formState.assignees = selected;
|
formState.assignees = selected;
|
||||||
|
if (!nNode.chooseAssign) {
|
||||||
|
// 不需要选审批人的时候 所有备选人都要放到下个节点
|
||||||
|
formState.assignees = nNode.userList.map((item) => item['F_UserId']);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
chooseAssign.value = nNode.chooseAssign;
|
||||||
}
|
}
|
||||||
if (action === 'reject') {
|
if (action === 'reject') {
|
||||||
loadRejectNodeList();
|
loadRejectNodeList();
|
||||||
|
|||||||
Reference in New Issue
Block a user