refactor: ♻️ 代码规范调整和已知问题修复

This commit is contained in:
Ray.Hao
2025-04-15 23:31:17 +08:00
parent f048376eb3
commit 4cc36629a8
13 changed files with 474 additions and 469 deletions

View File

@@ -1,50 +1,45 @@
<!-- 系统配置 -->
<template>
<div class="app-container">
<div class="search-bar">
<!-- 搜索区域 -->
<div class="search-container">
<el-form ref="queryFormRef" :model="queryParams" :inline="true" label-width="auto">
<el-row :gutter="22">
<el-col :span="24" :md="12" :lg="6">
<el-form-item label="关键字" prop="keywords">
<el-input
v-model="queryParams.keywords"
placeholder="请输入配置键\配置名称"
clearable
@keyup.enter="handleQuery"
/>
</el-form-item>
</el-col>
<el-form-item label="关键字" prop="keywords">
<el-input
v-model="queryParams.keywords"
placeholder="请输入配置键\配置名称"
clearable
@keyup.enter="handleQuery"
/>
</el-form-item>
<div class="search-form-btn-box">
<div class="search-form-btn-box-item">
<el-form-item>
<el-button type="primary" icon="search" @click="handleQuery">搜索</el-button>
<el-button icon="refresh" @click="handleResetQuery">重置</el-button>
</el-form-item>
</div>
</div>
</el-row>
<el-form-item class="search-buttons">
<el-button type="primary" icon="search" @click="handleQuery">搜索</el-button>
<el-button icon="refresh" @click="handleResetQuery">重置</el-button>
</el-form-item>
</el-form>
</div>
<el-card shadow="never">
<div class="mb-10px">
<el-button
v-hasPerm="['sys:config:add']"
type="success"
icon="plus"
@click="handleOpenDialog()"
>
新增
</el-button>
<el-button
v-hasPerm="['sys:config:refresh']"
color="#626aef"
icon="RefreshLeft"
@click="handleRefreshCache"
>
刷新缓存
</el-button>
<el-card shadow="hover" class="data-table">
<div class="data-table__toolbar">
<div class="data-table__toolbar--actions">
<el-button
v-hasPerm="['sys:config:add']"
type="success"
icon="plus"
@click="handleOpenDialog()"
>
新增
</el-button>
<el-button
v-hasPerm="['sys:config:refresh']"
color="#626aef"
icon="RefreshLeft"
@click="handleRefreshCache"
>
刷新缓存
</el-button>
</div>
</div>
<el-table
@@ -52,6 +47,8 @@
v-loading="loading"
:data="pageData"
highlight-current-row
class="data-table__content"
border
@selection-change="handleSelectionChange"
>
<el-table-column type="index" label="序号" width="60" />

View File

@@ -1,59 +1,53 @@
<template>
<div class="app-container">
<div class="search-bar">
<!-- 搜索区域 -->
<div class="search-container">
<el-form ref="queryFormRef" :model="queryParams" :inline="true" label-width="auto">
<el-row :gutter="22">
<el-col :span="24" :md="12" :lg="6">
<el-form-item label="关键字" prop="keywords">
<el-input
v-model="queryParams.keywords"
placeholder="部门名称"
@keyup.enter="handleQuery"
/>
</el-form-item>
</el-col>
<el-col :span="24" :md="12" :lg="6">
<el-form-item label="部门状态" prop="status">
<el-select v-model="queryParams.status" placeholder="全部" clearable>
<el-option :value="1" label="正常" />
<el-option :value="0" label="禁用" />
</el-select>
</el-form-item>
</el-col>
<el-form-item label="关键字" prop="keywords">
<el-input
v-model="queryParams.keywords"
placeholder="部门名称"
@keyup.enter="handleQuery"
/>
</el-form-item>
<div class="search-form-btn-box">
<div class="search-form-btn-box-item">
<el-form-item>
<el-button class="filter-item" type="primary" icon="search" @click="handleQuery">
搜索
</el-button>
<el-button icon="refresh" @click="handleResetQuery">重置</el-button>
</el-form-item>
</div>
</div>
</el-row>
<el-form-item label="部门状态" prop="status">
<el-select v-model="queryParams.status" placeholder="全部" clearable style="width: 100px">
<el-option :value="1" label="正常" />
<el-option :value="0" label="禁用" />
</el-select>
</el-form-item>
<el-form-item class="search-buttons">
<el-button class="filter-item" type="primary" icon="search" @click="handleQuery">
搜索
</el-button>
<el-button icon="refresh" @click="handleResetQuery">重置</el-button>
</el-form-item>
</el-form>
</div>
<el-card shadow="never">
<div class="mb-10px">
<el-button
v-hasPerm="['sys:dept:add']"
type="success"
icon="plus"
@click="handleOpenDialog()"
>
新增
</el-button>
<el-button
v-hasPerm="['sys:dept:delete']"
type="danger"
:disabled="selectIds.length === 0"
icon="delete"
@click="handleDelete()"
>
删除
</el-button>
<el-card shadow="hover" class="data-table">
<div class="data-table__toolbar">
<div class="data-table__toolbar--actions">
<el-button
v-hasPerm="['sys:dept:add']"
type="success"
icon="plus"
@click="handleOpenDialog()"
>
新增
</el-button>
<el-button
v-hasPerm="['sys:dept:delete']"
type="danger"
:disabled="selectIds.length === 0"
icon="delete"
@click="handleDelete()"
>
删除
</el-button>
</div>
</div>
<el-table
@@ -62,6 +56,7 @@
row-key="id"
default-expand-all
:tree-props="{ children: 'children', hasChildren: 'hasChildren' }"
class="data-table__content"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" />

View File

@@ -1,38 +1,38 @@
<!-- 字典 -->
<template>
<div class="app-container">
<div class="search-bar">
<!-- 搜索区域 -->
<div class="search-container">
<el-form ref="queryFormRef" :model="queryParams" :inline="true">
<el-row :gutter="20">
<el-col :span="24" :md="12" :lg="6">
<el-form-item label="关键字" prop="keywords">
<el-input
v-model="queryParams.keywords"
placeholder="字典名称/编码"
clearable
@keyup.enter="handleQuery"
/>
</el-form-item>
</el-col>
<el-form-item label="关键字" prop="keywords">
<el-input
v-model="queryParams.keywords"
placeholder="字典名称/编码"
clearable
@keyup.enter="handleQuery"
/>
</el-form-item>
<div class="search-form-btn-box">
<div class="search-form-btn-box-item">
<el-form-item>
<el-button type="primary" icon="search" @click="handleQuery()">搜索</el-button>
<el-button icon="refresh" @click="handleResetQuery()">重置</el-button>
</el-form-item>
</div>
</div>
</el-row>
<el-form-item class="search-buttons">
<el-button type="primary" icon="search" @click="handleQuery()">搜索</el-button>
<el-button icon="refresh" @click="handleResetQuery()">重置</el-button>
</el-form-item>
</el-form>
</div>
<el-card shadow="never">
<div class="mb-[10px]">
<el-button type="success" icon="plus" @click="handleAddClick()">新增</el-button>
<el-button type="danger" :disabled="ids.length === 0" icon="delete" @click="handleDelete()">
删除
</el-button>
<el-card shadow="hover" class="data-table">
<div class="data-table__toolbar">
<div class="data-table__toolbar--actions">
<el-button type="success" icon="plus" @click="handleAddClick()">新增</el-button>
<el-button
type="danger"
:disabled="ids.length === 0"
icon="delete"
@click="handleDelete()"
>
删除
</el-button>
</div>
</div>
<el-table
@@ -40,6 +40,7 @@
highlight-current-row
:data="tableData"
border
class="data-table__content"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" />

View File

@@ -1,47 +1,45 @@
<template>
<div class="app-container">
<div class="search-bar">
<!-- 搜索区域 -->
<div class="search-container">
<el-form ref="queryFormRef" :model="queryParams" :inline="true">
<el-row :gutter="22">
<el-col :span="24" :md="12" :lg="6">
<el-form-item prop="keywords" label="关键字">
<el-input
v-model="queryParams.keywords"
placeholder="日志内容"
clearable
@keyup.enter="handleQuery"
/>
</el-form-item>
</el-col>
<el-col :span="24" :md="12" :lg="6">
<el-form-item prop="createTime" label="操作时间">
<el-date-picker
v-model="queryParams.createTime"
:editable="false"
class="!w-[240px]"
type="daterange"
range-separator="~"
start-placeholder="开始时间"
end-placeholder="截止时间"
value-format="YYYY-MM-DD"
/>
</el-form-item>
</el-col>
<el-form-item prop="keywords" label="关键字">
<el-input
v-model="queryParams.keywords"
placeholder="日志内容"
clearable
@keyup.enter="handleQuery"
/>
</el-form-item>
<div class="search-form-btn-box">
<div class="search-form-btn-box-item">
<el-form-item>
<el-button type="primary" icon="search" @click="handleQuery">搜索</el-button>
<el-button icon="refresh" @click="handleResetQuery">重置</el-button>
</el-form-item>
</div>
</div>
</el-row>
<el-form-item prop="createTime" label="操作时间">
<el-date-picker
v-model="queryParams.createTime"
:editable="false"
class="fixed-width-item-lg"
type="daterange"
range-separator="~"
start-placeholder="开始时间"
end-placeholder="截止时间"
value-format="YYYY-MM-DD"
/>
</el-form-item>
<el-form-item class="search-buttons">
<el-button type="primary" icon="search" @click="handleQuery">搜索</el-button>
<el-button icon="refresh" @click="handleResetQuery">重置</el-button>
</el-form-item>
</el-form>
</div>
<el-card shadow="never">
<el-table v-loading="loading" :data="pageData" highlight-current-row border>
<el-card shadow="hover" class="data-table">
<el-table
v-loading="loading"
:data="pageData"
highlight-current-row
border
class="data-table__content"
>
<el-table-column label="操作时间" prop="createTime" width="180" />
<el-table-column label="操作人" prop="operator" width="120" />
<el-table-column label="日志模块" prop="module" width="100" />

View File

@@ -1,51 +1,48 @@
<template>
<div class="app-container">
<div class="search-bar">
<!-- 搜索区域 -->
<div class="search-container">
<el-form ref="queryFormRef" :model="queryParams" :inline="true" label-width="auto">
<el-row :gutter="22">
<el-col :span="24" :md="12" :lg="6">
<el-form-item label="关键字" prop="keywords">
<el-input
v-model="queryParams.keywords"
placeholder="菜单名称"
clearable
@keyup.enter="handleQuery"
/>
</el-form-item>
</el-col>
<div class="search-form-btn-box">
<div class="search-form-btn-box-item">
<el-form-item>
<el-button type="primary" icon="search" @click="handleQuery">搜索</el-button>
<el-button icon="refresh" @click="handleResetQuery">重置</el-button>
</el-form-item>
</div>
</div>
</el-row>
<el-form-item label="关键字" prop="keywords">
<el-input
v-model="queryParams.keywords"
placeholder="菜单名称"
clearable
@keyup.enter="handleQuery"
/>
</el-form-item>
<el-form-item class="search-buttons">
<el-button type="primary" icon="search" @click="handleQuery">搜索</el-button>
<el-button icon="refresh" @click="handleResetQuery">重置</el-button>
</el-form-item>
</el-form>
</div>
<el-card shadow="never">
<div class="mb-10px">
<el-button
v-hasPerm="['sys:menu:add']"
type="success"
icon="plus"
@click="handleOpenDialog('0')"
>
新增
</el-button>
<el-card shadow="hover" class="data-table">
<div class="data-table__toolbar">
<div class="data-table__toolbar--actions">
<el-button
v-hasPerm="['sys:menu:add']"
type="success"
icon="plus"
@click="handleOpenDialog('0')"
>
新增
</el-button>
</div>
</div>
<el-table
ref="dataTableRef"
v-loading="loading"
:data="menuTableData"
highlight-current-row
row-key="id"
:data="menuTableData"
:tree-props="{
children: 'children',
hasChildren: 'hasChildren',
}"
class="data-table__content"
@row-click="handleRowClick"
>
<el-table-column label="菜单名称" min-width="200">
@@ -282,11 +279,11 @@
始终显示
<el-tooltip placement="bottom" effect="light">
<template #content>
选择即使目录或菜单下只有一个子节点也会显示父节点
选择"是"即使目录或菜单下只有一个子节点也会显示父节点
<br />
选择如果目录或菜单下只有一个子节点则只显示该子节点隐藏父节点
选择"否"如果目录或菜单下只有一个子节点则只显示该子节点隐藏父节点
<br />
如果是叶子节点请选择
如果是叶子节点请选择"否"
</template>
<el-icon class="ml-1 cursor-pointer">
<QuestionFilled />

View File

@@ -1,43 +1,42 @@
<template>
<div class="app-container">
<div class="search-bar">
<!-- 搜索区域 -->
<div class="search-container">
<el-form ref="queryFormRef" :model="queryParams" :inline="true">
<el-row :gutter="22">
<el-col :span="24" :md="12" :lg="6">
<el-form-item label="通知标题" prop="title">
<el-input
v-model="queryParams.title"
placeholder="关键字"
clearable
@keyup.enter="handleQuery()"
/>
</el-form-item>
</el-col>
<el-form-item label="通知标题" prop="title">
<el-input
v-model="queryParams.title"
placeholder="关键字"
clearable
@keyup.enter="handleQuery()"
/>
</el-form-item>
<div class="search-form-btn-box">
<div class="search-form-btn-box-item">
<el-form-item>
<el-button type="primary" @click="handleQuery()">
<template #icon>
<Search />
</template>
搜索
</el-button>
<el-button @click="handleResetQuery()">
<template #icon>
<Refresh />
</template>
重置
</el-button>
</el-form-item>
</div>
</div>
</el-row>
<el-form-item class="search-buttons">
<el-button type="primary" @click="handleQuery()">
<template #icon>
<Search />
</template>
搜索
</el-button>
<el-button @click="handleResetQuery()">
<template #icon>
<Refresh />
</template>
重置
</el-button>
</el-form-item>
</el-form>
</div>
<el-card shadow="never">
<el-table ref="dataTableRef" v-loading="loading" :data="pageData" highlight-current-row>
<el-card shadow="hover" class="data-table">
<el-table
ref="dataTableRef"
v-loading="loading"
:data="pageData"
highlight-current-row
class="data-table__content"
>
<el-table-column type="index" label="序号" width="60" />
<el-table-column label="通知标题" prop="title" min-width="200" />
<el-table-column align="center" label="通知类型" width="150">

View File

@@ -1,6 +1,7 @@
<template>
<div class="app-container">
<div class="search-bar">
<!-- 搜索区域 -->
<div class="search-container">
<el-form
ref="queryFormRef"
:model="queryParams"
@@ -8,65 +9,64 @@
label-suffix=":"
label-width="auto"
>
<el-row :gutter="22">
<el-col :span="24" :md="12" :lg="6">
<el-form-item label="标题" prop="title">
<el-input
v-model="queryParams.title"
placeholder="标题"
clearable
@keyup.enter="handleQuery()"
/>
</el-form-item>
</el-col>
<el-col :span="24" :md="12" :lg="6">
<el-form-item label="发布状态" prop="publishStatus">
<el-select v-model="queryParams.publishStatus" clearable placeholder="全部">
<el-option :value="0" label="未发布" />
<el-option :value="1" label="已发布" />
<el-option :value="-1" label="已撤回" />
</el-select>
</el-form-item>
</el-col>
<el-form-item label="标题" prop="title">
<el-input
v-model="queryParams.title"
placeholder="标题"
clearable
@keyup.enter="handleQuery()"
/>
</el-form-item>
<div class="search-form-btn-box">
<div class="search-form-btn-box-item">
<el-form-item>
<el-button type="primary" icon="search" @click="handleQuery()">搜索</el-button>
<el-button icon="refresh" @click="handleResetQuery()">重置</el-button>
</el-form-item>
</div>
</div>
</el-row>
<el-form-item label="发布状态" prop="publishStatus">
<el-select
v-model="queryParams.publishStatus"
clearable
placeholder="全部"
style="width: 100px"
>
<el-option :value="0" label="未发布" />
<el-option :value="1" label="已发布" />
<el-option :value="-1" label="已撤回" />
</el-select>
</el-form-item>
<el-form-item class="search-buttons">
<el-button type="primary" icon="search" @click="handleQuery()">搜索</el-button>
<el-button icon="refresh" @click="handleResetQuery()">重置</el-button>
</el-form-item>
</el-form>
</div>
<el-card shadow="never" class="table-wrapper">
<template #header>
<el-button
v-hasPerm="['sys:notice:add']"
type="success"
icon="plus"
@click="handleOpenDialog()"
>
新增通知
</el-button>
<el-button
v-hasPerm="['sys:notice:delete']"
type="danger"
:disabled="selectIds.length === 0"
icon="delete"
@click="handleDelete()"
>
删除
</el-button>
</template>
<el-card shadow="hover" class="data-table">
<div class="data-table__toolbar">
<div class="data-table__toolbar--actions">
<el-button
v-hasPerm="['sys:notice:add']"
type="success"
icon="plus"
@click="handleOpenDialog()"
>
新增通知
</el-button>
<el-button
v-hasPerm="['sys:notice:delete']"
type="danger"
:disabled="selectIds.length === 0"
icon="delete"
@click="handleDelete()"
>
删除
</el-button>
</div>
</div>
<el-table
ref="dataTableRef"
v-loading="loading"
:data="pageData"
highlight-current-row
class="data-table__content"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" />

View File

@@ -1,37 +1,37 @@
<template>
<div class="app-container">
<div class="search-bar">
<!-- 搜索区域 -->
<div class="search-container">
<el-form ref="queryFormRef" :model="queryParams" :inline="true" label-width="auto">
<el-row :gutter="22">
<el-col :span="24" :md="12" :lg="6">
<el-form-item prop="keywords" label="关键字">
<el-input
v-model="queryParams.keywords"
placeholder="角色名称"
clearable
@keyup.enter="handleQuery"
/>
</el-form-item>
</el-col>
<el-form-item prop="keywords" label="关键字">
<el-input
v-model="queryParams.keywords"
placeholder="角色名称"
clearable
@keyup.enter="handleQuery"
/>
</el-form-item>
<div class="search-form-btn-box">
<div class="search-form-btn-box-item">
<el-form-item>
<el-button type="primary" icon="search" @click="handleQuery">搜索</el-button>
<el-button icon="refresh" @click="handleResetQuery">重置</el-button>
</el-form-item>
</div>
</div>
</el-row>
<el-form-item class="search-buttons">
<el-button type="primary" icon="search" @click="handleQuery">搜索</el-button>
<el-button icon="refresh" @click="handleResetQuery">重置</el-button>
</el-form-item>
</el-form>
</div>
<el-card shadow="never">
<div class="mb-10px">
<el-button type="success" icon="plus" @click="handleOpenDialog()">新增</el-button>
<el-button type="danger" :disabled="ids.length === 0" icon="delete" @click="handleDelete()">
删除
</el-button>
<el-card shadow="hover" class="data-table">
<div class="data-table__toolbar">
<div class="data-table__toolbar--actions">
<el-button type="success" icon="plus" @click="handleOpenDialog()">新增</el-button>
<el-button
type="danger"
:disabled="ids.length === 0"
icon="delete"
@click="handleDelete()"
>
删除
</el-button>
</div>
</div>
<el-table
@@ -40,6 +40,7 @@
:data="roleList"
highlight-current-row
border
class="data-table__content"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" />

View File

@@ -9,58 +9,52 @@
<!-- 用户列表 -->
<el-col :lg="20" :xs="24">
<div class="search-bar">
<!-- 搜索区域 -->
<div class="search-container">
<el-form ref="queryFormRef" :model="queryParams" :inline="true" label-width="auto">
<el-row :gutter="22">
<el-col :span="24" :md="12" :lg="6">
<el-form-item label="关键字" prop="keywords">
<el-input
v-model="queryParams.keywords"
placeholder="用户名/昵称/手机号"
clearable
@keyup.enter="handleQuery"
/>
</el-form-item>
</el-col>
<el-form-item label="关键字" prop="keywords">
<el-input
v-model="queryParams.keywords"
placeholder="用户名/昵称/手机号"
clearable
@keyup.enter="handleQuery"
/>
</el-form-item>
<el-col :span="24" :md="12" :lg="6">
<el-form-item label="状态" prop="status">
<el-select v-model="queryParams.status" placeholder="全部" clearable>
<el-option label="正常" :value="1" />
<el-option label="禁用" :value="0" />
</el-select>
</el-form-item>
</el-col>
<el-form-item label="状态" prop="status">
<el-select
v-model="queryParams.status"
placeholder="全部"
clearable
style="width: 100px"
>
<el-option label="正常" :value="1" />
<el-option label="禁用" :value="0" />
</el-select>
</el-form-item>
<el-col :span="24" :md="12" :lg="6">
<el-form-item label="创建时间">
<el-date-picker
v-model="queryParams.createTime"
:editable="false"
type="daterange"
range-separator="~"
start-placeholder="开始时间"
end-placeholder="截止时间"
value-format="YYYY-MM-DD"
/>
</el-form-item>
</el-col>
<el-form-item label="创建时间">
<el-date-picker
v-model="queryParams.createTime"
:editable="false"
type="daterange"
range-separator="~"
start-placeholder="开始时间"
end-placeholder="截止时间"
value-format="YYYY-MM-DD"
/>
</el-form-item>
<div class="search-form-btn-box">
<div class="search-form-btn-box-item">
<el-form-item>
<el-button type="primary" icon="search" @click="handleQuery">搜索</el-button>
<el-button icon="refresh" @click="handleResetQuery">重置</el-button>
</el-form-item>
</div>
</div>
</el-row>
<el-form-item class="search-buttons">
<el-button type="primary" icon="search" @click="handleQuery">搜索</el-button>
<el-button icon="refresh" @click="handleResetQuery">重置</el-button>
</el-form-item>
</el-form>
</div>
<el-card shadow="never">
<div class="flex-x-between mb-10px">
<div>
<el-card shadow="hover" class="data-table">
<div class="data-table__toolbar">
<div class="data-table__toolbar--actions">
<el-button
v-hasPerm="['sys:user:add']"
type="success"
@@ -79,7 +73,7 @@
删除
</el-button>
</div>
<div>
<div class="data-table__toolbar--tools">
<el-button
v-hasPerm="'sys:user:import'"
icon="upload"
@@ -94,13 +88,20 @@
</div>
</div>
<el-table v-loading="loading" :data="pageData" @selection-change="handleSelectionChange">
<el-table
v-loading="loading"
:data="pageData"
border
stripe
highlight-current-row
class="data-table__content"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="50" align="center" />
<el-table-column label="用户名" prop="username" />
<el-table-column label="昵称" width="150" align="center" prop="nickname" />
<el-table-column label="性别" width="100" align="center">
<template #default="scope">
<!-- 性别字典翻译 -->
<DictLabel v-model="scope.row.gender" code="gender" />
</template>
</el-table-column>