From c251626c67a55dfa8305fd49a47a0a2aa00fc32f Mon Sep 17 00:00:00 2001 From: lyfO_o <764716047@qq.com> Date: 星期四, 24 三月 2022 16:15:02 +0800 Subject: [PATCH] 隐患管理:v1 --- src/views/hiddenDanger/personSelect/personSelect.vue | 166 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 166 insertions(+), 0 deletions(-) diff --git a/src/views/hiddenDanger/personSelect/personSelect.vue b/src/views/hiddenDanger/personSelect/personSelect.vue new file mode 100644 index 0000000..a77f966 --- /dev/null +++ b/src/views/hiddenDanger/personSelect/personSelect.vue @@ -0,0 +1,166 @@ +<template> + <el-dialog + :visible.sync="dialogVisible" + append-to-body + :close-on-click-modal="false" + width="75%" + > + <div class="app-container"> + <div class="filter-container"> + <div style="display: block;padding-top: 10px;padding-bottom: 10px"> + <div class="basic_search" > + <el-select v-model="filter.filter.department" + filterable + clearable + @change="getPersonList" + placeholder="请选择"> + <el-option + v-for="item in options" + :key="item.value" + :label="item.label" + :value="item.value"> + </el-option> + </el-select> + </div> + <el-button type="primary" icon="el-icon-search" @click="queryHandle" style="margin-left: 20px"/> + </div> + </div> + <div class="table_content"> + <el-table + v-loading="listLoading" + :key="tableKey" + :data="tableData" + border + fit + highlight-current-row + style="width: 100%;" + > + <el-table-column label="序号" type="index" align="center" width="60"/> + <el-table-column label="所属部门" align="center"> + <template slot-scope="scope"> + <span>{{ scope.row.department}}</span> + </template> + </el-table-column> + + <el-table-column label="姓名" align="center"> + <template slot-scope="scope"> + <span>{{ scope.row.realname }}</span> + </template> + </el-table-column> + + <el-table-column label="操作" align="center" width="180" class-name="small-padding fixed-width"> + <template slot-scope="scope"> + <el-button type="text" @click="selectOne(scope.row)">选择</el-button> + </template> + </el-table-column> + </el-table> + <br> + <el-pagination + v-show="recordTotal>0" + :current-page="filter.pageIndex" + :page-sizes="[10, 20, 30, 50]" + :page-size="filter.pageSize" + :total="recordTotal" + layout="total, sizes, prev, pager, next, jumper" + background + style="float:right;" + @size-change="handleSizeChange" + @current-change="handleCurrentChange" + /> + </div> + </div> + </el-dialog> +</template> + +<script> + import { geDepartmentUserPage ,getAllDepartment} from '@/api/departmentManage'; + export default { + name: "taskSelect", + data(){ + return{ + tableKey:0, + listLoading:false, + recordTotal: 0, + options:[], + filter: { + pageIndex:1, + pageSize:10, + filter: { + department: '' + }, + }, + dialogVisible:false, + tableData:[], + } + }, + created(){ + + }, + methods:{ + queryHandle(){ + this.filter.pageIndex = 1 + this.getPersonList() + }, + handleSizeChange(val) { + this.filter.pageSize = val + this.filter.pageIndex = 1 + this.getTaskData() + }, + handleCurrentChange(val) { + this.filter.pageIndex = val + this.getPersonList() + }, + show(){ + this.dialogVisible = true + this.getDepartmentList() + }, + selectOne(value){ + this.$emit('setPerson',value) + this.dialogVisible = false + }, + async getDepartmentList(){ + let res = await getAllDepartment() + if(res.data.code === '200'){ + this.options = res.data.result.map(item=>{return {value:item.department,label:item.department}}) + }else{ + this.$message({ + message:res.data.message, + type:'warning' + }) + } + }, + async getPersonList(){ + this.listLoading = true + geDepartmentUserPage(this.filter) + .then(res => { + if (res.data.code === '200') { + this.tableData = res.data.result.records + this.recordTotal = res.data.result.total + }else{ + this.$message({ + message:res.data.message, + type:'warning' + }) + } + }) + .catch(err=>{ + console.log(err) + this.$message({ + message:'接口错误', + type:'warning' + }) + }) + .finally(()=>{ + this.listLoading = false + }) + } + + } + } +</script> + +<style scoped> + .basic_search{ + display:inline-block; + } +</style> -- Gitblit v1.9.2