mirror of
https://github.com/fastapiadmin/FastapiAdmin.git
synced 2026-09-23 05:10:57 +00:00
feat: 添加多语言支持及资源文件更新
- 添加日语、中文、泰语等多语言支持文件 - 更新静态资源文件包括图片和样式表 - 重构菜单权限树组件,修复父子节点联动问题 - 优化在线用户管理功能,使用会话ID替代用户名 - 更新数据库配置,默认使用MySQL - 重构文档系统,将mkdocs迁移至backend目录 - 修复Redis哈希操作接口 - 更新前端工具函数,优化列表转树形结构逻辑 - 调整端口配置和环境变量 - 添加开发运维文档和部署脚本 本次提交主要实现了多语言支持、资源文件更新和多个功能优化,同时改进了系统文档结构和部署配置。
This commit is contained in:
@@ -136,13 +136,13 @@ const resetQuery = () => {
|
||||
};
|
||||
|
||||
const handleForceLogout = (row: OnlineUser) => {
|
||||
if (!row?.user_name) return;
|
||||
if (!row?.session_id) return;
|
||||
Modal.confirm({
|
||||
title: '确认提示',
|
||||
content: `是否确认强退名称为"${row.user_name}"的用户?`,
|
||||
async onOk() {
|
||||
try {
|
||||
await deleteOnline(row.user_name);
|
||||
await deleteOnline(row.session_id);
|
||||
await getList();
|
||||
message.success('强退成功');
|
||||
} catch (error) {
|
||||
|
||||
@@ -33,8 +33,7 @@
|
||||
<!-- 表格区域 -->
|
||||
<div class="table-wrapper">
|
||||
<a-card title="定时任务列表" :bordered="false" :headStyle="{ borderBottom: 'none', padding: '20px 24px' }"
|
||||
|
||||
:bodyStyle="{ padding: '0 24px', minHeight: 'calc(100vh - 360px)' }">
|
||||
:bodyStyle="{ padding: '0 24px', minHeight: 'calc(100vh - 360px)' }">
|
||||
<template #extra>
|
||||
<a-button type="primary" :icon="h(PlusOutlined)" @click="modalHandle('create')"
|
||||
style="margin-right: 10px;">新建</a-button>
|
||||
@@ -455,7 +454,7 @@ const columns: TableColumnsType = [
|
||||
title: '存储器',
|
||||
dataIndex: 'jobstore',
|
||||
ellipsis: true,
|
||||
width: 100,
|
||||
// width: 100,
|
||||
},
|
||||
{
|
||||
title: '执行器',
|
||||
|
||||
@@ -64,6 +64,9 @@
|
||||
:style="{ minHeight: 'calc(100vh - 420px)' }"
|
||||
>
|
||||
<template #bodyCell="{ column, record }">
|
||||
<template v-if="column.dataIndex === 'icon'">
|
||||
<a-button type="text" size="small" :icon="h(icons[record.icon])">{{ record.icon }}</a-button>
|
||||
</template>
|
||||
<template v-if="column.dataIndex === 'type'">
|
||||
<a-tag :color="record.type === 1 ? 'blue' : (record.type === 2 ? 'green' : 'orange')">
|
||||
{{ record.type === 1 ? '目录' : (record.type === 2 ? '功能' : '权限') }}
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
:checkedKeys="permissionState.dept_ids"
|
||||
:rowKey="record => record.id"
|
||||
:tree-data="deptTreeData"
|
||||
defaultExpandAll="true"
|
||||
:defaultExpandAll=true
|
||||
:scroll="{ y: 1000 }"
|
||||
:field-names="{ children: 'children', title: 'name', key: 'id' }"
|
||||
@check="deptTreeCheck" checkable checkStrictly style="margin-top: 15px;" />
|
||||
@@ -58,7 +58,7 @@
|
||||
<div style="margin-top: 15px;">
|
||||
<a-table v-if="menuTreeData"
|
||||
:rowKey="record => record.id"
|
||||
:defaultExpandAllRows="true"
|
||||
:defaultExpandAllRows=true
|
||||
:columns="menuColumns"
|
||||
:data-source="menuTreeData"
|
||||
:row-selection="menuRowSelection"
|
||||
@@ -211,7 +211,7 @@ const onMenuSelectChange = (selectingRowKeys: permissionMenuType['id'][]) => {
|
||||
const menuRowSelection = computed(() => {
|
||||
return {
|
||||
selectedRowKeys: permissionState.value.menu_ids,
|
||||
checkStrictly: false,
|
||||
checkStrictly: true, // 关闭父子联动
|
||||
onChange: onMenuSelectChange
|
||||
}
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user