[update] 企标流程标准化节点只能从流程与标准化部门里选人

This commit is contained in:
lideqin
2024-07-01 18:26:11 +08:00
parent 2cfe5b0bda
commit 3bdd48b83e
11 changed files with 80 additions and 20 deletions
+9
View File
@@ -45,6 +45,7 @@
input-type="textarea" />
<user-selection v-else-if="step.chooseSource === 'user'"
:type="step.chooseType"
:isOnlySelectFromOneDept="onlySelectFromFlowStation.includes(step.xmlNodeId)"
v-model="step.linkUserIds"
:name-str="step.linkUserIds_dictText"
:filedName="step.variableName"
@@ -102,6 +103,14 @@ export default {
default: () => {
return []
}
},
// 只能在标准与流程所里选人的节点
onlySelectFromFlowStation: {
type: Array,
required: false,
default: () => {
return []
}
}
},
data () {
+42 -1
View File
@@ -22,6 +22,7 @@
:getPopupContainer="triggerNode=> triggerNode.parentNode"
style="width: 100%"
:tree-data="categoryTreeList"
:disabled="isOnlySelectFromOneDept"
:placeholder="$t('pleaseSelect')"
/>
</a-form-item>
@@ -110,6 +111,19 @@ export default {
type: Boolean,
required: false,
default: true
},
// 固定只能从某个部门选人,与isOnlySelectFromSomeDept一起用
fixDepart: {
type: String,
required: false,
// 默认标准与流程所
default: '流程与标准化'
},
// 是否固定只能从某个部门选人
isOnlySelectFromOneDept: {
type: Boolean,
required: false,
default: false
}
},
watch: {
@@ -229,7 +243,8 @@ export default {
isClickedSearch: false, // 改完搜索条件是否点击过搜索
oldQueryParam: {}, // 上一次的搜索条件,用于从一个搜索条件改成另一个搜索条件,但是没有点搜索,这时候全选时传旧的搜索条件
oldTotal: 0,
currentQueryAllData: [] // 当前查询条件下的所有数据
currentQueryAllData: [], // 当前查询条件下的所有数据
fixDepartId: ''
}
},
methods: {
@@ -248,11 +263,33 @@ export default {
queryDepartTreeList().then((res) => {
if (res.success) {
this.categoryTreeList = res.result
// 固定只能从某个部门选人,查找该部门id
if (this.isOnlySelectFromOneDept) {
const targetNode = this.findNodeInTreeList(this.categoryTreeList, this.fixDepart)
this.fixDepartId = targetNode.id
this.queryParam.departId = targetNode.id
}
} else {
this.categoryTreeList = []
}
})
},
findNodeInTreeList (treeData, name) {
let node = {}
for (const item of treeData) {
if (item.departName === name) {
node = item
break
}
if (item.children && item.children.length > 0) {
node = this.findNodeInTreeList(item.children, name)
if (node && node.id) {
break
}
}
}
return node && node.id ? node : {}
},
// 初始化角色字典
initRoleList () {
queryall().then((res) => {
@@ -325,6 +362,9 @@ export default {
},
searchReset () {
this.queryParam = {}
if (this.isOnlySelectFromOneDept) {
this.queryParam.departId = this.fixDepartId
}
this.loadData(1)
},
searchQuery () {
@@ -453,6 +493,7 @@ export default {
showSizeChanger: true,
total: 0
}
this.dataSource = []
}
}
}