提交本地代码

This commit is contained in:
wangchengming 2025-08-11 13:15:03 +08:00
parent e8fead072a
commit 512032ba95
13 changed files with 187 additions and 102 deletions

View File

@ -149,7 +149,7 @@ h6 {
/* 弹窗中的分页器 */
.el-dialog .pagination-container {
position: static !important;
margin: 10px 0 0 0;
margin: 10px auto 0;
padding: 0 !important;
.el-pagination {

View File

@ -64,8 +64,7 @@ import useSettingsStore from '@/store/modules/settings'
const appStore = useAppStore()
const userStore = useUserStore()
const settingsStore = useSettingsStore()
const { proxy } = getCurrentInstance()
console.log('settingsStore.topNav', settingsStore.topNav)
const { proxy } = getCurrentInstance()
function toggleSideBar() {
appStore.toggleSideBar()

View File

@ -7,8 +7,7 @@ export const useBackgroundStore = defineStore('background', {
bgImage: bigBackgroud
}),
actions: {
setBgImage(newImage) {
console.log('接收', newImage)
setBgImage(newImage) {
this.bgImage = newImage
}
}

View File

@ -1,15 +1,11 @@
<template>
<div class="app-container">
<div class="searchPanel">
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" class="searchPanelForm">
<el-form :inline="true" v-show="showSearch" class="searchPanelForm">
<el-form-item label="操作地址:" prop="operIp">
<el-input v-model="queryParams.operIp" placeholder="请输入操作地址" clearable style="width: 140px;"
@keyup.enter="handleQuery" />
</el-form-item>
<el-form-item label="系统模块:" prop="title">
<el-input v-model="queryParams.title" placeholder="请输入系统模块" clearable style="width: 140px;"
@keyup.enter="handleQuery" />
</el-form-item>
<el-form-item label="操作人员:" prop="operName">
<el-input v-model="queryParams.operName" placeholder="请输入操作人员" clearable style="width: 140px;"
@keyup.enter="handleQuery" />
@ -40,7 +36,15 @@
</template>
<el-row :gutter="10" class="my_row">
<el-col :span="24">
<el-col :span="12">
<el-form :inline="true" class="searchInputForm">
<el-form-item label="">
<el-input v-model="queryParams.title" placeholder="请输入系统模块" :prefix-icon="Search"
style="width: 300px;" />
</el-form-item>
</el-form>
</el-col>
<el-col :span="12" style="text-align: right;">
<el-button type="primary" class="primaryBtn" @click="handleQuery">查询</el-button>
<el-button type="primary" class="primaryBtn" @click="resetQuery">重置</el-button>
<el-button type="primary" class="primaryBtn" :disabled="multiple" @click="handleDelete"
@ -95,14 +99,14 @@
</el-card>
<!-- 操作日志详细 -->
<el-dialog title="操作日志详细" v-model="open" width="800px" class="my_dialog" align-center :destroy-on-close="true"
<el-dialog title="操作日志详细" v-model="open" width="950px" class="my_dialog" align-center :destroy-on-close="true"
:close-on-click-modal="false">
<el-form :model="form" label-width="100px" class="myInsertForm">
<el-row>
<el-col :span="12">
<el-form-item label="操作模块:">{{ form.title }} / {{ typeFormat(form) }}</el-form-item>
<el-form-item label="登录信息:">{{ form.operName }} / {{ form.operIp }} / {{ form.operLocation
}}</el-form-item>
}}</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="请求地址:">{{ form.operUrl }}</el-form-item>
@ -145,6 +149,7 @@
<script setup name="Operlog">
import { onMounted, ref } from 'vue';
import { Search } from '@element-plus/icons-vue'
import { useBackgroundStore } from '@/store/modules/background'
import otherbg from '@/assets/images/otherbg.png'
const bgStore = useBackgroundStore()
@ -204,8 +209,15 @@ function handleQuery() {
/** 重置按钮操作 */
function resetQuery() {
dateRange.value = []
proxy.resetForm("queryRef")
queryParams.value.pageNum = 1
queryParams.value = {
pageNum: 1,
pageSize: 10,
operIp: undefined,
title: undefined,
operName: undefined,
businessType: undefined,
status: undefined
}
proxy.$refs["operlogRef"].sort(defaultSort.value.prop, defaultSort.value.order)
}

View File

@ -1,11 +1,7 @@
<template>
<div class="app-container">
<div class="searchPanel">
<el-form :model="queryParams" ref="queryRef" class="searchPanelForm" :inline="true" v-show="showSearch">
<el-form-item label="部门名称:" prop="deptName">
<el-input v-model="queryParams.deptName" placeholder="请输入部门名称" clearable style="width: 140px"
@keyup.enter="handleQuery" />
</el-form-item>
<el-form class="searchPanelForm" :inline="true" v-show="showSearch">
<el-form-item label="状态:" prop="status">
<el-select v-model="queryParams.status" placeholder="部门状态" clearable style="min-width: 30px">
<el-option v-for="dict in sys_normal_disable" :key="dict.value" :label="dict.label"
@ -20,9 +16,16 @@
<span>系统管理</span> <span class="subHeaderTitle">- 部门管理</span>
</div>
</template>
<el-row :gutter="10" class="my_row">
<el-col :span="24">
<el-col :span="12">
<el-form :inline="true" class="searchInputForm">
<el-form-item label="">
<el-input v-model="queryParams.deptName" placeholder="请输入部门名称" :prefix-icon="Search"
style="width: 300px;" />
</el-form-item>
</el-form>
</el-col>
<el-col :span="12" style="text-align: right;">
<el-button type="primary" class="primaryBtn" @click="handleQuery">查询</el-button>
<el-button type="primary" class="primaryBtn" @click="resetQuery">重置</el-button>
<el-button type="primary" class="primaryBtn" @click="handleAdd"
@ -118,6 +121,7 @@
<script setup name="Dept">
import { onMounted, ref } from 'vue';
import { Search } from '@element-plus/icons-vue'
import { listDept, getDept, delDept, addDept, updateDept, listDeptExcludeChild } from "@/api/system/dept"
import { useBackgroundStore } from '@/store/modules/background'
import otherbg from '@/assets/images/otherbg.png'
@ -189,7 +193,10 @@ function handleQuery() {
/** 重置按钮操作 */
function resetQuery() {
proxy.resetForm("queryRef")
queryParams.value = {
deptName: undefined,
status: undefined
}
handleQuery()
}

View File

@ -1,17 +1,13 @@
<template>
<div class="app-container">
<div class="searchPanel">
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" class="searchPanelForm">
<el-form :inline="true" v-show="showSearch" class="searchPanelForm">
<el-form-item label="字典名称:" prop="dictType">
<el-select v-model="queryParams.dictType" style="min-width: 30px">
<el-option v-for="item in typeOptions" :key="item.dictId" :label="item.dictName"
:value="item.dictType" />
</el-select>
</el-form-item>
<el-form-item label="字典标签:" prop="dictLabel">
<el-input v-model="queryParams.dictLabel" placeholder="请输入字典标签" clearable style="width: 140px"
@keyup.enter="handleQuery" />
</el-form-item>
<el-form-item label="状态:" prop="status">
<el-select v-model="queryParams.status" placeholder="数据状态" clearable style="min-width: 30px">
<el-option v-for="dict in sys_normal_disable" :key="dict.value" :label="dict.label"
@ -26,9 +22,16 @@
<span>系统管理</span> <span class="subHeaderTitle">- 字典管理 - 字典明细</span>
</div>
</template>
<el-row :gutter="10" class="my_row">
<el-col :span="24">
<el-col :span="12">
<el-form :inline="true" class="searchInputForm">
<el-form-item label="">
<el-input v-model="queryParams.dictLabel" placeholder="请输入字典标签" :prefix-icon="Search"
style="width: 300px;" />
</el-form-item>
</el-form>
</el-col>
<el-col :span="12" style="text-align: right;">
<el-button type="primary" class="primaryBtn" @click="handleQuery">查询</el-button>
<el-button type="primary" class="primaryBtn" @click="resetQuery">重置</el-button>
<el-button type="primary" class="primaryBtn" @click="handleAdd"
@ -134,6 +137,7 @@
<script setup name="Data">
import { onMounted, ref } from 'vue';
import { Search } from '@element-plus/icons-vue'
import useDictStore from '@/store/modules/dict'
import { optionselect as getDictOptionselect, getType } from "@/api/system/dict/type"
import { listData, getData, delData, addData, updateData } from "@/api/system/dict/data"
@ -245,8 +249,13 @@ function handleClose() {
/** 重置按钮操作 */
function resetQuery() {
proxy.resetForm("queryRef")
queryParams.value.dictType = defaultDictType.value
queryParams.value = {
pageNum: 1,
pageSize: 10,
dictType: defaultDictType.value,
dictLabel: undefined,
status: undefined
}
handleQuery()
}

View File

@ -1,11 +1,7 @@
<template>
<div class="app-container">
<div class="searchPanel">
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" class="searchPanelForm">
<el-form-item label="字典名称:" prop="dictName">
<el-input v-model="queryParams.dictName" placeholder="请输入字典名称" clearable style="width: 140px"
@keyup.enter="handleQuery" />
</el-form-item>
<el-form :inline="true" v-show="showSearch" class="searchPanelForm">
<el-form-item label="字典类型:" prop="dictType">
<el-input v-model="queryParams.dictType" placeholder="请输入字典类型" clearable style="width: 140px"
@keyup.enter="handleQuery" />
@ -31,7 +27,15 @@
</template>
<el-row :gutter="10" class="my_row">
<el-col :span="24">
<el-col :span="12">
<el-form :inline="true" class="searchInputForm">
<el-form-item label="">
<el-input v-model="queryParams.dictName" placeholder="请输入字典名称" :prefix-icon="Search"
style="width: 300px;" />
</el-form-item>
</el-form>
</el-col>
<el-col :span="12" style="text-align: right;">
<el-button type="primary" class="primaryBtn" @click="handleQuery">查询</el-button>
<el-button type="primary" class="primaryBtn" @click="resetQuery">重置</el-button>
<el-button type="primary" class="primaryBtn" @click="handleAdd"
@ -97,7 +101,7 @@
<el-form-item label="状态" prop="status">
<el-radio-group v-model="form.status">
<el-radio v-for="dict in sys_normal_disable" :key="dict.value" :value="dict.value">{{ dict.label
}}</el-radio>
}}</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="备注" prop="remark">
@ -116,6 +120,7 @@
<script setup name="Dict">
import { onMounted, ref } from 'vue';
import { Search } from '@element-plus/icons-vue'
import useDictStore from '@/store/modules/dict'
import { listType, getType, delType, addType, updateType, refreshCache } from "@/api/system/dict/type"
import { useBackgroundStore } from '@/store/modules/background'
@ -190,7 +195,13 @@ function handleQuery() {
/** 重置按钮操作 */
function resetQuery() {
dateRange.value = []
proxy.resetForm("queryRef")
queryParams.value = {
pageNum: 1,
pageSize: 10,
dictName: undefined,
dictType: undefined,
status: undefined
}
handleQuery()
}

View File

@ -1,11 +1,7 @@
<template>
<div class="app-container">
<div class="searchPanel">
<el-form :model="queryParams" ref="queryRef" class="searchPanelForm" :inline="true" v-show="showSearch">
<el-form-item label="菜单名称:" prop="menuName">
<el-input v-model="queryParams.menuName" placeholder="请输入菜单名称" clearable style="width: 200px"
@keyup.enter="handleQuery" />
</el-form-item>
<el-form class="searchPanelForm" :inline="true" v-show="showSearch">
<el-form-item label="状态:" prop="status">
<el-select v-model="queryParams.status" placeholder="请选择" clearable style="min-width: 30px;">
<el-option v-for="dict in sys_normal_disable" :key="dict.value" :label="dict.label"
@ -23,7 +19,15 @@
</template>
<el-row :gutter="10" class="my_row">
<el-col :span="24">
<el-col :span="12">
<el-form :inline="true" class="searchInputForm">
<el-form-item label="">
<el-input v-model="queryParams.menuName" placeholder="请输入菜单名称" :prefix-icon="Search"
style="width: 300px;" />
</el-form-item>
</el-form>
</el-col>
<el-col :span="12" style="text-align: right;">
<el-button type="primary" class="primaryBtn" @click="handleQuery">查询</el-button>
<el-button type="primary" class="primaryBtn" @click="resetQuery">重置</el-button>
<el-button type="primary" class="primaryBtn" @click="handleAdd"
@ -229,7 +233,7 @@
</template>
<el-radio-group v-model="form.visible">
<el-radio v-for="dict in sys_show_hide" :key="dict.value" :value="dict.value">{{ dict.label
}}</el-radio>
}}</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
@ -245,7 +249,7 @@
</template>
<el-radio-group v-model="form.status">
<el-radio v-for="dict in sys_normal_disable" :key="dict.value" :value="dict.value">{{ dict.label
}}</el-radio>
}}</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
@ -263,6 +267,7 @@
<script setup name="Menu">
import { onMounted, ref } from 'vue';
import { Search } from '@element-plus/icons-vue'
import { addMenu, delMenu, getMenu, listMenu, updateMenu } from "@/api/system/menu"
import SvgIcon from "@/components/SvgIcon"
import IconSelect from "@/components/IconSelect"
@ -357,7 +362,10 @@ function handleQuery() {
/** 重置按钮操作 */
function resetQuery() {
proxy.resetForm("queryRef")
queryParams.value = {
menuName: undefined,
status: undefined
}
handleQuery()
}

View File

@ -1,14 +1,9 @@
<template>
<div class="app-container">
<div class="searchPanel">
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" class="searchPanelForm">
<el-form :inline="true" v-show="showSearch" class="searchPanelForm">
<el-form-item label="岗位编码:" prop="postCode">
<el-input v-model="queryParams.postCode" placeholder="请输入岗位编码" clearable style="width: 140px"
@keyup.enter="handleQuery" />
</el-form-item>
<el-form-item label="岗位名称:" prop="postName">
<el-input v-model="queryParams.postName" placeholder="请输入岗位名称" clearable style="width: 140px"
@keyup.enter="handleQuery" />
<el-input v-model="queryParams.postCode" placeholder="请输入岗位编码" clearable style="width: 140px" />
</el-form-item>
<el-form-item label="状态:" prop="status">
<el-select v-model="queryParams.status" placeholder="岗位状态" clearable style="min-width: 30px">
@ -26,7 +21,15 @@
</template>
<el-row :gutter="10" class="my_row">
<el-col :span="24">
<el-col :span="12">
<el-form :inline="true" class="searchInputForm">
<el-form-item label="">
<el-input v-model="queryParams.postName" placeholder="请输入岗位名称" :prefix-icon="Search"
style="width: 300px;" />
</el-form-item>
</el-form>
</el-col>
<el-col :span="12" style="text-align: right;">
<el-button type="primary" class="primaryBtn" @click="handleQuery">查询</el-button>
<el-button type="primary" class="primaryBtn" @click="resetQuery">重置</el-button>
<el-button type="primary" class="primaryBtn" @click="handleAdd"
@ -39,7 +42,7 @@
v-hasPermi="['system:post:export']">导出</el-button>
</el-col>
</el-row>
<el-table v-loading="loading" :data="postList" @selection-change="handleSelectionChange"
height="calc(100vh - 362px)">
<el-table-column type="selection" width="55" align="center" />
@ -108,6 +111,7 @@
<script setup name="Post">
import { onMounted, ref } from 'vue';
import { Search } from '@element-plus/icons-vue'
import { listPost, addPost, delPost, getPost, updatePost } from "@/api/system/post"
import { useBackgroundStore } from '@/store/modules/background'
import otherbg from '@/assets/images/otherbg.png'
@ -181,7 +185,13 @@ function handleQuery() {
/** 重置按钮操作 */
function resetQuery() {
proxy.resetForm("queryRef")
queryParams.value = {
pageNum: 1,
pageSize: 10,
postCode: undefined,
postName: undefined,
status: undefined
}
handleQuery()
}

View File

@ -1,11 +1,7 @@
<template>
<div class="app-container">
<div class="searchPanel">
<el-form :model="queryParams" ref="queryRef" class="searchPanelForm" v-show="showSearch" :inline="true">
<el-form-item label="用户名称:" prop="userName">
<el-input v-model="queryParams.userName" placeholder="请输入用户名称" clearable style="width: 240px"
@keyup.enter="handleQuery" />
</el-form-item>
<el-form class="searchPanelForm" v-show="showSearch" :inline="true">
<el-form-item label="手机号码:" prop="phonenumber">
<el-input v-model="queryParams.phonenumber" placeholder="请输入手机号码" clearable style="width: 240px"
@keyup.enter="handleQuery" />
@ -19,9 +15,16 @@
<span>系统管理</span> <span class="subHeaderTitle">- 角色管理 - 分配用户</span>
</div>
</template>
<el-row :gutter="10" class="my_row">
<el-col :span="24">
<el-col :span="12">
<el-form :inline="true" class="searchInputForm">
<el-form-item label="">
<el-input v-model="queryParams.userName" placeholder="请输入用户登录名" :prefix-icon="Search"
style="width: 300px;" />
</el-form-item>
</el-form>
</el-col>
<el-col :span="12" style="text-align: right;">
<el-button type="primary" class="primaryBtn" @click="handleQuery">查询</el-button>
<el-button type="primary" class="primaryBtn" @click="resetQuery">重置</el-button>
<el-button type="primary" class="primaryBtn" @click="openSelectUser"
@ -57,8 +60,8 @@
</el-table-column>
</el-table>
<pagination :total="total" v-model:page="queryParams.pageNum"
v-model:limit="queryParams.pageSize" @pagination="getList" />
<pagination :total="total" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize"
@pagination="getList" />
<select-user ref="selectRef" :roleId="queryParams.roleId" @ok="handleQuery" />
</el-card>
@ -69,6 +72,7 @@
<script setup name="AuthUser">
import { onMounted, ref } from 'vue';
import { Search } from '@element-plus/icons-vue'
import selectUser from "./selectUser"
import { allocatedUserList, authUserCancel, authUserCancelAll } from "@/api/system/role"
import { useBackgroundStore } from '@/store/modules/background'
@ -86,7 +90,7 @@ const multiple = ref(true)
const total = ref(0)
const userIds = ref([])
const queryParams = reactive({
const queryParams = ref({
pageNum: 1,
pageSize: 10,
roleId: route.params.roleId,
@ -97,7 +101,7 @@ const queryParams = reactive({
/** 查询授权用户列表 */
function getList() {
loading.value = true
allocatedUserList(queryParams).then(response => {
allocatedUserList(queryParams.value).then(response => {
userList.value = response.rows
total.value = response.total
loading.value = false
@ -112,13 +116,19 @@ function handleClose() {
/** 搜索按钮操作 */
function handleQuery() {
queryParams.pageNum = 1
queryParams.value.pageNum = 1
getList()
}
/** 重置按钮操作 */
function resetQuery() {
proxy.resetForm("queryRef")
queryParams.value = {
pageNum: 1,
pageSize: 10,
roleId: route.params.roleId,
userName: undefined,
phonenumber: undefined,
}
handleQuery()
}
@ -136,7 +146,7 @@ function openSelectUser() {
/** 取消授权按钮操作 */
function cancelAuthUser(row) {
proxy.$modal.confirm('确认要取消该用户"' + row.userName + '"角色吗?').then(function () {
return authUserCancel({ userId: row.userId, roleId: queryParams.roleId })
return authUserCancel({ userId: row.userId, roleId: queryParams.value.roleId })
}).then(() => {
getList()
proxy.$modal.msgSuccess("取消授权成功")
@ -145,7 +155,7 @@ function cancelAuthUser(row) {
/** 批量取消授权按钮操作 */
function cancelAuthUserAll(row) {
const roleId = queryParams.roleId
const roleId = queryParams.value.roleId
const uIds = userIds.value.join(",")
proxy.$modal.confirm("是否取消选中用户授权数据项?").then(function () {
return authUserCancelAll({ roleId: roleId, userIds: uIds })

View File

@ -1,11 +1,7 @@
<template>
<div class="app-container">
<div class="searchPanel">
<el-form :model="queryParams" ref="queryRef" v-show="showSearch" class="searchPanelForm" :inline="true">
<el-form-item label="角色名称:" prop="roleName">
<el-input v-model="queryParams.roleName" placeholder="请输入角色名称" clearable style="min-width: 60px"
@keyup.enter="handleQuery" />
</el-form-item>
<el-form v-show="showSearch" class="searchPanelForm" :inline="true">
<el-form-item label="权限字符:" prop="roleKey">
<el-input v-model="queryParams.roleKey" placeholder="请输入权限字符" clearable style="min-width: 60px"
@keyup.enter="handleQuery" />
@ -28,9 +24,16 @@
<span>系统管理</span> <span class="subHeaderTitle">- 角色管理</span>
</div>
</template>
<el-row :gutter="10" class="my_row">
<el-col :span="24">
<el-col :span="12">
<el-form :inline="true" class="searchInputForm">
<el-form-item label="">
<el-input v-model="queryParams.roleName" placeholder="请输入角色名称" :prefix-icon="Search"
style="width: 300px;" />
</el-form-item>
</el-form>
</el-col>
<el-col :span="12" style="text-align: right;">
<el-button type="primary" class="primaryBtn" @click="handleQuery">查询</el-button>
<el-button type="primary" class="primaryBtn" @click="resetQuery">重置</el-button>
<el-button type="primary" class="primaryBtn" @click="handleAdd"
@ -51,14 +54,14 @@
<el-table-column label="角色编号" prop="roleId" />
<el-table-column label="角色名称" prop="roleName" :show-overflow-tooltip="true" />
<el-table-column label="权限字符" prop="roleKey" :show-overflow-tooltip="true" />
<el-table-column label="显示顺序" prop="roleSort" />
<el-table-column label="显示顺序" prop="roleSort"/>
<el-table-column label="状态" align="center">
<template #default="scope">
<el-switch v-model="scope.row.status" active-value="0" inactive-value="1"
@change="handleStatusChange(scope.row)"></el-switch>
</template>
</el-table-column>
<el-table-column label="创建时间" align="center" prop="createTime">
<el-table-column label="创建时间" align="center" prop="createTime" min-width="210">
<template #default="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
@ -156,7 +159,7 @@
</el-form-item>
</el-form>
<template #footer>
<div class="dialog-footer">
<div class="dialog-footer">
<el-button class="my-cancel-btn" @click="cancelDataScope"> </el-button>
<el-button class="my-confirm-btn" type="primary" @click="submitDataScope"> </el-button>
</div>
@ -167,6 +170,7 @@
<script setup name="Role">
import { onMounted, ref } from 'vue';
import { Search } from '@element-plus/icons-vue'
import { addRole, changeRoleStatus, dataScope, delRole, getRole, listRole, updateRole, deptTreeSelect } from "@/api/system/role"
import { roleMenuTreeselect, treeselect as menuTreeselect } from "@/api/system/menu"
import { useBackgroundStore } from '@/store/modules/background'
@ -243,7 +247,13 @@ function handleQuery() {
/** 重置按钮操作 */
function resetQuery() {
dateRange.value = []
proxy.resetForm("queryRef")
queryParams.value = {
pageNum: 1,
pageSize: 10,
roleName: undefined,
roleKey: undefined,
status: undefined
}
handleQuery()
}

View File

@ -1,10 +1,10 @@
<template>
<!-- 授权用户 -->
<el-dialog title="选择用户" v-model="visible" width="900px" align-center class="my_dialog"
<el-dialog title="选择用户" v-model="visible" width="1200px" align-center class="my_dialog"
:destroy-on-close="true" :close-on-click-modal="false">
<el-form :model="queryParams" ref="queryRef" :inline="true" class="myInsertForm">
<el-form-item label="用户" prop="userName">
<el-input v-model="queryParams.userName" placeholder="请输入用户" clearable style="width: 180px"
<el-form-item label="用户登录名" prop="userName">
<el-input v-model="queryParams.userName" placeholder="请输入用户登录名" clearable style="width: 180px"
@keyup.enter="handleQuery" />
</el-form-item>
<el-form-item label="手机号码" prop="phonenumber">
@ -20,16 +20,16 @@
<el-table @row-click="clickRow" ref="refTable" :data="userList" @selection-change="handleSelectionChange"
height="260px">
<el-table-column type="selection" width="55"></el-table-column>
<el-table-column label="用户" prop="userName" :show-overflow-tooltip="true" />
<el-table-column label="用户昵称" prop="nickName" :show-overflow-tooltip="true" />
<el-table-column label="用户登录名" prop="userName" :show-overflow-tooltip="true" />
<el-table-column label="用户姓名" prop="nickName" :show-overflow-tooltip="true" />
<el-table-column label="邮箱" prop="email" :show-overflow-tooltip="true" />
<el-table-column label="手机" prop="phonenumber" :show-overflow-tooltip="true" />
<el-table-column label="手机号码" prop="phonenumber" :show-overflow-tooltip="true" />
<el-table-column label="状态" align="center" prop="status">
<template #default="scope">
<dict-tag :options="sys_normal_disable" :value="scope.row.status" />
</template>
</el-table-column>
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
<el-table-column label="创建时间" align="center" prop="createTime" width="210">
<template #default="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>

View File

@ -1,16 +1,12 @@
<template>
<div class="app-container">
<div class="searchPanel">
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" class="searchPanelForm">
<el-form :inline="true" v-show="showSearch" class="searchPanelForm">
<el-form-item label="部门:">
<el-tree-select v-model="queryParams.deptId" :data="deptOptions" clearable
:props="{ value: 'id', label: 'label', children: 'children' }" value-key="id" placeholder="请选择部门"
check-strictly style="min-width: 30px" />
</el-form-item>
<el-form-item label="用户姓名:" prop="nickName">
<el-input v-model="queryParams.nickName" placeholder="请输入用户名称" clearable style="width: 140px"
@keyup.enter="handleQuery" />
</el-form-item>
<el-form-item label="手机号码:" prop="phonenumber">
<el-input v-model="queryParams.phonenumber" placeholder="请输入手机号码" clearable style="width: 140px"
@keyup.enter="handleQuery" />
@ -35,7 +31,15 @@
</template>
<el-row :gutter="10" class="my_row">
<el-col :span="24">
<el-col :span="12">
<el-form :inline="true" class="searchInputForm">
<el-form-item label="">
<el-input v-model="queryParams.nickName" placeholder="请输入用户姓名" :prefix-icon="Search"
style="width: 300px;" />
</el-form-item>
</el-form>
</el-col>
<el-col :span="12" style="text-align: right;">
<el-button type="primary" class="primaryBtn" @click="handleQuery">查询</el-button>
<el-button type="primary" class="primaryBtn" @click="resetQuery">重置</el-button>
<el-button type="primary" class="primaryBtn" @click="handleAdd"
@ -240,7 +244,7 @@
import { getToken } from "@/utils/auth"
import useAppStore from '@/store/modules/app'
import { changeUserStatus, listUser, resetUserPwd, delUser, getUser, updateUser, addUser, deptTreeSelect } from "@/api/system/user"
import { Splitpanes, Pane } from "splitpanes"
import { Search } from '@element-plus/icons-vue'
import "splitpanes/dist/splitpanes.css"
import { useBackgroundStore } from '@/store/modules/background'
import otherbg from '@/assets/images/otherbg.png'
@ -363,9 +367,15 @@ function handleQuery() {
/** 重置按钮操作 */
function resetQuery() {
dateRange.value = []
proxy.resetForm("queryRef")
queryParams.value.deptId = undefined
proxy.$refs.deptTreeRef.setCurrentKey(null)
queryParams.value = {
pageNum: 1,
pageSize: 10,
nickName: undefined,
phonenumber: undefined,
status: undefined,
deptId: undefined
}
// proxy.$refs.deptTreeRef.setCurrentKey(null)
handleQuery()
}