[update] 处理流程中人员信息
This commit is contained in:
@@ -10,28 +10,28 @@
|
||||
</div>
|
||||
</template>
|
||||
<!-- 流程节点标题-->
|
||||
<template #title>
|
||||
<a-tooltip>
|
||||
<template #title>{{ step.nodeName }}</template>
|
||||
<div class="step-title">{{ step.nodeName }}</div>
|
||||
</a-tooltip>
|
||||
</template>
|
||||
<!--<template #title>-->
|
||||
<!-- <a-tooltip>-->
|
||||
<!-- <template #title>{{ step.nodeName }}</template>-->
|
||||
<!-- <div class="step-title">{{ step.nodeName }}</div>-->
|
||||
<!-- </a-tooltip>-->
|
||||
<!--</template>-->
|
||||
<!-- 流程节点选人内容-->
|
||||
<template #description>
|
||||
<div class="personnel-container">
|
||||
<div class="personnel-container-title" :class="{'personnel-container-select-title': index === 0}">
|
||||
<a-tooltip>
|
||||
<template #title>{{ step.nodeRoleName }}</template>
|
||||
<div class="personnel-container-title-text">{{ step.nodeRoleName }}</div>
|
||||
<template #title>{{ step.nodeName }}</template>
|
||||
<div class="personnel-container-title-text">{{ step.nodeName }}</div>
|
||||
</a-tooltip>
|
||||
</div>
|
||||
<div class="personnel-container-content">
|
||||
<div class="personnel-container-content-text">
|
||||
<template v-if="step.canChoose && index >= currentNodeIndex">
|
||||
<!-- TODO 数据库设计确定后处理数据抛出格式-->
|
||||
<user-select-by-work-group v-if="step.chooseSource === 'workGroup'" v-model="step.user" :type="step.chooseType" :name-str="step.user_dictText" input-type="textarea"/>
|
||||
<user-select-by-contact v-else-if="step.chooseSource === 'contactManage'" v-model="step.user" :type="step.chooseType" :name-str="step.user_dictText" input-type="textarea"/>
|
||||
<user-selection v-else-if="!['contactManage', 'workGroup'].includes(step.chooseSource)" :type="step.chooseType" v-model="step.user" :name-str="step.user_dictText" input-type="textarea" />
|
||||
<user-select-by-work-group v-if="step.chooseSource === 'workGroup'" v-model="step.linkUserIds" :type="step.chooseType" :name-str="step.linkUserIds_dictText" input-type="textarea"/>
|
||||
<user-select-by-contact v-else-if="step.chooseSource === 'contactManage'" v-model="step.linkUserIds" :type="step.chooseType" :name-str="step.linkUserIds_dictText" input-type="textarea"/>
|
||||
<user-selection v-else-if="step.chooseSource === 'user'" :type="step.chooseType" v-model="step.linkUserIds" :name-str="step.linkUserIds_dictText" input-type="textarea" />
|
||||
</template>
|
||||
<div class="personnel-container-content-echo-text" v-else>{{ step.userList }}</div>
|
||||
</div>
|
||||
@@ -88,6 +88,34 @@ export default {
|
||||
deep: true,
|
||||
immediate: true
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
// 获取人员对象,无校验
|
||||
getDataObj () {
|
||||
const personnelObj = {}
|
||||
for (const item of this.stepsData) {
|
||||
// 该属性还没有人就给他赋值
|
||||
if ((item.canChoose || item.sort === 1) && !personnelObj[item.variableName]) {
|
||||
personnelObj[item.variableName] = item.linkUserIds
|
||||
}
|
||||
}
|
||||
return personnelObj
|
||||
},
|
||||
// 有校验的获取人员对象
|
||||
getDataObjVerify () {
|
||||
let personnelObj = {}
|
||||
for (const item of this.stepsData) {
|
||||
// 该属性还没有人就给他赋值
|
||||
if ((item.canChoose || item.sort === 1) && !personnelObj[item.variableName]) {
|
||||
personnelObj[item.variableName] = item.linkUserIds
|
||||
}
|
||||
}
|
||||
if (!Object.values(personnelObj).every(v => !!v)) {
|
||||
this.$message.warning(this.$t('pleaseEnterPersonnelInfo'))
|
||||
personnelObj = false
|
||||
}
|
||||
return personnelObj
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@@ -106,7 +134,8 @@ export default {
|
||||
}
|
||||
|
||||
/deep/ .ant-steps-item-content {
|
||||
padding: 0 12px;
|
||||
padding: 0 12px 30px 12px;
|
||||
|
||||
}
|
||||
|
||||
.step-title {
|
||||
|
||||
Reference in New Issue
Block a user