项目人员类型调整

This commit is contained in:
Yjhon 2022-02-26 09:00:09 +08:00
parent 4231cb3fd5
commit 17cf782ec0
1 changed files with 50 additions and 41 deletions

View File

@ -10,13 +10,7 @@
<a-col :span="4" id="tree">
<a-page-header title="单位列表" sub-title="" />
<div v-if="this.orgTree != ''">
<a-tree
:treeData="orgTree"
v-if="orgTree.length"
@select="onSelect"
:defaultExpandAll="false"
:expandedKeys="expandedKeys"
:replaceFields="replaceFields">
<a-tree :treeData="orgTree" v-if="orgTree.length" @select="onSelect" :defaultExpandAll="false" :expandedKeys="expandedKeys" :replaceFields="replaceFields">
<a-icon slot="switcherIcon" type="down" />
</a-tree>
</div>
@ -30,15 +24,12 @@
<a-input v-model="queryParam.name" placeholder="请输入姓名" />
</a-form-item>
<a-form-item label="人员类型">
<a-select default-value="0" style="width: 120px">
<a-select-option value="0"> - - </a-select-option>
<a-select-option value="1"> </a-select-option>
<a-select-option value="2"> </a-select-option>
<a-select-option value="3"> </a-select-option>
<a-select style="width: 150px;" v-model="queryParam.type" placeholder="--请选择--">
<a-select-option v-for="item in personType" :key="item.value"> {{ item.name }} </a-select-option>
</a-select>
</a-form-item>
<a-button type="primary" @click="$refs.table.refresh(true)">查询</a-button>
<a-button style="margin-left: 8px" @click="() => (queryParam = {})">重置</a-button>
<a-button style="margin-left: 8px" @click="() => (queryParam.type = '',queryParam.name = null)">重置</a-button>
</a-row>
</a-form>
<s-table ref="table" :columns="columns" :data="loadData" :rowKey="(record) => record.id" :rowSelection="{ selectedRowKeys: selectedRowKeys, selectedRows: selectedRows, onChange: onSelectChange }">
@ -71,6 +62,7 @@ import { orgList } from '@/api/org/org'
import { listToTree } from '@/utils/util'
import { personPage } from '@/api/person/person'
import { STable } from '@/components'
import { dictionaryDropDown } from '@/api/sys/dictionaryItem'
const rootParentId = 0
export default {
@ -84,16 +76,16 @@ export default {
type: Object
}
},
data () {
data() {
//
return {
form: this.projectForm,
//
queryParam: { orgType: 1 },
queryParam: { orgType: 1,personType: null,orgId:''},
replaceFields: { children: 'children', title: 'name', key: 'id', value: 'id' },
expandedKeys: [],
personType: [],
autoExpandParent: true,
expandedKeys: [],
selectedRowKeys: [],
selectedRows: this.projectForm.projectPersonLists || [],
orgTree: [],
@ -114,7 +106,7 @@ export default {
},
// data
computed: {
hasSelected () {
hasSelected() {
return this.selectedRowKeys.length > 0
}
},
@ -123,7 +115,7 @@ export default {
//
methods: {
//
toNext () {
toNext() {
this.form.projectPersonLists = this.selectedRows
this.form.personIds = this.selectedRowKeys
if (this.form.personIds.length > 0) {
@ -133,14 +125,14 @@ export default {
}
},
//
toPrev () {
toPrev() {
this.form.projectPersonLists = this.selectedRows
this.form.personIds = this.selectedRowKeys
this.$emit('prevStep', this.form)
},
/** 表格行选中后触发 */
onSelectChange (selectedRowKeys, selectedRows) {
onSelectChange(selectedRowKeys, selectedRows) {
console.log('selectedRowKeys changed: ', selectedRowKeys)
console.log('选择的表格数据 : ', selectedRows)
this.selectedRowKeys = this.uniqueKeys([...this.selectedRowKeys, ...selectedRowKeys])
@ -148,19 +140,19 @@ export default {
},
//
unique (arr) {
unique(arr) {
const res = new Map()
return arr.filter((arr) => !res.has(arr.id) && res.set(arr.id, 1))
},
// key
uniqueKeys (arr) {
uniqueKeys(arr) {
const res = new Map()
return arr.filter((arr) => !res.has(arr) && res.set(arr, 1))
},
//
changeList (item) {
changeList(item) {
console.log('列表点击删除列表项 : ', item)
this.selectedRows = this.selectedRows.filter(function (i) {
return i.id != item.item.id
@ -171,13 +163,13 @@ export default {
},
//
removeAllSelece () {
removeAllSelece() {
this.selectedRowKeys = []
this.selectedRows = []
},
//
onSelect (selectedKey, info) {
onSelect(selectedKey, info) {
console.log('selected', selectedKey, info)
this.queryParam.orgId = selectedKey.toString()
this.orgId = selectedKey.toString()
@ -185,13 +177,13 @@ export default {
},
// 使
onExpand (expandedKeys) {
onExpand(expandedKeys) {
this.expandedKeys = expandedKeys
this.autoExpandParent = false
},
//
initPersonList () {
initPersonList() {
if (this.form.projectPersonLists) {
this.selectedRowKeys = [],
this.form.projectPersonLists.forEach(element => {
@ -200,11 +192,27 @@ export default {
console.log('初始化的值', this.selectedRowKeys)
}
},
//
fetchTemplateData() {
let formData = { dictionaryCode: '0005' }
dictionaryDropDown(formData).then(res => {
console.log(res)
if (res.code == 200) {
const result = res.data
result.forEach(r => {
this.personType.push({
value: r.value,
name: r.name
})
})
}
})
},
/**
* 获取到机构树展开顶级下树节点考虑到后期数据量变大不建议全部展开
*/
async getOrgTree () {
async getOrgTree() {
await orgList({ orgType: this.orgType }).then((res) => {
this.treeLoading = false
if (!res.code === 200 || !res.data.length) {
@ -212,7 +220,7 @@ export default {
}
this.expandedKeys = []
this.orgTree = listToTree(res.data, [], rootParentId)
this.orgId = this.orgTree[0].id
this.queryParam.orgId = this.orgTree[0].id
//
this.orgTree.forEach(item => {
this.expandedKeys.push(item.id)
@ -221,26 +229,27 @@ export default {
}
},
// - 访this
created () {
created() {
this.getOrgTree()
this.initPersonList()
this.fetchTemplateData()
},
// - 访DOM
mounted () { },
mounted() { },
// -
beforeCreate () { },
beforeCreate() { },
// -
beforeMount () { },
beforeMount() { },
// -
beforeUpdate () { },
beforeUpdate() { },
// -
updated () { },
updated() { },
// -
beforeDestroy () { },
beforeDestroy() { },
// -
destroyed () { },
destroyed() { },
// keep-alive
activated () { }
activated() { }
}
</script>
<style scoped>