Эх сурвалжийг харах

!1869 优化界面细节,修复查询栏中的组件轻微靠上
Merge pull request !1869 from 夜鹰/dev

zuohuaijun 8 сар өмнө
parent
commit
722d025c03
35 өөрчлөгдсөн 383 нэмэгдсэн , 332 устгасан
  1. 1 1
      Web/src/components/table/index.vue
  2. 2 2
      Web/src/components/table/search.vue
  3. 5 1
      Web/src/layout/component/main.vue
  4. 6 2
      Web/src/layout/footer/index.vue
  5. 2 0
      Web/src/theme/app.scss
  6. 12 8
      Web/src/theme/element.scss
  7. 1 1
      Web/src/views/home/notice/index.vue
  8. 2 2
      Web/src/views/home/widgets/index.vue
  9. 1 1
      Web/src/views/system/codeGen/index.vue
  10. 1 1
      Web/src/views/system/config/index.vue
  11. 1 1
      Web/src/views/system/database/index.vue
  12. 1 1
      Web/src/views/system/file/index.vue
  13. 1 1
      Web/src/views/system/infoSetting/index.vue
  14. 1 1
      Web/src/views/system/job/index.vue
  15. 1 1
      Web/src/views/system/ldap/index.vue
  16. 1 1
      Web/src/views/system/log/difflog/index.vue
  17. 1 1
      Web/src/views/system/log/exlog/index.vue
  18. 1 1
      Web/src/views/system/log/oplog/index.vue
  19. 1 1
      Web/src/views/system/log/vislog/index.vue
  20. 1 1
      Web/src/views/system/menu/index.vue
  21. 1 1
      Web/src/views/system/notice/index.vue
  22. 1 1
      Web/src/views/system/openAccess/index.vue
  23. 125 119
      Web/src/views/system/org/index.vue
  24. 1 1
      Web/src/views/system/plugin/index.vue
  25. 1 1
      Web/src/views/system/pos/index.vue
  26. 1 1
      Web/src/views/system/print/index.vue
  27. 1 1
      Web/src/views/system/region/index.vue
  28. 1 1
      Web/src/views/system/role/index.vue
  29. 1 1
      Web/src/views/system/tenant/index.vue
  30. 1 1
      Web/src/views/system/tenantConfig/index.vue
  31. 184 168
      Web/src/views/system/update/index.vue
  32. 19 4
      Web/src/views/system/user/index.vue
  33. 1 1
      Web/src/views/system/userRegWay/index.vue
  34. 1 1
      Web/src/views/system/weChatPay/index.vue
  35. 1 1
      Web/src/views/system/weChatUser/index.vue

+ 1 - 1
Web/src/components/table/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<div class="table-container">
-		<div v-if="!hideTool" class="table-header mb15">
+		<div v-if="!hideTool" class="table-header mb8">
 			<div>
 				<slot name="command"></slot>
 			</div>

+ 2 - 2
Web/src/components/table/search.vue

@@ -3,7 +3,7 @@
 		<el-form ref="tableSearchRef" :model="state.innerModelValue" label-width="100px" class="table-form">
 			<el-row :gutter="20">
 				<!-- <el-col :xs="12" :sm="8" :md="8" :lg="6" :xl="4" class="mb20"></el-col> -->
-				<el-col :xs="12" :sm="5" :md="5" :lg="6" :xl="4" class="mb20" v-for="(val, key) in search" :key="key" v-show="key < 3 || state.isToggle">
+				<el-col :xs="12" :sm="5" :md="5" :lg="6" :xl="4" v-for="(val, key) in search" :key="key" v-show="key < 3 || state.isToggle">
 					<template v-if="val.type">
 						<el-form-item
 							label-width="auto"
@@ -84,7 +84,7 @@
 						</el-form-item>
 					</template>
 				</el-col>
-				<el-col :xs="12" :sm="9" :md="9" :lg="6" :xl="4" class="mb20">
+				<el-col :xs="12" :sm="9" :md="9" :lg="6" :xl="4">
 					<el-form-item class="table-form-btn" label-width="auto">
 						<div>
 							<!-- 使用el-button-group会导致具有type属性的按钮的右边框无法显示 -->

+ 5 - 1
Web/src/layout/component/main.vue

@@ -1,6 +1,10 @@
 <template>
 	<el-main class="layout-main" :style="isFixedHeader ? `height: calc(100% - ${setMainHeight})` : `minHeight: calc(100% - ${setMainHeight})`">
-		<el-scrollbar ref="layoutMainScrollbarRef" class="layout-main-scroll layout-backtop-header-fixed" wrap-class="layout-main-scroll" view-class="layout-main-scroll">
+		<el-scrollbar ref="layoutMainScrollbarRef" 
+            class="layout-main-scroll layout-backtop-header-fixed" 
+            wrap-class="layout-main-scroll" 
+            view-class="layout-main-scroll overflow-bug" 
+        >
 			<LayoutParentView />
 			<LayoutFooter v-if="isFooter" />
 		</el-scrollbar>

+ 6 - 2
Web/src/layout/footer/index.vue

@@ -1,8 +1,8 @@
 <template>
-	<div class="layout-footer pb15">
+	<div class="layout-footer">
 		<div class="layout-footer-warp">
 			<!-- <div>{{ themeConfig.globalTitle }}</div> -->
-			<div class="mt5">{{ themeConfig.copyright }} {{ themeConfig.globalTitle }}</div>
+			<div>{{ themeConfig.copyright }} {{ themeConfig.globalTitle }}</div>
 		</div>
 	</div>
 </template>
@@ -19,6 +19,10 @@ const { themeConfig } = storeToRefs(storesThemeConfig);
 .layout-footer {
 	width: 100%;
 	display: flex;
+    line-height: 30px;
+    height: 30px;
+    background: #fff;
+    border-top: 1px solid var(--el-border-color-light);
 
 	&-warp {
 		margin: auto;

+ 2 - 0
Web/src/theme/app.scss

@@ -97,6 +97,8 @@ body,
 				position: relative;
 				padding: 5px; // 四周间隙
 			}
+
+            .overflow-bug { padding: 1px 0; }  // 不加会在内容未占满时上下有1px的滚动,不知道为什么
 		}
 	}
 	// 用于界面高度自适应

+ 12 - 8
Web/src/theme/element.scss

@@ -44,14 +44,18 @@
 
 	// 修复行内表单最后一个 el-form-item 位置下移问题
 	&.el-form--inline {
-		.el-form-item--large.el-form-item:last-of-type {
-			margin-bottom: 22px !important;
-		}
-
-		.el-form-item--default.el-form-item:last-of-type,
-		.el-form-item--small.el-form-item:last-of-type {
-			margin-bottom: 18px !important;
-		}
+		// .el-form-item--large.el-form-item:last-of-type {
+		// 	margin-bottom: 22px !important;
+		// }
+
+		// .el-form-item--default.el-form-item:last-of-type,
+		// .el-form-item--small.el-form-item:last-of-type {
+		// 	margin-bottom: 18px !important;
+		// }
+
+        .el-form-item--small.el-form-item,.el-form-item:last-of-type {
+            margin: 5px 15px !important;
+        }
 	}
 
 	// https://gitee.com/lyt-top/vue-next-admin/issues/I5K1PM

+ 1 - 1
Web/src/views/home/notice/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<div class="notice-container">
-		<el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+		<el-card shadow="hover" :body-style="{ padding: 5 }">
 			<el-form :model="state.queryParams" ref="queryForm" :inline="true">
 				<el-form-item label="标题">
 					<el-input v-model="state.queryParams.title" placeholder="标题" clearable />

+ 2 - 2
Web/src/views/home/widgets/index.vue

@@ -1,5 +1,5 @@
 <template>
-	<div style="height: 100vh; overflow: hidden">
+	<div style="height: 100%; overflow: hidden">
 		<div class="noticebar" style="display: flex">
 			<NoticeBar />
 			<div class="editlayout">
@@ -255,7 +255,7 @@ const close = () => {
 	display: flex;
 	flex-direction: row;
 	flex: 1;
-	height: 100%;
+	height: calc(100% - 40px);;
 }
 .widgets-content {
 	flex: 1;

+ 1 - 1
Web/src/views/system/codeGen/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<div class="sys-codeGen-container">
-		<el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+		<el-card shadow="hover" :body-style="{ padding: 5 }">
 			<el-form :model="state.queryParams" ref="queryForm" :inline="true">
 				<el-form-item label="业务名">
 					<el-input placeholder="业务名" clearable @keyup.enter="handleQuery" v-model="state.queryParams.busName" />

+ 1 - 1
Web/src/views/system/config/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<div class="sys-config-container">
-		<el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+		<el-card shadow="hover" :body-style="{ padding: 5 }">
 			<TableSearch :search="tb.tableData.search" @search="onSearch" />
 		</el-card>
 		<el-card class="full-table" shadow="hover" style="margin-top: 5px">

+ 1 - 1
Web/src/views/system/database/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<div class="sys-database-container">
-		<el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+		<el-card shadow="hover" :body-style="{ padding: 5 }">
 			<el-form :model="state.queryParams" ref="queryForm" :inline="true" v-loading="state.loading">
 				<el-form-item label="库名">
 					<el-select v-model="state.configId" placeholder="库名" filterable @change="handleQueryTable">

+ 1 - 1
Web/src/views/system/file/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<div class="sys-file-container">
-		<el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+		<el-card shadow="hover" :body-style="{ padding: 5 }">
 			<el-form :model="state.queryParams" ref="queryForm" :inline="true">
 				<el-form-item label="租户" v-if="userStore.userInfos.accountType == 999">
 					<el-select v-model="state.queryParams.tenantId" placeholder="租户" style="width: 100%">

+ 1 - 1
Web/src/views/system/infoSetting/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<div>
-		<el-card shadow="hover" v-loading="state.isLoading">
+		<el-card shadow="hover" v-loading="state.isLoading" style="height: 100%;">
 			<el-descriptions title="系统信息配置" :column="2" :border="true">
 				<template #title>
 					<el-icon size="16" style="margin-right: 3px; display: inline; vertical-align: middle"> <ele-Setting /> </el-icon> 系统信息配置

+ 1 - 1
Web/src/views/system/job/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<div class="sys-job-container">
-		<el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+		<el-card shadow="hover" :body-style="{ padding: 5 }">
 			<el-form :model="state.queryParams" ref="queryForm" :inline="true">
 				<el-form-item label="作业编号">
 					<el-input v-model="state.queryParams.jobId" placeholder="作业编号" clearable />

+ 1 - 1
Web/src/views/system/ldap/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<div class="sysLdap-container">
-		<el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+		<el-card shadow="hover" :body-style="{ padding: 5 }">
 			<el-form :model="state.queryParams" ref="queryForm" :inline="true">
 				<el-form-item label="租户" v-if="userStore.userInfos.accountType == 999">
 					<el-select v-model="state.queryParams.tenantId" placeholder="租户" style="width: 100%">

+ 1 - 1
Web/src/views/system/log/difflog/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<div class="sys-difflog-container">
-		<el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+		<el-card shadow="hover" :body-style="{ padding: 5 }">
 			<el-form :model="state.queryParams" ref="queryForm" :inline="true">
 				<el-form-item label="租户" v-if="userStore.userInfos.accountType == 999">
 					<el-select v-model="state.queryParams.tenantId" placeholder="租户" style="width: 100%">

+ 1 - 1
Web/src/views/system/log/exlog/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<div class="sys-exlog-container" v-loading="state.loading">
-		<el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+		<el-card shadow="hover" :body-style="{ padding: 5 }">
 			<el-form :model="state.queryParams" ref="queryForm" :inline="true">
 				<el-form-item label="租户" v-if="userStore.userInfos.accountType == 999">
 					<el-select v-model="state.queryParams.tenantId" placeholder="租户" style="width: 100%">

+ 1 - 1
Web/src/views/system/log/oplog/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<div class="sys-oplog-container" v-loading="state.loading">
-		<el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+		<el-card shadow="hover" :body-style="{ padding: 5 }">
 			<el-form :model="state.queryParams" ref="queryForm" :inline="true">
 				<el-form-item label="租户" v-if="userStore.userInfos.accountType == 999">
 					<el-select v-model="state.queryParams.tenantId" placeholder="租户" style="width: 100%">

+ 1 - 1
Web/src/views/system/log/vislog/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<div class="sys-vislog-container">
-		<el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+		<el-card shadow="hover" :body-style="{ padding: 5 }">
 			<el-form :model="state.queryParams" ref="queryForm" :inline="true">
 				<el-form-item label="租户" v-if="userStore.userInfos.accountType == 999">
 					<el-select v-model="state.queryParams.tenantId" placeholder="租户" style="width: 100%">

+ 1 - 1
Web/src/views/system/menu/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<div class="sys-menu-container">
-		<el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+		<el-card shadow="hover" :body-style="{ padding: 5 }">
 			<el-form :model="state.queryParams" ref="queryForm" :inline="true">
 				<el-form-item label="租户" v-if="userStore.userInfos.accountType == 999">
 					<el-select v-model="state.queryParams.tenantId" placeholder="租户" style="width: 100%">

+ 1 - 1
Web/src/views/system/notice/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<div class="sys-notice-container">
-		<el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+		<el-card shadow="hover" :body-style="{ padding: 5 }">
 			<el-form :model="state.queryParams" ref="queryForm" :inline="true">
 				<el-form-item label="标题">
 					<el-input v-model="state.queryParams.title" placeholder="标题" clearable />

+ 1 - 1
Web/src/views/system/openAccess/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<div class="sys-open-access-container">
-		<el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+		<el-card shadow="hover" :body-style="{ padding: 5 }">
 			<el-form :model="state.queryParams" ref="queryForm" :inline="true">
 				<el-form-item label="身份标识">
 					<el-input v-model="state.queryParams.accessKey" placeholder="身份标识" clearable />

+ 125 - 119
Web/src/views/system/org/index.vue

@@ -1,68 +1,74 @@
 <template>
-	<div class="sys-org-container">
-		<splitpanes class="default-theme">
-			<pane size="20">
-				<OrgTree ref="orgTreeRef" @node-click="nodeClick" />
-			</pane>
-			<pane size="80" style="overflow: auto;">
-				<el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
-					<el-form :model="state.queryParams" ref="queryForm" :inline="true">
-						<el-form-item label="机构名称">
-							<el-input v-model="state.queryParams.name" placeholder="机构名称" clearable />
-						</el-form-item>
-						<!-- <el-form-item label="机构编码">
+    <div class="sys-org-container">
+        <splitpanes class="default-theme">
+            <pane size="20">
+                <OrgTree ref="orgTreeRef" @node-click="nodeClick" />
+            </pane>
+            <pane size="80" style="overflow: auto; display: flex; flex-direction: column; background-color: #fff;">
+                <el-card shadow="hover" :body-style="{ padding: 5 }">
+                    <el-form :model="state.queryParams" ref="queryForm" :inline="true">
+                        <el-form-item label="机构名称">
+                            <el-input v-model="state.queryParams.name" placeholder="机构名称" clearable />
+                        </el-form-item>
+                        <!-- <el-form-item label="机构编码">
 							<el-input v-model="state.queryParams.code" placeholder="机构编码" clearable />
 						</el-form-item> -->
-						<el-form-item label="机构类型">
-              <g-sys-dict v-model="state.queryParams.type" code="org_type" render-as="select" filterable clearable />
-						</el-form-item>
-						<el-form-item>
-							<el-button-group>
-								<el-button type="primary" icon="ele-Search" @click="handleQuery"> 查询 </el-button>
-								<el-button icon="ele-Refresh" @click="resetQuery"> 重置 </el-button>
-							</el-button-group>
-						</el-form-item>
-						<el-form-item>
-							<el-button type="primary" icon="ele-Plus" @click="openAddOrg" v-auth="'sysOrg:add'"> 新增 </el-button>
-						</el-form-item>
-					</el-form>
-				</el-card>
+                        <el-form-item label="机构类型">
+                            <g-sys-dict v-model="state.queryParams.type" code="org_type" render-as="select" filterable clearable />
+                        </el-form-item>
+                        <el-form-item>
+                            <el-button-group>
+                                <el-button type="primary" icon="ele-Search" @click="handleQuery"> 查询 </el-button>
+                                <el-button icon="ele-Refresh" @click="resetQuery"> 重置 </el-button>
+                            </el-button-group>
+                        </el-form-item>
+                        <el-form-item>
+                            <el-button type="primary" icon="ele-Plus" @click="openAddOrg" v-auth="'sysOrg:add'"> 新增
+                            </el-button>
+                        </el-form-item>
+                    </el-form>
+                </el-card>
 
-				<el-card class="full-table" shadow="hover" style="margin-top: 5px">
-					<el-table :data="state.orgData" style="width: 100%" v-loading="state.loading" row-key="id" default-expand-all :tree-props="{ children: 'children', hasChildren: 'hasChildren' }" border>
-						<el-table-column prop="name" label="机构名称" min-width="160" header-align="center" show-overflow-tooltip />
-						<el-table-column prop="code" label="机构编码" align="center" show-overflow-tooltip />
-						<el-table-column prop="level" label="级别" width="70" align="center" show-overflow-tooltip />
-						<el-table-column prop="type" label="机构类型" align="center" show-overflow-tooltip>
-              <template #default="scope">
-                <g-sys-dict v-model="scope.row.type" code="org_type" />
-              </template>
-            </el-table-column>
-						<el-table-column prop="orderNo" label="排序" width="70" align="center" show-overflow-tooltip />
-						<el-table-column label="状态" width="70" align="center" show-overflow-tooltip>
-							<template #default="scope">
-                <g-sys-dict v-model="scope.row.status" code="StatusEnum" />
-							</template>
-						</el-table-column>
-						<el-table-column label="修改记录" width="100" align="center" show-overflow-tooltip>
-							<template #default="scope">
-								<ModifyRecord :data="scope.row" />
-							</template>
-						</el-table-column>
-						<el-table-column label="操作" width="210" fixed="right" align="center" show-overflow-tooltip>
-							<template #default="scope">
-								<el-button icon="ele-Edit" text type="primary" @click="openEditOrg(scope.row)" v-auth="'sysOrg:update'"> 编辑 </el-button>
-								<el-button icon="ele-Delete" text type="danger" @click="delOrg(scope.row)" v-auth="'sysOrg:delete'"> 删除 </el-button>
-								<el-button icon="ele-CopyDocument" text type="primary" @click="openCopyOrg(scope.row)" v-auth="'sysOrg:add'"> 复制 </el-button>
-							</template>
-						</el-table-column>
-					</el-table>
-				</el-card>
-			</pane>
-		</splitpanes>
+                <el-card class="full-table" shadow="hover" style="margin-top: 5px">
+                    <el-table :data="state.orgData" style="width: 100%" v-loading="state.loading" row-key="id"
+                        default-expand-all :tree-props="{ children: 'children', hasChildren: 'hasChildren' }" border>
+                        <el-table-column prop="name" label="机构名称" min-width="160" header-align="center"
+                            show-overflow-tooltip />
+                        <el-table-column prop="code" label="机构编码" align="center" show-overflow-tooltip />
+                        <el-table-column prop="level" label="级别" width="70" align="center" show-overflow-tooltip />
+                        <el-table-column prop="type" label="机构类型" align="center" show-overflow-tooltip>
+                            <template #default="scope">
+                                <g-sys-dict v-model="scope.row.type" code="org_type" />
+                            </template>
+                        </el-table-column>
+                        <el-table-column prop="orderNo" label="排序" width="70" align="center" show-overflow-tooltip />
+                        <el-table-column label="状态" width="70" align="center" show-overflow-tooltip>
+                            <template #default="scope">
+                                <g-sys-dict v-model="scope.row.status" code="StatusEnum" />
+                            </template>
+                        </el-table-column>
+                        <el-table-column label="修改记录" width="100" align="center" show-overflow-tooltip>
+                            <template #default="scope">
+                                <ModifyRecord :data="scope.row" />
+                            </template>
+                        </el-table-column>
+                        <el-table-column label="操作" width="210" fixed="right" align="center" show-overflow-tooltip>
+                            <template #default="scope">
+                                <el-button icon="ele-Edit" text type="primary" @click="openEditOrg(scope.row)"
+                                    v-auth="'sysOrg:update'"> 编辑 </el-button>
+                                <el-button icon="ele-Delete" text type="danger" @click="delOrg(scope.row)"
+                                    v-auth="'sysOrg:delete'"> 删除 </el-button>
+                                <el-button icon="ele-CopyDocument" text type="primary" @click="openCopyOrg(scope.row)"
+                                    v-auth="'sysOrg:add'"> 复制 </el-button>
+                            </template>
+                        </el-table-column>
+                    </el-table>
+                </el-card>
+            </pane>
+        </splitpanes>
 
-		<EditOrg ref="editOrgRef" :title="state.editOrgTitle" :orgData="state.orgTreeData" @reload="handleQuery" />
-	</div>
+        <EditOrg ref="editOrgRef" :title="state.editOrgTitle" :orgData="state.orgTreeData" @reload="handleQuery" />
+    </div>
 </template>
 
 <script lang="ts" setup name="sysOrg">
@@ -80,96 +86,96 @@ import ModifyRecord from '/@/components/table/modifyRecord.vue';
 const editOrgRef = ref<InstanceType<typeof EditOrg>>();
 const orgTreeRef = ref<InstanceType<typeof OrgTree>>();
 const state = reactive({
-	loading: false,
-	tenantList: [] as Array<any>,
-	orgData: [] as Array<SysOrg>, // 机构列表数据
-	orgTreeData: [] as Array<SysOrg>, // 机构树所有数据
-	queryParams: {
-		id: 0,
-		name: undefined,
-		code: undefined,
-		type: undefined,
-	},
-	tenantId: undefined,
-	editOrgTitle: ''
+    loading: false,
+    tenantList: [] as Array<any>,
+    orgData: [] as Array<SysOrg>, // 机构列表数据
+    orgTreeData: [] as Array<SysOrg>, // 机构树所有数据
+    queryParams: {
+        id: 0,
+        name: undefined,
+        code: undefined,
+        type: undefined,
+    },
+    tenantId: undefined,
+    editOrgTitle: ''
 });
 
 onMounted(async () => {
-	handleQuery();
+    handleQuery();
 });
 
 // 查询操作
 const handleQuery = async (updateTree: boolean = false) => {
-	state.loading = true;
-	let res = await getAPI(SysOrgApi).apiSysOrgListGet(state.queryParams.id, state.queryParams.name, state.queryParams.code, state.queryParams.type);
-	state.orgData = res.data.result ?? [];
-	state.loading = false;
-	// 是否更新左侧机构列表树
-	if (updateTree) {
-		orgTreeRef.value?.initTreeData();
-		// 更新编辑页面机构列表树
-		res = await getAPI(SysOrgApi).apiSysOrgListGet(0);
-		state.orgTreeData = res.data.result ?? [];
-	}
+    state.loading = true;
+    let res = await getAPI(SysOrgApi).apiSysOrgListGet(state.queryParams.id, state.queryParams.name, state.queryParams.code, state.queryParams.type);
+    state.orgData = res.data.result ?? [];
+    state.loading = false;
+    // 是否更新左侧机构列表树
+    if (updateTree) {
+        orgTreeRef.value?.initTreeData();
+        // 更新编辑页面机构列表树
+        res = await getAPI(SysOrgApi).apiSysOrgListGet(0);
+        state.orgTreeData = res.data.result ?? [];
+    }
 
-	// 若无选择节点并且查询条件为空时,更新编辑页面机构列表树
-	if (state.queryParams.id == 0 && state.queryParams.name == undefined && state.queryParams.code == undefined && state.queryParams.type == undefined && !updateTree)
-		state.orgTreeData = state.orgData;
+    // 若无选择节点并且查询条件为空时,更新编辑页面机构列表树
+    if (state.queryParams.id == 0 && state.queryParams.name == undefined && state.queryParams.code == undefined && state.queryParams.type == undefined && !updateTree)
+        state.orgTreeData = state.orgData;
 };
 
 // 重置操作
 const resetQuery = () => {
-	state.queryParams.id = 0;
-	state.queryParams.name = undefined;
-	state.queryParams.code = undefined;
-	state.queryParams.type = undefined;
-	handleQuery();
+    state.queryParams.id = 0;
+    state.queryParams.name = undefined;
+    state.queryParams.code = undefined;
+    state.queryParams.type = undefined;
+    handleQuery();
 };
 
 // 打开新增页面
 const openAddOrg = () => {
-	state.editOrgTitle = '添加机构';
-	editOrgRef.value?.openDialog({ status: 1, orderNo: 100, tenantId: state.tenantId });
+    state.editOrgTitle = '添加机构';
+    editOrgRef.value?.openDialog({ status: 1, orderNo: 100, tenantId: state.tenantId });
 };
 
 // 打开编辑页面
 const openEditOrg = (row: any) => {
-	state.editOrgTitle = '编辑机构';
-	editOrgRef.value?.openDialog(row);
+    state.editOrgTitle = '编辑机构';
+    editOrgRef.value?.openDialog(row);
 };
 
 // 打开复制页面
 const openCopyOrg = (row: any) => {
-	state.editOrgTitle = '复制机构';
-	var copyRow = JSON.parse(JSON.stringify(row)) as UpdateOrgInput;
-	copyRow.id = 0;
-	copyRow.name = '';
-	editOrgRef.value?.openDialog(copyRow);
+    state.editOrgTitle = '复制机构';
+    var copyRow = JSON.parse(JSON.stringify(row)) as UpdateOrgInput;
+    copyRow.id = 0;
+    copyRow.name = '';
+    editOrgRef.value?.openDialog(copyRow);
 };
 
 // 删除
 const delOrg = (row: any) => {
-	ElMessageBox.confirm(`确定删除机构:【${row.name}】?`, '提示', {
-		confirmButtonText: '确定',
-		cancelButtonText: '取消',
-		type: 'warning',
-	})
-		.then(async () => {
-			await getAPI(SysOrgApi).apiSysOrgDeletePost({ id: row.id });
-			ElMessage.success('删除成功');
-			handleQuery(true);
-		})
-		.catch(() => {});
+    ElMessageBox.confirm(`确定删除机构:【${row.name}】?`, '提示', {
+        confirmButtonText: '确定',
+        cancelButtonText: '取消',
+        type: 'warning',
+    })
+        .then(async () => {
+            await getAPI(SysOrgApi).apiSysOrgDeletePost({ id: row.id });
+            ElMessage.success('删除成功');
+            handleQuery(true);
+        })
+        .catch(() => { });
 };
 
 // 树组件点击
 const nodeClick = async (node: any) => {
-	state.queryParams.id = node.id;
-	state.queryParams.name = undefined;
-	state.queryParams.code = undefined;
-	state.queryParams.type = undefined;
-	state.tenantId = node.tenantId;
-	console.log(node)
-	handleQuery();
+    state.queryParams.id = node.id;
+    state.queryParams.name = undefined;
+    state.queryParams.code = undefined;
+    state.queryParams.type = undefined;
+    state.tenantId = node.tenantId;
+    console.log(node)
+    handleQuery();
 };
 </script>

+ 1 - 1
Web/src/views/system/plugin/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<div class="sys-plugin-container">
-		<el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+		<el-card shadow="hover" :body-style="{ padding: 5 }">
 			<el-form :model="state.queryParams" ref="queryForm" :inline="true">
 				<el-form-item label="租户" v-if="userStore.userInfos.accountType == 999">
 					<el-select v-model="state.queryParams.tenantId" placeholder="租户" style="width: 100%">

+ 1 - 1
Web/src/views/system/pos/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<div class="sys-pos-container">
-		<el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+		<el-card shadow="hover" :body-style="{ padding: 5 }">
 			<el-form :model="state.queryParams" ref="queryForm" :inline="true">
 				<el-form-item label="租户" v-if="userStore.userInfos.accountType == 999">
 					<el-select v-model="state.queryParams.tenantId" placeholder="租户" style="width: 100%">

+ 1 - 1
Web/src/views/system/print/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<div class="sys-print-container">
-		<el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+		<el-card shadow="hover" :body-style="{ padding: 5 }">
 			<el-form :model="state.queryParams" ref="queryForm" :inline="true">
 				<el-form-item label="租户" v-if="userStore.userInfos.accountType == 999">
 					<el-select v-model="state.queryParams.tenantId" placeholder="租户" style="width: 100%">

+ 1 - 1
Web/src/views/system/region/index.vue

@@ -4,7 +4,7 @@
 			<pane size="20">
 				<RegionTree ref="regionTreeRef" @node-click="nodeClick" />
 			</pane>
-			<pane size="80">
+			<pane size="80" style="overflow: auto; display: flex; flex-direction: column; background-color: #fff;">
 				<el-card class="full-table" shadow="hover">
 					<el-form :model="state.queryParams" ref="queryForm" :inline="true">
 						<el-form-item label="行政名称">

+ 1 - 1
Web/src/views/system/role/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<div class="sys-role-container">
-		<el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+		<el-card shadow="hover" :body-style="{ padding: 5 }">
 			<el-form :model="state.queryParams" ref="queryForm" :inline="true">
 				<el-form-item label="租户" v-if="userStore.userInfos.accountType == 999">
 					<el-select v-model="state.queryParams.tenantId" placeholder="租户" style="width: 100%">

+ 1 - 1
Web/src/views/system/tenant/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<div class="sys-tenant-container">
-		<el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+		<el-card shadow="hover" :body-style="{ padding: 5 }">
 			<el-form :model="state.queryParams" ref="queryForm" :inline="true">
 				<el-form-item label="租户名称">
 					<el-input v-model="state.queryParams.name" placeholder="租户名称" clearable />

+ 1 - 1
Web/src/views/system/tenantConfig/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<div class="sys-config-container">
-		<el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+		<el-card shadow="hover" :body-style="{ padding: 5 }">
 			<TableSearch :search="tb.tableData.search" @search="onSearch" />
 		</el-card>
 		<el-card class="full-table" shadow="hover" style="margin-top: 5px">

+ 184 - 168
Web/src/views/system/update/index.vue

@@ -1,38 +1,47 @@
 <template>
-	<div class="sys-update-container">
-		<div>
-			<NoticeBar text="系统更新管理,请慎重操作!" style="margin: 4px" />
-		</div>
-		<el-container style="height: calc(100vh - 150px);">
-			<el-aside v-auth="'sysUpdate:list'" width="220px" class="backup-list">
-				<p class="backup-list-description">备份列表</p>
-				<el-scrollbar>
-					<div class="backup-items">
-						<div v-for="(backup, index) in state.backups" :key="index" class="backup-item" @mouseenter="hovered = index" @mouseleave="hovered = null">
-							<el-button type="text" :class="{ 'selected-backup': state.selectedBackup === backup, 'hovered-backup': hovered === index }" @click="() => state.selectedBackup = backup">
-								{{ backup.fileName }}
-							</el-button>
-						</div>
-					</div>
-				</el-scrollbar>
-			</el-aside>
-			<el-main v-auth="'sysUpdate:logs'" class="log-terminal-container">
-				<div class="toolbar">
-					<el-button-group>
-						<el-button v-auth="'sysUpdate:update'" v-reclick="5000" :disabled="state.isUpdating" @click="handleAction('update')">更新</el-button>
-						<el-button v-auth="'sysUpdate:restore'" v-reclick="5000" :disabled="!canRestore || state.isUpdating || !state.selectedBackup" @click="handleAction('restore')">还原</el-button>
-						<el-button v-auth="'sysUpdate:clear'" v-reclick="5000" :disabled="state.isUpdating" @click="clearLogs">清空</el-button>
-						<el-button v-auth="'sysUpdate:webHookKey'" v-reclick="5000" @click="getWebHookKey">获取密钥</el-button>
-					</el-button-group>
-				</div>
-				<div class="log-terminal">
-					<div class="terminal-output" ref="terminalOutput">
-						<pre>{{ state.logOutput }}</pre>
-					</div>
-				</div>
-			</el-main>
-		</el-container>
-	</div>
+    <div class="sys-update-container">
+        <!-- <div>
+            <NoticeBar text="系统更新管理,请慎重操作!" style="margin: 4px" />
+        </div> -->
+        <el-container>
+            <el-aside v-auth="'sysUpdate:list'" width="220px" class="backup-list">
+                <p class="backup-list-description">备份列表</p>
+                <el-scrollbar>
+                    <div class="backup-items">
+                        <div v-for="(backup, index) in state.backups" :key="index" class="backup-item"
+                            @mouseenter="hovered = index" @mouseleave="hovered = null">
+                            <el-button type="text"
+                                :class="{ 'selected-backup': state.selectedBackup === backup, 'hovered-backup': hovered === index }"
+                                @click="() => state.selectedBackup = backup">
+                                {{ backup.fileName }}
+                            </el-button>
+                        </div>
+                    </div>
+                </el-scrollbar>
+            </el-aside>
+            <el-main v-auth="'sysUpdate:logs'" class="log-terminal-container">
+                <el-alert title="系统更新管理,请慎重操作!" type="warning" show-icon />
+                <div class="toolbar">
+                    <el-button-group>
+                        <el-button v-auth="'sysUpdate:update'" v-reclick="5000" :disabled="state.isUpdating"
+                            @click="handleAction('update')">更新</el-button>
+                        <el-button v-auth="'sysUpdate:restore'" v-reclick="5000"
+                            :disabled="!canRestore || state.isUpdating || !state.selectedBackup"
+                            @click="handleAction('restore')">还原</el-button>
+                        <el-button v-auth="'sysUpdate:clear'" v-reclick="5000" :disabled="state.isUpdating"
+                            @click="clearLogs">清空</el-button>
+                        <el-button v-auth="'sysUpdate:webHookKey'" v-reclick="5000"
+                            @click="getWebHookKey">获取密钥</el-button>
+                    </el-button-group>
+                </div>
+                <div class="log-terminal">
+                    <div class="terminal-output" ref="terminalOutput">
+                        <pre>{{ state.logOutput }}</pre>
+                    </div>
+                </div>
+            </el-main>
+        </el-container>
+    </div>
 </template>
 
 <script setup lang="ts">
@@ -46,10 +55,10 @@ import NoticeBar from "/@/components/noticeBar/index.vue";
 
 const { copyText } = commonFunction();
 const state = reactive({
-	selectedBackup: null as BackupOutput | null,
-	backups: [] as BackupOutput[],
-	isUpdating: false,
-	logOutput: '',
+    selectedBackup: null as BackupOutput | null,
+    backups: [] as BackupOutput[],
+    isUpdating: false,
+    logOutput: '',
 });
 
 // 计算属性 canRestore
@@ -65,209 +74,216 @@ let refreshInterval: number;
 
 // 获取初始数据
 const fetchData = async () => {
-	try {
-		state.backups = (await getAPI(SysUpdateApi).apiSysUpdateListPost()).data.result ?? [];
-		await refreshLog();
-	} catch (error) {
-		handleError('获取数据失败', error);
-	}
+    try {
+        state.backups = (await getAPI(SysUpdateApi).apiSysUpdateListPost()).data.result ?? [];
+        await refreshLog();
+    } catch (error) {
+        handleError('获取数据失败', error);
+    }
 };
 
 // 刷新日志
 const refreshLog = async () => {
-	try {
-		const response = await getAPI(SysUpdateApi).apiSysUpdateLogsGet();
-		state.logOutput = (response.data.result ?? []).join('\n');
-		scrollToBottom(); // 更新日志后立即滚动到底部
-	} catch (error) {
-		handleError('获取日志失败', error);
-	}
+    try {
+        const response = await getAPI(SysUpdateApi).apiSysUpdateLogsGet();
+        state.logOutput = (response.data.result ?? []).join('\n');
+        scrollToBottom(); // 更新日志后立即滚动到底部
+    } catch (error) {
+        handleError('获取日志失败', error);
+    }
 };
 
 // 滚动到底部
 const scrollToBottom = () => {
-	nextTick(() => {
-		if (terminalOutput.value) {
-			terminalOutput.value.scrollTop = terminalOutput.value.scrollHeight;
-		}
-	});
+    nextTick(() => {
+        if (terminalOutput.value) {
+            terminalOutput.value.scrollTop = terminalOutput.value.scrollHeight;
+        }
+    });
 };
 
 // 启动/停止日志刷新定时器
 const toggleRefreshTimer = (start: boolean) => {
-	if (start && !refreshInterval) {
-		refreshInterval = window.setInterval(refreshLog, 300);
-	} else if (!start && refreshInterval) {
-		window.clearInterval(refreshInterval);
-		refreshInterval = 0;
-	}
+    if (start && !refreshInterval) {
+        refreshInterval = window.setInterval(refreshLog, 300);
+    } else if (!start && refreshInterval) {
+        window.clearInterval(refreshInterval);
+        refreshInterval = 0;
+    }
 };
 
 // 处理动作
 const handleAction = async (action: 'update' | 'restore') => {
-	if (state.isUpdating) return;
-
-	state.isUpdating = true;
-	toggleRefreshTimer(true);
-
-	try {
-		switch (action) {
-			case 'update':
-				await getAPI(SysUpdateApi).apiSysUpdateUpdatePost({ timeout: -1 });
-				ElMessage.success('更新成功');
-				fetchData();
-				break;
-			case 'restore':
-				ElMessageBox.confirm(`确定要还原到 ${state.selectedBackup?.fileName} ?`, '提示', {
-					confirmButtonText: '确定',
-					cancelButtonText: '取消',
-					type: 'warning',
-				}).then(async () => {
-					await getAPI(SysUpdateApi).apiSysUpdateRestorePost({ fileName: state.selectedBackup?.fileName } as any);
-					ElMessage.success('还原成功');
-				});
-				break;
-		}
-	} catch (error) {
-		handleError(`执行${action}失败`, error);
-	} finally {
-		toggleRefreshTimer(false);
-		state.isUpdating = false;
-	}
+    if (state.isUpdating) return;
+
+    state.isUpdating = true;
+    toggleRefreshTimer(true);
+
+    try {
+        switch (action) {
+            case 'update':
+                await getAPI(SysUpdateApi).apiSysUpdateUpdatePost({ timeout: -1 });
+                ElMessage.success('更新成功');
+                fetchData();
+                break;
+            case 'restore':
+                ElMessageBox.confirm(`确定要还原到 ${state.selectedBackup?.fileName} ?`, '提示', {
+                    confirmButtonText: '确定',
+                    cancelButtonText: '取消',
+                    type: 'warning',
+                }).then(async () => {
+                    await getAPI(SysUpdateApi).apiSysUpdateRestorePost({ fileName: state.selectedBackup?.fileName } as any);
+                    ElMessage.success('还原成功');
+                });
+                break;
+        }
+    } catch (error) {
+        handleError(`执行${action}失败`, error);
+    } finally {
+        toggleRefreshTimer(false);
+        state.isUpdating = false;
+    }
 };
 
 // 清空日志
 const clearLogs = async () => {
-	try {
-		state.logOutput = '';
-		await getAPI(SysUpdateApi).apiSysUpdateClearGet();
-		ElMessage.success('日志已清空');
-	} catch (error) {
-		handleError('清空日志失败', error);
-	}
+    try {
+        state.logOutput = '';
+        await getAPI(SysUpdateApi).apiSysUpdateClearGet();
+        ElMessage.success('日志已清空');
+    } catch (error) {
+        handleError('清空日志失败', error);
+    }
 };
 
 // 获取密钥
 const getWebHookKey = async () => {
-	try {
-		const res = await getAPI(SysUpdateApi).apiSysUpdateWebHookKeyGet();
-		if (res.data.result) copyText(res.data.result);
-	} catch (error) {
-		handleError('获取密钥失败', error);
-	}
+    try {
+        const res = await getAPI(SysUpdateApi).apiSysUpdateWebHookKeyGet();
+        if (res.data.result) copyText(res.data.result);
+    } catch (error) {
+        handleError('获取密钥失败', error);
+    }
 }
 
 // 错误处理
 const handleError = (message: string, error: any) => {
-	ElMessage.error(`${message},请稍后再试。`);
+    ElMessage.error(`${message},请稍后再试。`);
 };
 
 onMounted(() => {
-	if (!authAll(['sysUpdate:list', 'sysUpdate:logs'])) return;
-	fetchData();
-	toggleRefreshTimer(true);
+    if (!authAll(['sysUpdate:list', 'sysUpdate:logs'])) return;
+    fetchData();
+    toggleRefreshTimer(true);
 });
 
 onUnmounted(() => {
-	if (!authAll(['sysUpdate:list', 'sysUpdate:logs'])) return;
-	toggleRefreshTimer(false);
+    if (!authAll(['sysUpdate:list', 'sysUpdate:logs'])) return;
+    toggleRefreshTimer(false);
 });
 </script>
 
 <style scoped>
-
 .sys-update-container {
-	display: flex;
-	height: 100%;
-	background-color: #f0f2f5;
+    display: flex;
+    height: 100%;
+    background-color: #f0f2f5;
 }
 
 .backup-list-description {
-	margin-bottom: 10px;
-	color: #909399;
+    margin-bottom: 10px;
+    color: #909399;
 }
 
 .backup-list {
-	background-color: #ffffff;
-	padding: 20px;
-	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
-	border-radius: 8px;
-	transition: box-shadow 0.3s ease-in-out;
-	max-height: 100%;
-	overflow: hidden;
+    background-color: #ffffff;
+    padding: 20px;
+    /* box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); */
+    border-radius: 4px;
+    transition: box-shadow 0.3s ease-in-out;
+    max-height: 100%;
+    overflow: hidden;
+    border: 1px solid rgba(0, 0, 0, 0.1);
 }
 
 .backup-items {
-	max-height: calc(100vh - 40px);
-	overflow-y: auto;
-	overflow-x: hidden;
+    max-height: calc(100vh - 40px);
+    overflow-y: auto;
+    overflow-x: hidden;
 }
 
 .backup-item {
-	margin-bottom: 10px;
-	transition: transform 0.2s;
+    margin-bottom: 10px;
+    transition: transform 0.2s;
 }
 
 .backup-item:hover {
-	transform: translateX(5px);
+    transform: translateX(5px);
 }
 
-.selected-backup, .hovered-backup {
-	font-weight: bold;
-	color: #409eff;
+.selected-backup,
+.hovered-backup {
+    font-weight: bold;
+    color: #409eff;
 }
 
 .action-button {
-	margin-top: 8px;
-	transition: background-color 0.3s;
+    margin-top: 8px;
+    transition: background-color 0.3s;
 }
 
 .action-button:hover {
-	background-color: #ecf5ff;
+    background-color: #ecf5ff;
 }
 
 .log-terminal-container {
-	flex-grow: 1;
-	padding: 20px;
-	display: flex;
-	flex-direction: column;
-	background-color: #ffffff;
-	border-radius: 8px;
-	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
-	transition: box-shadow 0.3s ease-in-out;
+    flex-grow: 1;
+    padding: 20px;
+    margin-left: 5px;
+    display: flex;
+    flex-direction: column;
+    background-color: #ffffff;
+    border-radius: 4px;
+    /* box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); */
+    transition: box-shadow 0.3s ease-in-out;
+    border: 1px solid rgba(0, 0, 0, 0.1);
 }
 
 .toolbar {
-	margin-bottom: 5px;
-	padding: 5px 10px 5px 10px;
-	background-color: #ffffff;
-	border-radius: 4px;
-	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1);
-	display: flex;
-	flex-direction: row;
-	align-items: center;
-	justify-content: flex-start;
-	gap: 8px;
+    /* margin-bottom: 5px; */
+    padding: 5px 0;
+    background-color: #ffffff;
+    border-radius: 4px;
+    /* box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1); */
+    display: flex;
+    flex-direction: row;
+    align-items: center;
+    justify-content: flex-start;
+    gap: 8px;
 }
 
 .log-terminal {
-	background-color: #2c3e50;
-	color: #ecf0f1;
-	border-radius: 4px;
-	flex-grow: 1;
-	position: relative;
-	overflow: hidden;
-	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
+    background-color: #2c3e50;
+    color: #ecf0f1;
+    border-radius: 4px;
+    flex-grow: 1;
+    position: relative;
+    overflow: hidden;
+    /* box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); */
 }
 
 .terminal-output {
-	padding: 20px;
-	height: 100%;
-	overflow-y: auto;
-	white-space: pre-wrap;
-	word-wrap: break-word;
-	font-family: 'Courier New', Courier, monospace;
-	font-size: 14px;
-	line-height: 1.5;
+    padding: 20px;
+    height: 100%;
+    overflow-y: auto;
+    white-space: pre-wrap;
+    word-wrap: break-word;
+    font-family: 'Courier New', Courier, monospace;
+    font-size: 14px;
+    line-height: 1.5;
+}
+
+.el-alert {
+	border: none;
 }
 </style>

+ 19 - 4
Web/src/views/system/user/index.vue

@@ -4,8 +4,18 @@
 			<pane size="20">
 				<OrgTree ref="orgTreeRef" @node-click="nodeClick" />
 			</pane>
-			<pane size="80" style="overflow: auto;">
-				<el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+			<pane size="80" style="overflow: auto; display: flex; flex-direction: column; background-color: #fff;">
+                <!-- <el-collapse :before-collapse="() => {return false}" @icon-click="(handleQuery)">
+                    <el-collapse-item>
+                        <template #title>
+                            <el-button>aDefault</el-button>
+
+                        </template>
+                        <div slot="title"><el-button>aDefault</el-button></div>
+                        <div slot="default"><el-button>Default</el-button></div>
+                    </el-collapse-item>
+                </el-collapse> -->
+				<el-card shadow="hover" :body-style="{ padding: 5 }">
 					<el-form :model="state.queryParams" ref="queryForm" :inline="true">
 						<el-form-item label="账号">
 							<el-input v-model="state.queryParams.account" placeholder="账号" clearable />
@@ -120,8 +130,7 @@
 			</pane>
 		</splitpanes>
 
-		<EditUser ref="editUserRef" :title="state.editUserTitle" :orgData="state.orgTreeData"
-			@handleQuery="handleQuery" />
+		<EditUser ref="editUserRef" :title="state.editUserTitle" :orgData="state.orgTreeData" @handleQuery="handleQuery" />
 	</div>
 </template>
 
@@ -298,3 +307,9 @@ const nodeClick = async (node: any) => {
 	await handleQuery();
 };
 </script>
+
+<style scoped lang="scss">
+.el-form--inline .el-form-item,.el-form-item:last-of-type {
+    margin: 5px 15px;
+}
+</style>

+ 1 - 1
Web/src/views/system/userRegWay/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<div class="sys-user-reg-way-container">
-		<el-card shadow="hover" :body-style="{ paddingBottom: '0' }" v-auth="'sysUserRegWay:list'">
+		<el-card shadow="hover" :body-style="{ padding: 5 }" v-auth="'sysUserRegWay:list'">
 			<el-form :model="state.queryParams" ref="queryForm" :inline="true">
 				<el-form-item label="租户" v-if="userStore.userInfos.accountType == 999">
 					<el-select v-model="state.queryParams.tenantId" placeholder="租户" style="width: 100%">

+ 1 - 1
Web/src/views/system/weChatPay/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<div class="weChatPay-container">
-		<el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+		<el-card shadow="hover" :body-style="{ padding: 5 }">
 			<el-form :model="state.queryParams" ref="queryForm" :inline="true">
 				<el-form-item label="订单号">
 					<el-input v-model="state.queryParams.keyword" clearable placeholder="请输入订单号" />

+ 1 - 1
Web/src/views/system/weChatUser/index.vue

@@ -1,6 +1,6 @@
 <template>
 	<div class="weChatUser-container">
-		<el-card shadow="hover" :body-style="{ paddingBottom: '0' }">
+		<el-card shadow="hover" :body-style="{ padding: 5 }">
 			<el-form :model="state.queryParams" ref="queryForm" :inline="true">
 				<el-form-item label="微信昵称">
 					<el-input v-model="state.queryParams.nickName" placeholder="微信昵称" clearable />