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