From 3011b9800d6c5bee031d87bc4e225b5b1fb52571 Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期六, 23 十一月 2024 09:19:21 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/2.0.1' into 2.0.1

---
 company/src/views/business/userManagement.vue |  141 +++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 141 insertions(+), 0 deletions(-)

diff --git a/company/src/views/business/userManagement.vue b/company/src/views/business/userManagement.vue
new file mode 100644
index 0000000..f0d98fb
--- /dev/null
+++ b/company/src/views/business/userManagement.vue
@@ -0,0 +1,141 @@
+<template>
+    <TableLayout :permissions="['system:user:query']">
+        <!-- 鎼滅储琛ㄥ崟 -->
+        <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="80px" inline>
+            <el-form-item label="璐﹀彿" prop="username">
+                <el-input v-model="searchForm.username" v-trim placeholder="璇疯緭鍏�" @keypress.enter.native="search"/>
+            </el-form-item>
+            <el-form-item label="濮撳悕" prop="realname">
+                <el-input v-model="searchForm.realname" v-trim placeholder="璇疯緭鍏�" @keypress.enter.native="search"/>
+            </el-form-item>
+            <el-form-item label="鑱旂郴鏂瑰紡" prop="mobile">
+                <el-input v-model="searchForm.mobile" v-trim placeholder="璇疯緭鍏�" @keypress.enter.native="search"/>
+            </el-form-item>
+            <el-form-item label="浼佷笟鍚嶇О" prop="companyName">
+                <el-input v-model="searchForm.companyName" v-trim placeholder="璇疯緭鍏�" @keypress.enter.native="search"/>
+            </el-form-item>
+            <section>
+                <el-button type="primary" icon="el-icon-search" @click="search">鎼滅储</el-button>
+                <el-button @click="reset">閲嶇疆</el-button>
+            </section>
+        </el-form>
+        <!-- 琛ㄦ牸鍜屽垎椤� -->
+        <template v-slot:table-wrap>
+            <el-table
+                v-loading="isWorking.search"
+                :data="tableData.list"
+                :default-sort = "{prop: 'createTime', order: 'descending'}"
+                stripe
+                @sort-change="handleSortChange"
+            >
+                <el-table-column label="搴忓彿" width="80px">
+                    <template slot-scope="scope">
+                        <span>{{scope.$index + 1}}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column prop="username" label="璐﹀彿" min-width="120px"></el-table-column>
+                <el-table-column prop="realname" label="濮撳悕" min-width="100px"></el-table-column>
+                <el-table-column prop="mobile" label="鑱旂郴鏂瑰紡" min-width="100px"></el-table-column>
+                <el-table-column prop="companyName" label="褰掑睘鍏徃" min-width="100px"></el-table-column>
+                <el-table-column label="鎺堟潈浼佷笟" min-width="100px">
+                    <template slot-scope="{row}">
+                        <span>{{row.authNum}}瀹�</span>
+                    </template>
+                </el-table-column>
+                <el-table-column label="鏄惁瓒呯" min-width="100px">
+                    <template slot-scope="{row}">
+                        <span v-if="row.isAdmin === '1'">鏄�</span>
+                        <span v-if="row.isAdmin === '0'">鍚�</span>
+                    </template>
+                </el-table-column>
+                <el-table-column label="鐘舵��" min-width="100px">
+                    <template slot-scope="{row}">
+                        <el-switch
+                            v-if="!row.fixed"
+                            @change="changeStatus($event, row)"
+                            v-model="row.status"
+                            active-color="#13ce66"
+                            inactive-color="#ff4949"
+                            :active-value="0"
+                            :inactive-value="1">
+                        </el-switch>
+                    </template>
+                </el-table-column>
+                <el-table-column
+                    label="鎿嶄綔"
+                    width="100"
+                    fixed="right"
+                >
+                    <template slot-scope="{row}">
+                        <el-button type="text" @click="$refs.authorizedEnterprise.open('鎺堟潈浼佷笟璁板綍', row.id)">鎺堟潈浼佷笟</el-button>
+                    </template>
+                </el-table-column>
+            </el-table>
+            <pagination
+                @size-change="handleSizeChange"
+                @current-change="handlePageChange"
+                :pagination="tableData.pagination"
+            ></pagination>
+        </template>
+        <authorizedEnterprise ref="authorizedEnterprise" />
+    </TableLayout>
+</template>
+
+<script>
+  import Pagination from '@/components/common/Pagination'
+  import TableLayout from '@/layouts/TableLayout'
+  import BaseTable from '@/components/base/BaseTable'
+  import { updUserStatus } from '@/api/system/user'
+  import authorizedEnterprise from '@/components/business/authorizedEnterprise'
+  export default {
+    name: 'userManagement',
+    extends: BaseTable,
+    components: { TableLayout, Pagination, authorizedEnterprise },
+    data () {
+      return {
+        // 鎼滅储
+        searchForm: {
+          username: '',
+          realname: '',
+          mobile: '',
+          companyName: '',
+          type: 1
+        }
+      }
+    },
+    created () {
+      this.config({
+        module: '鐢ㄦ埛',
+        api: '/system/user',
+        'field.main': 'realname',
+        sorts: [{
+          property: 'CREATE_TIME',
+          direction: 'DESC'
+        }]
+      })
+      this.search()
+    },
+    methods: {
+      changeStatus(status, row) {
+        updUserStatus({
+          id: row.id,
+          status
+        }).then(res => {
+          this.search()
+        }).catch(err => {
+          row.status = row.status === 0 ? 1 : 0
+        })
+      }
+    }
+  }
+</script>
+
+<style scoped lang="scss">
+    @import "@/assets/style/variables.scss";
+    // 鍒楄〃澶村儚澶勭悊
+    .table-column-avatar {
+        img {
+            width: 48px;
+        }
+    }
+</style>

--
Gitblit v1.9.3