|
@@ -182,45 +182,67 @@
|
|
<el-container class="project-form">
|
|
<el-container class="project-form">
|
|
<el-main class="project-form-main">
|
|
<el-main class="project-form-main">
|
|
|
|
|
|
- <el-form label-width="110px" label-position="left">
|
|
|
|
|
|
+ <el-form label-width="98px" label-position="left">
|
|
<el-form-item label="角色名称">
|
|
<el-form-item label="角色名称">
|
|
<el-input v-model="distributionParam.roleName" placeholder="请输入专题库名称" :disabled="true"></el-input>
|
|
<el-input v-model="distributionParam.roleName" placeholder="请输入专题库名称" :disabled="true"></el-input>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
- <el-form-item label="人员名称">
|
|
|
|
- <el-input placeholder="请输入人员名称" style="width: 50%"></el-input>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="租户">
|
|
|
|
- <el-select v-model="queryParams.tenant" @change="getList2" clearable placeholder="根据租户查询">
|
|
|
|
- <el-option
|
|
|
|
- v-for="item in tenantList"
|
|
|
|
- :key="item.id"
|
|
|
|
- :label="item.name"
|
|
|
|
- :value="item.id">
|
|
|
|
- </el-option>
|
|
|
|
- </el-select>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="部门">
|
|
|
|
- <el-cascader
|
|
|
|
- placeholder="请选择部门"
|
|
|
|
- >
|
|
|
|
- </el-cascader>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="职位">
|
|
|
|
- <el-select
|
|
|
|
- filterable
|
|
|
|
- placeholder="请选择职位"
|
|
|
|
- >
|
|
|
|
- <el-option
|
|
|
|
- v-for="item in positionList"
|
|
|
|
- :key="item.name"
|
|
|
|
- :label="item.position"
|
|
|
|
- :value="item.id"
|
|
|
|
- ></el-option>
|
|
|
|
- </el-select>
|
|
|
|
- </el-form-item>
|
|
|
|
|
|
+
|
|
|
|
+ <el-row>
|
|
|
|
+ <el-col :span="12">
|
|
|
|
+ <el-form-item label="人员名称">
|
|
|
|
+ <el-input placeholder="请输入人员名称" v-model="personnel.name" @change="getPerList" style="width: 217.5px"></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="12">
|
|
|
|
+ <el-form-item label="租户名称" style="margin-left: 16.2%">
|
|
|
|
+ <el-select v-model="personnel.tenant" @change="getPerList" clearable placeholder="根据租户查询">
|
|
|
|
+ <el-option
|
|
|
|
+ v-for="item in tenantList"
|
|
|
|
+ :key="item.id"
|
|
|
|
+ :label="item.name"
|
|
|
|
+ :value="item.id">
|
|
|
|
+ </el-option>
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ </el-row>
|
|
|
|
+ <el-row>
|
|
|
|
+ <el-col :span="12">
|
|
|
|
+ <el-form-item label="部门名称">
|
|
|
|
+ <el-cascader
|
|
|
|
+ placeholder="请选择部门"
|
|
|
|
+ :options="department"
|
|
|
|
+ v-model="name"
|
|
|
|
+ :props="{value:'id',label:'name',multiple:true,checkStrictly: true}"
|
|
|
|
+ @change="getPerList()"
|
|
|
|
+ >
|
|
|
|
+ </el-cascader>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="12">
|
|
|
|
+ <el-form-item label="职位名称" style="margin-left: 16.2%">
|
|
|
|
+ <el-select
|
|
|
|
+ filterable
|
|
|
|
+ multiple
|
|
|
|
+ v-model="personnel.positionIds"
|
|
|
|
+ placeholder="请选择职位"
|
|
|
|
+ @change="getPerList()"
|
|
|
|
+ >
|
|
|
|
+ <el-option
|
|
|
|
+ v-for="item in positionList"
|
|
|
|
+ :key="item.name"
|
|
|
|
+ :label="item.position"
|
|
|
|
+ :value="item.id"
|
|
|
|
+ ></el-option>
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ </el-row>
|
|
|
|
+
|
|
|
|
+
|
|
</el-form>
|
|
</el-form>
|
|
|
|
|
|
- <el-table v-loading="loading" :data="personnelTableData" @selection-change="handleSelectionChange">
|
|
|
|
|
|
+ <el-table v-loading="load" :data="personnelTableData" @selection-change="handleSelectionChange">
|
|
<el-table-column type="selection" width="55">
|
|
<el-table-column type="selection" width="55">
|
|
</el-table-column>
|
|
</el-table-column>
|
|
<el-table-column label="人员名称" prop="name" align="center" show-overflow-tooltip>
|
|
<el-table-column label="人员名称" prop="name" align="center" show-overflow-tooltip>
|
|
@@ -241,7 +263,7 @@
|
|
<el-table-column label="备注" prop="remark" align="center" show-overflow-tooltip></el-table-column>
|
|
<el-table-column label="备注" prop="remark" align="center" show-overflow-tooltip></el-table-column>
|
|
</el-table>
|
|
</el-table>
|
|
<div class="pagination">
|
|
<div class="pagination">
|
|
- <el-pagination :current-page.sync="queryParams.current" :page-size="queryParams.size" :total="total"
|
|
|
|
|
|
+ <el-pagination :current-page.sync="personnel.current" :page-size="personnel.size" :total="personnelTotal"
|
|
@current-change="getPerList" layout="total, prev, pager, next, jumper"
|
|
@current-change="getPerList" layout="total, prev, pager, next, jumper"
|
|
background></el-pagination>
|
|
background></el-pagination>
|
|
</div>
|
|
</div>
|
|
@@ -285,9 +307,11 @@ export default {
|
|
checked: true,
|
|
checked: true,
|
|
visible: false,
|
|
visible: false,
|
|
loading: false,
|
|
loading: false,
|
|
|
|
+ load: false,
|
|
btnLoading: false,
|
|
btnLoading: false,
|
|
permissVisible: false,
|
|
permissVisible: false,
|
|
total: 0,
|
|
total: 0,
|
|
|
|
+ personnelTotal: 0,
|
|
tableData: [],
|
|
tableData: [],
|
|
tenantList: [],
|
|
tenantList: [],
|
|
title: '',
|
|
title: '',
|
|
@@ -298,11 +322,22 @@ export default {
|
|
multipleSelection: [],
|
|
multipleSelection: [],
|
|
expands: [],
|
|
expands: [],
|
|
disabled: false,
|
|
disabled: false,
|
|
|
|
+ department: [],
|
|
|
|
+ name: [],
|
|
|
|
+ positionList: [],
|
|
|
|
+ position:{
|
|
|
|
+ positionIds: [],
|
|
|
|
+ },
|
|
queryParams: {
|
|
queryParams: {
|
|
size: 10,
|
|
size: 10,
|
|
current: 1,
|
|
current: 1,
|
|
name: ''
|
|
name: ''
|
|
},
|
|
},
|
|
|
|
+ personnel: {
|
|
|
|
+ size: 10,
|
|
|
|
+ current: 1,
|
|
|
|
+ name: '',
|
|
|
|
+ },
|
|
ruleForm: {
|
|
ruleForm: {
|
|
function: []
|
|
function: []
|
|
},
|
|
},
|
|
@@ -333,6 +368,20 @@ export default {
|
|
// }
|
|
// }
|
|
// },
|
|
// },
|
|
methods: {
|
|
methods: {
|
|
|
|
+ // getCheckedNodes()
|
|
|
|
+
|
|
|
|
+ a() {
|
|
|
|
+ console.log(this.personnel.position)
|
|
|
|
+
|
|
|
|
+ },
|
|
|
|
+ b() {
|
|
|
|
+ console.log(this.name)
|
|
|
|
+ this.personnel.departmentIds=[]
|
|
|
|
+ this.name.forEach(item => {
|
|
|
|
+ this.personnel.departmentIds.push(item[item.length-1])
|
|
|
|
+ })
|
|
|
|
+ // console.log(this.personnel)
|
|
|
|
+ },
|
|
getPremissData(id, name, data) {
|
|
getPremissData(id, name, data) {
|
|
// console.log(id, name, data)
|
|
// console.log(id, name, data)
|
|
this.pdata = {
|
|
this.pdata = {
|
|
@@ -528,6 +577,18 @@ export default {
|
|
this.loading = false
|
|
this.loading = false
|
|
})
|
|
})
|
|
},
|
|
},
|
|
|
|
+ getclient() {
|
|
|
|
+ this.$api.getAllDepartmentList().then(response => {
|
|
|
|
+ this.department = response.data
|
|
|
|
+ console.log(this.department)
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+ getPositionList() {
|
|
|
|
+ this.$api.getAllPositionList().then(response => {
|
|
|
|
+ this.positionList = response.data
|
|
|
|
+ console.log(this.positionList)
|
|
|
|
+ })
|
|
|
|
+ },
|
|
submit() {
|
|
submit() {
|
|
this.$refs.ruleForm.validate((valid) => {
|
|
this.$refs.ruleForm.validate((valid) => {
|
|
if (valid) {
|
|
if (valid) {
|
|
@@ -577,22 +638,45 @@ export default {
|
|
})
|
|
})
|
|
},
|
|
},
|
|
getPerList() {
|
|
getPerList() {
|
|
- this.loading = true
|
|
|
|
- this.$api.getPersonnelList(this.queryParams).then(response => {
|
|
|
|
|
|
+ this.load = true
|
|
|
|
+ this.personnel.departmentIds=[]
|
|
|
|
+ this.name.forEach(item => {
|
|
|
|
+ this.personnel.departmentIds.push(item[item.length-1])
|
|
|
|
+ })
|
|
|
|
+ this.$api.getPersonnelList(this.personnel).then(response => {
|
|
this.personnelTableData = response.data
|
|
this.personnelTableData = response.data
|
|
- this.total = response.pageColumn.total
|
|
|
|
- this.loading = false
|
|
|
|
|
|
+ console.log(response)
|
|
|
|
+ this.personnelTotal = response.pageColumn.total
|
|
|
|
+ this.load = false
|
|
}).catch(error => {
|
|
}).catch(error => {
|
|
- this.loading = false
|
|
|
|
|
|
+ this.load = false
|
|
})
|
|
})
|
|
},
|
|
},
|
|
|
|
+ // getPerListCheck() {
|
|
|
|
+ // this.load = true
|
|
|
|
+ // // this.personnel.positionIds = []
|
|
|
|
+ // // console.log(this.position.positionIds)
|
|
|
|
+ // // this.position.positionIds.forEach(item => {
|
|
|
|
+ // // // console.log(item)
|
|
|
|
+ // // this.personnel.positionIds .push(item)
|
|
|
|
+ // // })
|
|
|
|
+ // this.$api.getPersonnelList(this.personnel).then(response => {
|
|
|
|
+ // this.personnelTableData = response.data
|
|
|
|
+ // this.personnelTotal = response.pageColumn.total
|
|
|
|
+ // this.load = false
|
|
|
|
+ // }).catch(error => {
|
|
|
|
+ // this.load = false
|
|
|
|
+ // })
|
|
|
|
+ // },
|
|
distributionPersonnel(row) {
|
|
distributionPersonnel(row) {
|
|
this.drawer = true
|
|
this.drawer = true
|
|
this.distributionParam.roleName = row.name
|
|
this.distributionParam.roleName = row.name
|
|
this.distributionParam.description = row.remark
|
|
this.distributionParam.description = row.remark
|
|
this.distributionParam.id = row.id
|
|
this.distributionParam.id = row.id
|
|
- console.log(this.distributionParam)
|
|
|
|
|
|
+ // console.log(this.distributionParam)
|
|
this.getPerList()
|
|
this.getPerList()
|
|
|
|
+ this.getclient()
|
|
|
|
+ this.getPositionList()
|
|
},
|
|
},
|
|
closeDrawer() {
|
|
closeDrawer() {
|
|
this.drawer = false
|
|
this.drawer = false
|