소스 검색

style:系统管理,表格占比高度优化

lihao16 2 달 전
부모
커밋
a956309817

+ 32 - 27
smsb-plus-ui/src/views/monitor/logininfor/index.vue

@@ -33,27 +33,31 @@
                 删除
               </el-button>
               <el-button v-hasPermi="['monitor:logininfor:remove']" type="danger" plain icon="Delete" @click="handleClean">清空</el-button>
-              <el-button v-hasPermi="['monitor:logininfor:unlock']" type="primary" plain icon="Unlock" :disabled="single" @click="handleUnlock">
+              <el-button v-hasPermi="['monitor:logininfor:unlock']" type="primary" plain icon="Unlock"
+                         :disabled="single" @click="handleUnlock">
                 解锁
               </el-button>
-              <el-button v-hasPermi="['monitor:logininfor:export']" type="warning" plain icon="Download" @click="handleExport">导出</el-button>
+              <el-button v-hasPermi="['monitor:logininfor:export']" type="warning" plain icon="Download"
+                         @click="handleExport">导出
+              </el-button>
             </el-form-item>
           </el-form>
         </el-card>
       </div>
     </transition>
 
-    <el-card shadow="hover">
-      <el-table
-        ref="loginInfoTableRef"
-        v-loading="loading"
-        :data="loginInfoList"
-        :default-sort="defaultSort"
-        @selection-change="handleSelectionChange"
-        @sort-change="handleSortChange"
-        height="75vh"
-      >
-        <el-table-column type="selection" width="55" align="center" />
+    <el-card shadow="hover" style="border: none">
+      <div class="table-content" style="height: calc(100vh - 225px)">
+        <el-table
+          ref="loginInfoTableRef"
+          v-loading="loading"
+          :data="loginInfoList"
+          :default-sort="defaultSort"
+          @selection-change="handleSelectionChange"
+          @sort-change="handleSortChange"
+          height="75vh"
+        >
+          <el-table-column type="selection" width="55" align="center"/>
         <el-table-column label="访问编号" align="left" width="180" prop="infoId" />
         <el-table-column
           label="用户名称"
@@ -76,29 +80,30 @@
         <el-table-column label="浏览器" align="left" prop="browser" width="150" :show-overflow-tooltip="true" />
         <el-table-column label="登录状态" align="center" prop="status" width="120">
           <template #default="scope">
-            <dict-tag :options="sys_common_status" :value="scope.row.status" />
-          </template>
-        </el-table-column>
-        <el-table-column label="描述" align="left" prop="msg" :show-overflow-tooltip="true" />
-        <el-table-column label="访问时间" align="left" prop="loginTime" sortable="custom" :sort-orders="['descending', 'ascending']" width="180">
-          <template #default="scope">
-            <span>{{ parseTime(scope.row.loginTime) }}</span>
+            <dict-tag :options="sys_common_status" :value="scope.row.status"/>
           </template>
         </el-table-column>
-      </el-table>
-
+          <el-table-column label="描述" align="left" prop="msg" :show-overflow-tooltip="true"/>
+          <el-table-column label="访问时间" align="left" prop="loginTime" sortable="custom"
+                           :sort-orders="['descending', 'ascending']" width="180">
+            <template #default="scope">
+              <span>{{ parseTime(scope.row.loginTime) }}</span>
+            </template>
+          </el-table-column>
+        </el-table>
+      </div>
       <pagination v-show="total > 0" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize" :total="total" @pagination="getList" />
     </el-card>
   </div>
 </template>
 
 <script setup name="Logininfor" lang="ts">
-import { list, delLoginInfo, cleanLoginInfo, unlockLoginInfo } from '@/api/monitor/loginInfo';
-import { LoginInfoQuery, LoginInfoVO } from '@/api/monitor/loginInfo/types';
+import {cleanLoginInfo, delLoginInfo, list, unlockLoginInfo} from '@/api/monitor/loginInfo';
+import {LoginInfoQuery, LoginInfoVO} from '@/api/monitor/loginInfo/types';
 
-const { proxy } = getCurrentInstance() as ComponentInternalInstance;
-const { sys_device_type } = toRefs<any>(proxy?.useDict('sys_device_type'));
-const { sys_common_status } = toRefs<any>(proxy?.useDict('sys_common_status'));
+const {proxy} = getCurrentInstance() as ComponentInternalInstance;
+const {sys_device_type} = toRefs<any>(proxy?.useDict('sys_device_type'));
+const {sys_common_status} = toRefs<any>(proxy?.useDict('sys_common_status'));
 
 const loginInfoList = ref<LoginInfoVO[]>([]);
 const loading = ref(true);

+ 31 - 29
smsb-plus-ui/src/views/monitor/online/index.vue

@@ -7,7 +7,7 @@
             <el-input v-model="queryParams.ipaddr" placeholder="请输入登录地址" clearable @keyup.enter="handleQuery" />
           </el-form-item>
           <el-form-item label="用户名称" prop="userName">
-            <el-input v-model="queryParams.userName" placeholder="请输入用户名称" clearable @keyup.enter="handleQuery" />
+            <el-input v-model="queryParams.userName" placeholder="请输入用户名称" clearable @keyup.enter="handleQuery"/>
           </el-form-item>
           <el-form-item>
             <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
@@ -16,17 +16,18 @@
         </el-form>
       </el-card>
     </div>
-    <el-card shadow="hover">
-      <el-table
-        v-loading="loading"
-        :data="onlineList.slice((queryParams.pageNum - 1) * queryParams.pageSize, queryParams.pageNum * queryParams.pageSize)"
-        style="width: 100%"
-        height="75vh"
-      >
-        <el-table-column label="序号" width="50" type="index" align="center">
-          <template #default="scope">
-            <span>{{ (queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1 }}</span>
-          </template>
+    <el-card shadow="hover" style="border: none">
+      <div class="table-content" style="height: calc(100vh - 225px)">
+        <el-table
+          v-loading="loading"
+          :data="onlineList.slice((queryParams.pageNum - 1) * queryParams.pageSize, queryParams.pageNum * queryParams.pageSize)"
+          style="width: 100%"
+          height="75vh"
+        >
+          <el-table-column label="序号" width="50" type="index" align="center">
+            <template #default="scope">
+              <span>{{ (queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1 }}</span>
+            </template>
         </el-table-column>
         <el-table-column label="会话编号" align="left" prop="tokenId" :show-overflow-tooltip="true" />
         <el-table-column label="登录名称" align="center" width="120" prop="userName" :show-overflow-tooltip="true" />
@@ -46,29 +47,30 @@
             <span>{{ parseTime(scope.row.loginTime) }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="操作" width="80" align="center" class-name="small-padding fixed-width">
-          <template #default="scope">
-            <el-tooltip content="强退" placement="top">
-              <el-button v-hasPermi="['monitor:online:forceLogout']" link type="primary" icon="Delete" @click="handleForceLogout(scope.row)">
-                强退</el-button>
-            </el-tooltip>
-          </template>
-        </el-table-column>
-      </el-table>
-
+          <el-table-column label="操作" width="80" align="center" class-name="small-padding fixed-width">
+            <template #default="scope">
+              <el-tooltip content="强退" placement="top">
+                <el-button v-hasPermi="['monitor:online:forceLogout']" link type="primary" icon="Delete"
+                           @click="handleForceLogout(scope.row)">
+                  强退
+                </el-button>
+              </el-tooltip>
+            </template>
+          </el-table-column>
+        </el-table>
+      </div>
       <pagination v-show="total > 0" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize" :total="total" />
     </el-card>
   </div>
 </template>
 
 <script setup name="Online" lang="ts">
-import { forceLogout, list as initData } from '@/api/monitor/online';
-import { OnlineQuery, OnlineVO } from '@/api/monitor/online/types';
-import api from '@/api/system/user';
-import { to } from 'await-to-js';
+import {forceLogout, list as initData} from '@/api/monitor/online';
+import {OnlineQuery, OnlineVO} from '@/api/monitor/online/types';
+import {to} from 'await-to-js';
 
-const { proxy } = getCurrentInstance() as ComponentInternalInstance;
-const { sys_device_type } = toRefs<any>(proxy?.useDict('sys_device_type'));
+const {proxy} = getCurrentInstance() as ComponentInternalInstance;
+const {sys_device_type} = toRefs<any>(proxy?.useDict('sys_device_type'));
 
 const onlineList = ref<OnlineVO[]>([]);
 const loading = ref(true);
@@ -78,7 +80,7 @@ const queryFormRef = ref<ElFormInstance>();
 
 const queryParams = ref<OnlineQuery>({
   pageNum: 1,
-  pageSize: 10,
+  pageSize: 20,
   ipaddr: '',
   userName: ''
 });

+ 46 - 38
smsb-plus-ui/src/views/monitor/operlog/index.vue

@@ -37,38 +37,44 @@
             <el-form-item>
               <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
               <el-button icon="Refresh" @click="resetQuery">重置</el-button>
-              <el-button v-hasPermi="['monitor:operlog:remove']" type="danger" plain icon="Delete" :disabled="multiple" @click="handleDelete()">
+              <el-button v-hasPermi="['monitor:operlog:remove']" type="danger" plain icon="Delete" :disabled="multiple"
+                         @click="handleDelete()">
                 删除
               </el-button>
-              <el-button v-hasPermi="['monitor:operlog:remove']" type="danger" plain icon="WarnTriangleFilled" @click="handleClean">清空</el-button>
-              <el-button v-hasPermi="['monitor:operlog:export']" type="warning" plain icon="Download" @click="handleExport">导出</el-button>
+              <el-button v-hasPermi="['monitor:operlog:remove']" type="danger" plain icon="WarnTriangleFilled"
+                         @click="handleClean">清空
+              </el-button>
+              <el-button v-hasPermi="['monitor:operlog:export']" type="warning" plain icon="Download"
+                         @click="handleExport">导出
+              </el-button>
             </el-form-item>
           </el-form>
         </el-card>
       </div>
     </transition>
 
-    <el-card shadow="hover">
-      <el-table
-        ref="operLogTableRef"
-        v-loading="loading"
-        :data="operlogList"
-        :default-sort="defaultSort"
-        @selection-change="handleSelectionChange"
-        @sort-change="handleSortChange"
-        height="75vh"
-      >
-        <el-table-column type="selection" width="50" align="center" />
-        <el-table-column label="日志编号" align="left" prop="operId" />
-        <el-table-column label="系统模块" align="left" prop="title" :show-overflow-tooltip="true" />
-        <el-table-column label="操作类型" align="left" prop="businessType">
-          <template #default="scope">
-            <dict-tag :options="sys_oper_type" :value="scope.row.businessType" />
-          </template>
-        </el-table-column>
-        <el-table-column
-          label="操作人员"
-          align="center"
+    <el-card shadow="hover" style="border: none">
+      <div class="table-content" style="height: calc(100vh - 225px)">
+        <el-table
+          ref="operLogTableRef"
+          v-loading="loading"
+          :data="operlogList"
+          :default-sort="defaultSort"
+          @selection-change="handleSelectionChange"
+          @sort-change="handleSortChange"
+          height="75vh"
+        >
+          <el-table-column type="selection" width="50" align="center"/>
+          <el-table-column label="日志编号" align="left" prop="operId"/>
+          <el-table-column label="系统模块" align="left" prop="title" :show-overflow-tooltip="true"/>
+          <el-table-column label="操作类型" align="left" prop="businessType">
+            <template #default="scope">
+              <dict-tag :options="sys_oper_type" :value="scope.row.businessType"/>
+            </template>
+          </el-table-column>
+          <el-table-column
+            label="操作人员"
+            align="center"
           width="110"
           prop="operName"
           :show-overflow-tooltip="true"
@@ -100,15 +106,17 @@
             <span>{{ scope.row.costTime }}毫秒</span>
           </template>
         </el-table-column>
-        <el-table-column label="操作" fixed="right" align="center" class-name="small-padding fixed-width">
-          <template #default="scope">
-            <el-tooltip content="详细" placement="top">
-              <el-button v-hasPermi="['monitor:operlog:query']" link type="primary" icon="View" @click="handleView(scope.row)">详细</el-button>
-            </el-tooltip>
-          </template>
-        </el-table-column>
-      </el-table>
-
+          <el-table-column label="操作" fixed="right" align="center" class-name="small-padding fixed-width">
+            <template #default="scope">
+              <el-tooltip content="详细" placement="top">
+                <el-button v-hasPermi="['monitor:operlog:query']" link type="primary" icon="View"
+                           @click="handleView(scope.row)">详细
+                </el-button>
+              </el-tooltip>
+            </template>
+          </el-table-column>
+        </el-table>
+      </div>
       <pagination v-show="total > 0" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize" :total="total" @pagination="getList" />
     </el-card>
     <!-- 操作日志详细 -->
@@ -164,11 +172,11 @@
 </template>
 
 <script setup name="Operlog" lang="ts">
-import { list, delOperlog, cleanOperlog } from '@/api/monitor/operlog';
-import { OperLogForm, OperLogQuery, OperLogVO } from '@/api/monitor/operlog/types';
+import {cleanOperlog, delOperlog, list} from '@/api/monitor/operlog';
+import {OperLogForm, OperLogQuery, OperLogVO} from '@/api/monitor/operlog/types';
 
-const { proxy } = getCurrentInstance() as ComponentInternalInstance;
-const { sys_oper_type, sys_common_status } = toRefs<any>(proxy?.useDict('sys_oper_type', 'sys_common_status'));
+const {proxy} = getCurrentInstance() as ComponentInternalInstance;
+const {sys_oper_type, sys_common_status} = toRefs<any>(proxy?.useDict('sys_oper_type', 'sys_common_status'));
 
 const operlogList = ref<OperLogVO[]>([]);
 const loading = ref(true);
@@ -177,7 +185,7 @@ const ids = ref<Array<number | string>>([]);
 const multiple = ref(true);
 const total = ref(0);
 const dateRange = ref<[DateModelType, DateModelType]>(['', '']);
-const defaultSort = ref<any>({ prop: 'operTime', order: 'descending' });
+const defaultSort = ref<any>({prop: 'operTime', order: 'descending'});
 
 const operLogTableRef = ref<ElTableInstance>();
 const queryFormRef = ref<ElFormInstance>();

+ 21 - 17
smsb-plus-ui/src/views/system/client/index.vue

@@ -27,18 +27,18 @@
       </div>
     </transition>
 
-    <el-card shadow="never">
-
-      <el-table v-loading="loading" :data="clientList" @selection-change="handleSelectionChange" height="75vh">
-        <el-table-column v-if="true" label="ID" align="left" prop="id" width="180"/>
-        <el-table-column label="客户端ID" align="left" prop="clientId" />
-        <el-table-column label="客户端KEY" align="left" prop="clientKey" width="120"/>
-        <el-table-column label="客户端秘钥" align="center" prop="clientSecret" :show-overflow-tooltip="true" width="160"/>
-        <el-table-column label="授权类型" align="left">
-          <template #default="scope">
-            <dict-tag :options="sys_grant_type" :value="scope.row.grantTypeList" />
-          </template>
-        </el-table-column>
+    <el-card shadow="hover" style="border: none">
+      <div class="table-content" style="height: calc(100vh - 225px)">
+        <el-table v-loading="loading" :data="clientList" @selection-change="handleSelectionChange" height="75vh">
+          <el-table-column v-if="true" label="ID" align="left" prop="id" width="180"/>
+          <el-table-column label="客户端ID" align="left" prop="clientId"/>
+          <el-table-column label="客户端KEY" align="left" prop="clientKey" width="120"/>
+          <el-table-column label="客户端秘钥" align="center" prop="clientSecret" :show-overflow-tooltip="true" width="160"/>
+          <el-table-column label="授权类型" align="left">
+            <template #default="scope">
+              <dict-tag :options="sys_grant_type" :value="scope.row.grantTypeList"/>
+            </template>
+          </el-table-column>
         <el-table-column label="设备类型" align="center" width="120">
           <template #default="scope">
             <dict-tag :options="sys_device_type" :value="scope.row.deviceType" />
@@ -51,18 +51,22 @@
             <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" width="200" class-name="small-padding fixed-width">
+        <el-table-column label="操作" align="center" width="180" class-name="small-padding fixed-width">
           <template #default="scope">
             <el-tooltip content="修改" placement="top">
-              <el-button v-hasPermi="['system:client:edit']" link type="primary" icon="Edit" @click="handleUpdate(scope.row)">修改</el-button>
+              <el-button v-hasPermi="['system:client:edit']" link type="primary" icon="Edit"
+                         @click="handleUpdate(scope.row)">修改
+              </el-button>
             </el-tooltip>
             <el-tooltip content="删除" placement="top">
-              <el-button v-hasPermi="['system:client:remove']" link type="primary" icon="Delete" @click="handleDelete(scope.row)">删除</el-button>
+              <el-button v-hasPermi="['system:client:remove']" link type="primary" icon="Delete"
+                         @click="handleDelete(scope.row)">删除
+              </el-button>
             </el-tooltip>
           </template>
         </el-table-column>
-      </el-table>
-
+        </el-table>
+      </div>
       <pagination v-show="total > 0" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize" :total="total" @pagination="getList" />
     </el-card>
     <!-- 添加或修改客户端管理对话框 -->

+ 32 - 21
smsb-plus-ui/src/views/system/config/index.vue

@@ -29,25 +29,31 @@
             <el-form-item>
               <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
               <el-button icon="Refresh" @click="resetQuery">重置</el-button>
-              <el-button v-hasPermi="['system:config:add']" type="primary" plain icon="Plus" @click="handleAdd">新增</el-button>
-              <el-button v-hasPermi="['system:config:export']" type="warning" plain icon="Download" @click="handleExport">导出</el-button>
-              <el-button v-hasPermi="['system:config:remove']" type="danger" plain icon="Refresh" @click="handleRefreshCache">刷新缓存</el-button>
+              <el-button v-hasPermi="['system:config:add']" type="primary" plain icon="Plus" @click="handleAdd">新增
+              </el-button>
+              <el-button v-hasPermi="['system:config:export']" type="warning" plain icon="Download"
+                         @click="handleExport">导出
+              </el-button>
+              <el-button v-hasPermi="['system:config:remove']" type="danger" plain icon="Refresh"
+                         @click="handleRefreshCache">刷新缓存
+              </el-button>
             </el-form-item>
           </el-form>
         </el-card>
       </div>
     </transition>
-    <el-card shadow="hover">
-      <el-table v-loading="loading" :data="configList" @selection-change="handleSelectionChange" height="75vh">
-        <el-table-column v-if="false" label="参数主键" align="center" prop="configId" />
-        <el-table-column label="参数名称" align="left" prop="configName" :show-overflow-tooltip="true" />
-        <el-table-column label="参数键名" align="left" prop="configKey" :show-overflow-tooltip="true" />
-        <el-table-column label="参数键值" align="left" prop="configValue" :show-overflow-tooltip="true" />
-        <el-table-column label="系统内置" align="center" prop="configType">
-          <template #default="scope">
-            <dict-tag :options="sys_yes_no" :value="scope.row.configType" />
-          </template>
-        </el-table-column>
+    <el-card shadow="hover" style="border: none">
+      <div class="table-content" style="height: calc(100vh - 225px)">
+        <el-table v-loading="loading" :data="configList" @selection-change="handleSelectionChange" height="75vh">
+          <el-table-column v-if="false" label="参数主键" align="center" prop="configId"/>
+          <el-table-column label="参数名称" align="left" prop="configName" :show-overflow-tooltip="true"/>
+          <el-table-column label="参数键名" align="left" prop="configKey" :show-overflow-tooltip="true"/>
+          <el-table-column label="参数键值" align="left" prop="configValue" :show-overflow-tooltip="true"/>
+          <el-table-column label="系统内置" align="center" prop="configType">
+            <template #default="scope">
+              <dict-tag :options="sys_yes_no" :value="scope.row.configType"/>
+            </template>
+          </el-table-column>
         <el-table-column label="备注" align="left" prop="remark" :show-overflow-tooltip="true" />
         <el-table-column label="创建时间" align="left" prop="createTime" width="180">
           <template #default="scope">
@@ -57,14 +63,19 @@
         <el-table-column label="操作" align="center" width="200" class-name="small-padding fixed-width">
           <template #default="scope">
             <el-tooltip content="修改" placement="top">
-              <el-button v-hasPermi="['system:config:edit']" link type="primary" icon="Edit" @click="handleUpdate(scope.row)">修改</el-button>
+              <el-button v-hasPermi="['system:config:edit']" link type="primary" icon="Edit"
+                         @click="handleUpdate(scope.row)">修改
+              </el-button>
             </el-tooltip>
             <el-tooltip content="删除" placement="top">
-              <el-button v-hasPermi="['system:config:remove']" link type="primary" icon="Delete" @click="handleDelete(scope.row)">删除</el-button>
+              <el-button v-hasPermi="['system:config:remove']" link type="primary" icon="Delete"
+                         @click="handleDelete(scope.row)">删除
+              </el-button>
             </el-tooltip>
           </template>
         </el-table-column>
-      </el-table>
+        </el-table>
+      </div>
       <pagination v-show="total > 0" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize" :total="total" @pagination="getList" />
     </el-card>
 
@@ -112,11 +123,11 @@
 </template>
 
 <script setup name="Config" lang="ts">
-import { listConfig, getConfig, delConfig, addConfig, updateConfig, refreshCache } from '@/api/system/config';
-import { ConfigForm, ConfigQuery, ConfigVO } from '@/api/system/config/types';
+import {addConfig, delConfig, getConfig, listConfig, refreshCache, updateConfig} from '@/api/system/config';
+import {ConfigForm, ConfigQuery, ConfigVO} from '@/api/system/config/types';
 
-const { proxy } = getCurrentInstance() as ComponentInternalInstance;
-const { sys_yes_no } = toRefs<any>(proxy?.useDict('sys_yes_no'));
+const {proxy} = getCurrentInstance() as ComponentInternalInstance;
+const {sys_yes_no} = toRefs<any>(proxy?.useDict('sys_yes_no'));
 
 const configList = ref<ConfigVO[]>([]);
 const loading = ref(true);

+ 53 - 44
smsb-plus-ui/src/views/system/dict/data.vue

@@ -15,53 +15,62 @@
             <el-form-item>
               <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
               <el-button icon="Refresh" @click="resetQuery">重置</el-button>
-              <el-button v-hasPermi="['system:dict:add']" type="primary" plain icon="Plus" @click="handleAdd">新增</el-button>
-              <el-button v-hasPermi="['system:dict:export']" type="warning" plain icon="Download" @click="handleExport">导出</el-button>
+              <el-button v-hasPermi="['system:dict:add']" type="primary" plain icon="Plus" @click="handleAdd">新增
+              </el-button>
+              <el-button v-hasPermi="['system:dict:export']" type="warning" plain icon="Download" @click="handleExport">
+                导出
+              </el-button>
               <el-button type="warning" plain icon="Close" @click="handleClose">关闭</el-button>
             </el-form-item>
           </el-form>
         </el-card>
       </div>
     </transition>
-    <el-card shadow="hover">
-      <el-table v-loading="loading" :data="dataList" @selection-change="handleSelectionChange" height="75vh">
-
-        <el-table-column v-if="false" label="字典编码" align="center" prop="dictCode" />
-        <el-table-column label="字典标签" align="center" prop="dictLabel">
-          <template #default="scope">
+    <el-card shadow="hover" style="border: none">
+      <div class="table-content" style="height: calc(100vh - 225px)">
+        <el-table v-loading="loading" :data="dataList" @selection-change="handleSelectionChange" height="75vh">
+          <el-table-column v-if="false" label="字典编码" align="center" prop="dictCode"/>
+          <el-table-column label="字典标签" align="center" prop="dictLabel">
+            <template #default="scope">
             <span
               v-if="(scope.row.listClass === '' || scope.row.listClass === 'default') && (scope.row.cssClass === '' || scope.row.cssClass == null)"
-              >{{ scope.row.dictLabel }}</span
-            >
-            <el-tag
-              v-else
-              :type="scope.row.listClass === 'primary' || scope.row.listClass === 'default' ? 'primary' : scope.row.listClass"
-              :class="scope.row.cssClass"
-              >{{ scope.row.dictLabel }}</el-tag
+            >{{ scope.row.dictLabel }}</span
             >
-          </template>
-        </el-table-column>
-        <el-table-column label="字典键值" align="center" prop="dictValue" />
-        <el-table-column label="字典排序" align="center" prop="dictSort" />
-        <el-table-column label="备注" align="center" prop="remark" :show-overflow-tooltip="true" />
-        <el-table-column label="创建时间" align="center" prop="createTime" width="180">
-          <template #default="scope">
-            <span>{{ parseTime(scope.row.createTime) }}</span>
-          </template>
-        </el-table-column>
-        <el-table-column label="操作" align="center" width="180" class-name="small-padding fixed-width">
-          <template #default="scope">
-            <el-tooltip content="修改" placement="top">
-              <el-button v-hasPermi="['system:dict:edit']" link type="primary" icon="Edit" @click="handleUpdate(scope.row)">修改</el-button>
-            </el-tooltip>
-            <el-tooltip content="删除" placement="top">
-              <el-button v-hasPermi="['system:dict:remove']" link type="primary" icon="Delete" @click="handleDelete(scope.row)">删除</el-button>
-            </el-tooltip>
-          </template>
-        </el-table-column>
-      </el-table>
-
-      <pagination v-show="total > 0" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize" :total="total" @pagination="getList" />
+              <el-tag
+                v-else
+                :type="scope.row.listClass === 'primary' || scope.row.listClass === 'default' ? 'primary' : scope.row.listClass"
+                :class="scope.row.cssClass"
+              >{{ scope.row.dictLabel }}
+              </el-tag
+              >
+            </template>
+          </el-table-column>
+          <el-table-column label="字典键值" align="center" prop="dictValue"/>
+          <el-table-column label="字典排序" align="center" prop="dictSort"/>
+          <el-table-column label="备注" align="center" prop="remark" :show-overflow-tooltip="true"/>
+          <el-table-column label="创建时间" align="center" prop="createTime" width="180">
+            <template #default="scope">
+              <span>{{ parseTime(scope.row.createTime) }}</span>
+            </template>
+          </el-table-column>
+          <el-table-column label="操作" align="center" width="180" class-name="small-padding fixed-width">
+            <template #default="scope">
+              <el-tooltip content="修改" placement="top">
+                <el-button v-hasPermi="['system:dict:edit']" link type="primary" icon="Edit"
+                           @click="handleUpdate(scope.row)">修改
+                </el-button>
+              </el-tooltip>
+              <el-tooltip content="删除" placement="top">
+                <el-button v-hasPermi="['system:dict:remove']" link type="primary" icon="Delete"
+                           @click="handleDelete(scope.row)">删除
+                </el-button>
+              </el-tooltip>
+            </template>
+          </el-table-column>
+        </el-table>
+      </div>
+      <pagination v-show="total > 0" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize"
+                  :total="total" @pagination="getList"/>
     </el-card>
     <!-- 添加或修改参数配置对话框 -->
     <el-dialog v-model="dialog.visible" :title="dialog.title" width="500px" append-to-body>
@@ -107,13 +116,13 @@
 
 <script setup name="Data" lang="ts">
 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';
-import { DictTypeVO } from '@/api/system/dict/type/types';
-import { DictDataForm, DictDataQuery, DictDataVO } from '@/api/system/dict/data/types';
-import { RouteLocationNormalized } from 'vue-router';
+import {getType, optionselect as getDictOptionselect} from '@/api/system/dict/type';
+import {addData, delData, getData, listData, updateData} from '@/api/system/dict/data';
+import {DictTypeVO} from '@/api/system/dict/type/types';
+import {DictDataForm, DictDataQuery, DictDataVO} from '@/api/system/dict/data/types';
+import {RouteLocationNormalized} from 'vue-router';
 
-const { proxy } = getCurrentInstance() as ComponentInternalInstance;
+const {proxy} = getCurrentInstance() as ComponentInternalInstance;
 const route = useRoute();
 
 const dataList = ref<DictDataVO[]>([]);

+ 30 - 20
smsb-plus-ui/src/views/system/dict/index.vue

@@ -24,27 +24,33 @@
             <el-form-item>
               <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
               <el-button icon="Refresh" @click="resetQuery">重置</el-button>
-              <el-button v-hasPermi="['system:dict:add']" type="primary" plain icon="Plus" @click="handleAdd">新增</el-button>
-              <el-button v-hasPermi="['system:dict:remove']" type="danger" plain icon="Refresh" @click="handleRefreshCache">刷新缓存</el-button>
-              <el-button v-if="userId === 1" type="success" plain icon="Refresh" @click="handleSyncTenantDict">同步租户字典</el-button>
-              <el-button v-hasPermi="['system:dict:export']" type="warning" plain icon="Download" @click="handleExport">导出</el-button>
+              <el-button v-hasPermi="['system:dict:add']" type="primary" plain icon="Plus" @click="handleAdd">新增
+              </el-button>
+              <el-button v-hasPermi="['system:dict:remove']" type="danger" plain icon="Refresh"
+                         @click="handleRefreshCache">刷新缓存
+              </el-button>
+              <el-button v-if="userId === 1" type="success" plain icon="Refresh" @click="handleSyncTenantDict">同步租户字典
+              </el-button>
+              <el-button v-hasPermi="['system:dict:export']" type="warning" plain icon="Download" @click="handleExport">
+                导出
+              </el-button>
             </el-form-item>
           </el-form>
         </el-card>
       </div>
     </transition>
-    <el-card shadow="hover">
-
-      <el-table v-loading="loading" :data="typeList" @selection-change="handleSelectionChange" height="75vh">
-        <el-table-column v-if="false" label="字典编号" align="left" prop="dictId" />
-        <el-table-column label="字典名称" align="left" prop="dictName" :show-overflow-tooltip="true" />
-        <el-table-column label="字典类型" align="left" :show-overflow-tooltip="true">
-          <template #default="scope">
-            <router-link :to="'/system/dict-data/index/' + scope.row.dictId" class="link-type">
-              <span>{{ scope.row.dictType }}</span>
-            </router-link>
-          </template>
-        </el-table-column>
+    <el-card shadow="hover" style="border: none">
+      <div class="table-content" style="height: calc(100vh - 225px)">
+        <el-table v-loading="loading" :data="typeList" @selection-change="handleSelectionChange" height="75vh">
+          <el-table-column v-if="false" label="字典编号" align="left" prop="dictId"/>
+          <el-table-column label="字典名称" align="left" prop="dictName" :show-overflow-tooltip="true"/>
+          <el-table-column label="字典类型" align="left" :show-overflow-tooltip="true">
+            <template #default="scope">
+              <router-link :to="'/system/dict-data/index/' + scope.row.dictId" class="link-type">
+                <span>{{ scope.row.dictType }}</span>
+              </router-link>
+            </template>
+          </el-table-column>
         <el-table-column label="备注" align="left" prop="remark" :show-overflow-tooltip="true" />
         <el-table-column label="创建时间" align="left" prop="createTime" width="180">
           <template #default="scope">
@@ -54,15 +60,19 @@
         <el-table-column label="操作" align="center" width="200" class-name="small-padding fixed-width">
           <template #default="scope">
             <el-tooltip content="修改" placement="top">
-              <el-button v-hasPermi="['system:dict:edit']" link type="primary" icon="Edit" @click="handleUpdate(scope.row)">修改</el-button>
+              <el-button v-hasPermi="['system:dict:edit']" link type="primary" icon="Edit"
+                         @click="handleUpdate(scope.row)">修改
+              </el-button>
             </el-tooltip>
             <el-tooltip content="删除" placement="top">
-              <el-button v-hasPermi="['system:dict:remove']" link type="primary" icon="Delete" @click="handleDelete(scope.row)">删除</el-button>
+              <el-button v-hasPermi="['system:dict:remove']" link type="primary" icon="Delete"
+                         @click="handleDelete(scope.row)">删除
+              </el-button>
             </el-tooltip>
           </template>
         </el-table-column>
-      </el-table>
-
+        </el-table>
+      </div>
       <pagination v-show="total > 0" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize" :total="total" @pagination="getList" />
     </el-card>
     <!-- 添加或修改参数配置对话框 -->

+ 26 - 20
smsb-plus-ui/src/views/system/notice/index.vue

@@ -18,24 +18,26 @@
             <el-form-item>
               <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
               <el-button icon="Refresh" @click="resetQuery">重置</el-button>
-              <el-button v-hasPermi="['system:notice:add']" type="primary" plain icon="Plus" @click="handleAdd">新增</el-button>
+              <el-button v-hasPermi="['system:notice:add']" type="primary" plain icon="Plus" @click="handleAdd">新增
+              </el-button>
             </el-form-item>
           </el-form>
         </el-card>
       </div>
     </transition>
 
-    <el-card shadow="hover">
-      <el-table v-loading="loading" :data="noticeList" @selection-change="handleSelectionChange" height="75vh">
-        <el-table-column v-if="false" label="序号" align="center" prop="noticeId" width="100" />
-        <el-table-column label="公告标题" align="left" prop="noticeTitle" :show-overflow-tooltip="true" />
-        <el-table-column label="公告类型" align="left" prop="noticeType" width="100">
-          <template #default="scope">
-            <dict-tag :options="sys_notice_type" :value="scope.row.noticeType" />
-          </template>
-        </el-table-column>
-        <el-table-column label="状态" align="center" prop="status" width="100">
-          <template #default="scope">
+    <el-card shadow="hover" style="border: none">
+      <div class="table-content" style="height: calc(100vh - 225px)">
+        <el-table v-loading="loading" :data="noticeList" @selection-change="handleSelectionChange" height="75vh">
+          <el-table-column v-if="false" label="序号" align="center" prop="noticeId" width="100"/>
+          <el-table-column label="公告标题" align="left" prop="noticeTitle" :show-overflow-tooltip="true"/>
+          <el-table-column label="公告类型" align="left" prop="noticeType" width="100">
+            <template #default="scope">
+              <dict-tag :options="sys_notice_type" :value="scope.row.noticeType"/>
+            </template>
+          </el-table-column>
+          <el-table-column label="状态" align="center" prop="status" width="100">
+            <template #default="scope">
             <dict-tag :options="sys_notice_status" :value="scope.row.status" />
           </template>
         </el-table-column>
@@ -44,15 +46,19 @@
         <el-table-column label="操作" width="200" align="center" class-name="small-padding fixed-width">
           <template #default="scope">
             <el-tooltip content="修改" placement="top">
-              <el-button v-hasPermi="['system:notice:edit']" link type="primary" icon="Edit" @click="handleUpdate(scope.row)">修改</el-button>
+              <el-button v-hasPermi="['system:notice:edit']" link type="primary" icon="Edit"
+                         @click="handleUpdate(scope.row)">修改
+              </el-button>
             </el-tooltip>
             <el-tooltip content="删除" placement="top">
-              <el-button v-hasPermi="['system:notice:remove']" link type="primary" icon="Delete" @click="handleDelete(scope.row)">删除</el-button>
+              <el-button v-hasPermi="['system:notice:remove']" link type="primary" icon="Delete"
+                         @click="handleDelete(scope.row)">删除
+              </el-button>
             </el-tooltip>
           </template>
         </el-table-column>
-      </el-table>
-
+        </el-table>
+      </div>
       <pagination v-show="total > 0" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize" :total="total" @pagination="getList" />
     </el-card>
     <!-- 添加或修改公告对话框 -->
@@ -96,11 +102,11 @@
 </template>
 
 <script setup name="Notice" lang="ts">
-import { listNotice, getNotice, delNotice, addNotice, updateNotice } from '@/api/system/notice';
-import { NoticeForm, NoticeQuery, NoticeVO } from '@/api/system/notice/types';
+import {addNotice, delNotice, getNotice, listNotice, updateNotice} from '@/api/system/notice';
+import {NoticeForm, NoticeQuery, NoticeVO} from '@/api/system/notice/types';
 
-const { proxy } = getCurrentInstance() as ComponentInternalInstance;
-const { sys_notice_status, sys_notice_type } = toRefs<any>(proxy?.useDict('sys_notice_status', 'sys_notice_type'));
+const {proxy} = getCurrentInstance() as ComponentInternalInstance;
+const {sys_notice_status, sys_notice_type} = toRefs<any>(proxy?.useDict('sys_notice_status', 'sys_notice_type'));
 
 const noticeList = ref<NoticeVO[]>([]);
 const loading = ref(true);

+ 34 - 21
smsb-plus-ui/src/views/system/oss/config.vue

@@ -19,25 +19,27 @@
             <el-form-item>
               <el-button type="primary" icon="search" @click="handleQuery">搜索</el-button>
               <el-button icon="Refresh" @click="resetQuery">重置</el-button>
-              <el-button v-hasPermi="['system:ossConfig:add']" type="primary" plain icon="Plus" @click="handleAdd">新增</el-button>
+              <el-button v-hasPermi="['system:ossConfig:add']" type="primary" plain icon="Plus" @click="handleAdd">新增
+              </el-button>
             </el-form-item>
           </el-form>
         </el-card>
       </div>
     </transition>
 
-    <el-card shadow="hover">
-
-      <el-table v-loading="loading" :data="ossConfigList" @selection-change="handleSelectionChange" height="75vh">
-        <el-table-column v-if="columns[0].visible" label="主建" align="center" prop="ossConfigId" width="120"/>
-        <el-table-column v-if="columns[1].visible" label="配置key" align="left" prop="configKey" />
-        <el-table-column v-if="columns[2].visible" label="访问站点" align="left" prop="endpoint" width="300" :show-overflow-tooltip="true"/>
-        <el-table-column v-if="columns[3].visible" label="自定义域名" align="left" prop="domain" width="200" />
-        <el-table-column v-if="columns[4].visible" label="桶名称" align="left" prop="bucketName" />
-        <el-table-column v-if="columns[5].visible" label="前缀" align="left" prop="prefix" />
-        <el-table-column v-if="columns[6].visible" label="域" align="left" prop="region" />
-        <el-table-column v-if="columns[7].visible" label="桶权限类型" align="center" prop="accessPolicy">
-          <template #default="scope">
+    <el-card shadow="hover" style="border: none">
+      <div class="table-content" style="height: calc(100vh - 225px)">
+        <el-table v-loading="loading" :data="ossConfigList" @selection-change="handleSelectionChange" height="75vh">
+          <el-table-column v-if="columns[0].visible" label="主建" align="center" prop="ossConfigId" width="120"/>
+          <el-table-column v-if="columns[1].visible" label="配置key" align="left" prop="configKey"/>
+          <el-table-column v-if="columns[2].visible" label="访问站点" align="left" prop="endpoint" width="300"
+                           :show-overflow-tooltip="true"/>
+          <el-table-column v-if="columns[3].visible" label="自定义域名" align="left" prop="domain" width="200"/>
+          <el-table-column v-if="columns[4].visible" label="桶名称" align="left" prop="bucketName"/>
+          <el-table-column v-if="columns[5].visible" label="前缀" align="left" prop="prefix"/>
+          <el-table-column v-if="columns[6].visible" label="域" align="left" prop="region"/>
+          <el-table-column v-if="columns[7].visible" label="桶权限类型" align="center" prop="accessPolicy">
+            <template #default="scope">
             <el-tag v-if="scope.row.accessPolicy === '0'" type="warning">private</el-tag>
             <el-tag v-if="scope.row.accessPolicy === '1'" type="success">public</el-tag>
             <el-tag v-if="scope.row.accessPolicy === '2'" type="info">custom</el-tag>
@@ -51,15 +53,19 @@
         <el-table-column label="操作" fixed="right" align="center" width="200" class-name="small-padding">
           <template #default="scope">
             <el-tooltip content="修改" placement="top">
-              <el-button v-hasPermi="['system:ossConfig:edit']" link type="primary" icon="Edit" @click="handleUpdate(scope.row)">修改</el-button>
+              <el-button v-hasPermi="['system:ossConfig:edit']" link type="primary" icon="Edit"
+                         @click="handleUpdate(scope.row)">修改
+              </el-button>
             </el-tooltip>
             <el-tooltip content="删除" placement="top">
-              <el-button v-hasPermi="['system:ossConfig:remove']" link type="primary" icon="Delete" @click="handleDelete(scope.row)">删除</el-button>
+              <el-button v-hasPermi="['system:ossConfig:remove']" link type="primary" icon="Delete"
+                         @click="handleDelete(scope.row)">删除
+              </el-button>
             </el-tooltip>
           </template>
         </el-table-column>
-      </el-table>
-
+        </el-table>
+      </div>
       <pagination v-show="total > 0" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize" :total="total" @pagination="getList" />
     </el-card>
     <!-- 添加或修改对象存储配置对话框 -->
@@ -116,11 +122,18 @@
 </template>
 
 <script setup name="OssConfig" lang="ts">
-import { listOssConfig, getOssConfig, delOssConfig, addOssConfig, updateOssConfig, changeOssConfigStatus } from '@/api/system/ossConfig';
-import { OssConfigForm, OssConfigQuery, OssConfigVO } from '@/api/system/ossConfig/types';
+import {
+  addOssConfig,
+  changeOssConfigStatus,
+  delOssConfig,
+  getOssConfig,
+  listOssConfig,
+  updateOssConfig
+} from '@/api/system/ossConfig';
+import {OssConfigForm, OssConfigQuery, OssConfigVO} from '@/api/system/ossConfig/types';
 
-const { proxy } = getCurrentInstance() as ComponentInternalInstance;
-const { sys_yes_no } = toRefs<any>(proxy?.useDict('sys_yes_no'));
+const {proxy} = getCurrentInstance() as ComponentInternalInstance;
+const {sys_yes_no} = toRefs<any>(proxy?.useDict('sys_yes_no'));
 
 const ossConfigList = ref<OssConfigVO[]>([]);
 const buttonLoading = ref(false);

+ 28 - 21
smsb-plus-ui/src/views/system/oss/index.vue

@@ -38,27 +38,31 @@
                 :type="previewListResource ? 'danger' : 'warning'"
                 plain
                 @click="handlePreviewListResource(!previewListResource)"
-              >预览开关 : {{ previewListResource ? '禁用' : '启用' }}</el-button
+              >预览开关 : {{ previewListResource ? '禁用' : '启用' }}
+              </el-button
               >
-              <el-button v-hasPermi="['system:ossConfig:list']" type="info" plain icon="Operation" @click="handleOssConfig">配置管理</el-button>
+              <el-button v-hasPermi="['system:ossConfig:list']" type="info" plain icon="Operation"
+                         @click="handleOssConfig">配置管理
+              </el-button>
             </el-form-item>
           </el-form>
         </el-card>
       </div>
     </transition>
 
-    <el-card shadow="hover">
-<!--      <template #header>
-        <el-row :gutter="10" class="mb8">
-          <el-col :span="1.5">
-            <el-button v-hasPermi="['system:oss:upload']" type="primary" plain icon="Upload" @click="handleFile">上传文件</el-button>
-          </el-col>
-          <el-col :span="1.5">
-            <el-button v-hasPermi="['system:oss:upload']" type="primary" plain icon="Upload" @click="handleImage">上传图片</el-button>
-          </el-col>
-          <right-toolbar v-model:showSearch="showSearch" @query-table="getList"></right-toolbar>
-        </el-row>
-      </template>-->
+    <el-card shadow="hover" style="border: none">
+      <div class="table-content" style="height: calc(100vh - 225px)">
+        <!--      <template #header>
+                <el-row :gutter="10" class="mb8">
+                  <el-col :span="1.5">
+                    <el-button v-hasPermi="['system:oss:upload']" type="primary" plain icon="Upload" @click="handleFile">上传文件</el-button>
+                  </el-col>
+                  <el-col :span="1.5">
+                    <el-button v-hasPermi="['system:oss:upload']" type="primary" plain icon="Upload" @click="handleImage">上传图片</el-button>
+                  </el-col>
+                  <right-toolbar v-model:showSearch="showSearch" @query-table="getList"></right-toolbar>
+                </el-row>
+              </template>-->
 
       <el-table
         v-if="showTable"
@@ -92,15 +96,19 @@
         <el-table-column label="操作" align="center" width="200" class-name="small-padding fixed-width">
           <template #default="scope">
             <el-tooltip content="下载" placement="top">
-              <el-button v-hasPermi="['system:oss:download']" link type="primary" icon="Download" @click="handleDownload(scope.row)">下载</el-button>
+              <el-button v-hasPermi="['system:oss:download']" link type="primary" icon="Download"
+                         @click="handleDownload(scope.row)">下载
+              </el-button>
             </el-tooltip>
             <el-tooltip content="删除" placement="top">
-              <el-button v-hasPermi="['system:oss:remove']" link type="primary" icon="Delete" @click="handleDelete(scope.row)">删除</el-button>
+              <el-button v-hasPermi="['system:oss:remove']" link type="primary" icon="Delete"
+                         @click="handleDelete(scope.row)">删除
+              </el-button>
             </el-tooltip>
           </template>
         </el-table-column>
       </el-table>
-
+      </div>
       <pagination v-show="total > 0" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize" :total="total" @pagination="getList" />
     </el-card>
     <!-- 添加或修改OSS对象存储对话框 -->
@@ -122,12 +130,11 @@
 </template>
 
 <script setup name="Oss" lang="ts">
-import { listOss, delOss } from '@/api/system/oss';
-import ImagePreview from '@/components/ImagePreview/index.vue';
-import { OssForm, OssQuery, OssVO } from '@/api/system/oss/types';
+import {delOss, listOss} from '@/api/system/oss';
+import {OssForm, OssQuery, OssVO} from '@/api/system/oss/types';
 
 const router = useRouter();
-const { proxy } = getCurrentInstance() as ComponentInternalInstance;
+const {proxy} = getCurrentInstance() as ComponentInternalInstance;
 
 const ossList = ref<OssVO[]>([]);
 const showTable = ref(true);

+ 41 - 36
smsb-plus-ui/src/views/system/post/index.vue

@@ -3,8 +3,8 @@
     <el-row>
       <!-- 部门树 -->
       <el-col :lg="4" :xs="24" style="">
-        <el-card shadow="hover" style="height: 93vh">
-          <el-input v-model="deptName" placeholder="请输入部门名称" prefix-icon="Search" clearable />
+        <el-card shadow="hover" style="height: calc(100vh - 63px);">
+          <el-input v-model="deptName" placeholder="请输入部门名称" prefix-icon="Search" clearable/>
           <el-tree
             ref="deptTreeRef"
             class="mt-2"
@@ -64,35 +64,40 @@
           </div>
         </transition>
         <el-card shadow="hover" style="border: none">
-          <el-table v-loading="loading" :data="postList" @selection-change="handleSelectionChange" height="75vh">
-            <el-table-column v-if="false" label="岗位编号" align="left" prop="postId" />
-            <el-table-column label="岗位编码" align="left" prop="postCode" />
-            <el-table-column label="类别编码" align="left" prop="postCategory" />
-            <el-table-column label="岗位名称" align="left" prop="postName" />
-            <el-table-column label="部门" align="left" prop="deptName" />
-            <el-table-column label="排序" align="center" prop="postSort" />
-            <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="left" prop="createTime" width="180">
-              <template #default="scope">
-                <span>{{ parseTime(scope.row.createTime) }}</span>
-              </template>
-            </el-table-column>
-            <el-table-column label="操作" width="180" align="center" class-name="small-padding fixed-width">
-              <template #default="scope">
-                <el-tooltip content="修改" placement="top">
-                  <el-button v-hasPermi="['system:post:edit']" link type="primary" icon="Edit" @click="handleUpdate(scope.row)">修改</el-button>
-                </el-tooltip>
-                <el-tooltip content="删除" placement="top">
-                  <el-button v-hasPermi="['system:post:remove']" link type="primary" icon="Delete" @click="handleDelete(scope.row)">删除</el-button>
-                </el-tooltip>
-              </template>
-            </el-table-column>
-          </el-table>
-
+          <div class="table-content" style="height: calc(100vh - 225px)">
+            <el-table v-loading="loading" :data="postList" @selection-change="handleSelectionChange" height="75vh">
+              <el-table-column v-if="false" label="岗位编号" align="left" prop="postId"/>
+              <el-table-column label="岗位编码" align="left" prop="postCode"/>
+              <el-table-column label="类别编码" align="left" prop="postCategory"/>
+              <el-table-column label="岗位名称" align="left" prop="postName"/>
+              <el-table-column label="部门" align="left" prop="deptName"/>
+              <el-table-column label="排序" align="center" prop="postSort"/>
+              <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="left" prop="createTime" width="180">
+                <template #default="scope">
+                  <span>{{ parseTime(scope.row.createTime) }}</span>
+                </template>
+              </el-table-column>
+              <el-table-column label="操作" width="180" align="center" class-name="small-padding fixed-width">
+                <template #default="scope">
+                  <el-tooltip content="修改" placement="top">
+                    <el-button v-hasPermi="['system:post:edit']" link type="primary" icon="Edit"
+                               @click="handleUpdate(scope.row)">修改
+                    </el-button>
+                  </el-tooltip>
+                  <el-tooltip content="删除" placement="top">
+                    <el-button v-hasPermi="['system:post:remove']" link type="primary" icon="Delete"
+                               @click="handleDelete(scope.row)">删除
+                    </el-button>
+                  </el-tooltip>
+                </template>
+              </el-table-column>
+            </el-table>
+          </div>
           <pagination
             v-show="total > 0"
             v-model:page="queryParams.pageNum"
@@ -167,13 +172,13 @@
 </template>
 
 <script setup name="Post" lang="ts">
-import { listPost, addPost, delPost, getPost, updatePost } from '@/api/system/post';
-import { PostForm, PostQuery, PostVO } from '@/api/system/post/types';
-import { DeptVO } from '@/api/system/dept/types';
+import {addPost, delPost, getPost, listPost, updatePost} from '@/api/system/post';
+import {PostForm, PostQuery, PostVO} from '@/api/system/post/types';
+import {DeptVO} from '@/api/system/dept/types';
 import api from '@/api/system/user';
 
-const { proxy } = getCurrentInstance() as ComponentInternalInstance;
-const { sys_normal_disable } = toRefs<any>(proxy?.useDict('sys_normal_disable'));
+const {proxy} = getCurrentInstance() as ComponentInternalInstance;
+const {sys_normal_disable} = toRefs<any>(proxy?.useDict('sys_normal_disable'));
 
 const postList = ref<PostVO[]>([]);
 const loading = ref(true);

+ 1 - 1
smsb-plus-ui/src/views/system/user/index.vue

@@ -3,7 +3,7 @@
     <el-row>
       <!-- 部门树 -->
       <el-col :lg="4" :xs="24" style="">
-        <el-card shadow="hover" style="height: 93vh;">
+        <el-card shadow="hover" style="height: calc(100vh - 63px);">
           <el-input v-model="deptName" placeholder="请输入部门名称" prefix-icon="Search" clearable />
           <el-tree
             ref="deptTreeRef"

+ 29 - 20
smsb-plus-ui/src/views/tool/gen/index.vue

@@ -29,25 +29,29 @@
             <el-form-item>
               <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
               <el-button icon="Refresh" @click="resetQuery">重置</el-button>
-              <el-button v-hasPermi="['tool:gen:code']" type="primary" plain icon="Download" @click="handleGenTable()">生成</el-button>
-              <el-button v-hasPermi="['tool:gen:import']" type="info" plain icon="Upload" @click="openImportTable">导入</el-button>
+              <el-button v-hasPermi="['tool:gen:code']" type="primary" plain icon="Download" @click="handleGenTable()">
+                生成
+              </el-button>
+              <el-button v-hasPermi="['tool:gen:import']" type="info" plain icon="Upload" @click="openImportTable">导入
+              </el-button>
             </el-form-item>
           </el-form>
         </el-card>
       </div>
     </transition>
 
-    <el-card shadow="hover">
-      <el-table v-loading="loading" :data="tableList" @selection-change="handleSelectionChange" height="75vh">
-        <el-table-column label="序号" type="index" width="50" align="center">
-          <template #default="scope">
-            <span>{{ (queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1 }}</span>
-          </template>
-        </el-table-column>
-        <el-table-column label="数据源" align="center" prop="dataName" :show-overflow-tooltip="true" />
-        <el-table-column label="表名称" align="left" prop="tableName" :show-overflow-tooltip="true" />
-        <el-table-column label="表描述" align="left" prop="tableComment" :show-overflow-tooltip="true" />
-        <el-table-column label="实体" align="left" prop="className" :show-overflow-tooltip="true" />
+    <el-card shadow="hover" style="border: none">
+      <div class="table-content" style="height: calc(100vh - 225px)">
+        <el-table v-loading="loading" :data="tableList" @selection-change="handleSelectionChange" height="75vh">
+          <el-table-column label="序号" type="index" width="50" align="center">
+            <template #default="scope">
+              <span>{{ (queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1 }}</span>
+            </template>
+          </el-table-column>
+          <el-table-column label="数据源" align="center" prop="dataName" :show-overflow-tooltip="true"/>
+          <el-table-column label="表名称" align="left" prop="tableName" :show-overflow-tooltip="true"/>
+          <el-table-column label="表描述" align="left" prop="tableComment" :show-overflow-tooltip="true"/>
+          <el-table-column label="实体" align="left" prop="className" :show-overflow-tooltip="true"/>
         <el-table-column label="创建时间" align="left" prop="createTime" width="160" />
         <el-table-column label="更新时间" align="left" prop="updateTime" width="160" />
         <el-table-column label="操作" align="center" width="400" class-name="small-padding fixed-width">
@@ -62,14 +66,19 @@
               <el-button v-hasPermi="['tool:gen:remove']" link type="primary" icon="Delete" @click="handleDelete(scope.row)">删除</el-button>
             </el-tooltip>
             <el-tooltip content="同步" placement="top">
-              <el-button v-hasPermi="['tool:gen:edit']" link type="primary" icon="Refresh" @click="handleSynchDb(scope.row)">删除</el-button>
+              <el-button v-hasPermi="['tool:gen:edit']" link type="primary" icon="Refresh"
+                         @click="handleSynchDb(scope.row)">删除
+              </el-button>
             </el-tooltip>
             <el-tooltip content="生成代码" placement="top">
-              <el-button v-hasPermi="['tool:gen:code']" link type="primary" icon="Download" @click="handleGenTable(scope.row)">生成代码</el-button>
+              <el-button v-hasPermi="['tool:gen:code']" link type="primary" icon="Download"
+                         @click="handleGenTable(scope.row)">生成代码
+              </el-button>
             </el-tooltip>
           </template>
         </el-table-column>
-      </el-table>
+        </el-table>
+      </div>
       <pagination v-show="total > 0" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize" :total="total" @pagination="getList" />
     </el-card>
 
@@ -94,13 +103,13 @@
 </template>
 
 <script setup name="Gen" lang="ts">
-import { listTable, previewTable, delTable, genCode, synchDb, getDataNames } from '@/api/tool/gen';
-import { TableQuery, TableVO } from '@/api/tool/gen/types';
+import {delTable, genCode, getDataNames, listTable, previewTable, synchDb} from '@/api/tool/gen';
+import {TableQuery, TableVO} from '@/api/tool/gen/types';
 import router from '@/router';
 import ImportTable from './importTable.vue';
 
 const route = useRoute();
-const { proxy } = getCurrentInstance() as ComponentInternalInstance;
+const {proxy} = getCurrentInstance() as ComponentInternalInstance;
 
 const tableList = ref<TableVO[]>([]);
 const loading = ref(true);
@@ -118,7 +127,7 @@ const importRef = ref<InstanceType<typeof ImportTable>>();
 
 const queryParams = ref<TableQuery>({
   pageNum: 1,
-  pageSize: 10,
+  pageSize: 20,
   tableName: '',
   tableComment: '',
   dataName: ''

+ 1 - 1
smsb-plus-ui/src/views/workflow/model/index.vue

@@ -3,7 +3,7 @@
     <el-row>
       <!-- 流程分类树 -->
       <el-col :lg="4" :xs="24" style="">
-        <el-card shadow="hover" style="height: calc(100vh - 65px);">
+        <el-card shadow="hover" style="height: calc(100vh - 63px);">
           <el-input v-model="categoryName" placeholder="请输入流程分类名" prefix-icon="Search" clearable/>
           <el-tree
             ref="categoryTreeRef"

+ 1 - 1
smsb-plus-ui/src/views/workflow/processDefinition/index.vue

@@ -3,7 +3,7 @@
     <el-row>
       <!-- 流程分类树 -->
       <el-col :lg="4" :xs="24">
-        <el-card shadow="hover" style="height: calc(100vh - 65px);">
+        <el-card shadow="hover" style="height: calc(100vh - 63px);">
           <el-input v-model="categoryName" placeholder="请输入流程分类名" prefix-icon="Search" clearable/>
           <el-tree
             ref="categoryTreeRef"

+ 1 - 1
smsb-plus-ui/src/views/workflow/processInstance/index.vue

@@ -3,7 +3,7 @@
     <el-row>
       <!-- 流程分类树 -->
       <el-col :lg="4" :xs="24" style="">
-        <el-card shadow="hover" style="height: calc(100vh - 65px);">
+        <el-card shadow="hover" style="height: calc(100vh - 63px);">
           <el-input v-model="categoryName" placeholder="请输入流程分类名" prefix-icon="Search" clearable/>
           <el-tree
             ref="categoryTreeRef"

+ 1 - 1
smsb-plus-ui/src/views/workflow/task/myDocument.vue

@@ -3,7 +3,7 @@
     <el-row>
       <!-- 流程分类树 -->
       <el-col :lg="4" :xs="24" style="">
-        <el-card shadow="hover" style="height: calc(100vh - 65px);">
+        <el-card shadow="hover" style="height: calc(100vh - 63px);">
           <el-input v-model="categoryName" placeholder="请输入流程分类名" prefix-icon="Search" clearable/>
           <el-tree
             ref="categoryTreeRef"