From 4f953ffc89fc95f83b152e914c5e65938b440f17 Mon Sep 17 00:00:00 2001
From: Xxxu <794772283@qq.com>
Date: 星期二, 07 七月 2020 10:03:02 +0800
Subject: [PATCH] 上传项目
---
src/views/modules/sys/user.vue | 193 ++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 193 insertions(+), 0 deletions(-)
diff --git a/src/views/modules/sys/user.vue b/src/views/modules/sys/user.vue
new file mode 100644
index 0000000..0345b4e
--- /dev/null
+++ b/src/views/modules/sys/user.vue
@@ -0,0 +1,193 @@
+<template>
+ <div class="mod-user">
+ <el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
+ <el-form-item>
+ <el-input v-model="dataForm.userName" placeholder="鐢ㄦ埛鍚�" clearable></el-input>
+ </el-form-item>
+ <el-form-item>
+ <el-button @click="getDataList()">鏌ヨ</el-button>
+ <el-button v-if="isAuth('sys:user:save')" type="primary" @click="addOrUpdateHandle()">鏂板</el-button>
+ <el-button v-if="isAuth('sys:user:delete')" type="danger" @click="deleteHandle()" :disabled="dataListSelections.length <= 0">鎵归噺鍒犻櫎</el-button>
+ </el-form-item>
+ </el-form>
+ <el-table
+ :data="dataList"
+ border
+ v-loading="dataListLoading"
+ @selection-change="selectionChangeHandle"
+ style="width: 100%;">
+ <el-table-column
+ type="selection"
+ header-align="center"
+ align="center"
+ width="50">
+ </el-table-column>
+ <el-table-column
+ prop="userId"
+ header-align="center"
+ align="center"
+ width="80"
+ label="ID">
+ </el-table-column>
+ <el-table-column
+ prop="username"
+ header-align="center"
+ align="center"
+ label="鐢ㄦ埛鍚�">
+ </el-table-column>
+ <el-table-column
+ prop="email"
+ header-align="center"
+ align="center"
+ label="閭">
+ </el-table-column>
+ <el-table-column
+ prop="mobile"
+ header-align="center"
+ align="center"
+ label="鎵嬫満鍙�">
+ </el-table-column>
+ <el-table-column
+ prop="status"
+ header-align="center"
+ align="center"
+ label="鐘舵��">
+ <template slot-scope="scope">
+ <el-tag v-if="scope.row.status === 0" size="small" type="danger">绂佺敤</el-tag>
+ <el-tag v-else size="small">姝e父</el-tag>
+ </template>
+ </el-table-column>
+ <el-table-column
+ prop="createTime"
+ header-align="center"
+ align="center"
+ width="180"
+ label="鍒涘缓鏃堕棿">
+ </el-table-column>
+ <el-table-column
+ fixed="right"
+ header-align="center"
+ align="center"
+ width="150"
+ label="鎿嶄綔">
+ <template slot-scope="scope">
+ <el-button v-if="isAuth('sys:user:update')" type="text" size="small" @click="addOrUpdateHandle(scope.row.userId)">淇敼</el-button>
+ <el-button v-if="isAuth('sys:user:delete')" type="text" size="small" @click="deleteHandle(scope.row.userId)">鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ <el-pagination
+ @size-change="sizeChangeHandle"
+ @current-change="currentChangeHandle"
+ :current-page="pageIndex"
+ :page-sizes="[10, 20, 50, 100]"
+ :page-size="pageSize"
+ :total="totalPage"
+ layout="total, sizes, prev, pager, next, jumper">
+ </el-pagination>
+ <!-- 寮圭獥, 鏂板 / 淇敼 -->
+ <add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList"></add-or-update>
+ </div>
+</template>
+
+<script>
+ import AddOrUpdate from './user-add-or-update'
+ export default {
+ data () {
+ return {
+ dataForm: {
+ userName: ''
+ },
+ dataList: [],
+ pageIndex: 1,
+ pageSize: 10,
+ totalPage: 0,
+ dataListLoading: false,
+ dataListSelections: [],
+ addOrUpdateVisible: false
+ }
+ },
+ components: {
+ AddOrUpdate
+ },
+ activated () {
+ this.getDataList()
+ },
+ methods: {
+ // 鑾峰彇鏁版嵁鍒楄〃
+ getDataList () {
+ this.dataListLoading = true
+ this.$http({
+ url: this.$http.adornUrl('/sys/user/list'),
+ method: 'get',
+ params: this.$http.adornParams({
+ 'page': this.pageIndex,
+ 'limit': this.pageSize,
+ 'username': this.dataForm.userName
+ })
+ }).then(({data}) => {
+ if (data && data.code === 0) {
+ this.dataList = data.page.list
+ this.totalPage = data.page.totalCount
+ } else {
+ this.dataList = []
+ this.totalPage = 0
+ }
+ this.dataListLoading = false
+ })
+ },
+ // 姣忛〉鏁�
+ sizeChangeHandle (val) {
+ this.pageSize = val
+ this.pageIndex = 1
+ this.getDataList()
+ },
+ // 褰撳墠椤�
+ currentChangeHandle (val) {
+ this.pageIndex = val
+ this.getDataList()
+ },
+ // 澶氶��
+ selectionChangeHandle (val) {
+ this.dataListSelections = val
+ },
+ // 鏂板 / 淇敼
+ addOrUpdateHandle (id) {
+ this.addOrUpdateVisible = true
+ this.$nextTick(() => {
+ this.$refs.addOrUpdate.init(id)
+ })
+ },
+ // 鍒犻櫎
+ deleteHandle (id) {
+ var userIds = id ? [id] : this.dataListSelections.map(item => {
+ return item.userId
+ })
+ this.$confirm(`纭畾瀵筟id=${userIds.join(',')}]杩涜[${id ? '鍒犻櫎' : '鎵归噺鍒犻櫎'}]鎿嶄綔?`, '鎻愮ず', {
+ confirmButtonText: '纭畾',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning'
+ }).then(() => {
+ this.$http({
+ url: this.$http.adornUrl('/sys/user/delete'),
+ method: 'post',
+ data: this.$http.adornData(userIds, false)
+ }).then(({data}) => {
+ if (data && data.code === 0) {
+ this.$message({
+ message: '鎿嶄綔鎴愬姛',
+ type: 'success',
+ duration: 1500,
+ onClose: () => {
+ this.getDataList()
+ }
+ })
+ } else {
+ this.$message.error(data.msg)
+ }
+ })
+ }).catch(() => {})
+ }
+ }
+ }
+</script>
--
Gitblit v1.9.3