|
@@ -1,59 +1,54 @@
|
|
|
<template>
|
|
|
- <div class="mod-user">
|
|
|
- <avue-crud ref="crud" :page="page" :data="dataList" :option="tableOption" @search-change="searchChange"
|
|
|
- @selection-change="selectionChange" @on-load="getDataList"
|
|
|
- @row-del="deleteUser">
|
|
|
- <!-- <template slot="menuLeft">-->
|
|
|
- <!-- <el-button type="danger"-->
|
|
|
- <!-- @click="deleteHandle()"-->
|
|
|
- <!-- v-if="isAuth('admin:user:delete')"-->
|
|
|
- <!-- size="small"-->
|
|
|
- <!-- :disabled="dataListSelections.length <= 0">批量删除</el-button>-->
|
|
|
- <!-- </template>-->
|
|
|
-
|
|
|
- <template slot-scope="scope" slot="pic">
|
|
|
- <span class="avue-crud__img" v-if="scope.row.pic">
|
|
|
- <i :src="scope.row.pic" class="el-icon-document"></i>
|
|
|
- </span>
|
|
|
- <span v-else>-</span>
|
|
|
- </template>
|
|
|
-
|
|
|
- <template slot-scope="scope" slot="status">
|
|
|
- <el-tag v-if="scope.row.status === 0" size="small" type="danger">禁用</el-tag>
|
|
|
- <el-tag v-else size="small">正常</el-tag>
|
|
|
- </template>
|
|
|
- </avue-crud>
|
|
|
-
|
|
|
- <!-- 弹窗, 新增 / 修改 -->
|
|
|
- <add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList"></add-or-update>
|
|
|
- </div>
|
|
|
+ <avue-crud ref="crud" :page="page" :data="dataList" :option="tableOption"
|
|
|
+ @search-change="searchChange" @on-load="getDataList" @row-del="deleteUser">
|
|
|
+ </avue-crud>
|
|
|
+ <!-- 弹窗, 新增 / 修改 -->
|
|
|
+ <!--add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList"></add-or-update-->
|
|
|
</template>
|
|
|
|
|
|
-<script>
|
|
|
-import { tableOption } from '@/crud/user/user'
|
|
|
-import AddOrUpdate from './user-add-or-update'
|
|
|
+<script lang="ts" >
|
|
|
+import { tableOption } from '@/avue/crud/user'
|
|
|
import Axios from 'axios'
|
|
|
+import {IUser, IPage} from "@/utils/vo"
|
|
|
+import Vue from "vue"
|
|
|
|
|
|
-export default {
|
|
|
+export default Vue.extend({
|
|
|
data() {
|
|
|
return {
|
|
|
- dataList: [],
|
|
|
+ dataList: [] as IUser[],
|
|
|
dataListLoading: false,
|
|
|
- dataListSelections: [],
|
|
|
- addOrUpdateVisible: false,
|
|
|
+ // dataListSelections: [],
|
|
|
+ // addOrUpdateVisible: false,
|
|
|
tableOption: tableOption,
|
|
|
page: {
|
|
|
total: 1, // 总页数
|
|
|
currentPage: 1, // 当前页数
|
|
|
pageSize: 10 // 每页显示多少条
|
|
|
- }
|
|
|
+ } as IPage,
|
|
|
}
|
|
|
},
|
|
|
- components: {
|
|
|
- AddOrUpdate
|
|
|
- },
|
|
|
methods: {
|
|
|
- deleteUser(user){
|
|
|
+ // 获取数据列表
|
|
|
+ getDataList(page?: IPage, params?: Partial<IUser>, done?: Function) {
|
|
|
+ this.dataListLoading = true
|
|
|
+ Axios.post('/user/queryUserList',{
|
|
|
+ phone: params?.phone || "",
|
|
|
+ nickName: params?.nickname || "",
|
|
|
+ limit: page == null ? this.page.pageSize : page.pageSize,
|
|
|
+ page: page == null ? this.page.currentPage : page.currentPage,
|
|
|
+ }).then(({data})=>{
|
|
|
+ this.dataList = data.data.userList
|
|
|
+ this.page.total = data.data.total
|
|
|
+ this.dataListLoading = false
|
|
|
+ if (done) { done() }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ // 条件查询
|
|
|
+ searchChange(params: Partial<IUser>, done?: Function) {
|
|
|
+ this.getDataList(this.page, params, done)
|
|
|
+ },
|
|
|
+
|
|
|
+ deleteUser(user: IUser){
|
|
|
this.$confirm(`确定进行删除操作?`, '提示', {
|
|
|
confirmButtonText: '确定',
|
|
|
cancelButtonText: '取消',
|
|
@@ -74,39 +69,6 @@ export default {
|
|
|
})
|
|
|
})
|
|
|
},
|
|
|
- // 获取数据列表
|
|
|
- getDataList(page, params, done) {
|
|
|
- this.dataListLoading = true
|
|
|
- Axios.post(this.$http.adornUrl('/user/queryUserList'),
|
|
|
- Object.assign({
|
|
|
- phone: "",
|
|
|
- nickName: "",
|
|
|
- limit: page == null ? this.page.pageSize : page.pageSize,
|
|
|
- page: page == null ? this.page.currentPage : page.currentPage,
|
|
|
- },params)).then(({data})=>{
|
|
|
- this.dataList = data.data.userList
|
|
|
- this.page.total = data.data.total
|
|
|
- this.dataListLoading = false
|
|
|
- if (done) {
|
|
|
- done()
|
|
|
- }
|
|
|
- })
|
|
|
- },
|
|
|
- // 新增 / 修改
|
|
|
- addOrUpdateHandle(id) {
|
|
|
- this.addOrUpdateVisible = true
|
|
|
- this.$nextTick(() => {
|
|
|
- this.$refs.addOrUpdate.init(id)
|
|
|
- })
|
|
|
- },
|
|
|
- // 条件查询
|
|
|
- searchChange(params, done) {
|
|
|
- this.getDataList(this.page, params, done)
|
|
|
- },
|
|
|
- // 多选变化
|
|
|
- selectionChange(val) {
|
|
|
- this.dataListSelections = val
|
|
|
- }
|
|
|
}
|
|
|
-}
|
|
|
+})
|
|
|
</script>
|