Commit Graph
1157 Commits
Author SHA1 Message Date
fastapiadmin 68b50359c5 Merge pull request #376 from fastapiadmin/dev
Dev
2026-05-09 00:47:40 +08:00
zhangtao bf81480ada feat: 迁移前端资源文件并重构项目结构
refactor: 优化前端代码结构和资源管理

style: 调整前端代码格式和样式

chore: 更新.gitignore和构建配置

fix: 修复前端资源路径和引用问题

docs: 更新前端文档和注释

perf: 优化前端性能和加载速度

test: 更新前端测试用例

build: 调整前端构建配置

ci: 更新CI/CD配置
2026-05-09 00:46:43 +08:00
zhangtao 1bd125d99b refactor: 更新路由和组件逻辑,移除不再使用的模块
- 修改tsconfig.json,移除widgets示例文件夹的排除规则
- 重构clean-dev.ts,清理前端路由演示,保留exception路由
- 更新App.vue,优化水印文字颜色逻辑,使用hexToRgba函数
- 替换MenuSearch组件中的权限管理逻辑,使用menuStore
- 移除不再使用的permission.ts文件,简化路由守卫逻辑
- 更新国际化文件,添加更新日志相关翻译
- 优化多个组件的样式和逻辑,确保一致性
2026-05-08 01:33:37 +08:00
zhangtao d1e8a0f1d9 feat(router): 重构组件加载逻辑,支持内联 RouterView 和 Iframe 组件
- 移除不再使用的外部 Iframe 组件和多级目录父级占位组件文件
- 在 ComponentLoader 中新增 loadNestedParent 和 loadIframe 方法,支持动态加载内联组件
- 更新静态路由配置,直接使用内联组件替代外部视图文件
- 优化 Iframe 组件的加载逻辑,提升用户体验
2026-05-07 00:20:43 +08:00
zhangtao 6d38157903 refactor: 统一表单组件样式和逻辑
- 将多个组件中的ElForm替换为ArtForm,提升一致性
- 更新表单项的props和布局,确保样式统一
- 优化表单重置和验证逻辑,简化代码
- 调整样式以适应新组件,确保良好的用户体验
2026-05-07 00:10:27 +08:00
zhangtao a16473dc06 feat: 更新前端配置和组件逻辑
- 在tsconfig.json中排除特定示例文件夹
- 移除不再使用的路由别名清理逻辑,更新为手动修改提示
- 统一组件中对utils路径的引用,简化导入
- 优化多个组件的样式和布局,确保一致性
- 更新国际化文件,调整语言选项格式
2026-05-06 23:53:13 +08:00
fastapiadmin 019e01cb77 Merge pull request #375 from fastapiadmin/dev
Dev
2026-05-05 21:56:39 +08:00
zhangtao 62de57735e feat: 更新前端配置和组件样式
- 修改环境变量,将权限模式更改为混合模式
- 删除不再使用的art-design-pro子项目
- 更新设置文件中的标签页样式为谷歌风格
- 优化art-work-tab组件的样式和逻辑,确保与新标签页样式一致
- 更新英文和中文语言文件,调整菜单和主题选项的格式
2026-05-05 21:47:27 +08:00
zhangtao 49ffb9dbb2 feat: 移除系统管理路由并优化路由结构
- 删除不再使用的系统管理路由模块
- 更新路由配置,确保仅保留必要的模块
- 添加Element Plus图标全局注册功能
- 优化分页组件,增加更多属性支持
- 重构表格操作列渲染逻辑,提升代码可读性和复用性
- 更新多个组件以支持新的操作列渲染方式
2026-05-05 21:47:13 +08:00
zhangtao 6db264bef3 feat: 删除fastapi-backend.spec文件并更新依赖项注释
- 移除不再使用的fastapi-backend.spec文件
- 更新pyproject.toml和requirements.txt中的依赖项注释,增加了对OpenAI API客户端和其他依赖的描述
- 在多个API模块中统一返回类型为单数形式,提升代码一致性
- 更新前端环境配置,调整API基础URL和WebSocket端点为本地地址
2026-05-05 07:16:13 +08:00
zhangtao 946497d6c6 feat: 重构前端布局和组件结构
refactor(router): 更新主页路径为/home并调整路由守卫逻辑
feat(overlays): 新增通用弹窗和抽屉组件
fix(menu.store): 优化菜单状态持久化配置
feat(config): 为HeaderBar添加组件尺寸选择功能
refactor(components): 迁移布局组件到layouts目录并优化图标使用
fix(styles): 调整主内容区滚动和布局样式
feat(exception): 新增401异常页面
refactor(api): 统一列表返回类型为单数形式
fix(horizontal-menu): 为水平菜单添加ID标识
refactor(settings): 扩展设置面板功能项和持久化配置
docs: 更新配置文件和组件文档注释
2026-05-04 08:25:47 +08:00
zhangtao bcf16aedd6 refactor: 删除AgnoSchemaVersions组件及其相关逻辑
- 移除AgnoSchemaVersions组件的Vue文件
- 清理与该组件相关的模板、脚本和样式代码
- 准备为后续功能更新和重构提供更简洁的代码基础
2026-05-03 22:47:41 +08:00
zhangtao b12f7a0a11 feat(auth): 添加第三方OAuth登录支持
- 实现OAuth登录重定向和回调处理
- 更新配置文件以支持多种OAuth提供商
- 添加错误处理和状态管理功能
- 更新文档以反映新功能和配置要求
2026-05-03 06:42:13 +08:00
zhangtao e4f778877b feat: 初始化前端项目框架和基础功能
- 添加项目基础结构和配置
- 实现登录认证和权限管理
- 集成图表组件和UI库
- 添加多种页面模板和示例
- 配置路由和状态管理
- 实现国际化支持
- 添加暗黑主题切换功能
- 集成代码规范和提交检查工具
2026-05-02 01:37:18 +08:00
zhangtao e44f96740f feat(docs): 重构文档结构并更新内容
refactor(docs): 迁移文档到src目录并优化配置

style(docs): 统一代码格式和样式

chore(docs): 移除不必要的配置文件和依赖

fix(docs): 修正锁屏对话框的翻译和占位符

feat(components): 添加ElDescriptions组件支持

perf(docs): 优化文档图片加载和缩放功能
2026-05-01 22:48:13 +08:00
fastapiadmin 39a8dc705c Merge pull request #374 from fastapiadmin/dev
Dev
2026-05-01 01:08:52 +08:00
fastapiadmin ab460ec9f6 Merge branch 'v3.0.0' into dev 2026-05-01 01:08:40 +08:00
zhangtao 3ced76efa7 chore: 更新前端gitignore以移除重复配置
移除docs目录的重复忽略规则,因其已在根目录gitignore中管理
2026-05-01 01:05:17 +08:00
zhangtao 66d8fcad87 feat: 初始化前端项目基础结构
- 添加项目配置文件(tsconfig, eslint, prettier等)
- 实现基础路由和页面布局
- 添加全局状态管理和API请求封装
- 集成UI组件库和主题系统
- 添加文档网站和示例页面
- 配置CI/CD和工作流
2026-05-01 01:05:16 +08:00
zhangtao dd4191973f feat(前端): 更新登录相关组件和国际化配置
- 更新登录、注册和重置密码页面的输入框占位符和按钮文本
- 添加新的Element Plus组件类型声明
- 调整设置页面布局和样式
- 更新中英文国际化配置,新增主题设置相关翻译
- 修改API基础URL和WebSocket端点配置
2026-05-01 01:05:16 +08:00
zhangtao b7800e2ddd fix(web): 修复代码格式和文件清理问题
清理无用文件和资源,调整代码格式统一双引号,修复部分组件路径引用问题

删除大量无用图片资源和组件文件,统一代码风格使用双引号,修复国际化文件路径引用,调整部分组件逻辑,优化项目结构
2026-05-01 01:05:16 +08:00
zhangtao 80263e98e1 feat: 重构前端项目结构并优化代码
refactor: 迁移前端资源文件至web目录
feat: 新增多种图标资源
style: 统一代码风格和格式化配置
docs: 更新README和文档说明
chore: 更新依赖和配置文件
fix: 修复部分类型定义和枚举
perf: 优化路由和组件加载逻辑
2026-05-01 01:01:17 +08:00
fastapiadmin 1355a09441 Merge pull request #370 from luomgf/master
feat: 实现菜单 PC/APP 终端区分并补全前后端与种子数据
2026-05-01 00:54:29 +08:00
zhangtao d78d00a7a8 chore: 更新前端gitignore以移除重复配置
移除docs目录的重复忽略规则,因其已在根目录gitignore中管理
2026-05-01 00:48:12 +08:00
zhangtao 5c29d22aa5 feat: 初始化前端项目基础结构
- 添加项目配置文件(tsconfig, eslint, prettier等)
- 实现基础路由和页面布局
- 添加全局状态管理和API请求封装
- 集成UI组件库和主题系统
- 添加文档网站和示例页面
- 配置CI/CD和工作流
2026-05-01 00:47:48 +08:00
zhangtao ff738007cd feat(前端): 更新登录相关组件和国际化配置
- 更新登录、注册和重置密码页面的输入框占位符和按钮文本
- 添加新的Element Plus组件类型声明
- 调整设置页面布局和样式
- 更新中英文国际化配置,新增主题设置相关翻译
- 修改API基础URL和WebSocket端点配置
2026-05-01 00:32:17 +08:00
zhangtao cc85f624ab fix(web): 修复代码格式和文件清理问题
清理无用文件和资源,调整代码格式统一双引号,修复部分组件路径引用问题

删除大量无用图片资源和组件文件,统一代码风格使用双引号,修复国际化文件路径引用,调整部分组件逻辑,优化项目结构
2026-04-30 00:56:34 +08:00
zhangtao eb150bcede feat: 重构前端项目结构并优化代码
refactor: 迁移前端资源文件至web目录
feat: 新增多种图标资源
style: 统一代码风格和格式化配置
docs: 更新README和文档说明
chore: 更新依赖和配置文件
fix: 修复部分类型定义和枚举
perf: 优化路由和组件加载逻辑
2026-04-29 00:02:09 +08:00
luomgf d2a4e95357 ### 摘要
- 菜单表与接口增加终端维度 `client`(`pc` | `app`),与规范「PC 桌面 / APP 移动端」一致。不改已有授权逻辑。
- 管理端动态路由仅下发 `client=pc`;菜单管理页通过 Tab + 查询参数 `menu_client` 分端维护。
- 种子数据 `sys_menu.json` 为全量 PC 菜单补 `client: pc`,并内置 5 条 APP 顶级目录(首页/同事/打卡/消息/我的),图标使用项目 `src/assets/icons` 内已有名称。

### 后端
- `MenuModel` 增加 `client` 列(默认 `pc`)。
- Schema:`MenuCreateSchema` / `MenuOutSchema` 含 `client`;`MenuQueryParam` 增加 `menu_client` 过滤。
- `menu_request_validator` 校验 `client ∈ {pc,app}`;父子终端一致校验在 `MenuService` 创建/更新中执行。
- `get_current_user_info` 菜单树与角色菜单 ID 仅保留 PC 端,避免 APP 菜单进入 Vue Router。

### 前端
- 菜单管理:PC/APP Tab、`menu_client` 列表参数、表格/详情/表单「终端」、子级继承父级 `client`。
- API 类型与 `MenuClientEnum`;`permission.store` 路由 `meta.client`(可选扩展)。

### 数据库(已有库)
-postgres
```
ALTER TABLE sys_menu ADD COLUMN IF NOT EXISTS client VARCHAR(20) NOT NULL DEFAULT 'pc';
COMMENT ON COLUMN sys_menu.client IS '终端(pc:管理端桌面 app:移动端)';
```

-mysql
```
ALTER TABLE sys_menu ADD COLUMN client VARCHAR(20) NOT NULL DEFAULT 'pc' COMMENT '终端(pc/app)';

```

### 兼容与注意
- 角色授权抽屉仍调用**不带** `menu_client` 的菜单树,可同时勾选 PC 与 APP。不改已有逻辑。
- 仅改种子 JSON 不影响**已有数据**库;已建库需执行 DDL,APP 示例菜单需在库中已存在或通过初始化导入。
2026-04-27 14:09:58 +08:00
fastapiadmin 842d1a5c98 Merge pull request #369 from fastapiadmin/dev
feat(类型转换): 增强数据库类型转换功能并添加测试
V2.0
2026-04-23 23:35:55 +08:00
zhangtao 10a35bb4b5 feat(类型转换): 增强数据库类型转换功能并添加测试
- 改进MySQL和PostgreSQL几何类型的特殊处理
- 完善数据库类型到Python和SQLAlchemy类型的映射
- 修改ango生成表位置与项目数据库中
- 添加全面的类型转换测试用例
- 修复数据库连接时的schema设置问题
2026-04-23 23:33:07 +08:00
fastapiadmin 8b98e42ce8 Merge pull request #367 from fastapiadmin/dev
feat: 添加跨平台运行脚本并移除旧脚本
2026-04-21 00:02:38 +08:00
zhangtao 4254a7951f feat: 添加跨平台运行脚本并移除旧脚本
新增 Windows 批处理脚本 run_win.bat 和 Linux shell 脚本 run_linux.sh,提供跨平台支持
移除旧版 run.sh 脚本,统一使用平台专用脚本
2026-04-21 00:01:51 +08:00
fastapiadmin 9f1612fa9f Merge pull request #366 from fastapiadmin/dev
Dev
2026-04-20 23:48:05 +08:00
fastapiadmin b4a250e737 Merge pull request #364 from weiheweihe/dev
Dev
2026-04-20 23:47:28 +08:00
fastapiadmin cbdbd2abf4 Merge pull request #365 from fastapiadmin/dev
Dev
2026-04-20 23:46:47 +08:00
zhangtao f096886351 refactor(CURD): 移除搜索功能及相关代码
移除不再使用的搜索功能,包括工具栏中的搜索按钮、搜索区域切换按钮及相关事件处理逻辑。
同时更新模板文件和相关配置,确保代码一致性。

调整页面布局样式,优化执行日志抽屉的显示效果。
在代码生成器中添加保存按钮,允许在配置过程中保存当前进度。
2026-04-20 23:40:16 +08:00
weihe0720 6dba8079e8 fix(redis_crud): 修复哈希操作方法未正确使用await的问题
移除hash_get方法返回类型中错误的Awaitable联合类型,并确保hash_set和hash_get方法内部正确使用await调用Redis客户端方法,以支持异步操作。
2026-04-20 23:38:57 +08:00
coderxslee 531b1ea752 fix: 修复同步数据库时 super_column 字段导致的创建失败问题
问题:
- 同步数据库接口 /api/v1/generator/gencode/sync_db/{table_name} 报错
- 错误信息:'super_column' is an invalid keyword argument for GenTableColumnModel

原因:
- GenTableColumnOutSchema 包含 super_column 输出字段
- GenTableColumnModel 数据库模型不包含此字段
- 同步时直接使用 OutSchema 对象创建/更新数据库记录导致参数错误

解决方案:
- 在创建/更新数据库记录前,将 GenTableColumnOutSchema 转换为 GenTableColumnSchema
- 使用 model_dump(exclude={"super_column"}) 排除输出专用字段
- 确保传递给 CRUD 层的数据只包含数据库模型支持的字段
2026-04-20 22:31:40 +08:00
coderxslee 698418b3e5 feat: 添加 FastAPI 项目管理脚本
- 新增 run.sh 交互式管理脚本,提供以下功能:
  - 启动开发服务器(自动检查并创建数据库)
  - 生成和应用数据库迁移
  - 重置迁移记录
  - 清理和删除数据库
  - 执行 SQL 初始化脚本
- 支持从 .env.dev 文件读取数据库配置
- 提供彩色输出和友好的交互界面
- 包含安全确认机制防止误操作
2026-04-20 22:05:40 +08:00
coderxslee c32823138d feat: 实现对话框全屏时表格高度自适应
- EnhancedDialog 新增 fullscreen-change 事件,用于监听全屏状态变化

- GenColumnsStep 表格高度改为动态计算,适配不同屏幕尺寸

- ImportDbTableDialog 支持全屏模式,表格高度根据全屏状态自动调整

- 优化表格高度计算逻辑,确保内容区域合理利用屏幕空间
2026-04-20 20:59:19 +08:00
coderxslee 4b0c146520 git commit -m "fix(codegen): 添加软删除字段支持,避免字段重复定义
## 背景
本次修复包含前后端两部分:
1. 前端SQL模板添加软删除字段(新功能)
2. 后端代码模板排除软删除字段(预防性修复)

## 修复内容

### 前端模板:添加软删除字段(新功能)
**文件**: createTableVisualPresets.ts

之前前端SQL模板缺少软删除字段,导致生成的表不完整。

- **mixinMysql()**: 添加软删除字段
  - is_deleted: tinyint(1) NOT NULL - 标记是否已删除
  - deleted_time: datetime NULL - 记录删除时间
  - deleted_id: int NULL - 记录删除人ID

- **mixinPostgres()**: 添加软删除字段
  - is_deleted: boolean NOT NULL - 标记是否已删除
  - deleted_time: timestamp without time zone NULL - 记录删除时间
  - deleted_id: integer NULL - 记录删除人ID

### 后端模板:排除软删除字段(预防性修复)
**文件**: model.py.j2, schema.py.j2

虽然之前前端模板没有软删除字段,但为了配合前端修复,需要确保后端模板正确排除这些字段。

- **model.py.j2**: 在排除列表中添加 is_deleted, deleted_time, deleted_id
  - 原排除列表: ['id', 'uuid', 'status', 'description', 'created_time', 'updated_time', 'created_id', 'updated_id']
  - 新排除列表: 添加 'is_deleted', 'deleted_time', 'deleted_id'
  - 原因: 这些字段由 ModelMixin 和 UserMixin 提供,不应在生成的模型中重复定义

- **schema.py.j2**: 在排除列表中添加 is_deleted, deleted_time, deleted_id
  - 原排除列表: ['uuid', 'created_time', 'updated_time', 'created_id', 'updated_id']
  - 新排除列表: 添加 'is_deleted', 'deleted_time', 'deleted_id'
  - 原因: 软删除字段由系统自动管理,不应出现在新增/更新Schema中

## 技术说明

### 软删除机制
软删除(逻辑删除)是一种不物理删除数据的删除方式:
- **is_deleted**: 标记记录是否已删除(false=未删除, true=已删除)
- **deleted_time**: 记录删除时间,用于审计和数据恢复
- **deleted_id**: 记录删除操作人ID,外键关联sys_user表

### 字段继承关系
生成的模型继承自两个基类:
- **ModelMixin**: 提供 id, uuid, status, description, created_time, updated_time, is_deleted, deleted_time
- **UserMixin**: 提供 created_id, updated_id, deleted_id 及对应的关联关系

代码生成器应排除这些字段,避免重复定义。

## 修复效果

### 修复前
- 前端模板生成的表缺少软删除字段 
- 后端模板排除列表不完整(虽然暂时没问题,因为前端也没生成这些字段)

### 修复后
- 前端模板生成的表包含完整的软删除字段 
- 后端模板正确排除软删除字段,避免重复定义 
- 前后端配合,生成的代码正确继承基类的软删除功能 

## 影响范围
-  使用\"单表·MySQL\"或\"单表·PostgreSQL\"模板创建的表自动包含软删除字段
-  生成的model.py只包含业务字段,不会重复定义基础字段
-  所有新生成的模型自动支持软删除功能
-  与现有系统的软删除机制保持一致"
2026-04-20 20:18:53 +08:00
fastapiadmin f1b144e517 Merge pull request #363 from fastapiadmin/dev
feat: 实现软删除功能并添加相关字段
2026-04-19 23:09:19 +08:00
zhangtao a462ab5793 feat: 实现软删除功能并添加相关字段
在全局类型定义、模型、CRUD操作中添加软删除支持
- 在BaseModel中添加is_deleted和deleted_time字段
- 在UserMixin中添加deleted_id和deleted_by关联
- 修改CRUDBase的delete和clear方法实现软删除逻辑
- 更新所有相关模型添加deleted_by字段
- 修改前端接口定义添加deleted_by字段
- 移除冗余的成功提示消息
2026-04-19 23:08:27 +08:00
fastapiadmin cdb23cfa3d Merge pull request #361 from fastapiadmin/dev
fix(database): 修正redis_connect函数参数类型从str到bool
2026-04-16 23:23:33 +08:00
zhangtao 7b7f617455 fix(database): 修正redis_connect函数参数类型从str到bool
修复redis_connect函数参数status的类型错误,从字符串类型改为布尔类型以正确反映其用途
2026-04-16 23:22:41 +08:00
fastapiadmin 4a4f6f2da1 Merge pull request #360 from fastapiadmin/dev
fix(配置): 强制从服务器获取最新配置数据
2026-04-15 23:37:30 +08:00
zhangtao d30e07d570 fix(配置): 强制从服务器获取最新配置数据
修改多处配置获取逻辑,添加强制刷新参数确保获取最新配置
设置Redis缓存默认过期时间为24小时
2026-04-15 23:36:51 +08:00
fastapiadmin 76485fc2e2 Merge pull request #359 from fastapiadmin/dev
chore: 更新后端数据中的group.jpg图片
2026-04-15 22:07:29 +08:00
zhangtao 0f3f617458 chore: 更新后端数据中的group.jpg图片 2026-04-15 22:06:51 +08:00